Marking OWEdge exits separately from Entrances
This commit is contained in:
@@ -160,6 +160,7 @@ class World(object):
|
|||||||
def initialize_owedges(self, edges):
|
def initialize_owedges(self, edges):
|
||||||
for edge in edges:
|
for edge in edges:
|
||||||
self._owedge_cache[(edge.name, edge.player)] = edge
|
self._owedge_cache[(edge.name, edge.player)] = edge
|
||||||
|
self._entrance_cache[edge.name, edge.player].spot_type = 'OWEdge'
|
||||||
|
|
||||||
def initialize_doors(self, doors):
|
def initialize_doors(self, doors):
|
||||||
for door in doors:
|
for door in doors:
|
||||||
@@ -586,7 +587,7 @@ class CollectionState(object):
|
|||||||
# try to resolve a name
|
# try to resolve a name
|
||||||
if resolution_hint == 'Location':
|
if resolution_hint == 'Location':
|
||||||
spot = self.world.get_location(spot, player)
|
spot = self.world.get_location(spot, player)
|
||||||
elif resolution_hint == 'Entrance':
|
elif resolution_hint in ['Entrance', 'OWEdge']:
|
||||||
spot = self.world.get_entrance(spot, player)
|
spot = self.world.get_entrance(spot, player)
|
||||||
else:
|
else:
|
||||||
# default to Region
|
# default to Region
|
||||||
|
|||||||
2
Main.py
2
Main.py
@@ -128,10 +128,10 @@ def main(args, seed=None, fish=None):
|
|||||||
world.push_precollected(item)
|
world.push_precollected(item)
|
||||||
|
|
||||||
create_regions(world, player)
|
create_regions(world, player)
|
||||||
|
create_dungeon_regions(world, player)
|
||||||
create_owedges(world, player)
|
create_owedges(world, player)
|
||||||
if world.logic[player] in ('owglitches', 'nologic'):
|
if world.logic[player] in ('owglitches', 'nologic'):
|
||||||
create_owg_connections(world, player)
|
create_owg_connections(world, player)
|
||||||
create_dungeon_regions(world, player)
|
|
||||||
create_shops(world, player)
|
create_shops(world, player)
|
||||||
create_doors(world, player)
|
create_doors(world, player)
|
||||||
create_rooms(world, player)
|
create_rooms(world, player)
|
||||||
|
|||||||
Reference in New Issue
Block a user