Firekeeping: tend all fires
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
6e48c72d95
commit
fd85580466
3 changed files with 45 additions and 7 deletions
|
|
@ -2785,6 +2785,18 @@ class FirekeepingTest(unittest.TestCase):
|
|||
self.assertEqual(game.heat(self.world, "kitchen"), -1)
|
||||
self.assertAlmostEqual(self.kai["xp"]["firekeeping"], 3 * game.TEND_XP[0] * game.fire_minutes(level))
|
||||
|
||||
def test_tending_all_feeds_the_lowest_fire_with_room(self):
|
||||
self.fires["forge"].update(fuel=[{"tier": 0, "left": 600, "by": "sam"}], at=T0)
|
||||
self.fires["kitchen"].update(fuel=[{"tier": 0, "left": game.fire_bank(1) * 60, "by": "kai"}], at=T0) # kai's pile is full
|
||||
self.fires["kiln"].update(fuel=[{"tier": 0, "left": 300, "by": "sam"}], at=T0)
|
||||
self.kai["bank"] = {"logs": 1}
|
||||
self.tend(self.kai, "all", "logs", T0, 35)
|
||||
self.assertEqual([chunk["by"] for chunk in self.fires["still"]["fuel"]], ["kai"]) # out, so lowest
|
||||
self.kai["bank"] = {"logs": 100}
|
||||
for key in ("forge", "kiln", "still"):
|
||||
self.fires[key].update(fuel=[{"tier": 0, "left": game.fire_bank(1) * 60, "by": "kai"}], at=T0 + 35)
|
||||
self.assertEqual(game.start_action(self.world, self.kai, "tend_all_logs", T0 + 35), "Your piles are all full")
|
||||
|
||||
def test_better_logs_need_the_level(self):
|
||||
self.kai["bank"] = {"maple_logs": 3}
|
||||
self.assertEqual(game.start_action(self.world, self.kai, "tend_forge_maple_logs", T0), "Needs level 45")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue