Fill: Cache get_all_State
This commit is contained in:
parent
cc458ca5b1
commit
95350a1fa9
|
@ -197,7 +197,6 @@ class MultiWorld():
|
|||
self._recache()
|
||||
return self._region_cache[player][regionname]
|
||||
|
||||
|
||||
def get_entrance(self, entrance: str, player: int) -> Entrance:
|
||||
try:
|
||||
return self._entrance_cache[entrance, player]
|
||||
|
@ -205,7 +204,6 @@ class MultiWorld():
|
|||
self._recache()
|
||||
return self._entrance_cache[entrance, player]
|
||||
|
||||
|
||||
def get_location(self, location: str, player: int) -> Location:
|
||||
try:
|
||||
return self._location_cache[location, player]
|
||||
|
@ -213,15 +211,18 @@ class MultiWorld():
|
|||
self._recache()
|
||||
return self._location_cache[location, player]
|
||||
|
||||
|
||||
def get_dungeon(self, dungeonname: str, player: int) -> Dungeon:
|
||||
for dungeon in self.dungeons:
|
||||
if dungeon.name == dungeonname and dungeon.player == player:
|
||||
return dungeon
|
||||
raise KeyError('No such dungeon %s for player %d' % (dungeonname, player))
|
||||
|
||||
|
||||
def get_all_state(self, keys=False) -> CollectionState:
|
||||
key = f"_all_state_{keys}"
|
||||
cached = getattr(self, key, None)
|
||||
if cached:
|
||||
return cached.copy()
|
||||
|
||||
ret = CollectionState(self)
|
||||
|
||||
for item in self.itempool:
|
||||
|
@ -246,6 +247,7 @@ class MultiWorld():
|
|||
p):
|
||||
world.collect(ret, item)
|
||||
ret.sweep_for_events()
|
||||
setattr(self, key, ret)
|
||||
return ret
|
||||
|
||||
def get_items(self) -> list:
|
||||
|
|
15
Main.py
15
Main.py
|
@ -271,13 +271,14 @@ def main(args, seed=None):
|
|||
|
||||
world.spoiler.hashes[(player, team)] = get_hash_string(rom.hash)
|
||||
|
||||
palettes_options = {}
|
||||
palettes_options['dungeon'] = args.uw_palettes[player]
|
||||
palettes_options['overworld'] = args.ow_palettes[player]
|
||||
palettes_options['hud'] = args.hud_palettes[player]
|
||||
palettes_options['sword'] = args.sword_palettes[player]
|
||||
palettes_options['shield'] = args.shield_palettes[player]
|
||||
palettes_options['link'] = args.link_palettes[player]
|
||||
palettes_options = {
|
||||
'dungeon': args.uw_palettes[player],
|
||||
'overworld': args.ow_palettes[player],
|
||||
'hud': args.hud_palettes[player],
|
||||
'sword': args.sword_palettes[player],
|
||||
'shield': args.shield_palettes[player],
|
||||
'link': args.link_palettes[player]
|
||||
}
|
||||
|
||||
apply_rom_settings(rom, args.heartbeep[player], args.heartcolor[player], args.quickswap[player],
|
||||
args.fastmenu[player], args.disablemusic[player], args.sprite[player],
|
||||
|
|
Loading…
Reference in New Issue