#include <overworld.h>
Classes | |
| struct | SubscreenOverlayLayer |
| Subscreen overlay layer for one screen, in that screen's palette. More... | |
| struct | TilesetCacheEntry |
Public Member Functions | |
| Overworld (Rom *rom, GameData *game_data=nullptr) | |
| void | SetGameData (GameData *game_data) |
| zelda3_version_pointers | version_constants () const |
| Get version-specific ROM addresses. | |
| absl::Status | Load (Rom *rom) |
| Load all overworld data from ROM. | |
| absl::Status | LoadLyraTerrainPreview (Rom *rom) |
| bool | is_lyra_preview () const |
| int | inspected_map_count () const |
| bool | descriptor_sprite_display_available () const |
| absl::Status | LoadOverworldMaps () |
| Load overworld map tile data. | |
| void | LoadTileTypes () |
| Load tile type collision data. | |
| absl::Status | LoadSprites () |
| Load sprite data for all game states. | |
| absl::StatusOr< OverworldSpriteSavePlan > | PrepareSpriteSave () const |
| absl::Status | SaveSprites () |
| absl::Status | LoadSpritesFromMap (int sprite_start, int sprite_count, int sprite_index) |
| Load sprites from a specific map range. | |
| absl::Status | EnsureMapBuilt (int map_index) |
| Build a map on-demand if it hasn't been built yet. | |
| void | SyncAreaProperties (int map_index) |
| Copy the area parent's render settings (main palette, animated GFX, tile GFX groups, subscreen overlay) onto a child screen. | |
| void | SetGraphicsPreview (OverworldGraphicsPreview preview) |
| absl::StatusOr< SubscreenOverlayLayer > | BuildSubscreenOverlayLayer (int map_index) |
| Build the subscreen overlay layer for a screen (builds the screen if needed). The overlay comes from the area parent's overlay id. | |
| void | ClearGraphicsConfigCache () |
| Drop every cached tileset/blockset. Call after graphics buffer or tile16 edits that are not tied to one sheet. | |
| void | InvalidateTilesetCacheForSheet (int sheet) |
Drop cached tilesets that load sheet (graphics sheet edits). Built maps keep their pixels; mark them dirty/rebuild separately. | |
| size_t | tileset_cache_size () const |
| Number of cached tileset entries (for tests and diagnostics). | |
| void | InvalidateMapCache (int map_index) |
| Invalidate cached tileset for a specific map. | |
| void | InvalidateSiblingMapCaches (int map_index) |
| Invalidate cached tilesets for a map and all its siblings. | |
| absl::Status | Save (Rom *rom) |
| Master save method (calls sub-methods in correct order) | |
| absl::Status | SaveOverworldMaps () |
| Save compressed map tile data to ROM. | |
| void | StageSavedMapTiles () |
| void | CommitSavedMapTiles () |
| void | RollbackSavedMapTiles () |
| absl::Status | SaveLargeMaps () |
| Save large map parent/sibling relationships. | |
| absl::Status | SaveLargeMapsExpanded () |
| Save expanded large map data (v1+ ROMs) | |
| absl::Status | SaveSmallAreaTransitions (int i, int parent_x_pos, int parent_y_pos, int transition_target_north, int transition_target_west, int transition_pos_x, int transition_pos_y, int screen_change_1, int screen_change_2, int screen_change_3, int screen_change_4) |
| Save screen transition data for small (1x1) areas. | |
| absl::Status | SaveLargeAreaTransitions (int i, int parent_x_pos, int parent_y_pos, int transition_target_north, int transition_target_west, int transition_pos_x, int transition_pos_y, int screen_change_1, int screen_change_2, int screen_change_3, int screen_change_4) |
| Save screen transition data for large (2x2) areas. | |
| absl::Status | SaveWideAreaTransitions (int i, int parent_x_pos, int parent_y_pos, int transition_target_north, int transition_target_west, int transition_pos_x, int transition_pos_y, int screen_change_1, int screen_change_2, int screen_change_3, int screen_change_4) |
| Save screen transition data for wide (2x1) areas (v3+ only) | |
| absl::Status | SaveTallAreaTransitions (int i, int parent_x_pos, int parent_y_pos, int transition_target_north, int transition_target_west, int transition_pos_x, int transition_pos_y, int screen_change_1, int screen_change_2, int screen_change_3, int screen_change_4) |
| Save screen transition data for tall (1x2) areas (v3+ only) | |
| absl::Status | SaveEntrances () |
| Save entrance warp points to ROM. | |
| absl::Status | SaveExits () |
| Save exit return points to ROM. | |
| absl::Status | SaveItems () |
| Save hidden overworld items to ROM. | |
| absl::Status | SaveMapOverlays () |
| Save interactive overlay data to ROM. | |
| absl::Status | SaveOverworldTilesType () |
| Save tile type collision data to ROM. | |
| absl::Status | SaveCustomOverworldASM (bool enable_bg_color, bool enable_main_palette, bool enable_mosaic, bool enable_gfx_groups, bool enable_subscreen_overlay, bool enable_animated) |
| Save custom ASM feature enable flags. | |
| absl::Status | SaveAreaSpecificBGColors () |
| Save per-area background colors (v2+) | |
| absl::Status | SaveCustomOverworldData () |
| Save all v2/v3 property tables using the ROM's current feature flags. | |
| absl::Status | CreateTile32Tilemap () |
| Build tile32 tilemap from current tile16 data. | |
| absl::Status | SaveMap16Expanded () |
| Save expanded tile16 definitions (v1+ ROMs) | |
| absl::Status | SaveMap16Tiles () |
| Save tile16 definitions to ROM. | |
| absl::Status | SaveMap32Expanded () |
| Save expanded tile32 definitions (v1+ ROMs) | |
| absl::Status | SaveMap32Tiles () |
| Save tile32 definitions to ROM. | |
| absl::Status | SaveMapProperties () |
| Save per-area graphics, palettes, and messages. | |
| absl::Status | SaveMusic () |
| Save per-area music IDs. | |
| absl::Status | SaveAreaSizes () |
| Save area size enum data (v3+ only) | |
| void | AssignMapSizes (std::vector< OverworldMap > &maps) |
| Assign map sizes based on area size enum (v3+) | |
| absl::Status | ConfigureMultiAreaMap (int parent_index, AreaSizeEnum size) |
| Configure a multi-area map structure (Large/Wide/Tall) | |
| auto | rom () const |
| auto | mutable_rom () |
| std::vector< std::pair< uint32_t, uint32_t > > | GetProjectedWriteRanges () const |
| Get the projected write ranges (PC offsets) for overworld map saves. | |
| bool | HasExpandedPointerTables () const |
| Check if the ROM has expanded pointer tables for tail maps. | |
| void | Destroy () |
| int | GetTileFromPosition (ImVec2 position) const |
| OverworldBlockset & | GetMapTiles (int world_type) |
| const std::vector< OverworldMap > & | overworld_maps () const |
| auto | overworld_map (int i) const |
| auto | mutable_overworld_map (int i) |
| auto | exits () const |
| auto | mutable_exits () |
| const std::vector< gfx::Tile16 > & | tiles16 () const |
| auto | tiles32_unique () const |
| auto | mutable_tiles16 () |
| auto | sprites (int state) const |
| auto | mutable_sprites (int state) |
| const std::vector< uint8_t > & | current_graphics () const |
| const std::vector< OverworldEntrance > & | entrances () const |
| auto & | entrances () |
| auto | mutable_entrances () |
| const std::vector< OverworldEntrance > & | holes () const |
| auto & | holes () |
| auto | mutable_holes () |
| auto | deleted_entrances () const |
| auto | mutable_deleted_entrances () |
| const gfx::SnesPalette & | current_area_palette () const |
| const std::vector< uint8_t > & | current_map_bitmap_data () const |
| const std::vector< uint8_t > & | tile16_blockset_data () const |
| bool | is_current_map_valid () const |
| auto | is_loaded () const |
| auto | expanded_tile16 () const |
| auto | expanded_tile32 () const |
| auto | expanded_entrances () const |
| int | current_map_id () const |
| int | current_world () const |
| void | set_current_map (int i) |
| void | set_current_world (int world) |
| void | set_game_state (int state) |
| uint16_t | GetTile (int x, int y) const |
| void | SetTile (int x, int y, uint16_t tile_id) |
| auto | map_tiles () const |
| auto | mutable_map_tiles () |
| auto | all_items () const |
| auto | mutable_all_items () |
| auto | all_tiles_types () const |
| auto | mutable_all_tiles_types () |
| auto | all_sprites () const |
| const DiggableTiles & | diggable_tiles () const |
| DiggableTiles * | mutable_diggable_tiles () |
| absl::Status | LoadDiggableTiles () |
| absl::Status | SaveDiggableTiles () |
| absl::Status | AutoDetectDiggableTiles () |
Private Types | |
| enum | Dimension { map32TilesTL = 0 , map32TilesTR = 1 , map32TilesBL = 2 , map32TilesBR = 3 } |
| using | TilesetRevisions |
Private Member Functions | |
| void | FetchLargeMaps () |
| absl::StatusOr< uint16_t > | GetTile16ForTile32 (int index, int quadrant, int dimension, const uint32_t *map32address) |
| absl::Status | AssembleMap32Tiles () |
| absl::Status | AssembleMap16Tiles () |
| void | AssignWorldTiles (int x, int y, int sx, int sy, int tpos, OverworldBlockset &world) |
| void | FillBlankMapTiles (int map_index) |
| OverworldBlockset & | SelectWorldBlockset (int world_type) |
| void | OrganizeMapTiles (std::vector< uint8_t > &bytes, std::vector< uint8_t > &bytes2, int i, int sx, int sy, int &ttpos) |
| absl::Status | DecompressAllMapTilesParallel () |
| absl::Status | BuildLyraTerrainPreview (Rom *rom, rom::LyraLayoutInspection layout) |
| bool | MapTilesUnchanged () const |
| TilesetRevisions | SheetRevisionsForKey (const OverworldTilesetKey &key) const |
| uint64_t | Tiles16Fingerprint () const |
| absl::Status | BuildMapWithTilesetCache (int map_index, int world_type) |
Static Private Attributes | |
| static constexpr int | kMaxBuiltMaps = 8 |
| static constexpr size_t | kMaxCachedTilesets = 24 |
Definition at line 408 of file overworld.h.
|
private |
Definition at line 910 of file overworld.h.
|
private |
| Enumerator | |
|---|---|
| map32TilesTL | |
| map32TilesTR | |
| map32TilesBL | |
| map32TilesBR | |
Definition at line 847 of file overworld.h.
Definition at line 410 of file overworld.h.
|
inline |
Definition at line 413 of file overworld.h.
References game_data_.
Referenced by yaze::editor::OverworldEditor::SetGameData().
|
inline |
Get version-specific ROM addresses.
Definition at line 416 of file overworld.h.
References game_data_, and yaze::zelda3::GameData::version.
Referenced by AssembleMap32Tiles(), CreateTile32Tilemap(), DecompressAllMapTilesParallel(), GetProjectedWriteRanges(), LoadTileTypes(), SaveMap32Expanded(), SaveMap32Tiles(), SaveOverworldMaps(), and yaze::cli::anonymous_namespace{overworld_validate_commands.cc}::ValidateMapPointers().
| absl::Status yaze::zelda3::Overworld::Load | ( | Rom * | rom | ) |
Load all overworld data from ROM.
Definition at line 136 of file overworld.cc.
References all_entrances_, all_exits_, all_holes_, all_items_, AssembleMap16Tiles(), AssembleMap32Tiles(), ASSIGN_OR_RETURN, AssignMapSizes(), cached_version_, DecompressAllMapTilesParallel(), descriptor_layout_, yaze::zelda3::DetectOverworldRomProfile(), expanded_entrances_, FetchLargeMaps(), game_data_, is_loaded_, yaze::rom::kInvalid, yaze::zelda3::kNumOverworldMaps, yaze::rom::kValid, LoadDiggableTiles(), loaded_map_tiles_, loaded_map_tiles_valid_, yaze::zelda3::LoadEntrances(), yaze::zelda3::LoadExits(), yaze::zelda3::LoadHoles(), yaze::zelda3::LoadItems(), LoadOverworldMaps(), LoadSprites(), LoadTileTypes(), map_parent_, map_tiles_, overworld_maps_, RETURN_IF_ERROR, rom(), rom_, and yaze::zelda3::OverworldVersionHelper::SupportsAreaEnum().
Referenced by yaze::cli::Tile16ProposalGenerator::ApplyProposal(), yaze::cli::handlers::OverworldGetTileCommandHandler::Execute(), yaze::cli::handlers::OverworldInspectSpecialEntrancesCommandHandler::Execute(), yaze::cli::handlers::OverworldFindTileCommandHandler::Execute(), yaze::cli::handlers::OverworldDescribeMapCommandHandler::Execute(), yaze::cli::handlers::OverworldListWarpsCommandHandler::Execute(), yaze::cli::handlers::OverworldListSpritesCommandHandler::Execute(), yaze::cli::handlers::OverworldListItemsCommandHandler::Execute(), yaze::cli::handlers::OverworldGetEntranceCommandHandler::Execute(), yaze::cli::handlers::OverworldTileStatsCommandHandler::Execute(), yaze::cli::handlers::OverworldExportGraphCommandHandler::Execute(), yaze::cli::OverworldValidateCommandHandler::Execute(), yaze::cli::handlers::ToolsExtractGoldenCommandHandler::Execute(), yaze::cli::handlers::OverworldSetTileCommandHandler::ExecuteWithContext(), yaze::cli::handlers::OverworldSpriteEditCommandHandler::ExecuteWithContext(), yaze::cli::Tile16ProposalGenerator::GenerateDiff(), yaze::editor::OverworldEditor::LoadGraphics(), yaze::cli::Tile16ProposalGenerator::ParseReplaceTileCommand(), yaze::cli::Tile16ProposalGenerator::ParseSetAreaCommand(), yaze::cli::Tile16ProposalGenerator::ParseSetTileCommand(), yaze::app::service::RenderService::RenderOverworldArea(), yaze::test::RomDependentTestSuite::RunComprehensiveSaveTest(), yaze::test::RomDependentTestSuite::RunRomOverworldLoadingTest(), and yaze::cli::handlers::anonymous_namespace{overworld_commands.cc}::VerifyTileGridRoundTrip().
| absl::Status yaze::zelda3::Overworld::LoadLyraTerrainPreview | ( | Rom * | rom | ) |
Definition at line 242 of file overworld.cc.
References BuildLyraTerrainPreview(), is_loaded_, yaze::rom::kValid, and rom().
Referenced by yaze::editor::OverworldEditor::LoadGraphics().

