diff --git a/src/app/zelda3/overworld.cc b/src/app/zelda3/overworld.cc index a43cb24e..55468c57 100644 --- a/src/app/zelda3/overworld.cc +++ b/src/app/zelda3/overworld.cc @@ -80,6 +80,17 @@ void Overworld::AssembleMap16Tiles() { } } +void Overworld::AssignWorldTiles(std::vector>& world, int x, int y, int sx, int sy, int tpos) { + world[(x * 2) + (sx * 32)][(y * 2) + (sy * 32)] = + tiles32[tpos].tile0_; + world[(x * 2) + 1 + (sx * 32)][(y * 2) + (sy * 32)] = + tiles32[tpos].tile1_; + world[(x * 2) + (sx * 32)][(y * 2) + 1 + (sy * 32)] = + tiles32[tpos].tile2_; + world[(x * 2) + 1 + (sx * 32)][(y * 2) + 1 + (sy * 32)] = + tiles32[tpos].tile3_; +} + void Overworld::DecompressAllMapTiles() { int lowest = 0x0FFFFF; int highest = 0x0F8000; diff --git a/src/app/zelda3/overworld.h b/src/app/zelda3/overworld.h index 0f1b6dcc..e0d1b1ce 100644 --- a/src/app/zelda3/overworld.h +++ b/src/app/zelda3/overworld.h @@ -29,6 +29,7 @@ class Overworld { ushort GenerateTile32(int i, int k, int dimension); void AssembleMap32Tiles(); void AssembleMap16Tiles(); + void AssignWorldTiles(std::vector>& world, int x, int y, int sx, int sy, int tpos); void DecompressAllMapTiles(); void FetchLargeMaps(); void LoadOverworldMap();