1#ifndef YAZE_APP_ZELDA3_OVERWORLD_MAP_H
2#define YAZE_APP_ZELDA3_OVERWORLD_MAP_H
9#include "absl/status/status.h"
17static constexpr int kTileOffsets[] = {0, 8, 4096, 4104};
105 absl::Status
BuildMap(
int count,
int game_state,
int world,
106 std::vector<gfx::Tile16>& tiles16,
114 absl::Status
BuildTiles16Gfx(std::vector<gfx::Tile16>& tiles16,
int count);
266 int index,
int previous_index,
The Rom class is used to load, save, and modify Rom data.
Shared graphical context across editors.
Represents a palette of colors for the Super Nintendo Entertainment System (SNES).
Represents a single Overworld map screen.
auto set_area_palette(uint8_t value)
void SetAsLargeMap(int parent_index, int quadrant)
void set_main_palette(uint8_t palette)
auto mutable_area_music(int i)
auto is_large_map() const
std::vector< uint8_t > current_gfx_
auto animated_gfx() const
std::vector< uint8_t > current_blockset_
std::array< bool, 4 > mosaic_expanded_
absl::Status LoadVanillaOverlayData()
std::vector< uint8_t > bitmap_data_
auto mutable_static_graphics(int i)
const std::array< bool, 4 > & mosaic_expanded() const
auto mutable_sprite_palette(int i)
auto mutable_subscreen_overlay()
auto area_graphics() const
void SetAsSmallMap(int index=-1)
auto set_message_id(uint16_t value)
absl::Status LoadOverlay()
auto set_sprite_palette(int i, uint8_t value)
void set_custom_tileset(int index, uint8_t value)
void set_area_specific_bg_color(uint16_t color)
const auto & overlay_data() const
auto mutable_animated_gfx()
void SetupCustomTileset(uint8_t asm_version)
auto sprite_graphics(int i) const
absl::StatusOr< gfx::SnesPalette > GetPalette(const gfx::PaletteGroup &group, int index, int previous_index, int limit)
auto is_initialized() const
absl::Status BuildTiles16Gfx(std::vector< gfx::Tile16 > &tiles16, int count)
OverworldMapTiles map_tiles_
absl::Status BuildMap(int count, int game_state, int world, std::vector< gfx::Tile16 > &tiles16, OverworldBlockset &world_blockset)
std::array< uint8_t, 3 > sprite_graphics_
void SetParent(int parent_index)
void LoadAreaGraphicsBlocksets()
auto current_tile16_blockset() const
absl::Status BuildTileset()
auto current_graphics() const
auto static_graphics(int i) const
auto area_palette() const
auto mutable_sprite_graphics(int i)
void LoadDeathMountainGFX()
void SetAreaSize(AreaSizeEnum size)
auto custom_tileset(int index) const
auto subscreen_overlay() const
auto area_music(int i) const
absl::Status BuildBitmap(OverworldBlockset &world_blockset)
std::array< uint8_t, 3 > sprite_palette_
std::array< uint8_t, 4 > area_music_
auto mutable_area_palette()
std::array< uint8_t, 16 > static_graphics_
uint16_t subscreen_overlay_
std::array< uint8_t, 8 > custom_gfx_ids_
void set_animated_gfx(uint8_t gfx)
auto mutable_message_id()
absl::Status LoadPalette()
auto set_area_graphics(uint8_t value)
void LoadMainBlocksetId()
auto main_palette() const
auto mutable_current_palette()
auto current_palette() const
auto mutable_current_graphics()
void set_subscreen_overlay(uint16_t overlay)
std::vector< uint8_t > overlay_data_
auto area_specific_bg_color() const
auto sprite_palette(int i) const
gfx::SnesPalette current_palette_
void ProcessGraphicsBuffer(int index, int static_graphics_offset, int size, uint8_t *all_gfx)
auto mutable_main_palette()
void set_mosaic_expanded(int index, bool value)
void LoadCustomOverworldData()
uint8_t * mutable_custom_tileset(int index)
auto mutable_area_graphics()
void LoadSpritesBlocksets()
uint16_t area_specific_bg_color_
auto set_sprite_graphics(int i, uint8_t value)
constexpr int OverworldCustomTileGFXGroupEnabled
constexpr int OverworldCustomAreaSpecificBGEnabled
constexpr int kOverworldScreenTileMapChangeByScreen2Expanded
constexpr int kOverlayData1
constexpr int kSpecialWorldMapIdStart
constexpr int OverworldCustomMosaicArray
constexpr int kOverworldTransitionPositionXExpanded
constexpr int OverworldCustomAnimatedGFXEnabled
constexpr int OverworldCustomMainPaletteEnabled
constexpr int OverworldCustomMainPaletteArray
constexpr int kOverworldTransitionPositionYExpanded
constexpr int kOverworldSpecialSpritePaletteExpandedTemp
constexpr int kOverworldMapParentIdExpanded
constexpr int kOverworldSpecialSpriteGfxGroupExpandedTemp
constexpr int kOverlayPointersBank
constexpr int transition_target_westExpanded
constexpr int OverworldCustomASMHasBeenApplied
constexpr int kOverworldSpecialPALGroup
constexpr int kOverworldPalettesScreenToSetNew
constexpr int kOverworldMessagesExpanded
constexpr int kOverworldScreenTileMapChangeByScreen3Expanded
constexpr int kOverlayData2
constexpr int transition_target_northExpanded
constexpr int kOverworldSpecialSpritePalette
constexpr int OverworldCustomAnimatedGFXArray
constexpr int kDarkWorldMapIdStart
constexpr int OverworldCustomMosaicEnabled
constexpr int kOverworldScreenTileMapChangeByScreen4Expanded
std::vector< std::vector< uint16_t > > OverworldBlockset
Represents tile32 data for the overworld.
constexpr int kOverworldSpecialSpriteGFXGroup
constexpr int kOverworldScreenTileMapChangeByScreen1Expanded
constexpr int OverworldCustomTileGFXGroupArray
constexpr int OverworldCustomSubscreenOverlayEnabled
constexpr int OverworldCustomAreaSpecificBGPalette
constexpr int kOverlayPointers
constexpr int kOverlayCodeStart
constexpr int kOverworldSpecialGFXGroup
constexpr int OverworldCustomSubscreenOverlayArray
Main namespace for the application.
Represents a group of palettes.
Overworld map tile32 data.
OverworldBlockset dark_world
OverworldBlockset special_world
OverworldBlockset light_world