BuildTileset upgrades
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/status/status.h"
|
||||
#include "app/core/common.h"
|
||||
#include "app/gfx/bitmap.h"
|
||||
#include "app/gfx/snes_tile.h"
|
||||
@@ -22,18 +23,24 @@ static constexpr int kTileOffsets[] = {0, 8, 4096, 4104};
|
||||
class OverworldMap {
|
||||
public:
|
||||
OverworldMap(int index, ROM& rom, const std::vector<gfx::Tile16>& tiles16);
|
||||
|
||||
void BuildMap(int count, int game_state, uchar* map_parent,
|
||||
uchar* ow_blockset, uchar* current_gfx, OWMapTiles& map_tiles);
|
||||
uchar* ow_blockset, OWMapTiles& map_tiles);
|
||||
|
||||
void BuildMapV2(int count, int game_state, uchar* map_parent);
|
||||
|
||||
auto GetBitmap() { return bitmap_; }
|
||||
auto GetCurrentGraphicsSet() { return current_graphics_sheet_set; }
|
||||
auto SetLargeMap(bool is_set) { large_map_ = is_set; }
|
||||
auto IsLargeMap() { return large_map_; }
|
||||
|
||||
private:
|
||||
void LoadAreaInfo();
|
||||
void BuildTileset(int game_state, uchar* current_gfx);
|
||||
void BuildTiles16Gfx(int count, uchar* ow_blockset);
|
||||
|
||||
absl::Status BuildTileset(int game_state);
|
||||
absl::Status BuildTiles16GfxV2(int count);
|
||||
|
||||
void CopyTile(int x, int y, int xx, int yy, int offset, gfx::TileInfo tile,
|
||||
uchar* gfx16Pointer, uchar* gfx8Pointer);
|
||||
|
||||
@@ -63,6 +70,8 @@ class OverworldMap {
|
||||
std::vector<gfx::Tile16> tiles16_;
|
||||
std::vector<std::vector<ushort>> tiles_used_;
|
||||
|
||||
absl::flat_hash_map<int, gfx::Bitmap> current_graphics_sheet_set;
|
||||
|
||||
ROM rom_;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user