|
inline |
Definition at line 430 of file overworld.h.
References descriptor_layout_, yaze::rom::kValid, and yaze::rom::LyraLayoutInspection::presence.
Referenced by yaze::editor::BuildOverworldMapMetadata(), yaze::editor::OverworldCanvasRenderer::DrawOverworldCanvas(), EnsureMapBuilt(), inspected_map_count(), yaze::editor::OverworldEditor::is_lyra_preview(), yaze::editor::OverworldEditor::Load(), yaze::editor::OverworldEditor::NormalizeCurrentSelectionState(), yaze::editor::OverworldCanvasRenderer::PrepareContextMenu(), yaze::editor::CanvasNavigationManager::QueueAdjacentMapsForPreload(), yaze::editor::OverworldEditor::SelectAdjacentMap(), yaze::editor::OverworldEditor::SelectMapForEditing(), yaze::editor::OverworldEditor::SwitchToWorld(), yaze::editor::OverworldEditor::Update(), and yaze::editor::CanvasNavigationManager::ZoomToFit().
|
inline |
Definition at line 433 of file overworld.h.
References yaze::rom::LyraLayoutInspection::capacity, descriptor_layout_, is_lyra_preview(), and yaze::zelda3::kNumOverworldMaps.
Referenced by yaze::editor::BuildOverworldMapMetadata(), yaze::editor::CanvasNavigationManager::CenterOnMap(), yaze::editor::CanvasNavigationManager::CheckForCurrentMap(), yaze::editor::OverworldMapTextureCoordinator::EnsureMapTexture(), yaze::editor::OverworldEditor::JumpToMap(), yaze::editor::anonymous_namespace{canvas_navigation_manager.cc}::MapFromCanvasPosition(), yaze::editor::OverworldEditor::NormalizeCurrentSelectionState(), yaze::editor::OverworldMapTextureCoordinator::PrimeWorldMaps(), yaze::editor::OverworldMapTextureCoordinator::ProcessDeferredTextures(), yaze::editor::CanvasNavigationManager::QueueAdjacentMapsForPreload(), yaze::editor::OverworldEditor::SelectAdjacentMap(), yaze::editor::anonymous_namespace{canvas_navigation_manager.cc}::SelectMapFallback(), yaze::editor::OverworldEditor::SelectMapForEditing(), yaze::editor::OverworldEditor::set_current_map(), and yaze::editor::OverworldEditor::SwitchToWorld().

|
inline |
Definition at line 436 of file overworld.h.
| absl::Status yaze::zelda3::Overworld::LoadOverworldMaps | ( | ) |
Load overworld map tile data.
Definition at line 962 of file overworld.cc.
References BuildMapWithTilesetCache(), built_map_lru_, cached_version_, game_state_, GetMapTiles(), yaze::zelda3::kAreaGfxIdPtr, yaze::zelda3::kDarkWorldMapIdStart, yaze::zelda3::kEssentialMapsPerWorld, yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kOverworldMapPaletteIds, yaze::zelda3::kOverworldSpecialGfxGroup, yaze::zelda3::kOverworldSpecialPalGroup, yaze::zelda3::kSpecialWorldMapIdStart, yaze::zelda3::kVanilla, yaze::util::logf(), overworld_maps_, RETURN_IF_ERROR, rom_, SyncAreaProperties(), and tiles16_.
Referenced by Load().

| void yaze::zelda3::Overworld::LoadTileTypes | ( | ) |
Load tile type collision data.
Definition at line 1351 of file overworld.cc.
References all_tiles_types_, yaze::zelda3::kNumTileTypes, zelda3_version_pointers::kOverworldTilesType, rom(), and version_constants().
Referenced by Load().

| absl::Status yaze::zelda3::Overworld::LoadSprites | ( | ) |
Load sprite data for all game states.
Definition at line 1423 of file overworld.cc.
References yaze::zelda3::GetOverworldSpriteLayout(), LoadSpritesFromMap(), RETURN_IF_ERROR, and rom_.
Referenced by Load().

| absl::StatusOr< OverworldSpriteSavePlan > yaze::zelda3::Overworld::PrepareSpriteSave | ( | ) | const |
Definition at line 1489 of file overworld.cc.
References all_sprites_, yaze::zelda3::PlanOverworldSpriteSave(), rom_, and sprite_maps_loaded_.
Referenced by yaze::editor::OverworldEditor::Save(), Save(), and SaveSprites().

| absl::Status yaze::zelda3::Overworld::SaveSprites | ( | ) |
Definition at line 1534 of file overworld.cc.
References yaze::zelda3::ApplyOverworldSpriteSave(), ASSIGN_OR_RETURN, PrepareSpriteSave(), and rom_.

| absl::Status yaze::zelda3::Overworld::LoadSpritesFromMap | ( | int | sprite_start, |
| int | sprite_count, | ||
| int | sprite_index ) |
Load sprites from a specific map range.
Definition at line 1454 of file overworld.cc.
References all_sprites_, ASSIGN_OR_RETURN, current_graphics(), map_parent_, overworld_maps_, yaze::zelda3::ReadOverworldSpriteList(), rom_, yaze::Rom::size(), and sprite_maps_loaded_.
Referenced by LoadSprites().

