1#ifndef YAZE_ZELDA3_DUNGEON_DOOR_TYPES_H
2#define YAZE_ZELDA3_DUNGEON_DOOR_TYPES_H
154 default:
return "Unknown/Glitchy Door";
209 return static_cast<DoorType>(raw_type);
constexpr std::array< DoorType, 20 > GetAllDoorTypes()
Get commonly used door types for UI dropdowns Returns the most frequently used door types (not all 52...
constexpr DoorDirection DoorDirectionFromRaw(uint8_t raw_dir)
Convert raw direction byte to DoorDirection enum.
constexpr DoorDimensions GetDoorDimensions(DoorDirection dir)
Get door dimensions based on direction.
DoorType
Door types from ALTTP.
@ NormalDoorOneSidedShutter
Normal door (lower layer; with one-sided shutters)
@ TopShutterLower
Top-sided shutter door (lower layer)
@ FancyDungeonExitLower
Fancy dungeon exit (lower layer)
@ UnusableGlitchyStairs64
Unusable glitchy/stairs up (lower layer)
@ FancyDungeonExit
Fancy dungeon exit.
@ SmallKeyDoor
Small key door.
@ ExitLower
Exit (lower layer)
@ SmallKeyStairsDown
Small key stairs (downwards)
@ UnusableNormalDoor4C
Unusable normal door (lower layer)
@ BombableCaveExit
Bombable cave exit.
@ UnusableBombedDoor
Unusable bombed-open door (lower layer)
@ SmallKeyStairsUp
Small key stairs (upwards)
@ UnusedCaveExit
Unused cave exit (lower layer)
@ DungeonSwapMarker
Dungeon swap marker.
@ NormalDoor
Normal door (upper layer)
@ BombableDoor
Bombable door.
@ LayerSwapMarker
Layer swap marker.
@ UnusableNormalDoor3A
Unusable normal door (lower layer)
@ ExplicitRoomDoor
Explicit room door.
@ UnusableNormalDoor58
Unusable normal door (lower layer)
@ BottomShutterLower
Bottom-sided shutter door (lower layer)
@ ExplodingWall
Exploding wall.
@ TopSidedShutter
Top-sided shutter door.
@ UnusableGlitchyStairsDown66
Unusable glitchy/stairs down (lower layer)
@ UnusableGlitchyStairs5C
Unusable glitchy/stairs up (lower layer)
@ LitCaveExitLower
Lit cave exit (lower layer)
@ DoubleSidedShutterLower
Double-sided shutter (lower layer)
@ UnusableBottomShutter
Unusable bottom-sided shutter door.
@ UnusableNormalDoor4E
Unusable normal door (lower layer)
@ UnusableGlitchyStairs5E
Unusable glitchy/stairs up (lower layer)
@ UnopenableBigKeyDoor
Unopenable, double-sided big key door.
@ NormalDoorLower
Normal door (lower layer)
@ BottomSidedShutter
Bottom-sided shutter door.
@ UnusedDoubleSidedShutter
Unused double-sided shutter.
@ UnusableGlitchyDoor54
Unusable glitchy door (lower layer)
@ UnusableGlitchyStairs60
Unusable glitchy/stairs up (lower layer)
@ SmallKeyStairsDownLower
Small key stairs (lower layer; downwards)
@ CurtainDoor
Curtain door.
@ WaterfallDoor
Waterfall door.
@ BigKeyDoor
Big key door.
@ EyeWatchDoor
Eye watch door.
@ UnusableGlitchyStairsDown62
Unusable glitchy/stairs down (lower layer)
@ SmallKeyStairsUpLower
Small key stairs (lower layer; upwards)
@ UnusableGlitchyStairs5A
Unusable glitchy/stairs up (lower layer)
@ UnusableNormalDoor3E
Unusable normal door (lower layer)
@ UnusableGlitchyDoor56
Unusable glitchy door (lower layer)
@ DoubleSidedShutter
Double sided shutter door.
@ UnusableNormalDoor3C
Unusable normal door (lower layer)
@ UnusableNormalDoor50
Unusable normal door (lower layer)
constexpr std::string_view GetDoorDirectionName(DoorDirection dir)
Get human-readable name for door direction.
constexpr DoorType DoorTypeFromRaw(uint8_t raw_type)
Convert raw type byte to DoorType enum.
constexpr std::string_view GetDoorTypeName(DoorType type)
Get human-readable name for door type.
DoorDirection
Door direction on room walls.
@ South
Bottom wall (horizontal door, 4x3 tiles)
@ North
Top wall (horizontal door, 4x3 tiles)
@ East
Right wall (vertical door, 3x4 tiles)
@ West
Left wall (vertical door, 3x4 tiles)
Door dimensions in tiles (8x8 pixel tiles)
int height_pixels() const
int width_tiles
Width in 8x8 tiles.
int height_tiles
Height in 8x8 tiles.