Tim Van Baak
25d903d91a
Refactor Season into a value struct
...
This keeps the rich features of a Season type without requiring constant string parsing (as much) or going through World to do lookups to get the objects. Since seasons now have value equality instead of reference equality, it's easier to get access to whem when needed. They're still, fundamentally, sugar over a tuple.
2024-08-15 13:51:41 -07:00
Tim Van Baak
abbe929122
Designation -> Key
2024-08-15 06:52:08 -07:00
Tim Van Baak
f2d3d5a583
Remove GetSeason(string)
2024-08-14 22:03:56 -07:00
Tim Van Baak
868022d34f
Convert World.Seasons to a dictionary
2024-08-14 22:00:22 -07:00
Tim Van Baak
5ad57465d8
Remove reference from Unit.Past
2024-08-14 09:06:05 -07:00
Tim Van Baak
885628900b
Remove Location reference from Unit
2024-08-14 09:06:05 -07:00
Tim Van Baak
abaa7f7a92
Shift usage of Unit.Location to Unit.LocationId
...
This is in preparation for removing province and location references from Unit
2024-08-14 09:06:04 -07:00
Tim Van Baak
f1563b8f5f
Delete Season.Coord
2024-08-14 09:06:04 -07:00
Tim Van Baak
87685ec744
Refactor season futures into World
2024-08-14 09:06:04 -07:00
Tim Van Baak
752a898123
Use a simpler override where available
2024-08-14 09:06:04 -07:00
Tim Van Baak
400263ea0b
Rename PastId back to Past
2024-08-14 09:06:04 -07:00
Tim Van Baak
5e5483367d
Remove Season.Past so all lookups go through World
2024-08-14 09:06:04 -07:00
Tim Van Baak
421e84b559
Update timeline designator usage
...
Timelines are now identified by strings and come first in timeline-turn tuples.
2024-08-14 09:06:04 -07:00
Jaculabilis
b679558d9c
Make adjudicator reusable to decrease verbosity
2022-03-30 08:04:44 -07:00
Jaculabilis
b347cc88aa
Make TestCaseBuilder reusable
2022-03-29 20:59:30 -07:00
Jaculabilis
6a6810ef07
Add basic movement phase update tests
2022-03-29 17:16:00 -07:00
Jaculabilis
d4e68844c6
Simplify world updates and expose root season
2022-03-28 22:34:57 -07:00
Jaculabilis
b026adbfbc
Add some basic unit tests for the movement adjudicator
2022-03-27 15:10:34 -07:00
Jaculabilis
6b1b9dce10
Refactor adjudication into separate adjudication and update steps
...
This makes it easier to unit test adjudication decisions directly.
2022-03-27 14:39:00 -07:00
Jaculabilis
8c828661e2
Add validation constraint
2022-03-22 22:11:14 -07:00
Jaculabilis
c50dbf6b46
Add movement order validation tests
2022-03-22 21:30:20 -07:00