| absl::Status yaze::zelda3::Overworld::EnsureMapBuilt | ( | int | map_index | ) |
Build a map on-demand if it hasn't been built yet.
Used for lazy loading optimization. Maps are built when first accessed rather than all at once during Load().
Definition at line 1099 of file overworld.cc.
References BuildMapWithTilesetCache(), built_map_lru_, cached_version_, yaze::rom::LyraLayoutInspection::capacity, descriptor_layout_, FillBlankMapTiles(), game_state_, yaze::core::FeatureFlags::get(), HasExpandedPointerTables(), is_lyra_preview(), yaze::zelda3::kAreaGfxIdPtr, yaze::zelda3::kDarkWorldMapIdStart, yaze::core::FeatureFlags::Flags::Overworld::kEnableSpecialWorldExpansion, kMaxBuiltMaps, yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kOverworldMapPaletteIds, yaze::zelda3::kOverworldSpecialGfxGroup, yaze::zelda3::kOverworldSpecialPalGroup, yaze::zelda3::kSpecialWorldMapIdStart, yaze::zelda3::kVanilla, yaze::core::FeatureFlags::Flags::overworld, overworld_maps_, rom_, and SyncAreaProperties().
Referenced by yaze::cli::overworld::BuildMapSummary(), BuildSubscreenOverlayLayer(), yaze::editor::CanvasNavigationManager::CheckForCurrentMap(), yaze::editor::TilePaintingManager::DrawBrushPreview(), yaze::editor::OverworldMapTextureCoordinator::EnsureMapTexture(), yaze::editor::OverworldEditor::LoadGraphics(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::editor::CanvasNavigationManager::ProcessPreloadQueue(), yaze::editor::MapRefreshCoordinator::RefreshTile16Blockset(), yaze::app::service::RenderService::RenderOverworldArea(), yaze::editor::OverworldEditor::SelectMapForEditing(), and yaze::editor::OverworldEditor::SwitchToWorld().
| void yaze::zelda3::Overworld::SyncAreaProperties | ( | int | map_index | ) |
Copy the area parent's render settings (main palette, animated GFX, tile GFX groups, subscreen overlay) onto a child screen.
The game reads these tables with the area id ($8A), which is the parent of a large/wide/tall area, so child screens must render with the parent's values. Call before rebuilding a map's graphics or palette.
Definition at line 1311 of file overworld.cc.
References graphics_preview_, and overworld_maps_.
Referenced by EnsureMapBuilt(), LoadOverworldMaps(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::editor::anonymous_namespace{map_refresh_coordinator.cc}::PrepareMapForRefresh(), and SetGraphicsPreview().
| void yaze::zelda3::Overworld::SetGraphicsPreview | ( | OverworldGraphicsPreview | preview | ) |
Definition at line 1304 of file overworld.cc.
References graphics_preview_, overworld_maps_, and SyncAreaProperties().
Referenced by yaze::editor::OverworldEditor::SyncProjectGraphicsPreview().

| absl::StatusOr< Overworld::SubscreenOverlayLayer > yaze::zelda3::Overworld::BuildSubscreenOverlayLayer | ( | int | map_index | ) |
Build the subscreen overlay layer for a screen (builds the screen if needed). The overlay comes from the area parent's overlay id.
Definition at line 1331 of file overworld.cc.
References yaze::zelda3::Overworld::SubscreenOverlayLayer::background, EnsureMapBuilt(), GetMapTiles(), yaze::zelda3::IsBackgroundSubscreenOverlay(), yaze::zelda3::kNumOverworldMaps, yaze::zelda3::Overworld::SubscreenOverlayLayer::overlay_id, yaze::zelda3::Overworld::SubscreenOverlayLayer::overlay_screen, overworld_maps_, yaze::zelda3::Overworld::SubscreenOverlayLayer::pixels, RETURN_IF_ERROR, yaze::zelda3::SubscreenOverlayScreen(), and yaze::zelda3::WorldForOverworldMap().
Referenced by yaze::app::service::RenderService::RenderOverworldArea().
|
inline |
Drop every cached tileset/blockset. Call after graphics buffer or tile16 edits that are not tied to one sheet.
Definition at line 502 of file overworld.h.
References tileset_cache_.
Referenced by yaze::editor::MapRefreshCoordinator::InvalidateGraphicsCache().
| void yaze::zelda3::Overworld::InvalidateTilesetCacheForSheet | ( | int | sheet | ) |
Drop cached tilesets that load sheet (graphics sheet edits). Built maps keep their pixels; mark them dirty/rebuild separately.
Definition at line 1292 of file overworld.cc.
References tileset_cache_.
|
inline |
Number of cached tileset entries (for tests and diagnostics).
Definition at line 509 of file overworld.h.
References tileset_cache_.
| void yaze::zelda3::Overworld::InvalidateMapCache | ( | int | map_index | ) |
Invalidate cached tileset for a specific map.
| map_index | The map whose cache entry should be invalidated |
Definition at line 1358 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, overworld_maps_, and tileset_cache_.
Referenced by InvalidateSiblingMapCaches().
| void yaze::zelda3::Overworld::InvalidateSiblingMapCaches | ( | int | map_index | ) |
Invalidate cached tilesets for a map and all its siblings.
| map_index | Any map in a multi-area group |
Definition at line 1375 of file overworld.cc.
References cached_version_, InvalidateMapCache(), yaze::zelda3::kNumOverworldMaps, yaze::zelda3::LargeArea, mutable_overworld_map(), yaze::zelda3::OverworldVersionHelper::SupportsAreaEnum(), yaze::zelda3::TallArea, and yaze::zelda3::WideArea.
Referenced by yaze::editor::MapRefreshCoordinator::ForceRefreshGraphics(), and yaze::editor::MapRefreshCoordinator::InvalidateGraphicsCache().

| absl::Status yaze::zelda3::Overworld::Save | ( | Rom * | rom | ) |
Master save method (calls sub-methods in correct order)
Definition at line 1539 of file overworld.cc.
References yaze::zelda3::ApplyOverworldSpriteSave(), ASSIGN_OR_RETURN, yaze::ScopedRomTransaction::Commit(), CreateTile32Tilemap(), expanded_tile16_, expanded_tile32_, PrepareSpriteSave(), RETURN_IF_ERROR, rom(), rom_, SaveCustomOverworldData(), SaveDiggableTiles(), SaveEntrances(), SaveExits(), SaveItems(), SaveMap16Expanded(), SaveMap16Tiles(), SaveMap32Expanded(), SaveMap32Tiles(), SaveMapOverlays(), SaveMusic(), SaveOverworldMaps(), and SaveOverworldTilesType().
| absl::Status yaze::zelda3::Overworld::SaveOverworldMaps | ( | ) |
Save compressed map tile data to ROM.
Definition at line 1599 of file overworld.cc.
References CreateTile32Tilemap(), yaze::util::HexByte(), yaze::util::HexLong(), yaze::gfx::HyruleMagicCompress(), yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kOverworldCompressedMapPos, yaze::zelda3::kOverworldCompressedOverflowPos, yaze::zelda3::kOverworldMapDataOverflow, yaze::util::logf(), map_data_p1, map_data_p2, map_pointers1, map_pointers1_id, map_pointers2, map_pointers2_id, MapTilesUnchanged(), yaze::zelda3::NumberOfMap32, yaze::PcToSnes(), RETURN_IF_ERROR, rom(), SaveLargeMaps(), StageSavedMapTiles(), tiles32_list_, and version_constants().
Referenced by yaze::test::RomDependentTestSuite::RunComprehensiveSaveTest(), yaze::editor::OverworldEditor::Save(), Save(), and yaze::cli::handlers::anonymous_namespace{overworld_commands.cc}::SaveOverworldTileGrid().
| void yaze::zelda3::Overworld::StageSavedMapTiles | ( | ) |
Definition at line 1579 of file overworld.cc.
References map_tiles_, staged_map_tiles_, and staged_map_tiles_valid_.
Referenced by SaveOverworldMaps().
| void yaze::zelda3::Overworld::CommitSavedMapTiles | ( | ) |
Definition at line 1584 of file overworld.cc.
References loaded_map_tiles_, loaded_map_tiles_valid_, staged_map_tiles_, and staged_map_tiles_valid_.
Referenced by yaze::editor::OverworldEditor::CommitSaveTransaction().
| void yaze::zelda3::Overworld::RollbackSavedMapTiles | ( | ) |
Definition at line 1594 of file overworld.cc.
References staged_map_tiles_, and staged_map_tiles_valid_.
Referenced by yaze::editor::OverworldEditor::BeginSaveTransaction(), and yaze::editor::OverworldEditor::RollbackSaveTransaction().
| absl::Status yaze::zelda3::Overworld::SaveLargeMaps | ( | ) |
Save large map parent/sibling relationships.
Definition at line 1805 of file overworld.cc.
References cached_version_, yaze::zelda3::kDarkWorldMapIdStart, yaze::zelda3::kNumMapsPerWorld, yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kOverworldMapParentId, yaze::zelda3::kOverworldMapSize, yaze::zelda3::kOverworldMapSizeHighByte, yaze::zelda3::kOverworldScreenSize, yaze::zelda3::kOverworldScreenSizeForLoading, yaze::zelda3::kOverworldScreenTileMapChangeByScreen1, yaze::zelda3::kOverworldScreenTileMapChangeByScreen2, yaze::zelda3::kOverworldScreenTileMapChangeByScreen3, yaze::zelda3::kOverworldScreenTileMapChangeByScreen4, yaze::zelda3::kOverworldTransitionPositionX, yaze::zelda3::kOverworldTransitionPositionY, yaze::zelda3::kSpecialWorldMapIdStart, yaze::zelda3::kTransitionTargetNorth, yaze::zelda3::kTransitionTargetWest, yaze::util::logf(), overworld_maps_, RETURN_IF_ERROR, rom(), SaveLargeMapsExpanded(), and yaze::zelda3::OverworldVersionHelper::SupportsAreaEnum().
Referenced by SaveOverworldMaps().

| absl::Status yaze::zelda3::Overworld::SaveLargeMapsExpanded | ( | ) |
Save expanded large map data (v1+ ROMs)
Definition at line 2702 of file overworld.cc.
References yaze::zelda3::GetOverworldMapParentIdExpanded(), yaze::zelda3::GetOverworldScreenChange1Expanded(), yaze::zelda3::GetOverworldScreenChange2Expanded(), yaze::zelda3::GetOverworldScreenChange3Expanded(), yaze::zelda3::GetOverworldScreenChange4Expanded(), yaze::zelda3::GetOverworldTransitionPositionXExpanded(), yaze::zelda3::GetOverworldTransitionPositionYExpanded(), yaze::zelda3::kNumOverworldMaps, yaze::zelda3::LargeArea, yaze::util::logf(), overworld_maps_, RETURN_IF_ERROR, rom(), SaveLargeAreaTransitions(), SaveSmallAreaTransitions(), SaveTallAreaTransitions(), SaveWideAreaTransitions(), yaze::zelda3::SmallArea, yaze::zelda3::TallArea, yaze::zelda3::transition_target_northExpanded, yaze::zelda3::transition_target_westExpanded, and yaze::zelda3::WideArea.
Referenced by SaveLargeMaps().
| absl::Status yaze::zelda3::Overworld::SaveSmallAreaTransitions | ( | int | i, |
| int | parent_x_pos, | ||
| int | parent_y_pos, | ||
| int | transition_target_north, | ||
| int | transition_target_west, | ||
| int | transition_pos_x, | ||
| int | transition_pos_y, | ||
| int | screen_change_1, | ||
| int | screen_change_2, | ||
| int | screen_change_3, | ||
| int | screen_change_4 ) |
Save screen transition data for small (1x1) areas.
Definition at line 2160 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, yaze::zelda3::LargeArea, overworld_maps_, RETURN_IF_ERROR, rom(), yaze::zelda3::TallArea, and yaze::zelda3::WideArea.
Referenced by SaveLargeMapsExpanded().

| absl::Status yaze::zelda3::Overworld::SaveLargeAreaTransitions | ( | int | i, |
| int | parent_x_pos, | ||
| int | parent_y_pos, | ||
| int | transition_target_north, | ||
| int | transition_target_west, | ||
| int | transition_pos_x, | ||
| int | transition_pos_y, | ||
| int | screen_change_1, | ||
| int | screen_change_2, | ||
| int | screen_change_3, | ||
| int | screen_change_4 ) |
Save screen transition data for large (2x2) areas.
Definition at line 2269 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, yaze::zelda3::LargeArea, overworld_maps_, RETURN_IF_ERROR, rom(), yaze::zelda3::TallArea, and yaze::zelda3::WideArea.
Referenced by SaveLargeMapsExpanded().

| absl::Status yaze::zelda3::Overworld::SaveWideAreaTransitions | ( | int | i, |
| int | parent_x_pos, | ||
| int | parent_y_pos, | ||
| int | transition_target_north, | ||
| int | transition_target_west, | ||
| int | transition_pos_x, | ||
| int | transition_pos_y, | ||
| int | screen_change_1, | ||
| int | screen_change_2, | ||
| int | screen_change_3, | ||
| int | screen_change_4 ) |
Save screen transition data for wide (2x1) areas (v3+ only)
Definition at line 2425 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, yaze::zelda3::LargeArea, overworld_maps_, RETURN_IF_ERROR, rom(), yaze::zelda3::TallArea, and yaze::zelda3::WideArea.
Referenced by SaveLargeMapsExpanded().

| absl::Status yaze::zelda3::Overworld::SaveTallAreaTransitions | ( | int | i, |
| int | parent_x_pos, | ||
| int | parent_y_pos, | ||
| int | transition_target_north, | ||
| int | transition_target_west, | ||
| int | transition_pos_x, | ||
| int | transition_pos_y, | ||
| int | screen_change_1, | ||
| int | screen_change_2, | ||
| int | screen_change_3, | ||
| int | screen_change_4 ) |
Save screen transition data for tall (1x2) areas (v3+ only)
Definition at line 2565 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, yaze::zelda3::LargeArea, overworld_maps_, RETURN_IF_ERROR, rom(), yaze::zelda3::TallArea, and yaze::zelda3::WideArea.
Referenced by SaveLargeMapsExpanded().

| absl::Status yaze::zelda3::Overworld::SaveEntrances | ( | ) |
Save entrance warp points to ROM.
Definition at line 3304 of file overworld.cc.
References all_entrances_, all_holes_, expanded_entrances_, RETURN_IF_ERROR, rom_, yaze::zelda3::SaveEntrances(), and yaze::zelda3::SaveHoles().
Referenced by yaze::editor::OverworldEditor::Save(), and Save().

| absl::Status yaze::zelda3::Overworld::SaveExits | ( | ) |
Save exit return points to ROM.
Definition at line 3311 of file overworld.cc.
References all_exits_, RETURN_IF_ERROR, rom_, and yaze::zelda3::SaveExits().
Referenced by yaze::editor::OverworldEditor::Save(), and Save().

| absl::Status yaze::zelda3::Overworld::SaveItems | ( | ) |
Save hidden overworld items to ROM.
Definition at line 3316 of file overworld.cc.
References all_items_, ASSIGN_OR_RETURN, yaze::zelda3::LoadItems(), overworld_maps_, RETURN_IF_ERROR, rom_, and yaze::zelda3::SaveItems().
Referenced by yaze::editor::OverworldEditor::Save(), and Save().

| absl::Status yaze::zelda3::Overworld::SaveMapOverlays | ( | ) |
Save interactive overlay data to ROM.
Definition at line 3351 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kOverlayCodeStart, yaze::util::logf(), overworld_maps_, yaze::PcToSnes(), RETURN_IF_ERROR, and rom().
Referenced by Save().

| absl::Status yaze::zelda3::Overworld::SaveOverworldTilesType | ( | ) |
Save tile type collision data to ROM.
Definition at line 3423 of file overworld.cc.
References all_tiles_types_, yaze::zelda3::kNumTileTypes, yaze::util::logf(), yaze::zelda3::overworldTilesType, RETURN_IF_ERROR, and rom().
Referenced by Save().

| absl::Status yaze::zelda3::Overworld::SaveCustomOverworldASM | ( | bool | enable_bg_color, |
| bool | enable_main_palette, | ||
| bool | enable_mosaic, | ||
| bool | enable_gfx_groups, | ||
| bool | enable_subscreen_overlay, | ||
| bool | enable_animated ) |
Save custom ASM feature enable flags.
Definition at line 3474 of file overworld.cc.
References ASSIGN_OR_RETURN, cached_version_, yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kVanilla, yaze::zelda3::kZSCustomV1, yaze::util::logf(), overworld_maps_, yaze::zelda3::OverworldCustomAnimatedGFXArray, yaze::zelda3::OverworldCustomAnimatedGFXEnabled, yaze::zelda3::OverworldCustomAreaSpecificBGEnabled, yaze::zelda3::OverworldCustomMainPaletteArray, yaze::zelda3::OverworldCustomMainPaletteEnabled, yaze::zelda3::OverworldCustomMosaicArray, yaze::zelda3::OverworldCustomMosaicEnabled, yaze::zelda3::OverworldCustomSubscreenOverlayArray, yaze::zelda3::OverworldCustomSubscreenOverlayEnabled, yaze::zelda3::OverworldCustomTileGFXGroupArray, yaze::zelda3::OverworldCustomTileGFXGroupEnabled, RETURN_IF_ERROR, rom(), yaze::zelda3::OverworldVersionHelper::SupportsAreaEnum(), and yaze::zelda3::OverworldVersionHelper::SupportsCustomBGColors().
Referenced by SaveCustomOverworldData().

| absl::Status yaze::zelda3::Overworld::SaveAreaSpecificBGColors | ( | ) |
Save per-area background colors (v2+)
Definition at line 3568 of file overworld.cc.
References cached_version_, yaze::zelda3::kNumOverworldMaps, yaze::util::logf(), overworld_maps_, yaze::zelda3::OverworldCustomAreaSpecificBGPalette, RETURN_IF_ERROR, rom(), and yaze::zelda3::OverworldVersionHelper::SupportsCustomBGColors().
Referenced by SaveCustomOverworldData().

| absl::Status yaze::zelda3::Overworld::SaveCustomOverworldData | ( | ) |
Save all v2/v3 property tables using the ROM's current feature flags.
Definition at line 3586 of file overworld.cc.
References cached_version_, yaze::zelda3::OverworldVersionHelper::GetVersion(), yaze::Rom::is_loaded(), yaze::zelda3::kVanilla, yaze::zelda3::kZSCustomV1, yaze::zelda3::OverworldCustomAnimatedGFXEnabled, yaze::zelda3::OverworldCustomAreaSpecificBGEnabled, yaze::zelda3::OverworldCustomMainPaletteEnabled, yaze::zelda3::OverworldCustomMosaicEnabled, yaze::zelda3::OverworldCustomSubscreenOverlayEnabled, yaze::zelda3::OverworldCustomTileGFXGroupEnabled, yaze::zelda3::ReadRomByteOr(), RETURN_IF_ERROR, rom_, SaveAreaSizes(), SaveAreaSpecificBGColors(), and SaveCustomOverworldASM().
Referenced by yaze::editor::OverworldEditor::Save(), and Save().
| absl::Status yaze::zelda3::Overworld::CreateTile32Tilemap | ( | ) |
Build tile32 tilemap from current tile16 data.
Definition at line 2831 of file overworld.cc.
References ASSIGN_OR_RETURN, yaze::core::FeatureFlags::get(), yaze::gfx::Tile32::GetPackedValue(), map_tiles_, yaze::zelda3::NumberOfMap32, RETURN_IF_ERROR, rom(), tiles32_list_, tiles32_unique_, and version_constants().
Referenced by yaze::editor::OverworldEditor::Save(), Save(), SaveOverworldMaps(), and yaze::cli::handlers::anonymous_namespace{overworld_commands.cc}::SaveOverworldTileGrid().

| absl::Status yaze::zelda3::Overworld::SaveMap16Expanded | ( | ) |
Save expanded tile16 definitions (v1+ ROMs)
Definition at line 3181 of file overworld.cc.
References ASSIGN_OR_RETURN, yaze::zelda3::GetMap16TilesExpanded(), yaze::zelda3::NumberOfMap16Ex, yaze::PcToSnes(), RETURN_IF_ERROR, rom(), yaze::SnesToPc(), and tiles16_.
Referenced by yaze::editor::OverworldEditor::Save(), and Save().

| absl::Status yaze::zelda3::Overworld::SaveMap16Tiles | ( | ) |
Save tile16 definitions to ROM.
Definition at line 3283 of file overworld.cc.
References yaze::zelda3::kMap16Tiles, yaze::util::logf(), yaze::zelda3::NumberOfMap16, RETURN_IF_ERROR, rom(), and tiles16_.
Referenced by yaze::editor::OverworldEditor::Save(), and Save().

| absl::Status yaze::zelda3::Overworld::SaveMap32Expanded | ( | ) |
Save expanded tile32 definitions (v1+ ROMs)
Definition at line 2882 of file overworld.cc.
References ASSIGN_OR_RETURN, yaze::zelda3::GetMap32TileBLExpanded(), yaze::zelda3::GetMap32TileBRExpanded(), yaze::zelda3::GetMap32TileTRExpanded(), yaze::zelda3::kMap32BytesPerPackedGroup, yaze::zelda3::kMap32DefinitionsPerPackedGroup, zelda3_version_pointers::kMap32TileTL, yaze::util::logf(), MapTilesUnchanged(), yaze::PcToSnes(), RETURN_IF_ERROR, rom(), yaze::SnesToPc(), tiles32_unique_, and version_constants().
Referenced by yaze::editor::OverworldEditor::Save(), Save(), and yaze::cli::handlers::anonymous_namespace{overworld_commands.cc}::SaveOverworldTileGrid().
| absl::Status yaze::zelda3::Overworld::SaveMap32Tiles | ( | ) |
Save tile32 definitions to ROM.
Definition at line 3045 of file overworld.cc.
References ASSIGN_OR_RETURN, yaze::zelda3::kMap32BytesPerPackedGroup, yaze::zelda3::kMap32DefinitionsPerPackedGroup, zelda3_version_pointers::kMap32TileBL, zelda3_version_pointers::kMap32TileBR, zelda3_version_pointers::kMap32TileTL, zelda3_version_pointers::kMap32TileTR, yaze::util::logf(), map32TilesBL, map32TilesBR, MapTilesUnchanged(), RETURN_IF_ERROR, rom(), tiles32_unique_, and version_constants().
Referenced by yaze::editor::OverworldEditor::Save(), Save(), and yaze::cli::handlers::anonymous_namespace{overworld_commands.cc}::SaveOverworldTileGrid().

| absl::Status yaze::zelda3::Overworld::SaveMapProperties | ( | ) |
Save per-area graphics, palettes, and messages.
Definition at line 3617 of file overworld.cc.
References yaze::zelda3::OverworldVersionHelper::GetVersion(), yaze::zelda3::kAreaGfxIdPtr, yaze::zelda3::kDarkWorldMapIdStart, yaze::zelda3::kOverworldMapPaletteIds, yaze::zelda3::kOverworldPalettesScreenToSetNew, yaze::zelda3::kOverworldSpecialSpriteGFXGroup, yaze::zelda3::kOverworldSpecialSpriteGfxGroupExpandedTemp, yaze::zelda3::kOverworldSpecialSpritePalette, yaze::zelda3::kOverworldSpecialSpritePaletteExpandedTemp, yaze::zelda3::kOverworldSpritePaletteIds, yaze::zelda3::kOverworldSpriteset, yaze::zelda3::kSpecialWorldMapIdStart, yaze::util::logf(), overworld_maps_, RETURN_IF_ERROR, rom(), rom_, yaze::zelda3::OverworldVersionHelper::SupportsAreaEnum(), and yaze::zelda3::OverworldVersionHelper::SupportsCustomBGColors().
Referenced by yaze::test::RomDependentTestSuite::RunComprehensiveSaveTest(), and yaze::editor::OverworldEditor::Save().
| absl::Status yaze::zelda3::Overworld::SaveMusic | ( | ) |
Save per-area music IDs.
Definition at line 3696 of file overworld.cc.
References yaze::zelda3::kDarkWorldMapIdStart, yaze::zelda3::kOverworldMusicAgahnim, yaze::zelda3::kOverworldMusicBeginning, yaze::zelda3::kOverworldMusicDarkWorld, yaze::zelda3::kOverworldMusicMasterSword, yaze::zelda3::kOverworldMusicZelda, yaze::zelda3::kSpecialWorldMapIdStart, yaze::util::logf(), overworld_maps_, RETURN_IF_ERROR, and rom().
Referenced by yaze::editor::OverworldEditor::Save(), and Save().

| absl::Status yaze::zelda3::Overworld::SaveAreaSizes | ( | ) |
Save area size enum data (v3+ only)
Definition at line 3736 of file overworld.cc.
References yaze::zelda3::GetOverworldMessagesExpanded(), yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kOverworldScreenSize, yaze::util::logf(), overworld_maps_, yaze::zelda3::OverworldCustomASMHasBeenApplied, RETURN_IF_ERROR, and rom().
Referenced by SaveCustomOverworldData().

| void yaze::zelda3::Overworld::AssignMapSizes | ( | std::vector< OverworldMap > & | maps | ) |
Assign map sizes based on area size enum (v3+)
Loads all maps from ROM to see what size they are.
| maps | The maps to update (passed by reference) |
Definition at line 403 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, yaze::zelda3::LargeArea, yaze::zelda3::SmallArea, yaze::zelda3::TallArea, and yaze::zelda3::WideArea.
Referenced by Load().
| absl::Status yaze::zelda3::Overworld::ConfigureMultiAreaMap | ( | int | parent_index, |
| AreaSizeEnum | size ) |
Configure a multi-area map structure (Large/Wide/Tall)
| parent_index | The parent map index |
| size | The area size to configure |
Properly sets up sibling relationships and updates ROM data for v3+.
Definition at line 491 of file overworld.cc.
References cached_version_, yaze::zelda3::CanPersistLegacyMultiAreaMap(), yaze::zelda3::CanPersistLegacyScreenSize(), yaze::zelda3::GetOverworldMapParentIdExpanded(), yaze::zelda3::OverworldVersionHelper::GetVersionName(), yaze::zelda3::IsSameOverworldWorld(), yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kOverworldMapParentId, yaze::zelda3::kOverworldScreenSize, yaze::zelda3::LargeArea, yaze::zelda3::LegacyParentTableIndexForMap(), yaze::zelda3::LegacyParentTableValueForMap(), yaze::zelda3::LegacyScreenSizeTableIndexForMap(), LOG_DEBUG, overworld_maps_, RETURN_IF_ERROR, rom(), yaze::zelda3::SmallArea, yaze::zelda3::OverworldVersionHelper::SupportsAreaEnum(), yaze::zelda3::TallArea, and yaze::zelda3::WideArea.
Referenced by yaze::editor::MapPropertiesSystem::ApplyPropertyEditDirect().
|
inline |
Definition at line 661 of file overworld.h.
References rom_.
Referenced by AssembleMap16Tiles(), AssembleMap32Tiles(), BuildLyraTerrainPreview(), ConfigureMultiAreaMap(), CreateTile32Tilemap(), DecompressAllMapTilesParallel(), yaze::zelda3::DescribeMainGroupUsage(), yaze::zelda3::DescribeRoomsetUsage(), GetTile16ForTile32(), Load(), LoadLyraTerrainPreview(), LoadTileTypes(), Save(), SaveAreaSizes(), SaveAreaSpecificBGColors(), SaveCustomOverworldASM(), SaveLargeAreaTransitions(), SaveLargeMaps(), SaveLargeMapsExpanded(), SaveMap16Expanded(), SaveMap16Tiles(), SaveMap32Expanded(), SaveMap32Tiles(), SaveMapOverlays(), SaveMapProperties(), SaveMusic(), SaveOverworldMaps(), SaveOverworldTilesType(), SaveSmallAreaTransitions(), SaveTallAreaTransitions(), SaveWideAreaTransitions(), and yaze::cli::anonymous_namespace{overworld_validate_commands.cc}::ValidateMapPointers().
|
inline |
Definition at line 662 of file overworld.h.
References rom_.
| std::vector< std::pair< uint32_t, uint32_t > > yaze::zelda3::Overworld::GetProjectedWriteRanges | ( | ) | const |
Get the projected write ranges (PC offsets) for overworld map saves.
Returns a list of memory ranges (start, end) in PC offset space that are expected to be written by saving overworld map data (Map32/Map16 plus compressed map pointer tables and data). This is intended for detecting conflicts with ASM-managed regions (HackManifest).
Definition at line 1749 of file overworld.cc.
References expanded_tile16_, expanded_tile32_, yaze::zelda3::GetMap16TilesExpanded(), yaze::zelda3::GetMap32TileBLExpanded(), yaze::zelda3::GetMap32TileBRExpanded(), yaze::zelda3::GetMap32TileTRExpanded(), zelda3_version_pointers::kCompressedAllMap32PointersHigh, zelda3_version_pointers::kCompressedAllMap32PointersLow, yaze::zelda3::kMap16Tiles, zelda3_version_pointers::kMap32TileBL, zelda3_version_pointers::kMap32TileBR, yaze::zelda3::kMap32TileCountExpanded, zelda3_version_pointers::kMap32TileTL, zelda3_version_pointers::kMap32TileTR, yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kNumTile16Individual, yaze::zelda3::kOverworldCompressedMapPos, yaze::zelda3::kOverworldCompressedOverflowPos, yaze::zelda3::kOverworldMapDataOverflow, yaze::zelda3::NumberOfMap16Ex, and version_constants().
Referenced by yaze::cli::handlers::anonymous_namespace{overworld_commands.cc}::ApplyTileEdit(), and yaze::editor::OverworldEditor::Save().
|
inline |
Check if the ROM has expanded pointer tables for tail maps.
Returns true if the TailMapExpansion.asm patch has been applied, enabling support for maps 0xA0-0xBF. Detection is based on the marker byte at 0x1423FF being 0xEA.
Definition at line 681 of file overworld.h.
References yaze::Rom::data(), yaze::zelda3::GetExpandedPtrTableMagic(), yaze::zelda3::GetExpandedPtrTableMarker(), rom_, and yaze::Rom::size().
Referenced by DecompressAllMapTilesParallel(), and EnsureMapBuilt().

|
inline |
Definition at line 689 of file overworld.h.
References all_entrances_, all_exits_, all_items_, all_sprites_, built_map_lru_, descriptor_layout_, is_loaded_, loaded_map_tiles_valid_, overworld_maps_, sprite_maps_loaded_, sprites(), tiles16_, tiles32_, tiles32_unique_, and tileset_cache_.
Referenced by yaze::editor::OverworldEditor::Clear().

|
inline |
Definition at line 711 of file overworld.h.
References current_world_, yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::OverworldMapTiles::light_world, map_tiles_, and yaze::zelda3::OverworldMapTiles::special_world.
|
inline |
Definition at line 721 of file overworld.h.
References yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::OverworldMapTiles::light_world, map_tiles_, and yaze::zelda3::OverworldMapTiles::special_world.
Referenced by BuildMapWithTilesetCache(), BuildSubscreenOverlayLayer(), yaze::cli::overworld::CollectTileUsage(), yaze::editor::OverworldEntityRenderer::DrawDiggableTileHighlights(), yaze::zelda3::InspectSpecialEntrances(), LoadOverworldMaps(), yaze::editor::anonymous_namespace{map_refresh_coordinator.cc}::MapTilesForMapIndex(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::cli::overworld::ReadAreaTile(), yaze::editor::OverworldTilePaintAction::Redo(), yaze::editor::OverworldTilePaintAction::Undo(), yaze::editor::TilePaintingManager::WorldTiles(), and yaze::cli::overworld::WriteAreaTile().
|
inline |
Definition at line 734 of file overworld.h.
References overworld_maps_.
Referenced by yaze::cli::handlers::OverworldListItemsCommandHandler::Execute(), yaze::editor::InsertItem(), yaze::editor::InsertSprite(), and yaze::cli::handlers::ToolsExtractGoldenCommandHandler::WriteOverworldMapsData().
|
inline |
Definition at line 737 of file overworld.h.
References overworld_maps_.
Referenced by yaze::editor::OverworldEditor::BuildContextSnapshot(), yaze::cli::overworld::BuildMapSummary(), yaze::editor::BuildOverworldMapMetadata(), yaze::editor::anonymous_namespace{map_properties.cc}::CaptureMapMetadataClipboard(), yaze::editor::CanvasNavigationManager::CheckForCurrentMap(), yaze::cli::overworld::CollectTileUsage(), yaze::zelda3::DescribeMainGroupUsage(), yaze::zelda3::DescribeRoomsetUsage(), yaze::editor::OverworldToolbar::Draw(), yaze::editor::OverworldSidebar::Draw(), yaze::editor::OverworldSidebar::DrawAreaSection(), yaze::editor::TilePaintingManager::DrawBrushPreview(), yaze::editor::MapPropertiesSystem::DrawCustomBackgroundColorEditor(), yaze::editor::OverworldSidebar::DrawGraphicsSection(), yaze::editor::OverworldSidebar::DrawMusicSection(), yaze::editor::MapPropertiesSystem::DrawOverlayEditor(), yaze::editor::MapPropertiesSystem::DrawOverlayPreviewOnMap(), yaze::editor::OverworldSidebar::DrawPaletteSection(), yaze::editor::OverworldSidebar::DrawQuickProperties(), yaze::editor::UsageStatisticsCard::DrawUsageGrid(), yaze::editor::UsageStatisticsCard::DrawUsageStates(), yaze::editor::OverworldMapTextureCoordinator::EnsureMapTexture(), yaze::cli::handlers::OverworldDescribeMapCommandHandler::Execute(), yaze::cli::handlers::OverworldListSpritesCommandHandler::Execute(), yaze::cli::handlers::OverworldExportGraphCommandHandler::Execute(), yaze::cli::handlers::OverworldSpriteEditCommandHandler::ExecuteWithContext(), yaze::editor::EntityMutationService::InsertEntity(), yaze::editor::InsertEntrance(), yaze::editor::InsertExit(), yaze::zelda3::InspectSpecialEntrances(), yaze::editor::OverworldEditor::LoadGraphics(), yaze::cli::overworld::LocateScreenTile(), yaze::editor::anonymous_namespace{canvas_navigation_manager.cc}::MapFromCanvasPosition(), yaze::editor::OverworldEditor::NormalizeCurrentSelectionState(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::editor::OverworldCanvasRenderer::PrepareContextMenu(), yaze::editor::CanvasNavigationManager::QueueAdjacentMapsForPreload(), yaze::editor::MapPropertiesSystem::ReadPropertyValue(), yaze::editor::MapRefreshCoordinator::RefreshMapProperties(), yaze::editor::MapRefreshCoordinator::RefreshTile16Blockset(), yaze::app::service::RenderService::RenderOverworldArea(), yaze::cli::overworld::ResolveAreaTileForMap(), yaze::editor::anonymous_namespace{canvas_navigation_manager.cc}::SelectMapFallback(), yaze::editor::OverworldEditor::SelectMapForEditing(), yaze::editor::OverworldEditor::set_current_map(), yaze::editor::MapPropertiesSystem::SetupCanvasContextMenu(), yaze::editor::TilePaintingManager::Tile16PixelsForMap(), yaze::editor::OverworldEditor::TryPlaceArmedItem(), and yaze::zelda3::OverworldExit::UpdateMapProperties().
|
inline |
Definition at line 743 of file overworld.h.
References overworld_maps_.
Referenced by yaze::editor::MapPropertiesSystem::ApplyPropertyEditDirect(), yaze::editor::OverworldSidebar::DrawEffectsSection(), yaze::editor::anonymous_namespace{map_properties.cc}::EffectivePropertyMapId(), InvalidateSiblingMapCaches(), yaze::editor::MapRefreshCoordinator::InvalidateTile16Definitions(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::editor::MapPropertiesSystem::PrepareMapForGraphicsRefresh(), yaze::editor::MapRefreshCoordinator::RefreshChildMap(), yaze::editor::MapRefreshCoordinator::RefreshChildMapOnDemand(), yaze::editor::MapRefreshCoordinator::RefreshMapPalette(), yaze::editor::MapRefreshCoordinator::RefreshMapProperties(), yaze::editor::OverworldEditor::RefreshMapsForSheetEdits(), yaze::editor::MapRefreshCoordinator::RefreshMultiAreaMapsSafely(), yaze::editor::MapRefreshCoordinator::RefreshPaletteUsers(), yaze::editor::MapPropertiesSystem::RefreshSiblingMapGraphics(), yaze::editor::MapRefreshCoordinator::RefreshSiblingMapGraphics(), yaze::editor::MapRefreshCoordinator::RefreshTile16Blockset(), yaze::test::RomDependentTestSuite::RunComprehensiveSaveTest(), and yaze::editor::OverworldEditor::SetPreviewStoryState().
|
inline |
Definition at line 749 of file overworld.h.
References all_exits_.
Referenced by yaze::editor::OverworldEditor::BuildContextSnapshot(), yaze::cli::handlers::OverworldExportGraphCommandHandler::Execute(), and yaze::app::service::RenderService::RenderOverworldArea().
|
inline |
Definition at line 750 of file overworld.h.
References all_exits_.
Referenced by yaze::editor::OverworldEntityRenderer::DrawExits(), yaze::editor::OverworldEntityRenderer::DrawExits(), and yaze::editor::InsertExit().
|
inline |
Definition at line 751 of file overworld.h.
References tiles16_.
Referenced by AssembleMap16Tiles(), yaze::cli::handlers::OverworldSetTileCommandHandler::ExecuteWithContext(), yaze::zelda3::InspectSpecialEntrances(), yaze::editor::OverworldEditor::OpenGraphicsForContextTile16(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::editor::MapRefreshCoordinator::RefreshChildMap(), yaze::editor::MapRefreshCoordinator::RefreshChildMapOnDemand(), yaze::editor::MapRefreshCoordinator::RefreshMultiAreaMapsSafely(), yaze::editor::OverworldEditor::SampleContextTile16(), and yaze::cli::handlers::ToolsExtractGoldenCommandHandler::WriteTileData().
|
inline |
Definition at line 752 of file overworld.h.
References tiles32_unique_.
Referenced by yaze::cli::handlers::ToolsExtractGoldenCommandHandler::WriteTileData().
|
inline |
Definition at line 753 of file overworld.h.
References tiles16_.
Referenced by yaze::editor::OverworldEditor::Load(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::editor::MapRefreshCoordinator::RefreshChildMap(), yaze::editor::MapRefreshCoordinator::RefreshChildMapOnDemand(), and yaze::editor::MapRefreshCoordinator::RefreshMultiAreaMapsSafely().
|
inline |
Definition at line 754 of file overworld.h.
References all_sprites_.
Referenced by yaze::editor::OverworldEditor::BuildContextSnapshot(), yaze::cli::overworld::CollectOverworldSprites(), Destroy(), and yaze::app::service::RenderService::RenderOverworldArea().
|
inline |
Definition at line 759 of file overworld.h.
References all_sprites_.
Referenced by yaze::editor::EntityMutationService::DeleteSprite(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::editor::InsertSprite(), and yaze::editor::OverworldEditor::LoadSpriteGraphics().
|
inline |
Definition at line 764 of file overworld.h.
References current_map_, is_current_map_valid(), and overworld_maps_.
Referenced by yaze::editor::OverworldEditor::LoadGraphics(), and LoadSpritesFromMap().

|
inline |
Definition at line 770 of file overworld.h.
References all_entrances_.
Referenced by yaze::editor::OverworldEditor::BuildContextSnapshot(), yaze::cli::overworld::CollectWarpEntries(), yaze::editor::OverworldEntityRenderer::DrawEntrances(), yaze::editor::OverworldEntityRenderer::DrawEntrances(), yaze::cli::handlers::OverworldExportGraphCommandHandler::Execute(), yaze::cli::overworld::GetEntranceDetails(), yaze::app::service::RenderService::RenderOverworldArea(), and yaze::cli::handlers::ToolsExtractGoldenCommandHandler::WriteEntranceData().
|
inline |
Definition at line 773 of file overworld.h.
References all_entrances_.
|
inline |
Definition at line 774 of file overworld.h.
References all_entrances_.
Referenced by yaze::editor::InsertEntrance().
|
inline |
Definition at line 775 of file overworld.h.
References all_holes_.
Referenced by yaze::cli::overworld::CollectWarpEntries(), yaze::cli::handlers::OverworldExportGraphCommandHandler::Execute(), yaze::editor::InsertEntrance(), and yaze::app::service::RenderService::RenderOverworldArea().
|
inline |
Definition at line 776 of file overworld.h.
References all_holes_.
|
inline |
Definition at line 777 of file overworld.h.
References all_holes_.
|
inline |
Definition at line 778 of file overworld.h.
References deleted_entrances_.
|
inline |
Definition at line 779 of file overworld.h.
References deleted_entrances_.
|
inline |
Definition at line 780 of file overworld.h.
References current_map_, is_current_map_valid(), and overworld_maps_.
Referenced by yaze::editor::OverworldEditor::DrawScratchSpace(), yaze::editor::OverworldEditor::LoadGraphics(), yaze::editor::OverworldEditor::RebuildScratchBitmapFromTileData(), and yaze::editor::OverworldEditor::SaveCurrentSelectionToScratch().

|
inline |
Definition at line 786 of file overworld.h.
References current_map_, is_current_map_valid(), and overworld_maps_.

|
inline |
Definition at line 792 of file overworld.h.
References current_map_, is_current_map_valid(), and overworld_maps_.
Referenced by yaze::editor::OverworldEditor::LoadGraphics().

|
inline |
Definition at line 799 of file overworld.h.
References current_map_, and overworld_maps_.
Referenced by current_area_palette(), current_graphics(), current_map_bitmap_data(), and tile16_blockset_data().
|
inline |
Definition at line 803 of file overworld.h.
References is_loaded_.
Referenced by yaze::editor::OverworldEditor::AutomationGetTile(), yaze::editor::OverworldEditor::AutomationSetTile(), yaze::editor::OverworldEditor::BuildContextSnapshot(), yaze::editor::OverworldEditor::CheckRomReplacement(), yaze::zelda3::DescribeMainGroupUsage(), yaze::zelda3::DescribeRoomsetUsage(), yaze::editor::UsageStatisticsCard::Draw(), yaze::editor::OverworldToolbar::Draw(), yaze::editor::OverworldSidebar::Draw(), yaze::editor::MapPropertiesSystem::DrawCustomBackgroundColorEditor(), yaze::editor::MapPropertiesSystem::DrawOverlayEditor(), yaze::editor::OverworldCanvasRenderer::DrawOverworldCanvas(), yaze::editor::OverworldSidebar::DrawQuickProperties(), yaze::editor::EntityMutationService::InsertEntity(), yaze::editor::InsertEntrance(), yaze::editor::InsertExit(), yaze::editor::InsertItem(), yaze::editor::InsertSprite(), yaze::zelda3::InspectSpecialEntrances(), yaze::editor::OverworldEditor::JumpToMap(), yaze::editor::OverworldEditor::Load(), yaze::editor::OverworldEditor::OpenGraphicsForContextTile16(), yaze::editor::OverworldEditor::OpenGraphicsForTile16Quadrant(), yaze::editor::OverworldCanvasRenderer::PrepareContextMenu(), yaze::editor::OverworldEditor::SampleContextTile16(), yaze::editor::MapPropertiesSystem::SetupCanvasContextMenu(), yaze::editor::OverworldEditor::SyncProjectGraphicsPreview(), and yaze::editor::OverworldEditor::Update().
|
inline |
Definition at line 804 of file overworld.h.
References expanded_tile16_.
Referenced by yaze::cli::handlers::ToolsExtractGoldenCommandHandler::WriteTileData().
|
inline |
Definition at line 805 of file overworld.h.
References expanded_tile32_.
Referenced by yaze::cli::handlers::ToolsExtractGoldenCommandHandler::WriteTileData().
|
inline |
Definition at line 806 of file overworld.h.
References expanded_entrances_.
|
inline |
Definition at line 807 of file overworld.h.
References current_map_.
|
inline |
Definition at line 808 of file overworld.h.
References current_world_.
Referenced by yaze::editor::UsageStatisticsCard::DrawUsageGrid(), and yaze::editor::UsageStatisticsCard::DrawUsageStates().
|
inline |
Definition at line 809 of file overworld.h.
References current_map_.
Referenced by yaze::editor::OverworldEditor::AutomationGetTile(), yaze::editor::OverworldEditor::AutomationSetTile(), yaze::editor::OverworldEditor::LoadGraphics(), yaze::editor::OverworldEditor::NormalizeCurrentSelectionState(), yaze::editor::anonymous_namespace{canvas_navigation_manager.cc}::SelectMapFallback(), yaze::editor::OverworldEditor::SelectMapForEditing(), and yaze::editor::OverworldEditor::set_current_map().
|
inline |
Definition at line 810 of file overworld.h.
References current_world_.
Referenced by yaze::cli::Tile16ProposalGenerator::ApplyProposal(), yaze::editor::OverworldEditor::AutomationGetTile(), yaze::editor::OverworldEditor::AutomationSetTile(), yaze::cli::overworld::FindTileMatches(), yaze::cli::Tile16ProposalGenerator::GenerateDiff(), yaze::editor::OverworldEditor::LoadGraphics(), yaze::editor::OverworldEditor::NormalizeCurrentSelectionState(), yaze::cli::Tile16ProposalGenerator::ParseReplaceTileCommand(), yaze::cli::Tile16ProposalGenerator::ParseSetAreaCommand(), yaze::cli::Tile16ProposalGenerator::ParseSetTileCommand(), yaze::editor::anonymous_namespace{canvas_navigation_manager.cc}::SelectMapFallback(), yaze::editor::OverworldEditor::SelectMapForEditing(), and yaze::editor::OverworldEditor::set_current_map().
| void yaze::zelda3::Overworld::set_game_state | ( | int | state | ) |
Definition at line 132 of file overworld.cc.
References game_state_.
Referenced by yaze::editor::OverworldEditor::LoadGraphics(), yaze::editor::anonymous_namespace{map_refresh_coordinator.cc}::PrepareMapForRefresh(), yaze::editor::OverworldEditor::RefreshMapsForSheetEdits(), and yaze::editor::OverworldEditor::SetPreviewStoryState().
|
inline |
Definition at line 813 of file overworld.h.
References current_world_, yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::OverworldMapTiles::light_world, map_tiles_, and yaze::zelda3::OverworldMapTiles::special_world.
Referenced by yaze::editor::OverworldEditor::AutomationGetTile(), yaze::cli::overworld::FindTileMatches(), yaze::cli::Tile16ProposalGenerator::GenerateDiff(), yaze::cli::Tile16ProposalGenerator::ParseReplaceTileCommand(), yaze::cli::Tile16ProposalGenerator::ParseSetAreaCommand(), and yaze::cli::Tile16ProposalGenerator::ParseSetTileCommand().
|
inline |
Definition at line 822 of file overworld.h.
References current_world_, yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::OverworldMapTiles::light_world, map_tiles_, and yaze::zelda3::OverworldMapTiles::special_world.
Referenced by yaze::cli::Tile16ProposalGenerator::ApplyProposal(), and yaze::editor::OverworldEditor::AutomationSetTile().
|
inline |
Definition at line 831 of file overworld.h.
References map_tiles_.
Referenced by yaze::cli::handlers::anonymous_namespace{overworld_commands.cc}::VerifyTileGridRoundTrip().
|
inline |
Definition at line 832 of file overworld.h.
References map_tiles_.
Referenced by yaze::editor::OverworldEditor::GetWorldTiles(), yaze::editor::TilePaintingManager::PickTile16FromHoveredCanvas(), and yaze::editor::OverworldCanvasRenderer::PrepareContextMenu().
|
inline |
Definition at line 833 of file overworld.h.
References all_items_.
Referenced by yaze::editor::OverworldEditor::BuildContextSnapshot(), yaze::editor::OverworldEditor::CaptureItemUndoSnapshot(), and yaze::app::service::RenderService::RenderOverworldArea().
|
inline |
Definition at line 834 of file overworld.h.
References all_items_.
Referenced by yaze::editor::OverworldEntityRenderer::DrawItems(), yaze::editor::OverworldEntityRenderer::DrawItems(), yaze::editor::DuplicateItemByIdentity(), yaze::editor::FindItemByIdentity(), yaze::editor::FindNearestItemForSelection(), yaze::editor::InsertItem(), yaze::editor::RemoveItem(), yaze::editor::RemoveItemByIdentity(), and yaze::editor::OverworldEditor::RestoreItemUndoSnapshot().
|
inline |
Definition at line 835 of file overworld.h.
References all_tiles_types_.
|
inline |
Definition at line 836 of file overworld.h.
References all_tiles_types_.
Referenced by yaze::editor::OverworldEditor::Load().
|
inline |
Definition at line 837 of file overworld.h.
References all_sprites_.
|
inline |
Definition at line 840 of file overworld.h.
References diggable_tiles_.
Referenced by yaze::editor::OverworldEntityRenderer::DrawDiggableTileHighlights().
|
inline |
Definition at line 841 of file overworld.h.
References diggable_tiles_.
| absl::Status yaze::zelda3::Overworld::LoadDiggableTiles | ( | ) |
Definition at line 3434 of file overworld.cc.
References diggable_tiles_, and yaze::zelda3::DiggableTiles::SetVanillaDefaults().
Referenced by Load().

| absl::Status yaze::zelda3::Overworld::SaveDiggableTiles | ( | ) |
Definition at line 3445 of file overworld.cc.
References cached_version_, yaze::zelda3::OverworldVersionHelper::GetVersion(), and rom_.
Referenced by Save().

| absl::Status yaze::zelda3::Overworld::AutoDetectDiggableTiles | ( | ) |
Definition at line 3455 of file overworld.cc.
References all_tiles_types_, yaze::zelda3::DiggableTiles::Clear(), diggable_tiles_, yaze::zelda3::DiggableTiles::GetDiggableCount(), yaze::zelda3::DiggableTiles::IsTile16Diggable(), yaze::zelda3::kMaxDiggableTileId, yaze::util::logf(), yaze::zelda3::DiggableTiles::SetDiggable(), and tiles16_.
|
private |
Definition at line 310 of file overworld.cc.
References yaze::zelda3::kNumOverworldMaps, and overworld_maps_.
Referenced by Load().
|
private |
Definition at line 663 of file overworld.cc.
References ASSIGN_OR_RETURN, and rom().
Referenced by AssembleMap32Tiles().

|
private |
Definition at line 674 of file overworld.cc.
References ASSIGN_OR_RETURN, yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::DetectOverworldRomProfile(), expanded_tile32_, yaze::zelda3::GetMap32TileBLExpanded(), yaze::zelda3::GetMap32TileBRExpanded(), yaze::zelda3::GetMap32TileTRExpanded(), GetTile16ForTile32(), yaze::zelda3::kMap32ExpandedFlagPos, zelda3_version_pointers::kMap32TileBL, zelda3_version_pointers::kMap32TileBR, yaze::zelda3::kMap32TileCountExpanded, zelda3_version_pointers::kMap32TileTL, zelda3_version_pointers::kMap32TileTR, yaze::zelda3::OverworldMapTiles::light_world, yaze::util::logf(), map32TilesBL, map32TilesBR, map32TilesTL, map32TilesTR, map_tiles_, yaze::zelda3::ReadRomByteOr(), rom(), yaze::zelda3::OverworldMapTiles::special_world, tiles32_unique_, and version_constants().
Referenced by BuildLyraTerrainPreview(), and Load().
|
private |
Definition at line 775 of file overworld.cc.
References ASSIGN_OR_RETURN, expanded_tile16_, yaze::zelda3::ReadMap16Tiles(), rom(), tiles16(), and tiles16_.
Referenced by BuildLyraTerrainPreview(), and Load().

|
private |
Definition at line 787 of file overworld.cc.
References tiles32_unique_.
Referenced by BuildLyraTerrainPreview(), and OrganizeMapTiles().
|
private |
Definition at line 810 of file overworld.cc.
References yaze::zelda3::kDarkWorldMapIdStart, yaze::zelda3::kSpecialWorldMapIdStart, and SelectWorldBlockset().
Referenced by DecompressAllMapTilesParallel(), and EnsureMapBuilt().

|
private |
Definition at line 799 of file overworld.cc.
References yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::OverworldMapTiles::light_world, map_tiles_, and yaze::zelda3::OverworldMapTiles::special_world.
Referenced by BuildLyraTerrainPreview(), and FillBlankMapTiles().
|
private |
Definition at line 832 of file overworld.cc.
References AssignWorldTiles(), yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::kDarkWorldMapIdStart, yaze::zelda3::OverworldMapTiles::light_world, map_tiles_, yaze::zelda3::OverworldMapTiles::special_world, and tiles32_unique_.
Referenced by DecompressAllMapTilesParallel().

|
private |
Definition at line 852 of file overworld.cc.
References FillBlankMapTiles(), yaze::core::FeatureFlags::get(), HasExpandedPointerTables(), yaze::gfx::HyruleMagicDecompress(), yaze::core::FeatureFlags::Flags::Overworld::kEnableSpecialWorldExpansion, yaze::zelda3::kNumOverworldMaps, yaze::zelda3::kSpecialWorldMapIdStart, OrganizeMapTiles(), yaze::core::FeatureFlags::Flags::overworld, rom(), yaze::SnesToPc(), and version_constants().
Referenced by Load().
|
private |
Definition at line 258 of file overworld.cc.
References AssembleMap16Tiles(), AssembleMap32Tiles(), ASSIGN_OR_RETURN, AssignWorldTiles(), built_map_lru_, cached_version_, yaze::rom::LyraLayoutInspection::capacity, yaze::zelda3::OverworldMap::CreateLyraPreview(), yaze::Rom::data(), descriptor_layout_, yaze::zelda3::DetectOverworldRomProfile(), expanded_entrances_, game_data_, is_loaded_, yaze::zelda3::kNumOverworldMaps, loaded_map_tiles_, loaded_map_tiles_valid_, yaze::rom::LyraMapTile32(), map_parent_, map_tiles_, overworld_maps_, RETURN_IF_ERROR, rom(), rom_, SelectWorldBlockset(), yaze::Rom::size(), tiles16_, tiles32_unique_, tileset_cache_, and yaze::zelda3::WorldForOverworldMap().
Referenced by LoadLyraTerrainPreview().
|
private |
Definition at line 1572 of file overworld.cc.
References yaze::zelda3::OverworldMapTiles::dark_world, yaze::zelda3::OverworldMapTiles::light_world, loaded_map_tiles_, loaded_map_tiles_valid_, map_tiles_, and yaze::zelda3::OverworldMapTiles::special_world.
Referenced by SaveMap32Expanded(), SaveMap32Tiles(), and SaveOverworldMaps().
|
private |
Definition at line 1278 of file overworld.cc.
References game_data_, yaze::zelda3::GraphicsSheetStore::Revision(), and yaze::zelda3::GraphicsSheetStoreHolder::sheet_store.
Referenced by BuildMapWithTilesetCache().

|
private |
Definition at line 1199 of file overworld.cc.
References tiles16_.
Referenced by BuildMapWithTilesetCache().
|
private |
Definition at line 1220 of file overworld.cc.
References game_state_, GetMapTiles(), kMaxCachedTilesets, overworld_maps_, RETURN_IF_ERROR, SheetRevisionsForKey(), tiles16_, Tiles16Fingerprint(), tileset_cache_, and tileset_cache_clock_.
Referenced by EnsureMapBuilt(), and LoadOverworldMaps().

|
private |
Definition at line 871 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), EnsureMapBuilt(), HasExpandedPointerTables(), Load(), LoadOverworldMaps(), LoadSprites(), LoadSpritesFromMap(), mutable_rom(), PrepareSpriteSave(), rom(), Save(), SaveCustomOverworldData(), SaveDiggableTiles(), SaveEntrances(), SaveExits(), SaveItems(), SaveMapProperties(), and SaveSprites().
|
private |
Definition at line 872 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), Load(), SetGameData(), SheetRevisionsForKey(), and version_constants().
|
private |
Definition at line 874 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), Destroy(), is_loaded(), Load(), and LoadLyraTerrainPreview().
|
private |
Definition at line 875 of file overworld.h.
Referenced by AssembleMap16Tiles(), expanded_tile16(), GetProjectedWriteRanges(), and Save().
|
private |
Definition at line 876 of file overworld.h.
Referenced by AssembleMap32Tiles(), expanded_tile32(), GetProjectedWriteRanges(), and Save().
|
private |
Definition at line 877 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), expanded_entrances(), Load(), and SaveEntrances().
|
private |
Definition at line 879 of file overworld.h.
Referenced by BuildMapWithTilesetCache(), EnsureMapBuilt(), LoadOverworldMaps(), and set_game_state().
|
private |
Definition at line 880 of file overworld.h.
Referenced by current_area_palette(), current_graphics(), current_map_bitmap_data(), current_map_id(), is_current_map_valid(), set_current_map(), and tile16_blockset_data().
|
private |
Definition at line 881 of file overworld.h.
Referenced by current_world(), GetTile(), GetTileFromPosition(), set_current_world(), and SetTile().
|
private |
Definition at line 884 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), ConfigureMultiAreaMap(), EnsureMapBuilt(), InvalidateSiblingMapCaches(), Load(), LoadOverworldMaps(), SaveAreaSpecificBGColors(), SaveCustomOverworldASM(), SaveCustomOverworldData(), SaveDiggableTiles(), and SaveLargeMaps().
|
private |
Definition at line 886 of file overworld.h.
Referenced by AssembleMap32Tiles(), BuildLyraTerrainPreview(), CreateTile32Tilemap(), GetMapTiles(), GetTile(), GetTileFromPosition(), Load(), map_tiles(), MapTilesUnchanged(), mutable_map_tiles(), OrganizeMapTiles(), SelectWorldBlockset(), SetTile(), and StageSavedMapTiles().
|
private |
Definition at line 887 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), Destroy(), EnsureMapBuilt(), inspected_map_count(), is_lyra_preview(), and Load().
|
private |
Definition at line 893 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), CommitSavedMapTiles(), Load(), and MapTilesUnchanged().
|
private |
Definition at line 894 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), CommitSavedMapTiles(), Destroy(), Load(), and MapTilesUnchanged().
|
private |
Definition at line 895 of file overworld.h.
Referenced by CommitSavedMapTiles(), RollbackSavedMapTiles(), and StageSavedMapTiles().
|
private |
Definition at line 896 of file overworld.h.
Referenced by CommitSavedMapTiles(), RollbackSavedMapTiles(), and StageSavedMapTiles().
|
mutableprivate |
Definition at line 900 of file overworld.h.
|
staticconstexprprivate |
Definition at line 905 of file overworld.h.
Referenced by EnsureMapBuilt().
|
private |
Definition at line 906 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), Destroy(), EnsureMapBuilt(), and LoadOverworldMaps().
|
private |
Definition at line 921 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), BuildMapWithTilesetCache(), ClearGraphicsConfigCache(), Destroy(), InvalidateMapCache(), InvalidateTilesetCacheForSheet(), and tileset_cache_size().
|
private |
Definition at line 922 of file overworld.h.
Referenced by BuildMapWithTilesetCache().
|
staticconstexprprivate |
Definition at line 926 of file overworld.h.
Referenced by BuildMapWithTilesetCache().
|
private |
Definition at line 932 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), BuildMapWithTilesetCache(), BuildSubscreenOverlayLayer(), ConfigureMultiAreaMap(), current_area_palette(), current_graphics(), current_map_bitmap_data(), Destroy(), EnsureMapBuilt(), FetchLargeMaps(), InvalidateMapCache(), is_current_map_valid(), Load(), LoadOverworldMaps(), LoadSpritesFromMap(), mutable_overworld_map(), overworld_map(), overworld_maps(), SaveAreaSizes(), SaveAreaSpecificBGColors(), SaveCustomOverworldASM(), SaveItems(), SaveLargeAreaTransitions(), SaveLargeMaps(), SaveLargeMapsExpanded(), SaveMapOverlays(), SaveMapProperties(), SaveMusic(), SaveSmallAreaTransitions(), SaveTallAreaTransitions(), SaveWideAreaTransitions(), SetGraphicsPreview(), SyncAreaProperties(), and tile16_blockset_data().
|
private |
Definition at line 933 of file overworld.h.
Referenced by SetGraphicsPreview(), and SyncAreaProperties().
|
private |
Definition at line 934 of file overworld.h.
Referenced by Destroy(), entrances(), entrances(), Load(), mutable_entrances(), and SaveEntrances().
|
private |
Definition at line 935 of file overworld.h.
Referenced by holes(), holes(), Load(), mutable_holes(), and SaveEntrances().
|
private |
Definition at line 936 of file overworld.h.
Referenced by Destroy(), exits(), Load(), mutable_exits(), and SaveExits().
|
private |
Definition at line 937 of file overworld.h.
Referenced by all_items(), Destroy(), Load(), mutable_all_items(), and SaveItems().
|
private |
Definition at line 939 of file overworld.h.
Referenced by AssembleMap16Tiles(), AutoDetectDiggableTiles(), BuildLyraTerrainPreview(), BuildMapWithTilesetCache(), Destroy(), LoadOverworldMaps(), mutable_tiles16(), SaveMap16Expanded(), SaveMap16Tiles(), tiles16(), and Tiles16Fingerprint().
|
private |
Definition at line 940 of file overworld.h.
Referenced by Destroy().
|
private |
Definition at line 941 of file overworld.h.
Referenced by AssembleMap32Tiles(), AssignWorldTiles(), BuildLyraTerrainPreview(), CreateTile32Tilemap(), Destroy(), OrganizeMapTiles(), SaveMap32Expanded(), SaveMap32Tiles(), and tiles32_unique().
|
private |
Definition at line 943 of file overworld.h.
Referenced by CreateTile32Tilemap(), and SaveOverworldMaps().
|
private |
Definition at line 944 of file overworld.h.
Referenced by deleted_entrances(), and mutable_deleted_entrances().
|
private |
Definition at line 946 of file overworld.h.
Referenced by BuildLyraTerrainPreview(), Load(), and LoadSpritesFromMap().
|
private |
Definition at line 947 of file overworld.h.
Referenced by all_tiles_types(), AutoDetectDiggableTiles(), LoadTileTypes(), mutable_all_tiles_types(), and SaveOverworldTilesType().
|
private |
Definition at line 948 of file overworld.h.
Referenced by all_sprites(), Destroy(), LoadSpritesFromMap(), mutable_sprites(), PrepareSpriteSave(), and sprites().
|
private |
Definition at line 949 of file overworld.h.
Referenced by Destroy(), LoadSpritesFromMap(), and PrepareSpriteSave().
|
private |
Definition at line 950 of file overworld.h.
Referenced by AutoDetectDiggableTiles(), diggable_tiles(), LoadDiggableTiles(), and mutable_diggable_tiles().
|
private |
Definition at line 951 of file overworld.h.
Referenced by SaveOverworldMaps().
|
private |
Definition at line 952 of file overworld.h.
Referenced by SaveOverworldMaps().
|
private |
Definition at line 953 of file overworld.h.
Referenced by SaveOverworldMaps().
|
private |
Definition at line 954 of file overworld.h.
Referenced by SaveOverworldMaps().
|
private |
Definition at line 955 of file overworld.h.
Referenced by SaveOverworldMaps().
|
private |
Definition at line 956 of file overworld.h.
Referenced by SaveOverworldMaps().