1#ifndef YAZE_ZELDA3_DUNGEON_OBJECT_LAYER_SEMANTICS_H_
2#define YAZE_ZELDA3_DUNGEON_OBJECT_LAYER_SEMANTICS_H_
30 const auto options =
object.options();
45 const bool routine_both =
112 return "Stored placement";
114 return "BG1 (fixed)";
116 return "BG2 (fixed)";
118 return "Both BGs (full)";
120 return "Mixed BG1/BG2";
131 ?
"BG2 (stored placement)"
132 :
"BG1 (stored placement)";
bool RoutineDrawsToBothBGs(int routine_id) const
int GetRoutineIdForObject(int16_t object_id) const
static DrawRoutineRegistry & Get()
constexpr int kStraightInterRoomStairs
constexpr int kAgahnimsAltar
constexpr int kSpiralStairsGoingDownUpper
constexpr int kSpiralStairsGoingUpUpper
constexpr int kSpiralStairsGoingUpLower
constexpr int kAutoStairs
constexpr int kSpiralStairsGoingDownLower
constexpr int kFortuneTellerRoom
constexpr bool IsFullBothAutoStairsObject(int object_id)
constexpr bool IsMixedStraightInterroomObject(int object_id)
ObjectLayerSemantics GetObjectLayerSemantics(const RoomObject &object)
const char * ObjectRenderRoutingLabel(ObjectRenderRouting routing)
const char * ObjectRenderRoutingToken(ObjectRenderRouting routing)
const char * ObjectRenderRoutingDisplayLabel(const ObjectLayerSemantics &semantics)
bool UsesRoomObjectStream(const RoomObject &object)
bool UsesSpecialLayerSelector(const RoomObject &object)
const char * EffectiveBgLayerLabel(EffectiveBgLayer layer)
ObjectRenderRouting render_routing
EffectiveBgLayer effective_bg_layer