Partial New Policy Card

It works like this, but it needs more options.
This commit is contained in:
Rakeela Windrider 2023-04-05 00:09:37 -07:00
parent caa5c2e60c
commit d66e17a279

View File

@ -1,6 +1,8 @@
package koboldsim package koboldsim
import "git.chromaticdragon.app/kistaro/CardSimEngine/cardsim" import (
"git.chromaticdragon.app/kistaro/CardSimEngine/cardsim"
)
var cards = []Card{ var cards = []Card{
&SwitchingCard{ &SwitchingCard{
@ -356,6 +358,47 @@ var cards = []Card{
}, },
}, //End of "Two Kobolds in a Trenchcoat" policies }, //End of "Two Kobolds in a Trenchcoat" policies
}, //End of "Two Kobolds in a Trenchcoat" card }, //End of "Two Kobolds in a Trenchcoat" card
&SwitchingCard{
Name: cardsim.MsgStr("A Recipe for Stewed Kobold"),
Desc: cardsim.MsgStr("Nobody would ever say a kobold smells bad, but the constant burrowing, manufacturing, and metallurgy that is common to kobold life is still a recipe for tense muscles and filthy scales. A slate of proposals have come through to address this issue."),
After: ShuffleIntoBottomHalf,
Policies: []Policy{
&BasicPolicy{
UnenactedDesc: cardsim.MsgStr(`A calm and cheerful scribe says, "We should have public baths! We have more problems with flooding than drought in the deep underground, so we've got plenty of water. We just need to channel it. We could create a hub of social life while improving the health of everybody!"`),
EnactedDesc: cardsim.MsgStr("[current policy] Public bathing is a staple social policy in the mines and warrens of your nation."),
Do: func(p *Player) (cardsim.Message, error) {
p.Stats.ConstructionIncome += 0.01
p.Stats.QoLExpense += 0.01
p.Stats.HealthcareExpense += 0.01
p.Stats.ParksExpense += 0.04
return cardsim.MsgStr("The company of others makes cold water tolerable."), nil
},
Undo: func(p *Player) error {
p.Stats.ConstructionIncome -= 0.01
p.Stats.QoLExpense -= 0.01
p.Stats.HealthcareExpense -= 0.01
p.Stats.ParksExpense -= 0.04
return nil
},
CanDo: YesWeCan,
},
&VerbosePolicy{
Default: &BasicPolicy{
UnenactedDesc: cardsim.MsgStr("When is the right time to embark on building public baths? You can hew close to skeptics instead."),
EnactedDesc: cardsim.MsgStr("When is the right time to embark on building public baths? You can hew close to skeptics instead."),
Do: func(p *Player) (cardsim.Message, error) {
p.Stats.BasePopulation += 5
return cardsim.MsgStr("There are a few opponents of public baths to curry the support of."), nil
},
Undo: func(p *Player) error {
p.Stats.BasePopulation -= 5
return nil
},
CanDo: YesWeCan,
},
},
}, //End of "A Recipe for Stewed Kobold" policies
}, //End of "A Recipe for Stewed Kobold" card
} // end of card list } // end of card list
func initDeck(d *cardsim.Deck[*KoboldMine]) { func initDeck(d *cardsim.Deck[*KoboldMine]) {