From 3e65702ac33b4e55c8030cba7d0b7338aa7f0d99 Mon Sep 17 00:00:00 2001 From: cawtds <38510667+cawtds@users.noreply.github.com> Date: Sat, 15 Mar 2025 00:23:39 +0100 Subject: [PATCH 1/5] ported dexnav from e-expansion --- data/event_scripts.s | 1 + data/scripts/dexnav.inc | 47 + graphics/dexnav/captured_all.png | Bin 0 -> 157 bytes graphics/dexnav/cursor.png | Bin 0 -> 172 bytes graphics/dexnav/gui.pal | 19 + graphics/dexnav/gui_tilemap.bin | Bin 0 -> 2048 bytes graphics/dexnav/gui_tiles.png | Bin 0 -> 1447 bytes graphics/dexnav/hidden.png | Bin 0 -> 178 bytes graphics/dexnav/hidden_search.png | Bin 0 -> 359 bytes graphics/dexnav/no_data.png | Bin 0 -> 182 bytes graphics/dexnav/owned_icon.png | Bin 0 -> 159 bytes graphics/dexnav/star.png | Bin 0 -> 170 bytes graphics/dexnav/vision.png | Bin 0 -> 242 bytes graphics/field_effects/palettes/cave_dust.pal | 19 + graphics/field_effects/pics/cave_dust.png | Bin 0 -> 409 bytes graphics/text_window/dexnav_pal.pal | 19 + graphics_file_rules.mk | 2 +- include/bg.h | 2 +- include/config/dexnav.h | 72 + include/constants/field_effects.h | 8 +- include/constants/game_stat.h | 3 +- include/constants/global.h | 1 + include/daycare.h | 1 + include/dexnav.h | 77 + include/event_object_movement.h | 1 + include/event_scripts.h | 8 + include/field_effect.h | 8 +- include/global.fieldmap.h | 3 +- include/global.h | 4 + include/graphics.h | 2 + include/overworld.h | 1 + include/party_menu.h | 3 + include/pokemon_summary_screen.h | 2 + include/strings.h | 1 + include/text_window.h | 1 + include/wild_encounter.h | 8 + src/battle_main.c | 11 +- src/bg.c | 71 + src/data/field_effects/field_effect_objects.h | 21 + .../object_events/object_event_graphics.h | 3 + src/data/party_menu.h | 6 +- src/data/wild_encounters.json.txt | 13 + src/daycare.c | 3 +- src/dexnav.c | 2690 +++++++++++++++++ src/event_object_movement.c | 3 +- src/field_control_avatar.c | 10 +- src/field_effect.c | 24 +- src/field_effect_helpers.c | 22 +- src/field_player_avatar.c | 20 +- src/graphics.c | 3 + src/new_game.c | 10 + src/overworld.c | 8 +- src/party_menu.c | 2 +- src/pokemon.c | 6 +- src/pokemon_summary_screen.c | 171 +- src/start_menu.c | 18 +- src/strings.c | 1 + src/text_window.c | 9 + src/wild_encounter.c | 31 +- 59 files changed, 3418 insertions(+), 51 deletions(-) create mode 100644 data/scripts/dexnav.inc create mode 100644 graphics/dexnav/captured_all.png create mode 100644 graphics/dexnav/cursor.png create mode 100644 graphics/dexnav/gui.pal create mode 100644 graphics/dexnav/gui_tilemap.bin create mode 100644 graphics/dexnav/gui_tiles.png create mode 100644 graphics/dexnav/hidden.png create mode 100644 graphics/dexnav/hidden_search.png create mode 100644 graphics/dexnav/no_data.png create mode 100644 graphics/dexnav/owned_icon.png create mode 100644 graphics/dexnav/star.png create mode 100644 graphics/dexnav/vision.png create mode 100644 graphics/field_effects/palettes/cave_dust.pal create mode 100644 graphics/field_effects/pics/cave_dust.png create mode 100644 graphics/text_window/dexnav_pal.pal create mode 100644 include/config/dexnav.h create mode 100644 include/dexnav.h create mode 100644 src/dexnav.c diff --git a/data/event_scripts.s b/data/event_scripts.s index c6692ebd9..8545cf621 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -1368,3 +1368,4 @@ Text_TestMsg:: .include "data/text/new_game_intro.inc" .include "data/text/pokedude.inc" .include "data/scripts/follower.inc" + .include "data/scripts/dexnav.inc" diff --git a/data/scripts/dexnav.inc b/data/scripts/dexnav.inc new file mode 100644 index 000000000..698f50193 --- /dev/null +++ b/data/scripts/dexnav.inc @@ -0,0 +1,47 @@ +EventScript_StartDexNavBattle:: + lock + playse SE_PIN + applymovement OBJ_EVENT_ID_PLAYER Common_Movement_ExclamationMark + waitmovement 0 + waitse + dowildbattle + release + end + +EventScript_NotFoundNearby:: + msgbox sText_NotFoundNearby, MSGBOX_SIGN + end + +EventScript_MovedTooFast:: + msgbox sText_TryMovingSlower, MSGBOX_SIGN + end + +EventScript_PokemonGotAway:: + msgbox sText_PokemonGotAway, MSGBOX_SIGN + end + +EventScript_LostSignal:: + msgbox sText_LostSignal, MSGBOX_SIGN + end + +EventScript_TooDark:: + msgbox sText_TooDark, MSGBOX_SIGN + end + +sText_NotFoundNearby: + .string "It couldn't be found nearby.\n" + .string "Try looking in a different area!$" + +sText_TryMovingSlower: + .string "The Pokémon got away!\n" + .string "Try moving more slowly.$" + +sText_PokemonGotAway: + .string "The Pokémon got away!$" + +sText_LostSignal: + .string "There is no reaction.\n" + .string "The signal was lost!$" + +sText_TooDark: + .string "It's too dark to search\nfor a Pokémon!$" diff --git a/graphics/dexnav/captured_all.png b/graphics/dexnav/captured_all.png new file mode 100644 index 0000000000000000000000000000000000000000..2ed8b40ca9829eb831c1d6787b710852520e3868 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@HuKyYS1DXH-|37fxKtn?V zkki1xU}$Iv6vPT1o=ivuN@#exIEGZrNlsvB{=~$__U%FeTic~CSD4x+Et^Ykoipb59q?kcv6U2@?Mr0s{gVTJ;$Y7BHk4D``3iwQ+KA wDRFZ+@T4wrVK^MXlWi!|_OgWMe4r!)!^>8t)D@SHgN$JCboFyt=akR{0LY9iO#lD@ literal 0 HcmV?d00001 diff --git a/graphics/dexnav/gui.pal b/graphics/dexnav/gui.pal new file mode 100644 index 000000000..77939a5ab --- /dev/null +++ b/graphics/dexnav/gui.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +255 255 255 +217 73 73 +4 4 4 +1 81 113 +1 121 193 +119 177 75 +93 97 101 +91 179 211 +153 32 32 +111 141 81 +173 173 173 +187 217 167 +75 147 189 +177 219 235 +105 22 22 diff --git a/graphics/dexnav/gui_tilemap.bin b/graphics/dexnav/gui_tilemap.bin new file mode 100644 index 0000000000000000000000000000000000000000..0f62abbef9ce02dd617dbb3c5f2ca9dae7f103c5 GIT binary patch literal 2048 zcmeH`={HqT7>6HRQ<7O3GLs=8LxyCY6`?3Y5*3v)&$En4WUQ32ztcJAZg<_~IM-c$ z@Fn~Cve$n1v-WSlYj3c?5-a{?=+I$}4Yt@}&lOD^q+Qlr#nFgs(u(Xm;fxEexZ$pe zhqTL+>)gN#Z+!6OCVtYI-uEZKB!S3&5W$2HN*K2YCxS?WAH{8xL@WLsVu&Sk-d%Y9uPpP86;}Dq8tZI`{5|w4^wFa0Dp-V11@V|E87_ZouQvd(} literal 0 HcmV?d00001 diff --git a/graphics/dexnav/gui_tiles.png b/graphics/dexnav/gui_tiles.png new file mode 100644 index 0000000000000000000000000000000000000000..4e3327b8eee2c52d6376a77fa6fa8c82882b0641 GIT binary patch literal 1447 zcmV;Y1z7rtP)uDAiSQcZ5000Ft zNkl1&v5Xbiwb_*?#RC}+WB1PH*2ncYx0|5ak*qi`%Cx~1!uGFz{VIzP+ zq)I~pgc?@@!af89_jV(_fm7LaGBf*qw|6|nV;;pL@BZ_f+1c4WvvaTqZR|CCW?=Z; z`A=Ma`0)dm=lxcJ(ZvlnCSNE}f;j=Hbw|L9jvp9Ksq!;BdXb2ulcJ0aX6w zpRV1MUGoADuR{({`PYrSUGWu{oHu;6AzR=NmwPfzCzjwrV-8Y+S0K=62`>$Y5kP{A z`;W$shKHf2W(D5l29Mwg?Ede1z^jU(92tN z5!f8mHiWZCKzo9Nv1jy%u!J1qO_0%}wP#x@6?0!u%r0pj*(c4%99?fJF;ZMw+#t{z zwo?R?{jlAfBA5;ro~b;4ePJvnD1RFSxGNKaf(tGbj|r;jkiy-fN(fX@2&GbjGFKE) zaU=vzpvqan3&bk~Uc?I}3TO0lM8a97&6OqGCkk|d0&tu10tPe|$P+jL)fTV>Vcz5k zh+aVy5P-sLw+Nz6&5Ev7Rp!ftAj&OsUchPavhB6*y5Qmzu@~NJ)n%)*GMDK{pe*|Z z%8OdU6kp0&!+{m>aYI)mME|sBTzCJ$}Rzy zpfF0HV#%uO2=r)ylHpjk2zC&Hq!4y^QR}U)=W~1e4hfP$MS?j;=km{n>)mc&&s%T% zdOx4fcld&HAP6IRv;=^()cOwI_j~Z!dfS1`Ut=Na7-$dWvZ^6Jlf^vuOsvZBY?F!F#<`Y<_R9{C-fExynw(9Lb%gEi4Xd-5P5M}Xsk_i{r(DOdJy zhoFB6=vf$A=Zw2JZ8_jz^e+prFc6nAt1n=(C{8K|j58mWu_~m8lFXt^j}mbE0wcil zb>J&8HdlcTzYv(&A}cV-3zVsMp?U=d2*fCX$z!hn(JX}RjuF5SAc5RiPqR-r$Lzj= zDQW{$4VWC-(UkdpT6W*S3bO|?vDqzAcHd-IuC_UW!U}LAaCY$ayIZ-k0-W|ZII!UT zow}CrNF)`%hDGjLhH$@Cf&5z)3&i*(3g9Cv9PrR8BZ05wzuvxXY zj$hAg^fX4mdsF5qK!nOUArJ`ur$9_#p3$gx3*Xq_Y;axh1OwNwpsL6NLUOZbC_KTy zI>B;r3A1Mi1Os7O0nrh_uRXz#0A5VpCa$uf%;p5B+hk_iXo2q{;NMG7xGuc*BeNK2 z!d(IXFnH~2BYuDx5ds*w3k%502=J}%zdXkX{0FPwjs_da>yQ8d002ovPDHLkV1m$5 Bl05(b literal 0 HcmV?d00001 diff --git a/graphics/dexnav/hidden.png b/graphics/dexnav/hidden.png new file mode 100644 index 0000000000000000000000000000000000000000..2ad2e22e08d000cd2b021997e9a0c5f598af135c GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@Hu9j!B{{R1f_3HmAQ?~s7 zHs{{G;%`BkOQJv;kiq?leJ(C8Nl8iTjWTBdB{&N_B8wRq#8g3;(KATp15i-I)5S4_ zV`g%Khqrb@g76gobPpiWEYx|wfknVzgKC|3dV)3 zn{)48@wXt&B~c&^$l(6OJ{K34q@<+vMwv5!5}XAdk;M!QVyYm_=ozH)0VsIa)5S4F zV`A<^Yrew@JZ&?Xf^?v{V!|Z^5Db0 z^N)C5ett5^{=W0J$)!65_eUA_Hv3*xE%wdPI-kJ5^09tV?oqaBEG%3MN=#<$fgP^d zxvSb`ycRnhf26qKz`p$lN)+;bEz>$6G$T*EcSiT0hTW+f;yHQBjvbWD2=llva@47- z-qlj|%mS0P%KH(ScaN}DSUAX@_jk>x`QlREbAF-NgSGRdnLq!zv+~jYi`Q14Oq^OK r-kH0c{mA;$2Pry9s2qr>mdKI;Vst03$Xi*#H0l literal 0 HcmV?d00001 diff --git a/graphics/dexnav/owned_icon.png b/graphics/dexnav/owned_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..fdc5ef71130b2831594ef0c76eb0fca1e146146b GIT binary patch literal 159 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@Hu9j!B{{R1f_3HmAQ?~s7 zHs{{G;%`BkOQJv;kiq?leJ(C8Nl8iTjWTBdCA2(U978x}CMPg7m-9TeAX{~rF%FClkJ(k|hF@Ra5gObo2ee5xBai1>kw^K|udS?83{1OWGyG$a53 literal 0 HcmV?d00001 diff --git a/graphics/dexnav/star.png b/graphics/dexnav/star.png new file mode 100644 index 0000000000000000000000000000000000000000..5d4b034a45fc56775cb4eb1a9ef22476c8ac6c90 GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U41_3@Hu9j!B{{R1f_3HmAQ?~s7 zHs{{G;%`BkOQJv;kiq?leJ(C8Nl8iTjWTBdB{&N_B8wRq#8g3;(KATp15i-G)5S4_ zV`g#!19O;!pp=x55$zjwk9F1gvv39MY!Cj-~d%~M-^c+brjNgM8+yEuDcr1|Qfi{|DwAAPM| ze08$6M=W1k!A_x)ozu7#OEx|0F5A|t6KB8w{+i|I=T@F^xHrqV&!x@I*kqyPOw;%+ ao3Gc~8ao_a{9j`q$c3J+elF{r5}E)S?_1db literal 0 HcmV?d00001 diff --git a/graphics/field_effects/palettes/cave_dust.pal b/graphics/field_effects/palettes/cave_dust.pal new file mode 100644 index 000000000..ed31236c4 --- /dev/null +++ b/graphics/field_effects/palettes/cave_dust.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +255 1 255 +159 122 85 +207 189 157 +199 181 149 +114 88 61 +132 101 70 +199 173 141 +225 209 193 +189 165 133 +181 149 115 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/field_effects/pics/cave_dust.png b/graphics/field_effects/pics/cave_dust.png new file mode 100644 index 0000000000000000000000000000000000000000..1f477c7803d4ed2eec52f228fe2d2fe0ccd80ffd GIT binary patch literal 409 zcmeAS@N?(olHy`uVBq!ia0vp^0zmA*!VDxI2ESSgqznRlLR|kd{-0kJdVcTR<6EZ| zMcB5ax*cEJ`|#qyy-QoSPAvwiLIaO8Uff_{U{vvRaSYLz*xPTN-yFcxsvmTtlIP4; z&xE6XnVS?(UC7Z8{mCf4HRzZLv-PS~WqDKXN8fL^3Xy%(Sp4PZt>YS{(MRK$dz9Hb zw744%F6>e37jp1+(Kcrl-MP`^)9fbc=3Li0H4DqhDsPOtgVU6QQj(gPtc34L9@^jX z>f(%&(Cq5OHu;F#VRQWIQVrbd>%Q)nx??W0!kp`TgZEM=CIz!)7XC#YU%mx2q$P6% z%oa1+v(IroU(bO*3TZC3L3dYwI8~9lxys?jqwX1pCr)=47UVnp_rc-n_1)(@KX=3` zFFQNYP@KVI(zO*~Oiz|<&6;>)66<3RrYD85J`8PZo^U={H8-$XQTImF>gAKXW_*l& v>&12