Add gfx::PaletteSet type
This commit is contained in:
@@ -4,8 +4,6 @@
|
||||
|
||||
#include <cmath>
|
||||
|
||||
#include "absl/status/status.h"
|
||||
#include "absl/status/statusor.h"
|
||||
#include "app/core/editor.h"
|
||||
#include "app/gui/pipeline.h"
|
||||
#include "app/editor/modules/palette_editor.h"
|
||||
@@ -15,20 +13,13 @@
|
||||
#include "app/gui/canvas.h"
|
||||
#include "app/gui/icons.h"
|
||||
#include "app/rom.h"
|
||||
#include "app/zelda3/overworld.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
namespace editor {
|
||||
|
||||
absl::Status GfxContext::Update() { return absl::OkStatus(); }
|
||||
|
||||
gfx::Bitmap GfxContext::current_ow_gfx_bmp_;
|
||||
gfx::SNESPalette GfxContext::current_ow_palette_;
|
||||
gfx::Bitmap GfxContext::tile16_blockset_bmp_;
|
||||
gfx::Bitmap GfxContext::tile8_blockset_bmp_;
|
||||
std::vector<gfx::Bitmap> GfxContext::tile16_individual_bmp_;
|
||||
std::vector<gfx::Bitmap> GfxContext::tile8_individual_bmp_;
|
||||
std::unordered_map<uint8_t, gfx::Paletteset> GfxContext::palettesets_;
|
||||
|
||||
} // namespace editor
|
||||
} // namespace app
|
||||
|
||||
@@ -6,24 +6,15 @@
|
||||
#include <cmath>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/status/status.h"
|
||||
#include "absl/status/statusor.h"
|
||||
#include "app/core/editor.h"
|
||||
#include "app/gui/pipeline.h"
|
||||
#include "app/editor/modules/palette_editor.h"
|
||||
#include "app/gfx/bitmap.h"
|
||||
#include "app/gfx/snes_palette.h"
|
||||
#include "app/gfx/snes_tile.h"
|
||||
#include "app/gui/canvas.h"
|
||||
#include "app/gui/icons.h"
|
||||
#include "app/gui/pipeline.h"
|
||||
#include "app/rom.h"
|
||||
#include "app/zelda3/overworld.h"
|
||||
|
||||
// Create a class which manages the current VRAM state of Link to the Past,
|
||||
// including static members for the Bitmaps and Palettes as well as the current
|
||||
// blockset as to update all of the overworld maps with the new blockset when it
|
||||
// is changed. This class will also manage the current tile16 and tile8
|
||||
// selection, as well as the current palette selection.
|
||||
|
||||
namespace yaze {
|
||||
namespace app {
|
||||
@@ -34,19 +25,8 @@ class GfxContext {
|
||||
absl::Status Update();
|
||||
|
||||
protected:
|
||||
static gfx::Bitmap current_ow_gfx_bmp_;
|
||||
|
||||
static gfx::SNESPalette current_ow_palette_;
|
||||
|
||||
static gfx::Bitmap tile16_blockset_bmp_;
|
||||
|
||||
static gfx::Bitmap tile8_blockset_bmp_;
|
||||
|
||||
// Bitmaps for the tile16 individual tiles
|
||||
static std::vector<gfx::Bitmap> tile16_individual_bmp_;
|
||||
|
||||
// Bitmaps for the tile8 individual tiles
|
||||
static std::vector<gfx::Bitmap> tile8_individual_bmp_;
|
||||
// Palettesets for the tile16 individual tiles
|
||||
static std::unordered_map<uint8_t, gfx::Paletteset> palettesets_;
|
||||
};
|
||||
|
||||
} // namespace editor
|
||||
|
||||
@@ -278,8 +278,6 @@ PaletteGroup CreatePaletteGroupFromColFile(
|
||||
PaletteGroup CreatePaletteGroupFromLargePalette(SNESPalette& palette) {
|
||||
PaletteGroup toret;
|
||||
|
||||
std::cout << "Palette size is " << palette.size() << std::endl;
|
||||
|
||||
for (int i = 0; i < palette.size(); i += 8) {
|
||||
SNESPalette new_palette;
|
||||
if (i + 8 < palette.size()) {
|
||||
|
||||
@@ -276,6 +276,30 @@ PaletteGroup CreatePaletteGroupFromColFile(std::vector<SNESColor>& colors);
|
||||
|
||||
PaletteGroup CreatePaletteGroupFromLargePalette(SNESPalette& palette);
|
||||
|
||||
struct Paletteset {
|
||||
Paletteset() = default;
|
||||
Paletteset(gfx::SNESPalette main, gfx::SNESPalette animated,
|
||||
gfx::SNESPalette aux1, gfx::SNESPalette aux2,
|
||||
gfx::SNESColor background, gfx::SNESPalette hud,
|
||||
gfx::SNESPalette spr, gfx::SNESPalette spr2)
|
||||
: main(main),
|
||||
animated(animated),
|
||||
aux1(aux1),
|
||||
aux2(aux2),
|
||||
background(background),
|
||||
hud(hud),
|
||||
spr(spr),
|
||||
spr2(spr2) {}
|
||||
gfx::SNESPalette main;
|
||||
gfx::SNESPalette animated;
|
||||
gfx::SNESPalette aux1;
|
||||
gfx::SNESPalette aux2;
|
||||
gfx::SNESColor background;
|
||||
gfx::SNESPalette hud;
|
||||
gfx::SNESPalette spr;
|
||||
gfx::SNESPalette spr2;
|
||||
};
|
||||
|
||||
} // namespace gfx
|
||||
} // namespace app
|
||||
} // namespace yaze
|
||||
|
||||
Reference in New Issue
Block a user