Spielerliste nach Boardstärke sortiert; Loot droppt Komponenten, Craften per Ziehen auf Unit

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
team3
2026-07-23 09:34:12 +02:00
parent f53f1e5c14
commit c82c9b0b01
8 changed files with 113 additions and 32 deletions

View File

@@ -221,3 +221,22 @@ def test_augment_offer_single_tier(art, cfg):
tiers = {mixed[a]["tier"] for a in game.player.augment_offer}
assert len(game.player.augment_offer) == 3
assert len(tiers) == 1 # alle Angebote aus derselben Stufe
def test_equip_crafts_completed_item(art, cfg):
game = Game(art, cfg, seed=1)
craft_art = {**art, "component_pool": ["C_A", "C_B"],
"recipes": {"C_A|C_B": "COMPLETED"}}
game.artifact = craft_art
game.board = [{"api_name": "U1_0", "stars": 1, "items": ["C_A"]}]
game.items = ["C_B", "C_A"]
game.equip(0, 0) # C_B auf Unit mit C_A -> COMPLETED
assert game.board[0]["items"] == ["COMPLETED"]
game.equip(0, 0) # C_A ohne Partner -> eigener Slot
assert game.board[0]["items"] == ["COMPLETED", "C_A"]
def test_loot_drops_components(art, cfg):
comp_art = {**art, "component_pool": ["C_A", "C_B"]}
game = Game(comp_art, cfg, seed=2)
assert all(i in ("C_A", "C_B") for i in game.items) # Carousel-Drop