fix rendering of portals
Run Python Build / build (push) Failing after 14s
Details
Run Python Build / build (push) Failing after 14s
Details
This commit is contained in:
parent
368bfc2602
commit
7a36ba8b64
|
@ -38,7 +38,7 @@ from adventure.player import (
|
||||||
)
|
)
|
||||||
from adventure.render.comfy import render_entity, render_event
|
from adventure.render.comfy import render_entity, render_event
|
||||||
from adventure.state import snapshot_world, world_json
|
from adventure.state import snapshot_world, world_json
|
||||||
from adventure.utils.search import find_actor, find_item, find_room
|
from adventure.utils.search import find_actor, find_item, find_portal, find_room
|
||||||
|
|
||||||
logger = getLogger(__name__)
|
logger = getLogger(__name__)
|
||||||
|
|
||||||
|
@ -227,13 +227,6 @@ def render_input(data):
|
||||||
render_entity(actor)
|
render_entity(actor)
|
||||||
else:
|
else:
|
||||||
logger.error(f"failed to find actor {actor_name}")
|
logger.error(f"failed to find actor {actor_name}")
|
||||||
elif "room" in data:
|
|
||||||
room_name = data["room"]
|
|
||||||
room = find_room(world, room_name)
|
|
||||||
if room:
|
|
||||||
render_entity(room)
|
|
||||||
else:
|
|
||||||
logger.error(f"failed to find room {room_name}")
|
|
||||||
elif "item" in data:
|
elif "item" in data:
|
||||||
item_name = data["item"]
|
item_name = data["item"]
|
||||||
item = find_item(
|
item = find_item(
|
||||||
|
@ -243,6 +236,20 @@ def render_input(data):
|
||||||
render_entity(item)
|
render_entity(item)
|
||||||
else:
|
else:
|
||||||
logger.error(f"failed to find item {item_name}")
|
logger.error(f"failed to find item {item_name}")
|
||||||
|
elif "portal" in data:
|
||||||
|
portal_name = data["portal"]
|
||||||
|
portal = find_portal(world, portal_name)
|
||||||
|
if portal:
|
||||||
|
render_entity(portal)
|
||||||
|
else:
|
||||||
|
logger.error(f"failed to find portal {portal_name}")
|
||||||
|
elif "room" in data:
|
||||||
|
room_name = data["room"]
|
||||||
|
room = find_room(world, room_name)
|
||||||
|
if room:
|
||||||
|
render_entity(room)
|
||||||
|
else:
|
||||||
|
logger.error(f"failed to find room {room_name}")
|
||||||
else:
|
else:
|
||||||
logger.error(f"failed to find entity in {data}")
|
logger.error(f"failed to find entity in {data}")
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,15 @@ def find_room(world: World, room_name: str) -> Room | None:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
def find_portal(world: World, portal_name: str) -> Portal | None:
|
||||||
|
for room in world.rooms:
|
||||||
|
for portal in room.portals:
|
||||||
|
if normalize_name(portal.name) == normalize_name(portal_name):
|
||||||
|
return portal
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
def find_actor(world: World, actor_name: str) -> Actor | None:
|
def find_actor(world: World, actor_name: str) -> Actor | None:
|
||||||
for room in world.rooms:
|
for room in world.rooms:
|
||||||
actor = find_actor_in_room(room, actor_name)
|
actor = find_actor_in_room(room, actor_name)
|
||||||
|
|
Loading…
Reference in New Issue