From 29fc26f1444c777443c3e3b408d1b50259350608 Mon Sep 17 00:00:00 2001 From: Zeta_Null Date: Sun, 29 Dec 2024 16:50:30 -0500 Subject: [PATCH] underwater tileset shit, brings number of errors down to 20 it's currently missing the custom palette but if I did I'd need to fuck with the code for it anyway when I add it properly when this stuff works so I dont think that's a big deal --- constants/tileset_constants.asm | 1 + data/tilesets.asm | 1 + data/tilesets/underwater_attributes.bin | 0 data/tilesets/underwater_collision.asm | 0 data/tilesets/underwater_metatiles.bin | 0 engine/tilesets/tileset_palettes.asm | 25 ++++++++++++++- gfx/tilesets.asm | 12 +++++++ gfx/tilesets/underwater.png | Bin 0 -> 1240 bytes gfx/tilesets/underwater_sprites.pal | 40 ++++++++++++++++++++++++ 9 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 data/tilesets/underwater_attributes.bin create mode 100644 data/tilesets/underwater_collision.asm create mode 100644 data/tilesets/underwater_metatiles.bin create mode 100644 gfx/tilesets/underwater.png create mode 100644 gfx/tilesets/underwater_sprites.pal diff --git a/constants/tileset_constants.asm b/constants/tileset_constants.asm index dc89852..06b6697 100644 --- a/constants/tileset_constants.asm +++ b/constants/tileset_constants.asm @@ -53,6 +53,7 @@ const TILESET_NIHON_WHITECITY ; 33 const TILESET_SEVII ; 34 const TILESET_LUSHCAVE ; 35 + const TILESET_UNDERWATER ; 36 DEF NUM_TILESETS EQU const_value - 1 ; wTileset struct size diff --git a/data/tilesets.asm b/data/tilesets.asm index 76b6733..36567ea 100644 --- a/data/tilesets.asm +++ b/data/tilesets.asm @@ -65,4 +65,5 @@ Tilesets:: tileset TilesetNihonWhiteCity tileset TilesetSevii tileset TilesetLushCave + tileset TilesetUnderwater assert_table_length NUM_TILESETS + 1 diff --git a/data/tilesets/underwater_attributes.bin b/data/tilesets/underwater_attributes.bin new file mode 100644 index 0000000..e69de29 diff --git a/data/tilesets/underwater_collision.asm b/data/tilesets/underwater_collision.asm new file mode 100644 index 0000000..e69de29 diff --git a/data/tilesets/underwater_metatiles.bin b/data/tilesets/underwater_metatiles.bin new file mode 100644 index 0000000..e69de29 diff --git a/engine/tilesets/tileset_palettes.asm b/engine/tilesets/tileset_palettes.asm index 0692a5f..f3d028a 100644 --- a/engine/tilesets/tileset_palettes.asm +++ b/engine/tilesets/tileset_palettes.asm @@ -227,4 +227,27 @@ LoadDesertPalette: jp FarCopyWRAM ret -INCLUDE "gfx/tilesets/desert.pal" \ No newline at end of file +INCLUDE "gfx/tilesets/desert.pal" + + +LoadSpecialMapObjectPalette: + ld a, [wMapTileset] + cp TILESET_UNDERWATER + jr z, .underwater + jr .do_nothing +.underwater + call LoadUnderwaterObjectPalette + scf + ret +.do_nothing + and a + ret +LoadUnderwaterObjectPalette: + ld a, BANK(wOBPals1) + ld de, wOBPals1 + ld hl, UnderwaterObjectPalette + ld bc, 8 palettes + call FarCopyWRAM + ret +UnderwaterObjectPalette: +INCLUDE "gfx/tilesets/underwater_sprites.pal" diff --git a/gfx/tilesets.asm b/gfx/tilesets.asm index 9723a37..5754bf1 100644 --- a/gfx/tilesets.asm +++ b/gfx/tilesets.asm @@ -668,3 +668,15 @@ INCBIN "data/tilesets/players_room_metatiles.bin" TilesetPlayersRoomColl:: INCLUDE "data/tilesets/players_room_collision.asm" + +TilesetUnderwaterGFX:: +INCBIN "gfx/tilesets/underwater.2bpp.lz" + +TilesetUnderwaterMeta:: +INCBIN "data/tilesets/underwater_metatiles.bin" + +TilesetUnderwaterColl:: +INCLUDE "data/tilesets/underwater_collision.asm" + +TilesetUnderwaterAttr:: +INCBIN "data/tilesets/underwater_attributes.bin" \ No newline at end of file diff --git a/gfx/tilesets/underwater.png b/gfx/tilesets/underwater.png new file mode 100644 index 0000000000000000000000000000000000000000..a8278a6dc463f714894353ca5721a2757c532a08 GIT binary patch literal 1240 zcmV;}1Sk86P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf1Z_z~K~!i%?V1a2 zA~6sJVegn6GCAa~YoO4h)AL~qjnUF_Is`DB5aZJQke9amH0&`kjwGOmoQ? z!Im1xv#uH&S{s7RSpAu&J!7qbK#u3gST#bu4*mAv`e|3&*P3MB>Kh=R*d<1>izdhU zQvOzpLlmagEbAN5=YTW?uJKv2M-v4A$1| zAn&d>z*zh|>Oc8F3^sI*mu%HHdY#6C4YYOI8o*egR%)m=*JF%ko-kLyb#B3&uD;+y z=p)6o^;zQ#%SSLxl z()CsSyX3s)BKK?(>V}-llAk7Xj$iO4#;Ac9a;kP*h1}}Ty4A0JFV#ym(!dhs4 zA~Kj|1fECV!`R4q)Z?#M`XJWta?$ShVEsNcKQT^>uX+o0-CH!UANSxKjFY*1Am6;L zSmR-T2gqhCTk^Ny<+B!&m#;Vn=Rhpz*DlVheU0qtR-Kn!b;d!L54=Qfy?i;nfKG3K zSs4d+C1c@Pn;O!ubT!wYX7>liE54pGOfq9-g z{bn2*%t7D!79aU;!Y^IV68;8yu#~zd$hb@h}$s`Y8PAky)E7(*2FS@?a2$%0(v#;#G zd!U`q>EvNw0Ua!u&31H6B|b12$EK;aftFH8Arb@Q;YaiDG_LBM8+Y)*CLN8r^iEDLh zT64=okg*)#Q#1OUeyu7nHZW;@YV3-!_?UMZd3Aoo1AycOgBJ{Wp~fcI)c8`rI-C9w z^bCv(yJ%l~`HIADOhU}q=jE#;UxmL6PS3&fGA`@#N%akYt!m@cU95Jrv9HdLc?0l? zRmR0ldR*pZ4%(eV#vuMk`sKvaKLB}g&b`q5#fykzbjF~yJAQTk%YOymLtduidU;-` ze(B;M?YtpgnIH22fa7}6;$_ao)d%9$FaK~j9R2}Rtu3!6)JBB>0000