Merge remote-tracking branch 'origin/OverworldShuffle' into GwaaKiwi
This commit is contained in:
18
Main.py
18
Main.py
@@ -27,7 +27,7 @@ from Dungeons import create_dungeons
|
||||
from Fill import distribute_items_restrictive, promote_dungeon_items, fill_dungeons_restrictive, ensure_good_items
|
||||
from Fill import dungeon_tracking
|
||||
from Fill import sell_potions, sell_keys, balance_multiworld_progression, balance_money_progression, lock_shop_locations, set_prize_drops
|
||||
from ItemList import generate_itempool, difficulties, fill_prizes, customize_shops, fill_specific_items, create_farm_locations
|
||||
from ItemList import generate_itempool, difficulties, fill_prizes, customize_shops, fill_specific_items, create_farm_locations, shuffle_event_items, follower_pickups
|
||||
from UnderworldGlitchRules import connect_hmg_entrances_regions, create_hmg_entrances_regions
|
||||
from Utils import output_path, parse_player_names
|
||||
|
||||
@@ -40,7 +40,7 @@ from source.enemizer.DamageTables import DamageTable
|
||||
from source.enemizer.Enemizer import randomize_enemies
|
||||
from source.rom.DataTables import init_data_tables
|
||||
|
||||
version_number = '1.4.8.1'
|
||||
version_number = '1.4.9'
|
||||
version_branch = '-u'
|
||||
__version__ = f'{version_number}{version_branch}'
|
||||
|
||||
@@ -245,6 +245,7 @@ def main(args, seed=None, fish=None):
|
||||
sell_keys(world, player)
|
||||
else:
|
||||
lock_shop_locations(world, player)
|
||||
shuffle_event_items(world, player)
|
||||
|
||||
massage_item_pool(world)
|
||||
logger.info(world.fish.translate("cli", "cli", "placing.dungeon.prizes"))
|
||||
@@ -435,6 +436,9 @@ def export_yaml(args, fish):
|
||||
for k,v in {"DR":__version__,"OR":ORVersion}.items():
|
||||
logger.info((k + ' Version:').ljust(16) + '%s' % v)
|
||||
|
||||
for player in range(1, world.players + 1):
|
||||
world.difficulty_requirements[player] = difficulties[world.difficulty[player]]
|
||||
|
||||
set_starting_inventory(world, args)
|
||||
|
||||
world.settings = CustomSettings()
|
||||
@@ -479,6 +483,7 @@ def init_world(args, fish):
|
||||
world.owKeepSimilar = args.ow_keepsimilar.copy()
|
||||
world.owWhirlpoolShuffle = args.ow_whirlpool.copy()
|
||||
world.owFluteShuffle = args.ow_fluteshuffle.copy()
|
||||
world.shuffle_followers = args.shuffle_followers.copy()
|
||||
world.shuffle_bonk_drops = args.bonk_drops.copy()
|
||||
world.open_pyramid = args.openpyramid.copy()
|
||||
world.boss_shuffle = args.shufflebosses.copy()
|
||||
@@ -535,6 +540,7 @@ def set_starting_inventory(world, args):
|
||||
if world.customizer and world.customizer.get_start_inventory():
|
||||
for p, inv_list in world.customizer.get_start_inventory().items():
|
||||
if inv_list:
|
||||
follower_added = False
|
||||
for inv_item in inv_list:
|
||||
name = inv_item.strip()
|
||||
if inv_item == 'RandomWeapon':
|
||||
@@ -548,7 +554,13 @@ def set_starting_inventory(world, args):
|
||||
item = ItemFactory(e, p)
|
||||
if item:
|
||||
world.push_precollected(item)
|
||||
elif inv_item == 'RandomFollower':
|
||||
name = random.choice([f for f in follower_pickups if f != 'Zelda Herself' or world.mode[p] == 'standard'])
|
||||
name = name if name != 'Ocarina' or world.flute_mode[p] != 'active' else 'Ocarina (Activated)'
|
||||
if name in follower_pickups:
|
||||
if not world.shuffle_followers[p] or follower_added:
|
||||
continue
|
||||
follower_added = True
|
||||
item = ItemFactory(name, p)
|
||||
if item:
|
||||
world.push_precollected(item)
|
||||
@@ -596,6 +608,7 @@ def copy_world(world):
|
||||
ret.owKeepSimilar = world.owKeepSimilar.copy()
|
||||
ret.owWhirlpoolShuffle = world.owWhirlpoolShuffle.copy()
|
||||
ret.owFluteShuffle = world.owFluteShuffle.copy()
|
||||
ret.shuffle_followers = world.shuffle_followers.copy()
|
||||
ret.shuffle_bonk_drops = world.shuffle_bonk_drops.copy()
|
||||
ret.open_pyramid = world.open_pyramid.copy()
|
||||
ret.shufflelinks = world.shufflelinks.copy()
|
||||
@@ -818,6 +831,7 @@ def copy_world_premature(world, player):
|
||||
ret.owKeepSimilar = world.owKeepSimilar.copy()
|
||||
ret.owWhirlpoolShuffle = world.owWhirlpoolShuffle.copy()
|
||||
ret.owFluteShuffle = world.owFluteShuffle.copy()
|
||||
ret.shuffle_followers = world.shuffle_followers.copy()
|
||||
ret.shuffle_bonk_drops = world.shuffle_bonk_drops.copy()
|
||||
ret.open_pyramid = world.open_pyramid.copy()
|
||||
ret.shufflelinks = world.shufflelinks.copy()
|
||||
|
||||
Reference in New Issue
Block a user