Raid replay plays like a fight; fight-once can be joined
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
4f2d113abd
commit
387f4c201b
4 changed files with 513 additions and 112 deletions
|
|
@ -2868,6 +2868,22 @@ class PartyTest(unittest.TestCase):
|
|||
self.assertIsNone(game.join_fight(world, kay, "wil", T0))
|
||||
self.assertEqual(game.join_fight(world, wil, "kay", T0), "Already fighting together")
|
||||
|
||||
def test_a_boss_fought_once_can_be_joined(self):
|
||||
world, wil, kay = self.pair(level=30)
|
||||
for p in (wil, kay):
|
||||
p["equip"].update(weapon="steel_sword", shield="steel_shield", helmet="steel_helmet", body="steel_body",
|
||||
legs="steel_legs")
|
||||
p["bank"] = {"cooked_salmon": 5000}
|
||||
game.start_action(world, wil, "mine_stone", T0)
|
||||
self.assertIsNone(game.start_action(world, wil, "fight_ruins", T0, once=True))
|
||||
self.assertTrue(game.joinable(world, wil))
|
||||
self.assertIsNone(game.join_fight(world, kay, "wil", T0))
|
||||
self.online(world, T0 + 3600, random.Random(6))
|
||||
self.assertEqual(wil["away"]["with"], {"Kay": 1})
|
||||
self.assertEqual(wil["action"]["id"], "mine_stone") # one kill, then back to mining
|
||||
self.assertEqual(kay["action"]["id"], "fight_ruins") # waiting for the next group
|
||||
self.assertEqual(world["parties"], {})
|
||||
|
||||
def test_bosses_give_everyone_their_own_loot(self):
|
||||
world, wil, kay = self.pair(level=30)
|
||||
for p in (wil, kay):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue