game constants housekeeping
This commit is contained in:
@@ -330,7 +330,8 @@ absl::Status Overworld::LoadOverworldMaps() {
|
||||
|
||||
void Overworld::LoadTileTypes() {
|
||||
for (int i = 0; i < 0x200; i++) {
|
||||
all_tiles_types_[i] = rom()->data()[overworldTilesType + i];
|
||||
all_tiles_types_[i] =
|
||||
rom()->data()[rom()->version_constants().overworldTilesType + i];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -632,8 +633,9 @@ absl::Status Overworld::SaveOverworldMaps() {
|
||||
core::Logger::log("Saving map pointers1 and compressed data for map " +
|
||||
core::UppercaseHexByte(i) + " at " +
|
||||
core::UppercaseHexLong(snes_pos));
|
||||
RETURN_IF_ERROR(
|
||||
rom()->WriteLong(kCompressedAllMap32PointersLow + (3 * i), snes_pos));
|
||||
RETURN_IF_ERROR(rom()->WriteLong(
|
||||
rom()->version_constants().kCompressedAllMap32PointersLow + (3 * i),
|
||||
snes_pos));
|
||||
RETURN_IF_ERROR(rom()->WriteVector(pos, a));
|
||||
pos += size_a;
|
||||
} else {
|
||||
@@ -642,8 +644,9 @@ absl::Status Overworld::SaveOverworldMaps() {
|
||||
core::Logger::log("Saving map pointers1 for map " +
|
||||
core::UppercaseHexByte(i) + " at " +
|
||||
core::UppercaseHexLong(snes_pos));
|
||||
RETURN_IF_ERROR(
|
||||
rom()->WriteLong(kCompressedAllMap32PointersLow + (3 * i), snes_pos));
|
||||
RETURN_IF_ERROR(rom()->WriteLong(
|
||||
rom()->version_constants().kCompressedAllMap32PointersLow + (3 * i),
|
||||
snes_pos));
|
||||
}
|
||||
|
||||
if ((pos + b.size()) >= 0x5FE70 && (pos + b.size()) <= 0x60000) {
|
||||
@@ -666,7 +669,8 @@ absl::Status Overworld::SaveOverworldMaps() {
|
||||
core::UppercaseHexByte(i) + " at " +
|
||||
core::UppercaseHexLong(snes_pos));
|
||||
RETURN_IF_ERROR(rom()->WriteLong(
|
||||
kCompressedAllMap32PointersHigh + (3 * i), snes_pos));
|
||||
rom()->version_constants().kCompressedAllMap32PointersHigh + (3 * i),
|
||||
snes_pos));
|
||||
RETURN_IF_ERROR(rom()->WriteVector(pos, b));
|
||||
pos += size_b;
|
||||
} else {
|
||||
@@ -676,7 +680,8 @@ absl::Status Overworld::SaveOverworldMaps() {
|
||||
core::UppercaseHexByte(i) + " at " +
|
||||
core::UppercaseHexLong(snes_pos));
|
||||
RETURN_IF_ERROR(rom()->WriteLong(
|
||||
kCompressedAllMap32PointersHigh + (3 * i), snes_pos));
|
||||
rom()->version_constants().kCompressedAllMap32PointersHigh + (3 * i),
|
||||
snes_pos));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1433,9 +1438,9 @@ absl::Status Overworld::SaveItems() {
|
||||
absl::Status Overworld::SaveMapProperties() {
|
||||
core::Logger::log("Saving Map Properties");
|
||||
for (int i = 0; i < 64; i++) {
|
||||
RETURN_IF_ERROR(
|
||||
rom()->WriteByte(mapGfx + i, overworld_maps_[i].area_graphics()));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldMapPalette + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kAreaGfxIdPtr + i,
|
||||
overworld_maps_[i].area_graphics()));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldMapPaletteIds + i,
|
||||
overworld_maps_[i].area_palette()));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpriteset + i,
|
||||
overworld_maps_[i].sprite_graphics(0)));
|
||||
@@ -1443,30 +1448,30 @@ absl::Status Overworld::SaveMapProperties() {
|
||||
overworld_maps_[i].sprite_graphics(1)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpriteset + 128 + i,
|
||||
overworld_maps_[i].sprite_graphics(2)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpritePalette + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldSpritePaletteIds + i,
|
||||
overworld_maps_[i].sprite_palette(0)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpritePalette + 64 + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldSpritePaletteIds + 64 + i,
|
||||
overworld_maps_[i].sprite_palette(1)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpritePalette + 128 + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldSpritePaletteIds + 128 + i,
|
||||
overworld_maps_[i].sprite_palette(2)));
|
||||
}
|
||||
|
||||
for (int i = 64; i < 128; i++) {
|
||||
RETURN_IF_ERROR(
|
||||
rom()->WriteByte(mapGfx + i, overworld_maps_[i].area_graphics()));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kAreaGfxIdPtr + i,
|
||||
overworld_maps_[i].area_graphics()));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpriteset + i,
|
||||
overworld_maps_[i].sprite_graphics(0)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpriteset + 64 + i,
|
||||
overworld_maps_[i].sprite_graphics(1)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpriteset + 128 + i,
|
||||
overworld_maps_[i].sprite_graphics(2)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldMapPalette + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldMapPaletteIds + i,
|
||||
overworld_maps_[i].area_palette()));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpritePalette + 64 + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldSpritePaletteIds + 64 + i,
|
||||
overworld_maps_[i].sprite_palette(0)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpritePalette + 128 + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldSpritePaletteIds + 128 + i,
|
||||
overworld_maps_[i].sprite_palette(1)));
|
||||
RETURN_IF_ERROR(rom()->WriteByte(overworldSpritePalette + 192 + i,
|
||||
RETURN_IF_ERROR(rom()->WriteByte(kOverworldSpritePaletteIds + 192 + i,
|
||||
overworld_maps_[i].sprite_palette(2)));
|
||||
}
|
||||
|
||||
|
||||
@@ -376,13 +376,8 @@ class OverworldEntrance : public GameEntity {
|
||||
}
|
||||
};
|
||||
|
||||
constexpr int kCompressedAllMap32PointersHigh = 0x1794D;
|
||||
constexpr int kCompressedAllMap32PointersLow = 0x17B2D;
|
||||
constexpr int overworldPalGroup1 = 0xDE6C8;
|
||||
constexpr int overworldPalGroup2 = 0xDE86C;
|
||||
constexpr int overworldPalGroup3 = 0xDE604;
|
||||
constexpr int overworldMapPalette = 0x7D1C;
|
||||
constexpr int overworldSpritePalette = 0x7B41;
|
||||
constexpr int kOverworldMapPaletteIds = 0x7D1C;
|
||||
constexpr int kOverworldSpritePaletteIds = 0x7B41;
|
||||
constexpr int overworldMapPaletteGroup = 0x75504;
|
||||
constexpr int overworldSpritePaletteGroup = 0x75580;
|
||||
constexpr int overworldSpriteset = 0x7A41;
|
||||
@@ -392,12 +387,8 @@ constexpr int overworldSpritesBegining = 0x4C881;
|
||||
constexpr int overworldSpritesAgahnim = 0x4CA21;
|
||||
constexpr int overworldSpritesZelda = 0x4C901;
|
||||
|
||||
constexpr int mapGfx = 0x7C9C;
|
||||
constexpr int overlayPointers = 0x77664;
|
||||
constexpr int overlayPointersBank = 0x0E;
|
||||
|
||||
constexpr int overworldTilesType = 0x71459;
|
||||
constexpr int overworldMessages = 0x3F51D;
|
||||
constexpr int kAreaGfxIdPtr = 0x7C9C;
|
||||
constexpr int kOverworldMessageIds = 0x3F51D;
|
||||
|
||||
constexpr int overworldMusicBegining = 0x14303;
|
||||
constexpr int overworldMusicZelda = 0x14303 + 0x40;
|
||||
|
||||
@@ -48,8 +48,8 @@ absl::Status OverworldMap::BuildMap(int count, int game_state, int world,
|
||||
area_graphics_ = 0x51;
|
||||
area_palette_ = 0x00;
|
||||
} else {
|
||||
area_graphics_ = rom_[mapGfx + parent_];
|
||||
area_palette_ = rom_[overworldMapPalette + parent_];
|
||||
area_graphics_ = rom_[kAreaGfxIdPtr + parent_];
|
||||
area_palette_ = rom_[kOverworldMapPaletteIds + parent_];
|
||||
}
|
||||
|
||||
initialized_ = true;
|
||||
@@ -75,11 +75,11 @@ void OverworldMap::LoadAreaInfo() {
|
||||
}
|
||||
}
|
||||
|
||||
message_id_ = rom_.toint16(overworldMessages + (parent_ * 2));
|
||||
message_id_ = rom_.toint16(kOverworldMessageIds + (parent_ * 2));
|
||||
|
||||
if (index_ < 0x40) {
|
||||
area_graphics_ = rom_[mapGfx + parent_];
|
||||
area_palette_ = rom_[overworldMapPalette + parent_];
|
||||
area_graphics_ = rom_[kAreaGfxIdPtr + parent_];
|
||||
area_palette_ = rom_[kOverworldMapPaletteIds + parent_];
|
||||
|
||||
area_music_[0] = rom_[overworldMusicBegining + parent_];
|
||||
area_music_[1] = rom_[overworldMusicZelda + parent_];
|
||||
@@ -90,21 +90,21 @@ void OverworldMap::LoadAreaInfo() {
|
||||
sprite_graphics_[1] = rom_[overworldSpriteset + parent_ + 0x40];
|
||||
sprite_graphics_[2] = rom_[overworldSpriteset + parent_ + 0x80];
|
||||
|
||||
sprite_palette_[0] = rom_[overworldSpritePalette + parent_];
|
||||
sprite_palette_[1] = rom_[overworldSpritePalette + parent_ + 0x40];
|
||||
sprite_palette_[2] = rom_[overworldSpritePalette + parent_ + 0x80];
|
||||
sprite_palette_[0] = rom_[kOverworldSpritePaletteIds + parent_];
|
||||
sprite_palette_[1] = rom_[kOverworldSpritePaletteIds + parent_ + 0x40];
|
||||
sprite_palette_[2] = rom_[kOverworldSpritePaletteIds + parent_ + 0x80];
|
||||
} else if (index_ < 0x80) {
|
||||
area_graphics_ = rom_[mapGfx + parent_];
|
||||
area_palette_ = rom_[overworldMapPalette + parent_];
|
||||
area_graphics_ = rom_[kAreaGfxIdPtr + parent_];
|
||||
area_palette_ = rom_[kOverworldMapPaletteIds + parent_];
|
||||
area_music_[0] = rom_[overworldMusicDW + (parent_ - 64)];
|
||||
|
||||
sprite_graphics_[0] = rom_[overworldSpriteset + parent_ + 0x80];
|
||||
sprite_graphics_[1] = rom_[overworldSpriteset + parent_ + 0x80];
|
||||
sprite_graphics_[2] = rom_[overworldSpriteset + parent_ + 0x80];
|
||||
|
||||
sprite_palette_[0] = rom_[overworldSpritePalette + parent_ + 0x80];
|
||||
sprite_palette_[1] = rom_[overworldSpritePalette + parent_ + 0x80];
|
||||
sprite_palette_[2] = rom_[overworldSpritePalette + parent_ + 0x80];
|
||||
sprite_palette_[0] = rom_[kOverworldSpritePaletteIds + parent_ + 0x80];
|
||||
sprite_palette_[1] = rom_[kOverworldSpritePaletteIds + parent_ + 0x80];
|
||||
sprite_palette_[2] = rom_[kOverworldSpritePaletteIds + parent_ + 0x80];
|
||||
} else {
|
||||
if (index_ == 0x94) {
|
||||
parent_ = 0x80;
|
||||
@@ -139,17 +139,17 @@ void OverworldMap::LoadAreaInfo() {
|
||||
area_palette_ = 0x00;
|
||||
} else {
|
||||
// pyramid bg use 0x5B map
|
||||
area_graphics_ = rom_[mapGfx + parent_];
|
||||
area_palette_ = rom_[overworldMapPalette + parent_];
|
||||
area_graphics_ = rom_[kAreaGfxIdPtr + parent_];
|
||||
area_palette_ = rom_[kOverworldMapPaletteIds + parent_];
|
||||
}
|
||||
|
||||
sprite_graphics_[0] = rom_[overworldSpriteset + parent_ + 0x80];
|
||||
sprite_graphics_[1] = rom_[overworldSpriteset + parent_ + 0x80];
|
||||
sprite_graphics_[2] = rom_[overworldSpriteset + parent_ + 0x80];
|
||||
|
||||
sprite_palette_[0] = rom_[overworldSpritePalette + parent_ + 0x80];
|
||||
sprite_palette_[1] = rom_[overworldSpritePalette + parent_ + 0x80];
|
||||
sprite_palette_[2] = rom_[overworldSpritePalette + parent_ + 0x80];
|
||||
sprite_palette_[0] = rom_[kOverworldSpritePaletteIds + parent_ + 0x80];
|
||||
sprite_palette_[1] = rom_[kOverworldSpritePaletteIds + parent_ + 0x80];
|
||||
sprite_palette_[2] = rom_[kOverworldSpritePaletteIds + parent_ + 0x80];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -571,9 +571,9 @@ absl::StatusOr<gfx::SnesPalette> OverworldMap::GetPalette(
|
||||
}
|
||||
|
||||
absl::Status OverworldMap::LoadPalette() {
|
||||
int previousPalId = index_ > 0 ? rom_[overworldMapPalette + parent_ - 1] : 0;
|
||||
int previousPalId = index_ > 0 ? rom_[kOverworldMapPaletteIds + parent_ - 1] : 0;
|
||||
int previousSprPalId =
|
||||
index_ > 0 ? rom_[overworldSpritePalette + parent_ - 1] : 0;
|
||||
index_ > 0 ? rom_[kOverworldSpritePaletteIds + parent_ - 1] : 0;
|
||||
|
||||
area_palette_ = std::min((int)area_palette_, 0xA3);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user