yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
gfx_group_editor.h
Go to the documentation of this file.
1#ifndef YAZE_APP_EDITOR_GFX_GROUP_EDITOR_H
2#define YAZE_APP_EDITOR_GFX_GROUP_EDITOR_H
3
4#include <array>
5
6#include "absl/status/status.h"
9#include "rom/rom.h"
10#include "zelda3/game_data.h"
11
12namespace yaze {
13namespace editor {
14
27 public:
28 absl::Status Update();
29
30 void DrawBlocksetViewer(bool sheet_only = false);
31 void DrawRoomsetViewer();
32 void DrawSpritesetViewer(bool sheet_only = false);
34
35 void SetSelectedBlockset(uint8_t blockset) { selected_blockset_ = blockset; }
36 void SetSelectedRoomset(uint8_t roomset) { selected_roomset_ = roomset; }
37 void SetSelectedSpriteset(uint8_t spriteset) {
38 selected_spriteset_ = spriteset;
39 }
40 void SetRom(Rom* rom) { rom_ = rom; }
41 Rom* rom() const { return rom_; }
42 void SetGameData(zelda3::GameData* data) { game_data_ = data; }
44
45 private:
47
48 // Selection state
49 uint8_t selected_blockset_ = 0;
50 uint8_t selected_roomset_ = 0;
52
53 // View controls
54 float view_scale_ = 2.0f;
55
56 // Palette controls
60 bool use_custom_palette_ = false;
62
63 // Individual canvases for each sheet slot to avoid ID conflicts
64 std::array<gui::Canvas, 8> blockset_canvases_;
65 std::array<gui::Canvas, 4> roomset_canvases_;
66 std::array<gui::Canvas, 4> spriteset_canvases_;
67
68 Rom* rom_ = nullptr;
70};
71
72} // namespace editor
73} // namespace yaze
74#endif // YAZE_APP_EDITOR_GFX_GROUP_EDITOR_H
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Definition rom.h:24
Manage graphics group configurations in a Rom.
void SetSelectedSpriteset(uint8_t spriteset)
void SetSelectedRoomset(uint8_t roomset)
std::array< gui::Canvas, 8 > blockset_canvases_
zelda3::GameData * game_data() const
gfx::PaletteCategory selected_palette_category_
std::array< gui::Canvas, 4 > roomset_canvases_
gfx::SnesPalette * current_palette_
void SetSelectedBlockset(uint8_t blockset)
void DrawSpritesetViewer(bool sheet_only=false)
std::array< gui::Canvas, 4 > spriteset_canvases_
void DrawBlocksetViewer(bool sheet_only=false)
void SetGameData(zelda3::GameData *data)
Represents a palette of colors for the Super Nintendo Entertainment System (SNES).