Stardew Valley: Fixed potential softlock with walnut purchases if Entrance Randomizer locks access to the field office (#2261)
* - Added logic rules for reaching, then completing, the field office in order to be allowed to spend significant amounts of walnuts * - Revert moving a method for some reason
This commit is contained in:
parent
b9ce2052c5
commit
80fed1c6fb
|
@ -1536,6 +1536,7 @@ class StardewLogic:
|
|||
reach_west = self.can_reach_region(Region.island_west)
|
||||
reach_hut = self.can_reach_region(Region.leo_hut)
|
||||
reach_southeast = self.can_reach_region(Region.island_south_east)
|
||||
reach_field_office = self.can_reach_region(Region.field_office)
|
||||
reach_pirate_cove = self.can_reach_region(Region.pirate_cove)
|
||||
reach_outside_areas = And(reach_south, reach_north, reach_west, reach_hut)
|
||||
reach_volcano_regions = [self.can_reach_region(Region.volcano),
|
||||
|
@ -1544,12 +1545,12 @@ class StardewLogic:
|
|||
self.can_reach_region(Region.volcano_floor_10)]
|
||||
reach_volcano = Or(reach_volcano_regions)
|
||||
reach_all_volcano = And(reach_volcano_regions)
|
||||
reach_walnut_regions = [reach_south, reach_north, reach_west, reach_volcano]
|
||||
reach_walnut_regions = [reach_south, reach_north, reach_west, reach_volcano, reach_field_office]
|
||||
reach_caves = And(self.can_reach_region(Region.qi_walnut_room), self.can_reach_region(Region.dig_site),
|
||||
self.can_reach_region(Region.gourmand_frog_cave),
|
||||
self.can_reach_region(Region.colored_crystals_cave),
|
||||
self.can_reach_region(Region.shipwreck), self.has(Weapon.any_slingshot))
|
||||
reach_entire_island = And(reach_outside_areas, reach_all_volcano,
|
||||
reach_entire_island = And(reach_outside_areas, reach_field_office, reach_all_volcano,
|
||||
reach_caves, reach_southeast, reach_pirate_cove)
|
||||
if number <= 5:
|
||||
return Or(reach_south, reach_north, reach_west, reach_volcano)
|
||||
|
@ -1563,7 +1564,8 @@ class StardewLogic:
|
|||
return reach_entire_island
|
||||
gems = [Mineral.amethyst, Mineral.aquamarine, Mineral.emerald, Mineral.ruby, Mineral.topaz]
|
||||
return reach_entire_island & self.has(Fruit.banana) & self.has(gems) & self.can_mine_perfectly() & \
|
||||
self.can_fish_perfectly() & self.has(Craftable.flute_block) & self.has(Seed.melon) & self.has(Seed.wheat) & self.has(Seed.garlic)
|
||||
self.can_fish_perfectly() & self.has(Craftable.flute_block) & self.has(Seed.melon) & self.has(Seed.wheat) & self.has(Seed.garlic) & \
|
||||
self.can_complete_field_office()
|
||||
|
||||
def has_everything(self, all_progression_items: Set[str]) -> StardewRule:
|
||||
all_regions = [region.name for region in vanilla_regions]
|
||||
|
|
Loading…
Reference in New Issue