diff --git a/asm/include/overlay_15.inc b/asm/include/overlay_15_0238A234.inc similarity index 82% rename from asm/include/overlay_15.inc rename to asm/include/overlay_15_0238A234.inc index e7389b64..a02c14d5 100644 --- a/asm/include/overlay_15.inc +++ b/asm/include/overlay_15_0238A234.inc @@ -9,27 +9,19 @@ .public CloseSimpleMenu .public CloseTextBox .public CreateAdvancedTextBox -.public CreateDialogueBox -.public CreatePortraitBox .public CreateSimpleMenuFromStringIds .public CreateTextBox .public Debug_Print0 .public GetMoneyCarried .public GetMoneyStored .public GetSimpleMenuResult -.public InitPortraitParamsWithMonsterId -.public InitPreprocessorArgs .public IsDialogueBoxActive -.public MemAlloc .public OVERLAY15_UNKNOWN_POINTER__NA_238B180 .public PlaySeVolumeWrapper .public SetAdvancedTextBoxField0x1C2 .public SetAdvancedTextBoxField0x1C4 .public SetAdvancedTextBoxState5 -.public SetPortraitEmotion -.public SetPortraitLayout .public ShowDialogueBox -.public ShowPortraitInPortraitBox .public ShowStringIdInDialogueBox .public ov15_0238AD78 .public ov15_0238ADC4 diff --git a/asm/overlay_15.s b/asm/overlay_15_0238A234.s similarity index 93% rename from asm/overlay_15.s rename to asm/overlay_15_0238A234.s index 59ac19b2..d63114d2 100644 --- a/asm/overlay_15.s +++ b/asm/overlay_15_0238A234.s @@ -1,74 +1,8 @@ .include "asm/macros.inc" - .include "overlay_15.inc" + .include "overlay_15_0238A234.inc" .text - arm_func_start ov15_0238A140 -ov15_0238A140: ; 0x0238A140 - stmdb sp!, {r3, lr} - mov r0, #0xec - mov r1, #8 - bl MemAlloc - ldr r1, _0238A228 ; =OVERLAY15_UNKNOWN_POINTER__NA_238B180 - str r0, [r1] - add r0, r0, #0x88 - bl InitPreprocessorArgs - mov r0, #0 - bl CreateDialogueBox - ldr r2, _0238A228 ; =OVERLAY15_UNKNOWN_POINTER__NA_238B180 - mov r1, #3 - ldr r3, [r2] - mov r2, #1 - strb r0, [r3, #0x80] - mov r0, #0 - bl CreatePortraitBox - ldr r2, _0238A228 ; =OVERLAY15_UNKNOWN_POINTER__NA_238B180 - mvn r3, #1 - ldr r1, [r2] - mov ip, #0 - strb r0, [r1, #0x81] - ldr r0, [r2] - ldr r1, _0238A22C ; =0x00000183 - strb r3, [r0, #0x68] - ldr r0, [r2] - ldr r3, _0238A230 ; =0x0000270F - str ip, [r0, #0x10] - ldr r0, [r2] - str r1, [r0, #0x88] - ldr r0, [r2] - str r3, [r0, #0xac] - ldr r0, [r2] - str r1, [r0, #0xd4] - ldr r0, [r2] - str ip, [r0] - ldr r0, [r2] - add r0, r0, #0xdc - bl InitPortraitParamsWithMonsterId - ldr r0, _0238A228 ; =OVERLAY15_UNKNOWN_POINTER__NA_238B180 - mov r1, #0 - ldr r0, [r0] - add r0, r0, #0xdc - bl SetPortraitLayout - ldr r0, _0238A228 ; =OVERLAY15_UNKNOWN_POINTER__NA_238B180 - mov r1, #0 - ldr r0, [r0] - add r0, r0, #0xdc - bl SetPortraitEmotion - ldr r0, _0238A228 ; =OVERLAY15_UNKNOWN_POINTER__NA_238B180 - ldr r1, [r0] - ldrsb r0, [r1, #0x81] - add r1, r1, #0xdc - bl ShowPortraitInPortraitBox - mov r0, #0 - bl ov15_0238A4E8 - mov r0, #1 - ldmia sp!, {r3, pc} - .align 2, 0 -_0238A228: .word OVERLAY15_UNKNOWN_POINTER__NA_238B180 -_0238A22C: .word 0x00000183 -_0238A230: .word 0x0000270F - arm_func_end ov15_0238A140 - arm_func_start ov15_0238A234 ov15_0238A234: ; 0x0238A234 stmdb sp!, {r4, lr} diff --git a/asm/overlay_15_0238ADC4.s b/asm/overlay_15_0238ADC4.s index 27863ab7..3afffff1 100644 --- a/asm/overlay_15_0238ADC4.s +++ b/asm/overlay_15_0238ADC4.s @@ -3,6 +3,7 @@ .text +; https://decomp.me/scratch/Yyyxj arm_func_start ov15_0238ADC4 ov15_0238ADC4: ; 0x0238ADC4 stmdb sp!, {r3, r4, lr} diff --git a/include/monster_id.h b/include/monster_id.h new file mode 100644 index 00000000..98eacb22 --- /dev/null +++ b/include/monster_id.h @@ -0,0 +1,611 @@ +#ifndef PMDSKY_MONSTER_ID_H +#define PMDSKY_MONSTER_ID_H + +#define _MONSTER_ID_GENDERED(name, base_value) \ + MONSTER_##name = base_value, MONSTER_##name##_SECONDARY = base_value + 600 + +enum monster_id { + _MONSTER_ID_GENDERED(NONE, 0), + _MONSTER_ID_GENDERED(BULBASAUR, 1), + _MONSTER_ID_GENDERED(IVYSAUR, 2), + _MONSTER_ID_GENDERED(VENUSAUR, 3), + _MONSTER_ID_GENDERED(CHARMANDER, 4), + _MONSTER_ID_GENDERED(CHARMELEON, 5), + _MONSTER_ID_GENDERED(CHARIZARD, 6), + _MONSTER_ID_GENDERED(SQUIRTLE, 7), + _MONSTER_ID_GENDERED(WARTORTLE, 8), + _MONSTER_ID_GENDERED(BLASTOISE, 9), + _MONSTER_ID_GENDERED(CATERPIE, 10), + _MONSTER_ID_GENDERED(METAPOD, 11), + _MONSTER_ID_GENDERED(BUTTERFREE, 12), + _MONSTER_ID_GENDERED(WEEDLE, 13), + _MONSTER_ID_GENDERED(KAKUNA, 14), + _MONSTER_ID_GENDERED(BEEDRILL, 15), + _MONSTER_ID_GENDERED(PIDGEY, 16), + _MONSTER_ID_GENDERED(PIDGEOTTO, 17), + _MONSTER_ID_GENDERED(PIDGEOT, 18), + _MONSTER_ID_GENDERED(RATTATA, 19), + _MONSTER_ID_GENDERED(RATICATE, 20), + _MONSTER_ID_GENDERED(SPEAROW, 21), + _MONSTER_ID_GENDERED(FEAROW, 22), + _MONSTER_ID_GENDERED(EKANS, 23), + _MONSTER_ID_GENDERED(ARBOK, 24), + _MONSTER_ID_GENDERED(PIKACHU, 25), + _MONSTER_ID_GENDERED(RAICHU, 26), + _MONSTER_ID_GENDERED(SANDSHREW, 27), + _MONSTER_ID_GENDERED(SANDSLASH, 28), + _MONSTER_ID_GENDERED(NIDORAN_F, 29), + _MONSTER_ID_GENDERED(NIDORINA, 30), + _MONSTER_ID_GENDERED(NIDOQUEEN, 31), + _MONSTER_ID_GENDERED(NIDORAN_M, 32), + _MONSTER_ID_GENDERED(NIDORINO, 33), + _MONSTER_ID_GENDERED(NIDOKING, 34), + _MONSTER_ID_GENDERED(CLEFAIRY, 35), + _MONSTER_ID_GENDERED(CLEFABLE, 36), + _MONSTER_ID_GENDERED(VULPIX, 37), + _MONSTER_ID_GENDERED(NINETALES, 38), + _MONSTER_ID_GENDERED(JIGGLYPUFF, 39), + _MONSTER_ID_GENDERED(WIGGLYTUFF, 40), + _MONSTER_ID_GENDERED(ZUBAT, 41), + _MONSTER_ID_GENDERED(GOLBAT, 42), + _MONSTER_ID_GENDERED(ODDISH, 43), + _MONSTER_ID_GENDERED(GLOOM, 44), + _MONSTER_ID_GENDERED(VILEPLUME, 45), + _MONSTER_ID_GENDERED(PARAS, 46), + _MONSTER_ID_GENDERED(PARASECT, 47), + _MONSTER_ID_GENDERED(VENONAT, 48), + _MONSTER_ID_GENDERED(VENOMOTH, 49), + _MONSTER_ID_GENDERED(DIGLETT, 50), + _MONSTER_ID_GENDERED(DUGTRIO, 51), + _MONSTER_ID_GENDERED(MEOWTH, 52), + _MONSTER_ID_GENDERED(PERSIAN, 53), + _MONSTER_ID_GENDERED(PSYDUCK, 54), + _MONSTER_ID_GENDERED(GOLDUCK, 55), + _MONSTER_ID_GENDERED(MANKEY, 56), + _MONSTER_ID_GENDERED(PRIMEAPE, 57), + _MONSTER_ID_GENDERED(GROWLITHE, 58), + _MONSTER_ID_GENDERED(ARCANINE, 59), + _MONSTER_ID_GENDERED(POLIWAG, 60), + _MONSTER_ID_GENDERED(POLIWHIRL, 61), + _MONSTER_ID_GENDERED(POLIWRATH, 62), + _MONSTER_ID_GENDERED(ABRA, 63), + _MONSTER_ID_GENDERED(KADABRA, 64), + _MONSTER_ID_GENDERED(ALAKAZAM, 65), + _MONSTER_ID_GENDERED(MACHOP, 66), + _MONSTER_ID_GENDERED(MACHOKE, 67), + _MONSTER_ID_GENDERED(MACHAMP, 68), + _MONSTER_ID_GENDERED(BELLSPROUT, 69), + _MONSTER_ID_GENDERED(WEEPINBELL, 70), + _MONSTER_ID_GENDERED(VICTREEBEL, 71), + _MONSTER_ID_GENDERED(TENTACOOL, 72), + _MONSTER_ID_GENDERED(TENTACRUEL, 73), + _MONSTER_ID_GENDERED(GEODUDE, 74), + _MONSTER_ID_GENDERED(GRAVELER, 75), + _MONSTER_ID_GENDERED(GOLEM, 76), + _MONSTER_ID_GENDERED(PONYTA, 77), + _MONSTER_ID_GENDERED(RAPIDASH, 78), + _MONSTER_ID_GENDERED(SLOWPOKE, 79), + _MONSTER_ID_GENDERED(SLOWBRO, 80), + _MONSTER_ID_GENDERED(MAGNEMITE, 81), + _MONSTER_ID_GENDERED(MAGNETON, 82), + _MONSTER_ID_GENDERED(FARFETCHD, 83), + _MONSTER_ID_GENDERED(DODUO, 84), + _MONSTER_ID_GENDERED(DODRIO, 85), + _MONSTER_ID_GENDERED(SEEL, 86), + _MONSTER_ID_GENDERED(DEWGONG, 87), + _MONSTER_ID_GENDERED(GRIMER, 88), + _MONSTER_ID_GENDERED(MUK, 89), + _MONSTER_ID_GENDERED(SHELLDER, 90), + _MONSTER_ID_GENDERED(CLOYSTER, 91), + _MONSTER_ID_GENDERED(GASTLY, 92), + _MONSTER_ID_GENDERED(HAUNTER, 93), + _MONSTER_ID_GENDERED(GENGAR, 94), + _MONSTER_ID_GENDERED(ONIX, 95), + _MONSTER_ID_GENDERED(DROWZEE, 96), + _MONSTER_ID_GENDERED(HYPNO, 97), + _MONSTER_ID_GENDERED(KRABBY, 98), + _MONSTER_ID_GENDERED(KINGLER, 99), + _MONSTER_ID_GENDERED(VOLTORB, 100), + _MONSTER_ID_GENDERED(ELECTRODE, 101), + _MONSTER_ID_GENDERED(EXEGGCUTE, 102), + _MONSTER_ID_GENDERED(EXEGGUTOR, 103), + _MONSTER_ID_GENDERED(CUBONE, 104), + _MONSTER_ID_GENDERED(MAROWAK, 105), + _MONSTER_ID_GENDERED(HITMONLEE, 106), + _MONSTER_ID_GENDERED(HITMONCHAN, 107), + _MONSTER_ID_GENDERED(LICKITUNG, 108), + _MONSTER_ID_GENDERED(KOFFING, 109), + _MONSTER_ID_GENDERED(WEEZING, 110), + _MONSTER_ID_GENDERED(RHYHORN, 111), + _MONSTER_ID_GENDERED(RHYDON, 112), + _MONSTER_ID_GENDERED(CHANSEY, 113), + _MONSTER_ID_GENDERED(TANGELA, 114), + _MONSTER_ID_GENDERED(KANGASKHAN, 115), + _MONSTER_ID_GENDERED(HORSEA, 116), + _MONSTER_ID_GENDERED(SEADRA, 117), + _MONSTER_ID_GENDERED(GOLDEEN, 118), + _MONSTER_ID_GENDERED(SEAKING, 119), + _MONSTER_ID_GENDERED(STARYU, 120), + _MONSTER_ID_GENDERED(STARMIE, 121), + _MONSTER_ID_GENDERED(MR_MIME, 122), + _MONSTER_ID_GENDERED(SCYTHER, 123), + _MONSTER_ID_GENDERED(JYNX, 124), + _MONSTER_ID_GENDERED(ELECTABUZZ, 125), + _MONSTER_ID_GENDERED(MAGMAR, 126), + _MONSTER_ID_GENDERED(PINSIR, 127), + _MONSTER_ID_GENDERED(TAUROS, 128), + _MONSTER_ID_GENDERED(MAGIKARP, 129), + _MONSTER_ID_GENDERED(GYARADOS, 130), + _MONSTER_ID_GENDERED(LAPRAS, 131), + _MONSTER_ID_GENDERED(DITTO, 132), + _MONSTER_ID_GENDERED(EEVEE, 133), + _MONSTER_ID_GENDERED(VAPOREON, 134), + _MONSTER_ID_GENDERED(JOLTEON, 135), + _MONSTER_ID_GENDERED(FLAREON, 136), + _MONSTER_ID_GENDERED(PORYGON, 137), + _MONSTER_ID_GENDERED(OMANYTE, 138), + _MONSTER_ID_GENDERED(OMASTAR, 139), + _MONSTER_ID_GENDERED(KABUTO, 140), + _MONSTER_ID_GENDERED(KABUTOPS, 141), + _MONSTER_ID_GENDERED(AERODACTYL, 142), + _MONSTER_ID_GENDERED(SNORLAX, 143), + _MONSTER_ID_GENDERED(ARTICUNO, 144), + _MONSTER_ID_GENDERED(ZAPDOS, 145), + _MONSTER_ID_GENDERED(MOLTRES, 146), + _MONSTER_ID_GENDERED(DRATINI, 147), + _MONSTER_ID_GENDERED(DRAGONAIR, 148), + _MONSTER_ID_GENDERED(DRAGONITE, 149), + _MONSTER_ID_GENDERED(MEWTWO, 150), + _MONSTER_ID_GENDERED(MEW, 151), + _MONSTER_ID_GENDERED(CHIKORITA, 152), + _MONSTER_ID_GENDERED(BAYLEEF, 153), + _MONSTER_ID_GENDERED(MEGANIUM, 154), + _MONSTER_ID_GENDERED(CYNDAQUIL, 155), + _MONSTER_ID_GENDERED(QUILAVA, 156), + _MONSTER_ID_GENDERED(TYPHLOSION, 157), + _MONSTER_ID_GENDERED(TOTODILE, 158), + _MONSTER_ID_GENDERED(CROCONAW, 159), + _MONSTER_ID_GENDERED(FERALIGATR, 160), + _MONSTER_ID_GENDERED(SENTRET, 161), + _MONSTER_ID_GENDERED(FURRET, 162), + _MONSTER_ID_GENDERED(HOOTHOOT, 163), + _MONSTER_ID_GENDERED(NOCTOWL, 164), + _MONSTER_ID_GENDERED(LEDYBA, 165), + _MONSTER_ID_GENDERED(LEDIAN, 166), + _MONSTER_ID_GENDERED(SPINARAK, 167), + _MONSTER_ID_GENDERED(ARIADOS, 168), + _MONSTER_ID_GENDERED(CROBAT, 169), + _MONSTER_ID_GENDERED(CHINCHOU, 170), + _MONSTER_ID_GENDERED(LANTURN, 171), + _MONSTER_ID_GENDERED(PICHU, 172), + _MONSTER_ID_GENDERED(CLEFFA, 173), + _MONSTER_ID_GENDERED(IGGLYBUFF, 174), + _MONSTER_ID_GENDERED(TOGEPI, 175), + _MONSTER_ID_GENDERED(TOGETIC, 176), + _MONSTER_ID_GENDERED(NATU, 177), + _MONSTER_ID_GENDERED(XATU, 178), + _MONSTER_ID_GENDERED(MAREEP, 179), + _MONSTER_ID_GENDERED(FLAAFFY, 180), + _MONSTER_ID_GENDERED(AMPHAROS, 181), + _MONSTER_ID_GENDERED(BELLOSSOM, 182), + _MONSTER_ID_GENDERED(MARILL, 183), + _MONSTER_ID_GENDERED(AZUMARILL, 184), + _MONSTER_ID_GENDERED(SUDOWOODO, 185), + _MONSTER_ID_GENDERED(POLITOED, 186), + _MONSTER_ID_GENDERED(HOPPIP, 187), + _MONSTER_ID_GENDERED(SKIPLOOM, 188), + _MONSTER_ID_GENDERED(JUMPLUFF, 189), + _MONSTER_ID_GENDERED(AIPOM, 190), + _MONSTER_ID_GENDERED(SUNKERN, 191), + _MONSTER_ID_GENDERED(SUNFLORA, 192), + _MONSTER_ID_GENDERED(YANMA, 193), + _MONSTER_ID_GENDERED(WOOPER, 194), + _MONSTER_ID_GENDERED(QUAGSIRE, 195), + _MONSTER_ID_GENDERED(ESPEON, 196), + _MONSTER_ID_GENDERED(UMBREON, 197), + _MONSTER_ID_GENDERED(MURKROW, 198), + _MONSTER_ID_GENDERED(SLOWKING, 199), + _MONSTER_ID_GENDERED(MISDREAVUS, 200), + _MONSTER_ID_GENDERED(UNOWN_A, 201), + _MONSTER_ID_GENDERED(UNOWN_B, 202), + _MONSTER_ID_GENDERED(UNOWN_C, 203), + _MONSTER_ID_GENDERED(UNOWN_D, 204), + _MONSTER_ID_GENDERED(UNOWN_E, 205), + _MONSTER_ID_GENDERED(UNOWN_F, 206), + _MONSTER_ID_GENDERED(UNOWN_G, 207), + _MONSTER_ID_GENDERED(UNOWN_H, 208), + _MONSTER_ID_GENDERED(UNOWN_I, 209), + _MONSTER_ID_GENDERED(UNOWN_J, 210), + _MONSTER_ID_GENDERED(UNOWN_K, 211), + _MONSTER_ID_GENDERED(UNOWN_L, 212), + _MONSTER_ID_GENDERED(UNOWN_M, 213), + _MONSTER_ID_GENDERED(UNOWN_N, 214), + _MONSTER_ID_GENDERED(UNOWN_O, 215), + _MONSTER_ID_GENDERED(UNOWN_P, 216), + _MONSTER_ID_GENDERED(UNOWN_Q, 217), + _MONSTER_ID_GENDERED(UNOWN_R, 218), + _MONSTER_ID_GENDERED(UNOWN_S, 219), + _MONSTER_ID_GENDERED(UNOWN_T, 220), + _MONSTER_ID_GENDERED(UNOWN_U, 221), + _MONSTER_ID_GENDERED(UNOWN_V, 222), + _MONSTER_ID_GENDERED(UNOWN_W, 223), + _MONSTER_ID_GENDERED(UNOWN_X, 224), + _MONSTER_ID_GENDERED(UNOWN_Y, 225), + _MONSTER_ID_GENDERED(UNOWN_Z, 226), + _MONSTER_ID_GENDERED(UNOWN_EXCLAMATION, 227), + _MONSTER_ID_GENDERED(UNOWN_QUESTION, 228), + _MONSTER_ID_GENDERED(WOBBUFFET, 229), + _MONSTER_ID_GENDERED(GIRAFARIG, 230), + _MONSTER_ID_GENDERED(PINECO, 231), + _MONSTER_ID_GENDERED(FORRETRESS, 232), + _MONSTER_ID_GENDERED(DUNSPARCE, 233), + _MONSTER_ID_GENDERED(GLIGAR, 234), + _MONSTER_ID_GENDERED(STEELIX, 235), + _MONSTER_ID_GENDERED(SNUBBULL, 236), + _MONSTER_ID_GENDERED(GRANBULL, 237), + _MONSTER_ID_GENDERED(QWILFISH, 238), + _MONSTER_ID_GENDERED(SCIZOR, 239), + _MONSTER_ID_GENDERED(SHUCKLE, 240), + _MONSTER_ID_GENDERED(HERACROSS, 241), + _MONSTER_ID_GENDERED(SNEASEL, 242), + _MONSTER_ID_GENDERED(TEDDIURSA, 243), + _MONSTER_ID_GENDERED(URSARING, 244), + _MONSTER_ID_GENDERED(SLUGMA, 245), + _MONSTER_ID_GENDERED(MAGCARGO, 246), + _MONSTER_ID_GENDERED(SWINUB, 247), + _MONSTER_ID_GENDERED(PILOSWINE, 248), + _MONSTER_ID_GENDERED(CORSOLA, 249), + _MONSTER_ID_GENDERED(REMORAID, 250), + _MONSTER_ID_GENDERED(OCTILLERY, 251), + _MONSTER_ID_GENDERED(DELIBIRD, 252), + _MONSTER_ID_GENDERED(MANTINE, 253), + _MONSTER_ID_GENDERED(SKARMORY, 254), + _MONSTER_ID_GENDERED(HOUNDOUR, 255), + _MONSTER_ID_GENDERED(HOUNDOOM, 256), + _MONSTER_ID_GENDERED(KINGDRA, 257), + _MONSTER_ID_GENDERED(PHANPY, 258), + _MONSTER_ID_GENDERED(DONPHAN, 259), + _MONSTER_ID_GENDERED(PORYGON2, 260), + _MONSTER_ID_GENDERED(STANTLER, 261), + _MONSTER_ID_GENDERED(SMEARGLE, 262), + _MONSTER_ID_GENDERED(TYROGUE, 263), + _MONSTER_ID_GENDERED(HITMONTOP, 264), + _MONSTER_ID_GENDERED(SMOOCHUM, 265), + _MONSTER_ID_GENDERED(ELEKID, 266), + _MONSTER_ID_GENDERED(MAGBY, 267), + _MONSTER_ID_GENDERED(MILTANK, 268), + _MONSTER_ID_GENDERED(BLISSEY, 269), + _MONSTER_ID_GENDERED(RAIKOU, 270), + _MONSTER_ID_GENDERED(ENTEI, 271), + _MONSTER_ID_GENDERED(SUICUNE, 272), + _MONSTER_ID_GENDERED(LARVITAR, 273), + _MONSTER_ID_GENDERED(PUPITAR, 274), + _MONSTER_ID_GENDERED(TYRANITAR, 275), + _MONSTER_ID_GENDERED(LUGIA, 276), + _MONSTER_ID_GENDERED(HO_OH, 277), + _MONSTER_ID_GENDERED(CELEBI, 278), + _MONSTER_ID_GENDERED(SHINY_CELEBI, 279), + _MONSTER_ID_GENDERED(TREECKO, 280), + _MONSTER_ID_GENDERED(GROVYLE, 281), + _MONSTER_ID_GENDERED(SCEPTILE, 282), + _MONSTER_ID_GENDERED(TORCHIC, 283), + _MONSTER_ID_GENDERED(COMBUSKEN, 284), + _MONSTER_ID_GENDERED(BLAZIKEN, 285), + _MONSTER_ID_GENDERED(MUDKIP, 286), + _MONSTER_ID_GENDERED(MARSHTOMP, 287), + _MONSTER_ID_GENDERED(SWAMPERT, 288), + _MONSTER_ID_GENDERED(POOCHYENA, 289), + _MONSTER_ID_GENDERED(MIGHTYENA, 290), + _MONSTER_ID_GENDERED(ZIGZAGOON, 291), + _MONSTER_ID_GENDERED(LINOONE, 292), + _MONSTER_ID_GENDERED(WURMPLE, 293), + _MONSTER_ID_GENDERED(SILCOON, 294), + _MONSTER_ID_GENDERED(BEAUTIFLY, 295), + _MONSTER_ID_GENDERED(CASCOON, 296), + _MONSTER_ID_GENDERED(DUSTOX, 297), + _MONSTER_ID_GENDERED(LOTAD, 298), + _MONSTER_ID_GENDERED(LOMBRE, 299), + _MONSTER_ID_GENDERED(LUDICOLO, 300), + _MONSTER_ID_GENDERED(SEEDOT, 301), + _MONSTER_ID_GENDERED(NUZLEAF, 302), + _MONSTER_ID_GENDERED(SHIFTRY, 303), + _MONSTER_ID_GENDERED(TAILLOW, 304), + _MONSTER_ID_GENDERED(SWELLOW, 305), + _MONSTER_ID_GENDERED(WINGULL, 306), + _MONSTER_ID_GENDERED(PELIPPER, 307), + _MONSTER_ID_GENDERED(RALTS, 308), + _MONSTER_ID_GENDERED(KIRLIA, 309), + _MONSTER_ID_GENDERED(GARDEVOIR, 310), + _MONSTER_ID_GENDERED(SURSKIT, 311), + _MONSTER_ID_GENDERED(MASQUERAIN, 312), + _MONSTER_ID_GENDERED(SHROOMISH, 313), + _MONSTER_ID_GENDERED(BRELOOM, 314), + _MONSTER_ID_GENDERED(SLAKOTH, 315), + _MONSTER_ID_GENDERED(VIGOROTH, 316), + _MONSTER_ID_GENDERED(SLAKING, 317), + _MONSTER_ID_GENDERED(NINCADA, 318), + _MONSTER_ID_GENDERED(NINJASK, 319), + _MONSTER_ID_GENDERED(SHEDINJA, 320), + _MONSTER_ID_GENDERED(WHISMUR, 321), + _MONSTER_ID_GENDERED(LOUDRED, 322), + _MONSTER_ID_GENDERED(EXPLOUD, 323), + _MONSTER_ID_GENDERED(MAKUHITA, 324), + _MONSTER_ID_GENDERED(HARIYAMA, 325), + _MONSTER_ID_GENDERED(AZURILL, 326), + _MONSTER_ID_GENDERED(NOSEPASS, 327), + _MONSTER_ID_GENDERED(SKITTY, 328), + _MONSTER_ID_GENDERED(DELCATTY, 329), + _MONSTER_ID_GENDERED(SABLEYE, 330), + _MONSTER_ID_GENDERED(MAWILE, 331), + _MONSTER_ID_GENDERED(ARON, 332), + _MONSTER_ID_GENDERED(LAIRON, 333), + _MONSTER_ID_GENDERED(AGGRON, 334), + _MONSTER_ID_GENDERED(MEDITITE, 335), + _MONSTER_ID_GENDERED(MEDICHAM, 336), + _MONSTER_ID_GENDERED(ELECTRIKE, 337), + _MONSTER_ID_GENDERED(MANECTRIC, 338), + _MONSTER_ID_GENDERED(PLUSLE, 339), + _MONSTER_ID_GENDERED(MINUN, 340), + _MONSTER_ID_GENDERED(VOLBEAT, 341), + _MONSTER_ID_GENDERED(ILLUMISE, 342), + _MONSTER_ID_GENDERED(ROSELIA, 343), + _MONSTER_ID_GENDERED(GULPIN, 344), + _MONSTER_ID_GENDERED(SWALOT, 345), + _MONSTER_ID_GENDERED(CARVANHA, 346), + _MONSTER_ID_GENDERED(SHARPEDO, 347), + _MONSTER_ID_GENDERED(WAILMER, 348), + _MONSTER_ID_GENDERED(WAILORD, 349), + _MONSTER_ID_GENDERED(NUMEL, 350), + _MONSTER_ID_GENDERED(CAMERUPT, 351), + _MONSTER_ID_GENDERED(TORKOAL, 352), + _MONSTER_ID_GENDERED(SPOINK, 353), + _MONSTER_ID_GENDERED(GRUMPIG, 354), + _MONSTER_ID_GENDERED(SPINDA, 355), + _MONSTER_ID_GENDERED(TRAPINCH, 356), + _MONSTER_ID_GENDERED(VIBRAVA, 357), + _MONSTER_ID_GENDERED(FLYGON, 358), + _MONSTER_ID_GENDERED(CACNEA, 359), + _MONSTER_ID_GENDERED(CACTURNE, 360), + _MONSTER_ID_GENDERED(SWABLU, 361), + _MONSTER_ID_GENDERED(ALTARIA, 362), + _MONSTER_ID_GENDERED(ZANGOOSE, 363), + _MONSTER_ID_GENDERED(SEVIPER, 364), + _MONSTER_ID_GENDERED(LUNATONE, 365), + _MONSTER_ID_GENDERED(SOLROCK, 366), + _MONSTER_ID_GENDERED(BARBOACH, 367), + _MONSTER_ID_GENDERED(WHISCASH, 368), + _MONSTER_ID_GENDERED(CORPHISH, 369), + _MONSTER_ID_GENDERED(CRAWDAUNT, 370), + _MONSTER_ID_GENDERED(BALTOY, 371), + _MONSTER_ID_GENDERED(CLAYDOL, 372), + _MONSTER_ID_GENDERED(LILEEP, 373), + _MONSTER_ID_GENDERED(CRADILY, 374), + _MONSTER_ID_GENDERED(ANORITH, 375), + _MONSTER_ID_GENDERED(ARMALDO, 376), + _MONSTER_ID_GENDERED(FEEBAS, 377), + _MONSTER_ID_GENDERED(MILOTIC, 378), + _MONSTER_ID_GENDERED(CASTFORM_NORMAL, 379), + _MONSTER_ID_GENDERED(CASTFORM_SNOWY, 380), + _MONSTER_ID_GENDERED(CASTFORM_SUNNY, 381), + _MONSTER_ID_GENDERED(CASTFORM_RAINY, 382), + _MONSTER_ID_GENDERED(KECLEON, 383), + _MONSTER_ID_GENDERED(PURPLE_KECLEON, 384), + _MONSTER_ID_GENDERED(SHUPPET, 385), + _MONSTER_ID_GENDERED(BANETTE, 386), + _MONSTER_ID_GENDERED(DUSKULL, 387), + _MONSTER_ID_GENDERED(DUSCLOPS, 388), + _MONSTER_ID_GENDERED(TROPIUS, 389), + _MONSTER_ID_GENDERED(CHIMECHO, 390), + _MONSTER_ID_GENDERED(ABSOL, 391), + _MONSTER_ID_GENDERED(WYNAUT, 392), + _MONSTER_ID_GENDERED(SNORUNT, 393), + _MONSTER_ID_GENDERED(GLALIE, 394), + _MONSTER_ID_GENDERED(SPHEAL, 395), + _MONSTER_ID_GENDERED(SEALEO, 396), + _MONSTER_ID_GENDERED(WALREIN, 397), + _MONSTER_ID_GENDERED(CLAMPERL, 398), + _MONSTER_ID_GENDERED(HUNTAIL, 399), + _MONSTER_ID_GENDERED(GOREBYSS, 400), + _MONSTER_ID_GENDERED(RELICANTH, 401), + _MONSTER_ID_GENDERED(LUVDISC, 402), + _MONSTER_ID_GENDERED(BAGON, 403), + _MONSTER_ID_GENDERED(SHELGON, 404), + _MONSTER_ID_GENDERED(SALAMENCE, 405), + _MONSTER_ID_GENDERED(BELDUM, 406), + _MONSTER_ID_GENDERED(METANG, 407), + _MONSTER_ID_GENDERED(METAGROSS, 408), + _MONSTER_ID_GENDERED(REGIROCK, 409), + _MONSTER_ID_GENDERED(REGICE, 410), + _MONSTER_ID_GENDERED(REGISTEEL, 411), + _MONSTER_ID_GENDERED(LATIAS, 412), + _MONSTER_ID_GENDERED(LATIOS, 413), + _MONSTER_ID_GENDERED(KYOGRE, 414), + _MONSTER_ID_GENDERED(GROUDON, 415), + _MONSTER_ID_GENDERED(RAYQUAZA, 416), + _MONSTER_ID_GENDERED(JIRACHI, 417), + _MONSTER_ID_GENDERED(DEOXYS_NORMAL, 418), + _MONSTER_ID_GENDERED(DEOXYS_ATTACK, 419), + _MONSTER_ID_GENDERED(DEOXYS_DEFENSE, 420), + _MONSTER_ID_GENDERED(DEOXYS_SPEED, 421), + _MONSTER_ID_GENDERED(TURTWIG, 422), + _MONSTER_ID_GENDERED(GROTLE, 423), + _MONSTER_ID_GENDERED(TORTERRA, 424), + _MONSTER_ID_GENDERED(CHIMCHAR, 425), + _MONSTER_ID_GENDERED(MONFERNO, 426), + _MONSTER_ID_GENDERED(INFERNAPE, 427), + _MONSTER_ID_GENDERED(PIPLUP, 428), + _MONSTER_ID_GENDERED(PRINPLUP, 429), + _MONSTER_ID_GENDERED(EMPOLEON, 430), + _MONSTER_ID_GENDERED(STARLY, 431), + _MONSTER_ID_GENDERED(STARAVIA, 432), + _MONSTER_ID_GENDERED(STARAPTOR, 433), + _MONSTER_ID_GENDERED(BIDOOF, 434), + _MONSTER_ID_GENDERED(BIBAREL, 435), + _MONSTER_ID_GENDERED(KRICKETOT, 436), + _MONSTER_ID_GENDERED(KRICKETUNE, 437), + _MONSTER_ID_GENDERED(SHINX, 438), + _MONSTER_ID_GENDERED(LUXIO, 439), + _MONSTER_ID_GENDERED(LUXRAY, 440), + _MONSTER_ID_GENDERED(BUDEW, 441), + _MONSTER_ID_GENDERED(ROSERADE, 442), + _MONSTER_ID_GENDERED(CRANIDOS, 443), + _MONSTER_ID_GENDERED(RAMPARDOS, 444), + _MONSTER_ID_GENDERED(SHIELDON, 445), + _MONSTER_ID_GENDERED(BASTIODON, 446), + _MONSTER_ID_GENDERED(BURMY_SANDY, 447), + _MONSTER_ID_GENDERED(BURMY_PLANT, 448), + _MONSTER_ID_GENDERED(BURMY_TRASH, 449), + _MONSTER_ID_GENDERED(WORMADAM_SANDY, 450), + _MONSTER_ID_GENDERED(WORMADAM_PLANT, 451), + _MONSTER_ID_GENDERED(WORMADAM_TRASH, 452), + _MONSTER_ID_GENDERED(MOTHIM, 453), + _MONSTER_ID_GENDERED(COMBEE, 454), + _MONSTER_ID_GENDERED(VESPIQUEN, 455), + _MONSTER_ID_GENDERED(PACHIRISU, 456), + _MONSTER_ID_GENDERED(BUIZEL, 457), + _MONSTER_ID_GENDERED(FLOATZEL, 458), + _MONSTER_ID_GENDERED(CHERUBI, 459), + _MONSTER_ID_GENDERED(CHERRIM_OVERCAST, 460), + _MONSTER_ID_GENDERED(CHERRIM_SUNSHINE, 461), + _MONSTER_ID_GENDERED(SHELLOS_EAST, 462), + _MONSTER_ID_GENDERED(SHELLOS_WEST, 463), + _MONSTER_ID_GENDERED(GASTRODON_EAST, 464), + _MONSTER_ID_GENDERED(GASTRODON_WEST, 465), + _MONSTER_ID_GENDERED(AMBIPOM, 466), + _MONSTER_ID_GENDERED(DRIFLOON, 467), + _MONSTER_ID_GENDERED(DRIFBLIM, 468), + _MONSTER_ID_GENDERED(BUNEARY, 469), + _MONSTER_ID_GENDERED(LOPUNNY, 470), + _MONSTER_ID_GENDERED(MISMAGIUS, 471), + _MONSTER_ID_GENDERED(HONCHKROW, 472), + _MONSTER_ID_GENDERED(GLAMEOW, 473), + _MONSTER_ID_GENDERED(PURUGLY, 474), + _MONSTER_ID_GENDERED(CHINGLING, 475), + _MONSTER_ID_GENDERED(STUNKY, 476), + _MONSTER_ID_GENDERED(SKUNTANK, 477), + _MONSTER_ID_GENDERED(BRONZOR, 478), + _MONSTER_ID_GENDERED(BRONZONG, 479), + _MONSTER_ID_GENDERED(BONSLY, 480), + _MONSTER_ID_GENDERED(MIME_JR, 481), + _MONSTER_ID_GENDERED(HAPPINY, 482), + _MONSTER_ID_GENDERED(CHATOT, 483), + _MONSTER_ID_GENDERED(SPIRITOMB, 484), + _MONSTER_ID_GENDERED(GIBLE, 485), + _MONSTER_ID_GENDERED(GABITE, 486), + _MONSTER_ID_GENDERED(GARCHOMP, 487), + _MONSTER_ID_GENDERED(MUNCHLAX, 488), + _MONSTER_ID_GENDERED(RIOLU, 489), + _MONSTER_ID_GENDERED(LUCARIO, 490), + _MONSTER_ID_GENDERED(HIPPOPOTAS, 491), + _MONSTER_ID_GENDERED(HIPPOWDON, 492), + _MONSTER_ID_GENDERED(SKORUPI, 493), + _MONSTER_ID_GENDERED(DRAPION, 494), + _MONSTER_ID_GENDERED(CROAGUNK, 495), + _MONSTER_ID_GENDERED(TOXICROAK, 496), + _MONSTER_ID_GENDERED(CARNIVINE, 497), + _MONSTER_ID_GENDERED(FINNEON, 498), + _MONSTER_ID_GENDERED(LUMINEON, 499), + _MONSTER_ID_GENDERED(MANTYKE, 500), + _MONSTER_ID_GENDERED(SNOVER, 501), + _MONSTER_ID_GENDERED(ABOMASNOW, 502), + _MONSTER_ID_GENDERED(WEAVILE, 503), + _MONSTER_ID_GENDERED(MAGNEZONE, 504), + _MONSTER_ID_GENDERED(LICKILICKY, 505), + _MONSTER_ID_GENDERED(RHYPERIOR, 506), + _MONSTER_ID_GENDERED(TANGROWTH, 507), + _MONSTER_ID_GENDERED(ELECTIVIRE, 508), + _MONSTER_ID_GENDERED(MAGMORTAR, 509), + _MONSTER_ID_GENDERED(TOGEKISS, 510), + _MONSTER_ID_GENDERED(YANMEGA, 511), + _MONSTER_ID_GENDERED(LEAFEON, 512), + _MONSTER_ID_GENDERED(GLACEON, 513), + _MONSTER_ID_GENDERED(GLISCOR, 514), + _MONSTER_ID_GENDERED(MAMOSWINE, 515), + _MONSTER_ID_GENDERED(PORYGON_Z, 516), + _MONSTER_ID_GENDERED(GALLADE, 517), + _MONSTER_ID_GENDERED(PROBOPASS, 518), + _MONSTER_ID_GENDERED(DUSKNOIR, 519), + _MONSTER_ID_GENDERED(FROSLASS, 520), + _MONSTER_ID_GENDERED(ROTOM, 521), + _MONSTER_ID_GENDERED(UXIE, 522), + _MONSTER_ID_GENDERED(MESPRIT, 523), + _MONSTER_ID_GENDERED(AZELF, 524), + _MONSTER_ID_GENDERED(DIALGA, 525), + _MONSTER_ID_GENDERED(PALKIA, 526), + _MONSTER_ID_GENDERED(HEATRAN, 527), + _MONSTER_ID_GENDERED(REGIGIGAS, 528), + _MONSTER_ID_GENDERED(GIRATINA_ALTERED, 529), + _MONSTER_ID_GENDERED(CRESSELIA, 530), + _MONSTER_ID_GENDERED(PHIONE, 531), + _MONSTER_ID_GENDERED(MANAPHY, 532), + _MONSTER_ID_GENDERED(DARKRAI, 533), + _MONSTER_ID_GENDERED(SHAYMIN_LAND, 534), + _MONSTER_ID_GENDERED(SHAYMIN_SKY, 535), + _MONSTER_ID_GENDERED(GIRATINA_ORIGIN, 536), + _MONSTER_ID_GENDERED(UNNAMED_0x219, 537), + _MONSTER_ID_GENDERED(UNNAMED_0x21A, 538), + _MONSTER_ID_GENDERED(UNNAMED_0x21B, 539), + _MONSTER_ID_GENDERED(UNNAMED_0x21C, 540), + _MONSTER_ID_GENDERED(UNNAMED_0x21D, 541), + _MONSTER_ID_GENDERED(UNNAMED_0x21E, 542), + _MONSTER_ID_GENDERED(UNNAMED_0x21F, 543), + _MONSTER_ID_GENDERED(UNNAMED_0x220, 544), + _MONSTER_ID_GENDERED(UNNAMED_0x221, 545), + _MONSTER_ID_GENDERED(UNNAMED_0x222, 546), + _MONSTER_ID_GENDERED(UNNAMED_0x223, 547), + _MONSTER_ID_GENDERED(UNNAMED_0x224, 548), + _MONSTER_ID_GENDERED(UNNAMED_0x225, 549), + _MONSTER_ID_GENDERED(UNNAMED_0x226, 550), + _MONSTER_ID_GENDERED(UNNAMED_0x227, 551), + _MONSTER_ID_GENDERED(PRIMAL_DIALGA, 552), + _MONSTER_ID_GENDERED(DECOY, 553), + _MONSTER_ID_GENDERED(STATUE, 554), + MONSTER_WIGGLYTUFF_STORY = 555, + MONSTER_REGIGIGAS_STORY = 556, + MONSTER_BRONZONG_STORY = 557, + MONSTER_HITMONLEE_STORY = 558, + MONSTER_CHIMECHO_STORY = 559, + MONSTER_WIGGLYTUFF_STORY_2 = 560, + MONSTER_UXIE_STORY = 561, + MONSTER_AZELF_STORY = 562, + MONSTER_MESPRIT_STORY = 563, + MONSTER_SUNFLORA_STORY = 564, + MONSTER_DIGLETT_STORY = 565, + MONSTER_DUGTRIO_STORY = 566, + MONSTER_CORPHISH_STORY = 567, + MONSTER_LOUDRED_STORY = 568, + MONSTER_BIDOOF_STORY = 569, + MONSTER_CHATOT_STORY = 570, + MONSTER_GROVYLE_STORY = 571, + MONSTER_DUSKNOIR_STORY = 572, + MONSTER_SABLEYE_STORY = 573, + MONSTER_DARKRAI_STORY = 574, + MONSTER_MAMA = 575, + MONSTER_GROVYLE_STORY_2 = 576, + MONSTER_DUSKNOIR_STORY_2 = 577, + MONSTER_DUSKNOIR_STORY_3 = 578, + MONSTER_SENTRET_DITTO = 579, + MONSTER_BELLOSSOM_DITTO = 580, + MONSTER_RESERVE_27 = 581, + MONSTER_RESERVE_28 = 582, + MONSTER_RESERVE_29 = 583, + MONSTER_RESERVE_30 = 584, + MONSTER_RESERVE_31 = 585, + MONSTER_RESERVE_32 = 586, + MONSTER_RESERVE_33 = 587, + MONSTER_RESERVE_34 = 588, + MONSTER_RESERVE_35 = 589, + MONSTER_RESERVE_36 = 590, + MONSTER_RESERVE_37 = 591, + MONSTER_RESERVE_38 = 592, + MONSTER_RESERVE_39 = 593, + MONSTER_RESERVE_40 = 594, + MONSTER_RESERVE_41 = 595, + MONSTER_RESERVE_42 = 596, + MONSTER_RESERVE_43 = 597, + MONSTER_RESERVE_44 = 598, + MONSTER_RESERVE_45 = 599, +}; +#undef _MONSTER_ID_GENDERED + +#endif //PMDSKY_MONSTER_ID_H diff --git a/include/overlay_15_0238A140.h b/include/overlay_15_0238A140.h new file mode 100644 index 00000000..d1472bc9 --- /dev/null +++ b/include/overlay_15_0238A140.h @@ -0,0 +1,41 @@ +#ifndef PMDSKY_OVERLAY_15_0238A140_H +#define PMDSKY_OVERLAY_15_0238A140_H + +#include "monster_id.h" +#include "window.h" + +// Represents arguments that might be passed to the PreprocessString function +typedef struct { + u32 flag_vals[4]; // 0x0: These are usually IDs with additional flags attached to them + u32 id_vals[5]; // 0x10 + int number_vals[5]; // 0x24 + char* strings[5]; // 0x38 + // 0x4C: An optional argument that is used to insert the name of a Pokémon + // When they're talking through a window. It requires its respective flag to be on + u32 speaker_id; + u8 fill88[0x88 - 0x3C]; + u32 unkproc88; +} preprocessor_args; + +typedef struct { + void* unk0; + u8 fill10[0x10 - 0x5]; + u32 unk10; + u8 fill68[0x68 - 0x14]; + s8 unk68; + u8 fill80[0x80 - 0x69]; + s8 unk80; + s8 unk81; + u8 fill88[0x88 - 0x82]; + enum monster_id unk88; //wrong probably + u8 fillAC[0xAC - 0x8C]; + u32 unkAC; + u8 fillD4[0xD4 - 0xB0]; + u32 unkD4; + u8 fillDC[0xDC - 0xD8]; + portrait_params* unkDC; +} unkBankStruct; + +u16 ov15_0238A140(void); + +#endif //PMDSKY_OVERLAY_15_0238A140_H diff --git a/include/window.h b/include/window.h new file mode 100644 index 00000000..7837ff4c --- /dev/null +++ b/include/window.h @@ -0,0 +1,20 @@ +#ifndef PMDSKY_WINDOW_H +#define PMDSKY_WINDOW_H + +#include "monster_id.h" + +// Represents the state of a portrait to be displayed inside a window +typedef struct { + enum monster_id monster_id; // 0x0: The species id, or the set index inside kaomado.kao + // 0x2: Index of the emote in the species set of portraits + u32 portrait_emotion; + u8 layout_idx; // 0x3: Represents the current layout to display the portrait + u32 offset_x; // 0x4: Tile offset (x / 8) in the X axis to draw the portrait + u32 offset_y; // 0x8: Tile offset (y / 8) in the Y axis to draw the portrait + u8 try_flip; // 0xC: Whether to try to get a flipped portrait from kaomado.kao + u8 has_flip; // 0xD: Whether the specified emote has a flipped variant + u8 hw_flip; // 0xE: Whether the portrait should be flipped using the hardware + u8 allow_default; // 0xF: If true, try using emote index 0 if the desired emote can't be found +} portrait_params; + +#endif //PMDSKY_WINDOW_H diff --git a/main.lsf b/main.lsf index 320f9620..435ca4b2 100644 --- a/main.lsf +++ b/main.lsf @@ -128,7 +128,8 @@ Overlay OVY_14 Overlay OVY_15 { After OVY_11 - Object asm/overlay_15.o + Object src/overlay_15_0238A140.o + Object asm/overlay_15_0238A234.o Object src/overlay_15_0238AD78.o Object asm/overlay_15_0238ADC4.o Object src/overlay_15_0238AE6C.o diff --git a/src/overlay_15_0238A140.c b/src/overlay_15_0238A140.c new file mode 100644 index 00000000..33183203 --- /dev/null +++ b/src/overlay_15_0238A140.c @@ -0,0 +1,40 @@ +#include "overlay_15_0238A140.h" + +extern unkBankStruct* OVERLAY15_UNKNOWN_POINTER__NA_238B180; + +extern void* MemAlloc(u32 len, u32 flags); +extern void InitPreprocessorArgs(preprocessor_args*); +extern u32 CreateDialogueBox(u32); +extern u32 CreatePortraitBox(u32, u32, u32); +extern void InitPortraitParamsWithMonsterId(portrait_params**, enum monster_id); +extern void SetPortraitLayout(portrait_params**, u32); +extern void SetPortraitEmotion(portrait_params**, u32); +extern void ShowPortraitInPortraitBox(u32, portrait_params**); +extern void ov15_0238A4E8(u32); + +u16 ov15_0238A140(void) +{ + void* memPtr = MemAlloc(0xec,8); + + OVERLAY15_UNKNOWN_POINTER__NA_238B180 = memPtr; + + InitPreprocessorArgs((preprocessor_args*)(&OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk88)); + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk80 = CreateDialogueBox(0); + + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk81 = CreatePortraitBox(0,3,1); + + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk68 = 0xFE; + + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk10 = 0; + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk88 = MONSTER_DUSKULL; + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unkAC = 0x270F; + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unkD4 = 0x183; + OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk0 = 0; + + InitPortraitParamsWithMonsterId(&OVERLAY15_UNKNOWN_POINTER__NA_238B180->unkDC, MONSTER_DUSKULL); + SetPortraitLayout(&OVERLAY15_UNKNOWN_POINTER__NA_238B180->unkDC,0); + SetPortraitEmotion(&OVERLAY15_UNKNOWN_POINTER__NA_238B180->unkDC,0); + ShowPortraitInPortraitBox(OVERLAY15_UNKNOWN_POINTER__NA_238B180->unk81, &OVERLAY15_UNKNOWN_POINTER__NA_238B180->unkDC); + ov15_0238A4E8(0); + return 1; +}