Core: make state.prog_items a Dict[int, Counter[str]] (#2407)

This commit is contained in:
Aaron Wagener
2023-11-02 00:41:20 -05:00
committed by GitHub
parent 19dc0720ba
commit 5669579374
15 changed files with 46 additions and 51 deletions

View File

@@ -470,7 +470,7 @@ class SMZ3World(World):
def collect(self, state: CollectionState, item: Item) -> bool:
state.smz3state[self.player].Add([TotalSMZ3Item.Item(TotalSMZ3Item.ItemType[item.name], self.smz3World if hasattr(self, "smz3World") else None)])
if item.advancement:
state.prog_items[item.name, item.player] += 1
state.prog_items[item.player][item.name] += 1
return True # indicate that a logical state change has occured
return False
@@ -478,9 +478,9 @@ class SMZ3World(World):
name = self.collect_item(state, item, True)
if name:
state.smz3state[item.player].Remove([TotalSMZ3Item.Item(TotalSMZ3Item.ItemType[item.name], self.smz3World if hasattr(self, "smz3World") else None)])
state.prog_items[name, item.player] -= 1
if state.prog_items[name, item.player] < 1:
del (state.prog_items[name, item.player])
state.prog_items[item.player][item.name] -= 1
if state.prog_items[item.player][item.name] < 1:
del (state.prog_items[item.player][item.name])
return True
return False