AutoWorld: add post_fill
LttP: Move ShopSlotFill to post_fill
This commit is contained in:
parent
7ba4bfc0d5
commit
baa7992a7a
6
Main.py
6
Main.py
|
@ -14,7 +14,7 @@ from BaseClasses import MultiWorld, CollectionState, Region, RegionType
|
|||
from worlds.alttp.Items import item_name_groups
|
||||
from worlds.alttp.Regions import lookup_vanilla_location_to_entrance
|
||||
from Fill import distribute_items_restrictive, flood_items, balance_multiworld_progression, distribute_planned
|
||||
from worlds.alttp.Shops import ShopSlotFill, SHOP_ID_START, total_shop_slots, FillDisabledShopSlots
|
||||
from worlds.alttp.Shops import SHOP_ID_START, total_shop_slots, FillDisabledShopSlots
|
||||
from Utils import output_path, get_options, __version__, version_tuple
|
||||
from worlds.generic.Rules import locality_rules, exclusion_rules
|
||||
from worlds import AutoWorld
|
||||
|
@ -198,9 +198,7 @@ def main(args, seed=None):
|
|||
elif world.algorithm == 'balanced':
|
||||
distribute_items_restrictive(world)
|
||||
|
||||
logger.info("Filling Shop Slots")
|
||||
|
||||
ShopSlotFill(world)
|
||||
AutoWorld.call_all(world, 'post_fill')
|
||||
|
||||
if world.players > 1:
|
||||
balance_multiworld_progression(world)
|
||||
|
|
|
@ -138,6 +138,9 @@ class World(metaclass=AutoWorldRegister):
|
|||
This gets called once per present world type."""
|
||||
pass
|
||||
|
||||
def post_fill(self):
|
||||
"""Optional Method that is called after regular fill. Can be used to do adjustments before output generation."""
|
||||
|
||||
def generate_output(self, output_directory: str):
|
||||
"""This method gets called from a threadpool, do not use world.random here.
|
||||
If you need any last-second randomization, use MultiWorld.slot_seeds[slot] instead."""
|
||||
|
|
|
@ -159,6 +159,7 @@ def ShopSlotFill(world):
|
|||
shop_slots -= removed
|
||||
|
||||
if shop_slots:
|
||||
logger.info("Filling LttP Shop Slots")
|
||||
del shop_slots
|
||||
|
||||
from Fill import swap_location_item
|
||||
|
|
|
@ -229,6 +229,10 @@ class ALTTPWorld(World):
|
|||
from .Dungeons import fill_dungeons_restrictive
|
||||
fill_dungeons_restrictive(world)
|
||||
|
||||
@classmethod
|
||||
def stage_post_fill(cls, world):
|
||||
Shops.ShopSlotFill(world)
|
||||
|
||||
def generate_output(self, output_directory: str):
|
||||
world = self.world
|
||||
player = self.player
|
||||
|
|
Loading…
Reference in New Issue