de7092cf4b
SwitchingCard.IsValid: control drawability.
...
Cards can now specify conditions that must be met for them to be drawn into the hand.
Additionally, this improves the documentation of SwitchingCard.
2023-04-08 18:33:58 -07:00
d434e50897
Shuffle cards back by default.
...
If no After function is provided for a SwitchingCard, it uses ShuffleIntoBottomHalf.
This also modifies Then to be callable with a nil `o`, which it recognizes as "nothing happened but we need cleanup anyway", in preparation for the incoming "make cards sometimes not drawable" feature.
2023-04-08 18:18:00 -07:00
95a30cb522
Foreign Relations, Forestry, and a New Issue
...
I guess this project will continue growing for now.
2023-04-05 20:26:57 -07:00
f3fd0c582f
Expansion of Issue #4
...
Parks spending will have more features later.
2023-04-05 12:30:00 -07:00
de98cf8fb3
Obesity Stat Implementation
...
First sigmoid function!
2023-04-05 12:29:23 -07:00
d66e17a279
Partial New Policy Card
...
It works like this, but it needs more options.
2023-04-05 00:09:37 -07:00
caa5c2e60c
New Expense
...
I missed one from my notes
2023-04-05 00:09:12 -07:00
159508b202
New Issue, Food Supply Feature
2023-04-04 20:23:32 -07:00
301d8ae161
Hide unavailable options on SwitchingCard.
2023-04-04 20:21:12 -07:00
e0dad09045
Refactor, new menu, issue feature update
...
It's now possible to make issue options enabled or disabled conditional upon having taken other actions with that issue before.
2023-04-04 13:22:43 -07:00
ccd141ddc5
Economic Stats Expansion
...
I also got rid of the "Sector" and "Gov" parts of the tokens, they were just pointless elongation.
2023-04-04 10:33:14 -07:00
d2f89f5bd4
Issue #2 Option Validity Check
...
I also fixed the write to-do and changed an improbable mention of Education into a more likely mention of Finance.
2023-04-03 21:20:14 -07:00
f7bed6c4b9
Can't assume CanDo is always there.
...
BasicPolicy doesn't know how to do fallback, that's driven by the VerbosePolicy. But the VerbosePolicy isn't there if BasicPolicy is trying to use CanDo itself. Just remove the check.
2023-04-03 21:15:43 -07:00
1eedfb50e8
Fix enablement
2023-04-03 20:33:35 -07:00
c2d637b109
Fix out-of-range check.
2023-04-03 20:25:29 -07:00
7313ac0d73
Fully implement Festival of Bureaucracy.
2023-04-03 20:24:01 -07:00
140d7b6cbb
DisabledPolicy: a policy that doesn't
2023-04-03 20:12:06 -07:00
5af762474c
OverrideDefaultMsg and support in VerbosePolicy
...
For when you need a partially-functional message but don't want to repeatedly write the same Enact func.
2023-04-03 19:57:09 -07:00
2c1fc73ef5
FuncPolicy: function pointer policy
...
For when you don't want to go to the trouble of writing a type, but do need actual functions.
2023-04-03 19:52:47 -07:00
a1f55c865d
Refactor VerbosePolicy.
...
This allows it to switch between other complete policies, with fallbacks to a default if parts aren't impelemented. Complementing it is the change to BasicPolicy, which throws ErrUnimplemented if fields are missing, which VerbosePolicy uses as a "go ask the default" sign.
2023-04-03 19:41:32 -07:00
8ce6539c8a
IncompleteImplementationofSecondIssue
2023-04-03 16:18:26 -07:00
0e77206868
Change "Productivity" to "Income" and "Expense
...
Also fixes a typo and an incorrectly assigned variable.
2023-04-03 14:35:36 -07:00
4e983bd0f0
Fix nil deref and identity failure.
...
Also updates deps to pick up a message display fix.
2023-04-03 01:59:23 -07:00
c798ba31e1
Fix nil dereference.
2023-04-03 01:40:47 -07:00
175a2323f4
Remove duplicate initDeck.
2023-04-03 01:37:26 -07:00
5728dd95f0
Oops, forgot to shuffle the card back in.
2023-04-03 01:36:47 -07:00
fb5aaeccfc
Implement first issue.
...
This seems like the least complicated way to get the desired reusable behaviors.
2023-04-03 01:32:02 -07:00
0e1f5ff246
Reversible policies
2023-04-03 00:17:01 -07:00
825ee8d053
Initial stats, etc.
2023-04-02 23:24:47 -07:00