yaze 0.2.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::zelda3::Room Class Reference

#include <room.h>

Collaboration diagram for yaze::zelda3::Room:

Public Member Functions

 Room ()=default
 
 Room (int room_id, Rom *rom)
 
void LoadRoomGraphics (uint8_t entrance_blockset=0xFF)
 
void CopyRoomGraphicsToBuffer ()
 
void RenderRoomGraphics ()
 
void LoadAnimatedGraphics ()
 
void LoadObjects ()
 
void LoadSprites ()
 
void LoadChests ()
 
auto blocks () const
 
auto & mutable_blocks ()
 
auto rom ()
 
auto mutable_rom ()
 

Public Attributes

Romrom_
 
uint8_t blockset = 0
 
uint8_t spriteset = 0
 
uint8_t palette = 0
 
uint8_t layout = 0
 
uint8_t holewarp = 0
 
uint8_t floor1 = 0
 
uint8_t floor2 = 0
 
uint16_t message_id_ = 0
 
std::array< uint8_t, 0x4000 > current_gfx16_
 
bool is_light_
 
bool is_loaded_
 
bool is_dark_
 
bool is_floor_ = true
 
int room_id_
 
int animated_frame_
 
uint8_t staircase_plane_ [4]
 
uint8_t staircase_rooms_ [4]
 
uint8_t background_tileset_
 
uint8_t sprite_tileset_
 
uint8_t layer2_behavior_
 
uint8_t palette_
 
uint8_t floor1_graphics_
 
uint8_t floor2_graphics_
 
uint8_t layer2_mode_
 
std::array< uint8_t, 16 > blocks_
 
std::array< chest, 16 > chest_list_
 
std::vector< RoomObjecttile_objects_
 
std::vector< zelda3::Spritesprites_
 
std::vector< staircasez3_staircases_
 
std::vector< chest_datachests_in_room_
 
LayerMergeType layer_merging_
 
CollisionKey collision_
 
EffectKey effect_
 
TagKey tag1_
 
TagKey tag2_
 
background2 bg2_
 
destination pits_
 
destination stair1_
 
destination stair2_
 
destination stair3_
 
destination stair4_
 

Detailed Description

Definition at line 200 of file room.h.

Constructor & Destructor Documentation

◆ Room() [1/2]

yaze::zelda3::Room::Room ( )
default

◆ Room() [2/2]

yaze::zelda3::Room::Room ( int room_id,
Rom * rom )
inline

Definition at line 203 of file room.h.

References rom(), rom_, and room_id_.

Here is the call graph for this function:

Member Function Documentation

◆ LoadRoomGraphics()

void yaze::zelda3::Room::LoadRoomGraphics ( uint8_t entrance_blockset = 0xFF)

Definition at line 193 of file room.cc.

References blocks_, blockset, rom(), and spriteset.

Here is the call graph for this function:

◆ CopyRoomGraphicsToBuffer()

void yaze::zelda3::Room::CopyRoomGraphicsToBuffer ( )

Definition at line 226 of file room.cc.

References blocks_, current_gfx16_, yaze::zelda3::kGfxBufferRoomOffset, yaze::zelda3::kGfxBufferRoomSpriteLastLineOffset, LoadAnimatedGraphics(), and rom().

Referenced by RenderRoomGraphics().

Here is the call graph for this function:

◆ RenderRoomGraphics()

◆ LoadAnimatedGraphics()

void yaze::zelda3::Room::LoadAnimatedGraphics ( )

Definition at line 278 of file room.cc.

References animated_frame_, background_tileset_, current_gfx16_, rom(), and yaze::SnesToPc().

Referenced by CopyRoomGraphicsToBuffer().

Here is the call graph for this function:

◆ LoadObjects()

◆ LoadSprites()

◆ LoadChests()

void yaze::zelda3::Room::LoadChests ( )

Definition at line 486 of file room.cc.

References yaze::zelda3::chests_data_pointer1, chests_in_room_, yaze::zelda3::chests_length_pointer, rom(), room_id_, and yaze::SnesToPc().

Referenced by LoadObjects().

Here is the call graph for this function:

◆ blocks()

auto yaze::zelda3::Room::blocks ( ) const
inline

Definition at line 213 of file room.h.

References blocks_.

◆ mutable_blocks()

auto & yaze::zelda3::Room::mutable_blocks ( )
inline

Definition at line 214 of file room.h.

References blocks_.

◆ rom()

auto yaze::zelda3::Room::rom ( )
inline

◆ mutable_rom()

auto yaze::zelda3::Room::mutable_rom ( )
inline

Definition at line 216 of file room.h.

References rom_.

Member Data Documentation

◆ rom_

Rom* yaze::zelda3::Room::rom_

Definition at line 218 of file room.h.

Referenced by mutable_rom(), rom(), and Room().

◆ blockset

uint8_t yaze::zelda3::Room::blockset = 0

Definition at line 220 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom(), and LoadRoomGraphics().

◆ spriteset

uint8_t yaze::zelda3::Room::spriteset = 0

Definition at line 221 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom(), and LoadRoomGraphics().

◆ palette

uint8_t yaze::zelda3::Room::palette = 0

Definition at line 222 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ layout

uint8_t yaze::zelda3::Room::layout = 0

Definition at line 223 of file room.h.

Referenced by LoadObjects().

◆ holewarp

uint8_t yaze::zelda3::Room::holewarp = 0

Definition at line 224 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ floor1

uint8_t yaze::zelda3::Room::floor1 = 0

Definition at line 225 of file room.h.

◆ floor2

uint8_t yaze::zelda3::Room::floor2 = 0

Definition at line 226 of file room.h.

◆ message_id_

uint16_t yaze::zelda3::Room::message_id_ = 0

Definition at line 227 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ current_gfx16_

std::array<uint8_t, 0x4000> yaze::zelda3::Room::current_gfx16_

Definition at line 229 of file room.h.

Referenced by CopyRoomGraphicsToBuffer(), LoadAnimatedGraphics(), and RenderRoomGraphics().

◆ is_light_

bool yaze::zelda3::Room::is_light_

Definition at line 231 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ is_loaded_

bool yaze::zelda3::Room::is_loaded_

Definition at line 232 of file room.h.

◆ is_dark_

bool yaze::zelda3::Room::is_dark_

Definition at line 233 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ is_floor_

bool yaze::zelda3::Room::is_floor_ = true

Definition at line 234 of file room.h.

Referenced by LoadObjects().

◆ room_id_

int yaze::zelda3::Room::room_id_

Definition at line 236 of file room.h.

Referenced by LoadChests(), LoadObjects(), LoadSprites(), and Room().

◆ animated_frame_

int yaze::zelda3::Room::animated_frame_

Definition at line 237 of file room.h.

Referenced by LoadAnimatedGraphics().

◆ staircase_plane_

uint8_t yaze::zelda3::Room::staircase_plane_[4]

Definition at line 239 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ staircase_rooms_

uint8_t yaze::zelda3::Room::staircase_rooms_[4]

Definition at line 240 of file room.h.

Referenced by LoadObjects(), and yaze::zelda3::LoadRoomFromRom().

◆ background_tileset_

uint8_t yaze::zelda3::Room::background_tileset_

Definition at line 242 of file room.h.

Referenced by LoadAnimatedGraphics(), and yaze::zelda3::LoadRoomFromRom().

◆ sprite_tileset_

uint8_t yaze::zelda3::Room::sprite_tileset_

Definition at line 243 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ layer2_behavior_

uint8_t yaze::zelda3::Room::layer2_behavior_

Definition at line 244 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ palette_

uint8_t yaze::zelda3::Room::palette_

Definition at line 245 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ floor1_graphics_

uint8_t yaze::zelda3::Room::floor1_graphics_

Definition at line 246 of file room.h.

Referenced by LoadObjects(), and RenderRoomGraphics().

◆ floor2_graphics_

uint8_t yaze::zelda3::Room::floor2_graphics_

Definition at line 247 of file room.h.

Referenced by LoadObjects(), and RenderRoomGraphics().

◆ layer2_mode_

uint8_t yaze::zelda3::Room::layer2_mode_

Definition at line 248 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ blocks_

std::array<uint8_t, 16> yaze::zelda3::Room::blocks_

Definition at line 250 of file room.h.

Referenced by blocks(), CopyRoomGraphicsToBuffer(), LoadRoomGraphics(), and mutable_blocks().

◆ chest_list_

std::array<chest, 16> yaze::zelda3::Room::chest_list_

Definition at line 251 of file room.h.

◆ tile_objects_

std::vector<RoomObject> yaze::zelda3::Room::tile_objects_

Definition at line 253 of file room.h.

Referenced by LoadObjects().

◆ sprites_

std::vector<zelda3::Sprite> yaze::zelda3::Room::sprites_

Definition at line 254 of file room.h.

Referenced by LoadSprites().

◆ z3_staircases_

std::vector<staircase> yaze::zelda3::Room::z3_staircases_

Definition at line 255 of file room.h.

Referenced by LoadObjects().

◆ chests_in_room_

std::vector<chest_data> yaze::zelda3::Room::chests_in_room_

Definition at line 256 of file room.h.

Referenced by LoadChests(), and LoadObjects().

◆ layer_merging_

LayerMergeType yaze::zelda3::Room::layer_merging_

Definition at line 258 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ collision_

CollisionKey yaze::zelda3::Room::collision_

Definition at line 259 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ effect_

EffectKey yaze::zelda3::Room::effect_

Definition at line 260 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ tag1_

TagKey yaze::zelda3::Room::tag1_

Definition at line 261 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ tag2_

TagKey yaze::zelda3::Room::tag2_

Definition at line 262 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ bg2_

background2 yaze::zelda3::Room::bg2_

Definition at line 264 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ pits_

destination yaze::zelda3::Room::pits_

Definition at line 265 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ stair1_

destination yaze::zelda3::Room::stair1_

Definition at line 266 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ stair2_

destination yaze::zelda3::Room::stair2_

Definition at line 267 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ stair3_

destination yaze::zelda3::Room::stair3_

Definition at line 268 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().

◆ stair4_

destination yaze::zelda3::Room::stair4_

Definition at line 269 of file room.h.

Referenced by yaze::zelda3::LoadRoomFromRom().


The documentation for this class was generated from the following files: