diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/constants/songs.h | 501 | ||||
-rw-r--r-- | include/field_effect.h | 3 | ||||
-rw-r--r-- | include/field_effect_helpers.h | 1 | ||||
-rwxr-xr-x | include/field_map_obj.h | 12 | ||||
-rw-r--r-- | include/field_player_avatar.h | 1 | ||||
-rw-r--r-- | include/global.fieldmap.h | 2 | ||||
-rw-r--r-- | include/global.h | 13 | ||||
-rw-r--r-- | include/graphics.h | 27 | ||||
-rw-r--r-- | include/lilycove_lady.h | 2 | ||||
-rw-r--r-- | include/list_menu.h | 23 | ||||
-rw-r--r-- | include/map_obj_8097404.h | 2 | ||||
-rw-r--r-- | include/menu.h | 7 | ||||
-rw-r--r-- | include/menu_helpers.h | 13 | ||||
-rw-r--r-- | include/party_menu.h | 4 | ||||
-rw-r--r-- | include/pokeblock.h | 41 | ||||
-rw-r--r-- | include/pokenav.h | 11 | ||||
-rw-r--r-- | include/rom6.h | 2 | ||||
-rw-r--r-- | include/songs.h | 466 | ||||
-rw-r--r-- | include/strings.h | 57 | ||||
-rw-r--r-- | include/text_window.h | 4 | ||||
-rw-r--r-- | include/trainer_see.h | 31 |
21 files changed, 493 insertions, 730 deletions
diff --git a/include/constants/songs.h b/include/constants/songs.h index 2e3adcbbf..fdecff09a 100644 --- a/include/constants/songs.h +++ b/include/constants/songs.h @@ -1,9 +1,9 @@ #ifndef GUARD_CONSTANTS_SONGS_H #define GUARD_CONSTANTS_SONGS_H -#define SE_STOP 0 +#define MUS_DUMMY 0 #define SE_KAIFUKU 1 -#define SE_PC_LOGON 2 +#define SE_PC_LOGIN 2 #define SE_PC_OFF 3 #define SE_PC_ON 4 #define SE_SELECT 5 @@ -52,7 +52,7 @@ #define SE_HI_TURUN 48 #define SE_TRACK_MOVE 49 #define SE_TRACK_STOP 50 -#define SE_TRACK_HAIK 51 +#define SE_TRACK_HAIKI 51 #define SE_TRACK_DOOR 52 #define SE_MOTER 53 #define SE_CARD 54 @@ -249,217 +249,290 @@ #define SE_W287B 245 #define SE_W114 246 #define SE_W063B 247 -#define BGM_STOP 349 -#define BGM_TETSUJI 350 -#define BGM_FIELD13 351 -#define BGM_KACHI22 352 -#define BGM_KACHI2 353 -#define BGM_KACHI3 354 -#define BGM_KACHI5 355 -#define BGM_PCC 356 -#define BGM_NIBI 357 -#define BGM_SUIKUN 358 -#define BGM_DOORO1 359 -#define BGM_DOORO_X1 360 -#define BGM_DOORO_X3 361 -#define BGM_MACHI_S2 362 -#define BGM_MACHI_S4 363 -#define BGM_GIM 364 -#define BGM_NAMINORI 365 -#define BGM_DAN01 366 -#define BGM_FANFA1 367 -#define BGM_ME_ASA 368 -#define BGM_ME_BACHI 369 -#define BGM_FANFA4 370 -#define BGM_FANFA5 371 -#define BGM_ME_WAZA 372 -#define BGM_BIJYUTU 373 -#define BGM_DOORO_X4 374 -#define BGM_FUNE_KAN 375 -#define BGM_ME_SHINKA 376 -#define BGM_SHINKA 377 -#define BGM_ME_WASURE 378 -#define BGM_SYOUJOEYE 379 -#define BGM_BOYEYE 380 -#define BGM_DAN02 381 -#define BGM_MACHI_S3 382 -#define BGM_ODAMAKI 383 -#define BGM_B_TOWER 384 -#define BGM_SWIMEYE 385 -#define BGM_DAN03 386 -#define BGM_ME_KINOMI 387 -#define BGM_ME_TAMA 388 -#define BGM_ME_B_BIG 389 -#define BGM_ME_B_SMALL 390 -#define BGM_ME_ZANNEN 391 -#define BGM_BD_TIME 392 -#define BGM_TEST1 393 -#define BGM_TEST2 394 -#define BGM_TEST3 395 -#define BGM_TEST4 396 -#define BGM_TEST 397 -#define BGM_GOMACHI0 398 -#define BGM_GOTOWN 399 -#define BGM_POKECEN 400 -#define BGM_NEXTROAD 401 -#define BGM_GRANROAD 402 -#define BGM_CYCLING 403 -#define BGM_FRIENDLY 404 -#define BGM_MISHIRO 405 -#define BGM_TOZAN 406 -#define BGM_GIRLEYE 407 -#define BGM_MINAMO 408 -#define BGM_ASHROAD 409 -#define BGM_EVENT0 410 -#define BGM_DEEPDEEP 411 -#define BGM_KACHI1 412 -#define BGM_TITLE3 413 -#define BGM_DEMO1 414 -#define BGM_GIRL_SUP 415 -#define BGM_HAGESHII 416 -#define BGM_KAKKOII 417 -#define BGM_KAZANBAI 418 -#define BGM_AQA_0 419 -#define BGM_TSURETEK 420 -#define BGM_BOY_SUP 421 -#define BGM_RAINBOW 422 -#define BGM_AYASII 423 -#define BGM_KACHI4 424 -#define BGM_ROPEWAY 425 -#define BGM_CASINO 426 -#define BGM_HIGHTOWN 427 -#define BGM_SAFARI 428 -#define BGM_C_ROAD 429 -#define BGM_AJITO 430 -#define BGM_M_BOAT 431 -#define BGM_M_DUNGON 432 -#define BGM_FINECITY 433 -#define BGM_MACHUPI 434 -#define BGM_P_SCHOOL 435 -#define BGM_DENDOU 436 -#define BGM_TONEKUSA 437 -#define BGM_MABOROSI 438 -#define BGM_CON_FAN 439 -#define BGM_CONTEST0 440 -#define BGM_MGM0 441 -#define BGM_T_BATTLE 442 -#define BGM_OOAME 443 -#define BGM_HIDERI 444 -#define BGM_RUNECITY 445 -#define BGM_CON_K 446 -#define BGM_EIKOU_R 447 -#define BGM_KARAKURI 448 -#define BGM_HUTAGO 449 -#define BGM_SITENNOU 450 -#define BGM_YAMA_EYE 451 -#define BGM_CONLOBBY 452 -#define BGM_INTER_V 453 -#define BGM_DAIGO 454 -#define BGM_THANKFOR 455 -#define BGM_END 456 -#define BGM_BATTLE_FRONTIER 457 -#define BGM_BATTLE_ARENA 458 -#define BGM_ME_BATTLE_POINTS 459 -#define BGM_ME_MATCH_CALL 460 -#define BGM_BATTLE_PYRAMID 461 -#define BGM_BATTLE_PYRAMID_SUMMIT 462 -#define BGM_BATTLE_PALACE 463 -#define BGM_FANFA_RAYQUAZA 464 -#define BGM_BATTLE_TOWER 465 -#define BGM_ME_BATTLE_SYMBOL 466 -#define BGM_BATTLE_DOME_TOURNAMENT 467 -#define BGM_BATTLE_PIKE 468 -#define BGM_BATTLE_FACTORY 469 -#define BGM_BATTLE_LEGENDARY 470 -#define BGM_BATTLE_FRONTIER_BRAIN 471 -#define BGM_BATTLE_MEW 472 -#define BGM_BATTLE_DOME 473 -#define BGM_BATTLE27 474 -#define BGM_BATTLE31 475 -#define BGM_BATTLE20 476 -#define BGM_BATTLE32 477 -#define BGM_BATTLE33 478 -#define BGM_BATTLE36 479 -#define BGM_BATTLE34 480 -#define BGM_BATTLE35 481 -#define BGM_BATTLE38 482 -#define BGM_BATTLE30 483 -#define BGM_FRLG_FOLLOW_ME 484 -#define BGM_FRLG_GAMECORNER 485 -#define BGM_FRLG_ROCKET_HIDEOUT 486 -#define BGM_FRLG_GYM 487 -#define BGM_FRLG_JIGGLYPUFF 488 -#define BGM_FRLG_OPENING 489 -#define BGM_FRLG_TITLE 490 -#define BGM_FRLG_CINNABAR_ISLAND 491 -#define BGM_FRLG_LAVENDER_TOWN 492 -#define BGM_FRLG_HEALING_TEST 493 -#define BGM_FRLG_BICYCLE 494 -#define BGM_FRLG_SUSPICIOUS_EYE 495 -#define BGM_FRLG_GIRL_EYE 496 -#define BGM_FRLG_BOY_EYE 497 -#define BGM_FRLG_CONGRATULATIONS_HALL_OF_FAME 498 -#define BGM_FRLG_VIRIDIAN_FOREST 499 -#define BGM_FRLG_MT_MOON 500 -#define BGM_FRLG_POKEMON_MANSION 501 -#define BGM_FRLG_CREDITS 502 -#define BGM_FRLG_ROUTE_1 503 -#define BGM_FRLG_ROUTE_24 504 -#define BGM_FRLG_ROUTE_3 505 -#define BGM_FRLG_ROUTE_11 506 -#define BGM_FRLG_INDIGO_PLATEAU 507 -#define BGM_FRLG_BATTLE_LEADER 508 -#define BGM_FRLG_BATTLE_TRAINER 509 -#define BGM_FRLG_BATTLE_WILD_POKEMON 510 -#define BGM_FRLG_BATTLE_CHAMPION 511 -#define BGM_FRLG_PALLET_TOWN 512 -#define BGM_FRLG_OAK_LAB 513 -#define BGM_FRLG_PROF_OAK 514 -#define BGM_FRLG_POKEMON_CENTER 515 -#define BGM_FRLG_SS_ANNE 516 -#define BGM_FRLG_SURF 517 -#define BGM_FRLG_POKEMON_TOWER 518 -#define BGM_FRLG_SILPH 519 -#define BGM_FRLG_CERULEAN_CITY 520 -#define BGM_FRLG_CELADON_CITY 521 -#define BGM_FRLG_KACHI_TRAINER 522 -#define BGM_FRLG_KACHI_WILD_POKEMON 523 -#define BGM_FRLG_KACHI_LEADER 524 -#define BGM_FRLG_VERMILION_CITY 525 -#define BGM_FRLG_VIRIDIAN_CITY 526 -#define BGM_FRLG_RIVAL 527 -#define BGM_FRLG_RIVAL_POSTBATTLE 528 -#define BGM_FRLG_ME_POKEDEX_EVAL 529 -#define BGM_FRLG_ME_KEYITEM 530 -#define BGM_FRLG_FANFA_POKEMON_CAUGHT 531 -#define BGM_FRLG_FANFA_TRAINERCARD_PHOTO 532 -#define BGM_FRLG_GAMEFREAK_LOGO 533 -#define BGM_FRLG_CAUGHT_POKEMON 534 -#define BGM_FRLG_GAME_EXPLANATION_START 535 -#define BGM_FRLG_GAME_EXPLANATION_MIDDLE 536 -#define BGM_FRLG_GAME_EXPLANATION_END 537 -#define BGM_FRLG_POKEMON_JUMP 538 -#define BGM_FRLG_UNION_ROOM 539 -#define BGM_FRLG_POKEMON_NETWORK_CENTER 540 -#define BGM_FRLG_MYSTERY_GIFT 541 -#define BGM_FRLG_DODRIO_BERRY_PICK 542 -#define BGM_FRLG_MT_EMBER 543 -#define BGM_FRLG_TEACHY_TV_EPISODE 544 -#define BGM_FRLG_SEVII_ISLANDS 545 -#define BGM_FRLG_TANOBY_RUINS 546 -#define BGM_FRLG_ISLAND_ONE 547 -#define BGM_FRLG_ISLAND_FOUR 548 -#define BGM_FRLG_ISLAND_SIX 549 -#define BGM_FRLG_FLUTE 550 -#define BGM_FRLG_BATTLE_DEOXYS 551 -#define BGM_FRLG_BATTLE_MEWTWO 552 -#define BGM_FRLG_BATTLE_LEGENDARY 553 -#define BGM_FRLG_LEADER_EYE 554 -#define BGM_FRLG_DEOXYS_EYE 555 -#define BGM_FRLG_TRAINER_TOWER 556 -#define BGM_FRLG_HALL_OF_FAME_PALLET_TOWN 557 -#define BGM_FRLG_TEACHY_TV 558 +#define SE_RG_W_DOOR 248 +#define SE_RG_CARD1 249 +#define SE_RG_CARD2 250 +#define SE_RG_CARD3 251 +#define SE_RG_BAG1 252 +#define SE_RG_BAG2 253 +#define SE_RG_GETTING 254 +#define SE_RG_SHOP 255 +#define SE_RG_KITEKI 256 +#define SE_RG_HELP_OP 257 +#define SE_RG_HELP_CL 258 +#define SE_RG_HELP_NG 259 +#define SE_RG_DEOMOV 260 +#define SE_RG_EXCELLENT 261 +#define SE_RG_NAWAMISS 262 +#define SE_TOREEYE 263 +#define SE_TOREOFF 264 +#define SE_HANTEI1 265 +#define SE_HANTEI2 266 +#define SE_CURTAIN 267 +#define SE_CURTAIN1 268 +#define SE_USSOKI 269 -#define BGM_ROUTE_118 0x7FFF // What is this for? +#define MUS_TETSUJI 350 +#define MUS_FIELD13 351 +#define MUS_KACHI22 352 +#define MUS_KACHI2 353 +#define MUS_KACHI3 354 +#define MUS_KACHI5 355 +#define MUS_PCC 356 +#define MUS_NIBI 357 +#define MUS_SUIKUN 358 +#define MUS_DOORO1 359 +#define MUS_DOORO_X1 360 +#define MUS_DOORO_X3 361 +#define MUS_MACHI_S2 362 +#define MUS_MACHI_S4 363 +#define MUS_GIM 364 +#define MUS_NAMINORI 365 +#define MUS_DAN01 366 +#define MUS_FANFA1 367 +#define MUS_ME_ASA 368 +#define MUS_ME_BACHI 369 +#define MUS_FANFA4 370 +#define MUS_FANFA5 371 +#define MUS_ME_WAZA 372 +#define MUS_BIJYUTU 373 +#define MUS_DOORO_X4 374 +#define MUS_FUNE_KAN 375 +#define MUS_ME_SHINKA 376 +#define MUS_SHINKA 377 +#define MUS_ME_WASURE 378 +#define MUS_SYOUJOEYE 379 +#define MUS_BOYEYE 380 +#define MUS_DAN02 381 +#define MUS_MACHI_S3 382 +#define MUS_ODAMAKI 383 +#define MUS_B_TOWER 384 +#define MUS_SWIMEYE 385 +#define MUS_DAN03 386 +#define MUS_ME_KINOMI 387 +#define MUS_ME_TAMA 388 +#define MUS_ME_B_BIG 389 +#define MUS_ME_B_SMALL 390 +#define MUS_ME_ZANNEN 391 +#define MUS_BD_TIME 392 +#define MUS_TEST1 393 +#define MUS_TEST2 394 +#define MUS_TEST3 395 +#define MUS_TEST4 396 +#define MUS_TEST 397 +#define MUS_GOMACHI0 398 +#define MUS_GOTOWN 399 +#define MUS_POKECEN 400 +#define MUS_NEXTROAD 401 +#define MUS_GRANROAD 402 +#define MUS_CYCLING 403 +#define MUS_FRIENDLY 404 +#define MUS_MISHIRO 405 +#define MUS_TOZAN 406 +#define MUS_GIRLEYE 407 +#define MUS_MINAMO 408 +#define MUS_ASHROAD 409 +#define MUS_EVENT0 410 +#define MUS_DEEPDEEP 411 +#define MUS_KACHI1 412 +#define MUS_TITLE3 413 +#define MUS_DEMO1 414 +#define MUS_GIRL_SUP 415 +#define MUS_HAGESHII 416 +#define MUS_KAKKOII 417 +#define MUS_KAZANBAI 418 +#define MUS_AQA_0 419 +#define MUS_TSURETEK 420 +#define MUS_BOY_SUP 421 +#define MUS_RAINBOW 422 +#define MUS_AYASII 423 +#define MUS_KACHI4 424 +#define MUS_ROPEWAY 425 +#define MUS_CASINO 426 +#define MUS_HIGHTOWN 427 +#define MUS_SAFARI 428 +#define MUS_C_ROAD 429 +#define MUS_AJITO 430 +#define MUS_M_BOAT 431 +#define MUS_M_DUNGON 432 +#define MUS_FINECITY 433 +#define MUS_MACHUPI 434 +#define MUS_P_SCHOOL 435 +#define MUS_DENDOU 436 +#define MUS_TONEKUSA 437 +#define MUS_MABOROSI 438 +#define MUS_CON_FAN 439 +#define MUS_CONTEST0 440 +#define MUS_MGM0 441 +#define MUS_T_BATTLE 442 +#define MUS_OOAME 443 +#define MUS_HIDERI 444 +#define MUS_RUNECITY 445 +#define MUS_CON_K 446 +#define MUS_EIKOU_R 447 +#define MUS_KARAKURI 448 +#define MUS_HUTAGO 449 +#define MUS_SITENNOU 450 +#define MUS_YAMA_EYE 451 +#define MUS_CONLOBBY 452 +#define MUS_INTER_V 453 +#define MUS_DAIGO 454 +#define MUS_THANKFOR 455 +#define MUS_END 456 +#define MUS_B_FRONTIER 457 +#define MUS_B_ARENA 458 +#define MUS_ME_POINTGET 459 +#define MUS_ME_TORE_EYE 460 +#define MUS_PYRAMID 461 +#define MUS_PYRAMID_TOP 462 +#define MUS_B_PALACE 463 +#define MUS_REKKUU_KOURIN 464 +#define MUS_SATTOWER 465 +#define MUS_ME_SYMBOLGET 466 +#define MUS_B_DOME 467 +#define MUS_B_TUBE 468 +#define MUS_B_FACTORY 469 +#define MUS_VS_REKKU 470 +#define MUS_VS_FRONT 471 +#define MUS_VS_MEW 472 +#define MUS_B_DOME1 473 +#define MUS_BATTLE27 474 +#define MUS_BATTLE31 475 +#define MUS_BATTLE20 476 +#define MUS_BATTLE32 477 +#define MUS_BATTLE33 478 +#define MUS_BATTLE36 479 +#define MUS_BATTLE34 480 +#define MUS_BATTLE35 481 +#define MUS_BATTLE38 482 +#define MUS_BATTLE30 483 +#define MUS_RG_ANNAI 484 +#define MUS_RG_SLOT 485 +#define MUS_RG_AJITO 486 +#define MUS_RG_GYM 487 +#define MUS_RG_PURIN 488 +#define MUS_RG_DEMO 489 +#define MUS_RG_TITLE 490 +#define MUS_RG_GUREN 491 +#define MUS_RG_SHION 492 +#define MUS_RG_KAIHUKU 493 +#define MUS_RG_CYCLING 494 +#define MUS_RG_ROCKET 495 +#define MUS_RG_SHOUJO 496 +#define MUS_RG_SHOUNEN 497 +#define MUS_RG_DENDOU 498 +#define MUS_RG_T_MORI 499 +#define MUS_RG_OTSUKIMI 500 +#define MUS_RG_POKEYASHI 501 +#define MUS_RG_ENDING 502 +#define MUS_RG_LOAD01 503 +#define MUS_RG_OPENING 504 +#define MUS_RG_LOAD02 505 +#define MUS_RG_LOAD03 506 +#define MUS_RG_CHAMP_R 507 +#define MUS_RG_VS_GYM 508 +#define MUS_RG_VS_TORE 509 +#define MUS_RG_VS_YASEI 510 +#define MUS_RG_VS_LAST 511 +#define MUS_RG_MASARA 512 +#define MUS_RG_KENKYU 513 +#define MUS_RG_OHKIDO 514 +#define MUS_RG_POKECEN 515 +#define MUS_RG_SANTOAN 516 +#define MUS_RG_NAMINORI 517 +#define MUS_RG_P_TOWER 518 +#define MUS_RG_SHIRUHU 519 +#define MUS_RG_HANADA 520 +#define MUS_RG_TAMAMUSI 521 +#define MUS_RG_WIN_TRE 522 +#define MUS_RG_WIN_YASEI 523 +#define MUS_RG_WIN_GYM 524 +#define MUS_RG_KUCHIBA 525 +#define MUS_RG_NIBI 526 +#define MUS_RG_RIVAL1 527 +#define MUS_RG_RIVAL2 528 +#define MUS_RG_FAN2 529 +#define MUS_RG_FAN5 530 +#define MUS_RG_FAN6 531 +#define MUS_ME_RG_PHOTO 532 +#define MUS_RG_TITLEROG 533 +#define MUS_RG_GET_YASEI 534 +#define MUS_RG_SOUSA 535 +#define MUS_RG_SEKAIKAN 536 +#define MUS_RG_SEIBETU 537 +#define MUS_RG_JUMP 538 +#define MUS_RG_UNION 539 +#define MUS_RG_NETWORK 540 +#define MUS_RG_OKURIMONO 541 +#define MUS_RG_KINOMIKUI 542 +#define MUS_RG_NANADUNGEON 543 +#define MUS_RG_OSHIE_TV 544 +#define MUS_RG_NANASHIMA 545 +#define MUS_RG_NANAISEKI 546 +#define MUS_RG_NANA123 547 +#define MUS_RG_NANA45 548 +#define MUS_RG_NANA67 549 +#define MUS_RG_POKEFUE 550 +#define MUS_RG_VS_DEO 551 +#define MUS_RG_VS_MYU2 552 +#define MUS_RG_VS_DEN 553 +#define MUS_RG_EXEYE 554 +#define MUS_RG_DEOEYE 555 +#define MUS_RG_T_TOWER 556 +#define MUS_RG_SLOWMASARA 557 +#define MUS_RG_TVNOIZE 558 +#define PH_TRAP_BLEND 559 +#define PH_TRAP_HELD 560 +#define PH_TRAP_SOLO 561 +#define PH_FACE_BLEND 562 +#define PH_FACE_HELD 563 +#define PH_FACE_SOLO 564 +#define PH_CLOTH_BLEND 565 +#define PH_CLOTH_HELD 566 +#define PH_CLOTH_SOLO 567 +#define PH_DRESS_BLEND 568 +#define PH_DRESS_HELD 569 +#define PH_DRESS_SOLO 570 +#define PH_FLEECE_BLEND 571 +#define PH_FLEECE_HELD 572 +#define PH_FLEECE_SOLO 573 +#define PH_KIT_BLEND 574 +#define PH_KIT_HELD 575 +#define PH_KIT_SOLO 576 +#define PH_PRICE_BLEND 577 +#define PH_PRICE_HELD 578 +#define PH_PRICE_SOLO 579 +#define PH_LOT_BLEND 580 +#define PH_LOT_HELD 581 +#define PH_LOT_SOLO 582 +#define PH_GOAT_BLEND 583 +#define PH_GOAT_HELD 584 +#define PH_GOAT_SOLO 585 +#define PH_THOUGHT_BLEND 586 +#define PH_THOUGHT_HELD 587 +#define PH_THOUGHT_SOLO 588 +#define PH_CHOICE_BLEND 589 +#define PH_CHOICE_HELD 590 +#define PH_CHOICE_SOLO 591 +#define PH_MOUTH_BLEND 592 +#define PH_MOUTH_HELD 593 +#define PH_MOUTH_SOLO 594 +#define PH_FOOT_BLEND 595 +#define PH_FOOT_HELD 596 +#define PH_FOOT_SOLO 597 +#define PH_GOOSE_BLEND 598 +#define PH_GOOSE_HELD 599 +#define PH_GOOSE_SOLO 600 +#define PH_STRUT_BLEND 601 +#define PH_STRUT_HELD 602 +#define PH_STRUT_SOLO 603 +#define PH_CURE_BLEND 604 +#define PH_CURE_HELD 605 +#define PH_CURE_SOLO 606 +#define PH_NURSE_BLEND 607 +#define PH_NURSE_HELD 608 +#define PH_NURSE_SOLO 609 + +#define MUS_ROUTE_118 0x7FFF // What is this for? #endif // GUARD_CONSTANTS_SONGS_H diff --git a/include/field_effect.h b/include/field_effect.h index 629ae07c7..772b20d37 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -71,8 +71,9 @@ enum FieldEffectScriptIdx extern u32 gFieldEffectArguments[8]; -u8 FieldEffectStart(u8); +u32 FieldEffectStart(u8); bool8 FieldEffectActiveListContains(u8 id); void sub_80B69DC(void); +void FieldEffectStop(struct Sprite *sprite, u8 id); #endif //GUARD_FIELD_EFFECTS_H diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h index e80daf3bd..15928eba3 100644 --- a/include/field_effect_helpers.h +++ b/include/field_effect_helpers.h @@ -12,5 +12,6 @@ // Exported ROM declarations u8 sub_8154228(void); bool8 sub_8155DA0(struct MapObject *); +void sub_8155D78(struct MapObject *); #endif //GUARD_FIELD_EFFECT_HELPERS_H diff --git a/include/field_map_obj.h b/include/field_map_obj.h index 696d1c2e2..198dd9759 100755 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -60,7 +60,7 @@ void sub_808E82C(u8, u8, u8, s16, s16); void sub_808E7E4(u8, u8, u8); void sub_808E78C(u8, u8, u8, u8); void sub_808E75C(s16, s16); -void FieldObjectGetLocalIdAndMap(struct MapObject *, u8 *, u8 *, u8 *); +void FieldObjectGetLocalIdAndMap(struct MapObject *mapObject, void *localId, void *mapNum, void *mapGroup); void npc_coords_shift(struct MapObject *, s16, s16); void sub_808EB08(struct MapObject *, s16, s16); void sub_808F254(u8, u8, u8); @@ -78,6 +78,16 @@ u8 FieldObjectClearAnimIfSpecialAnimFinished(struct MapObject *); u8 GetFieldObjectIdByXYZ(u16 x, u16 y, u8 z); void npc_set_running_behaviour_etc(struct MapObject *mapObject, u8 animPattern); u8 npc_running_behaviour_by_direction(u8 direction); +const u8 *GetFieldObjectScriptPointerByFieldObjectId(u8 mapObjectId); +u8 sub_8092C8C(struct MapObject *mapObject, s16 x, s16 y, u8 direction); +u8 GetFaceDirectionAnimId(u32); +u8 GetGoSpeed0AnimId(u32); +u8 sub_80934BC(u32); +bool8 FieldObjectSetSpecialAnim(struct MapObject *mapObject, u8 specialAnimId); +bool8 FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive(struct MapObject *mapObject); +u8 FieldObjectCheckIfSpecialAnimFinishedOrInactive(struct MapObject *mapObject); +void sub_808F23C(const struct MapObject *mapObject, u8 movementType); +void sub_808F208(const struct MapObject *mapObject); // Exported data declarations diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 40a1c1f3b..cc4c65448 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -30,6 +30,7 @@ void PlayerOnBikeCollideWithFarawayIslandMew(u8 direction); u8 CheckForFieldObjectCollision(struct MapObject *a, s16 b, s16 c, u8 d, u8 e); u8 PlayerGetZCoord(void); void SetPlayerAvatarTransitionFlags(u16 a); +void sub_808BCE8(void); void sub_808D074(u8); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index a0d16fc50..b12febefd 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -224,7 +224,7 @@ struct MapObject /*0x0C*/ struct Coords16 coords1; /*0x10*/ struct Coords16 coords2; /*0x14*/ struct Coords16 coords3; - /*0x18*/ u8 mapobj_unk_18:4; //current direction? + /*0x18*/ u8 mapobj_unk_18:4; // current direction? /*0x18*/ u8 placeholder18:4; /*0x19*/ union __attribute__((packed)) { u8 as_byte; diff --git a/include/global.h b/include/global.h index 9fe0d975f..b6a496dd1 100644 --- a/include/global.h +++ b/include/global.h @@ -514,11 +514,12 @@ struct RecordMixingDayCareMail bool16 holdsItem[DAYCARE_MON_COUNT]; }; -#define MAP_OBJECTS_COUNT 16 -#define BERRY_TREES_COUNT 128 -#define FLAGS_COUNT 300 -#define VARS_COUNT 256 -#define MAIL_COUNT 16 +#define POKEBLOCKS_COUNT 40 +#define MAP_OBJECTS_COUNT 16 +#define BERRY_TREES_COUNT 128 +#define FLAGS_COUNT 300 +#define VARS_COUNT 256 +#define MAIL_COUNT 16 enum { @@ -611,7 +612,7 @@ struct SaveBlock1 /*0x650*/ struct ItemSlot bagPocket_PokeBalls[16]; /*0x690*/ struct ItemSlot bagPocket_TMHM[64]; /*0x790*/ struct ItemSlot bagPocket_Berries[46]; - /*0x848*/ struct Pokeblock pokeblocks[40]; + /*0x848*/ struct Pokeblock pokeblocks[POKEBLOCKS_COUNT]; /*0x988*/ u8 seen1[52]; /*0x9BC*/ u16 berryBlenderRecords[3]; /*0x9C2*/ u8 field_9C2[6]; diff --git a/include/graphics.h b/include/graphics.h index 15af31c6e..0a38c9b82 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -1,10 +1,7 @@ -// -// Created by scott on 10/21/2017. -// - #ifndef GUARD_GRAPHICS_H #define GUARD_GRAPHICS_H +// interface pokeballs extern const u8 gInterfaceGfx_PokeBall[]; extern const u8 gInterfacePal_PokeBall[]; extern const u8 gInterfaceGfx_GreatBall[]; @@ -31,6 +28,28 @@ extern const u8 gInterfaceGfx_PremierBall[]; extern const u8 gInterfacePal_PremierBall[]; extern const u8 gOpenPokeballGfx[]; +// pokeblock +extern const u8 gMenuPokeblock_Gfx[]; +extern const u8 gMenuPokeblock_Pal[]; +extern const u8 gMenuPokeblock_Tilemap[]; +extern const u8 gMenuPokeblockDevice_Gfx[]; +extern const u8 gMenuPokeblockDevice_Pal[]; +extern const u8 gPokeblockRed_Pal[]; +extern const u8 gPokeblockBlue_Pal[]; +extern const u8 gPokeblockPink_Pal[]; +extern const u8 gPokeblockGreen_Pal[]; +extern const u8 gPokeblockYellow_Pal[]; +extern const u8 gPokeblockPurple_Pal[]; +extern const u8 gPokeblockIndigo_Pal[]; +extern const u8 gPokeblockBrown_Pal[]; +extern const u8 gPokeblockLiteBlue_Pal[]; +extern const u8 gPokeblockOlive_Pal[]; +extern const u8 gPokeblockGray_Pal[]; +extern const u8 gPokeblockBlack_Pal[]; +extern const u8 gPokeblockWhite_Pal[]; +extern const u8 gPokeblockGold_Pal[]; +extern const u8 gPokeblock_Gfx[]; + extern const u8 gItemIcon_QuestionMark[]; extern const u8 gItemIconPalette_QuestionMark[]; extern const u8 gUnknown_08DB7AA0[]; diff --git a/include/lilycove_lady.h b/include/lilycove_lady.h index c7776131b..084e5722e 100644 --- a/include/lilycove_lady.h +++ b/include/lilycove_lady.h @@ -7,7 +7,7 @@ void sub_818DA78(void); void sub_818DEF4(void); void sub_818E564(void); void sub_818E570(const struct LilycoveLadyQuiz *quiz); -bool8 sub_818E704(struct Pokeblock *pokeblock); +bool8 GivePokeblockToContestLady(struct Pokeblock *pokeblock); void sub_818E7E0(u8 *dest1, u8 *dest2); void sub_818E81C(u8 *dest); void sub_818E848(u8 *dest); diff --git a/include/list_menu.h b/include/list_menu.h index 0249b06af..8b793c0e4 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -1,14 +1,17 @@ #ifndef GUARD_LIST_MENU_H #define GUARD_LIST_MENU_H +#define LIST_NOTHING_CHOSEN -1 +#define LIST_B_PRESSED -2 + // Exported type declarations // Exported RAM declarations struct ListMenuItem { - const u8 *unk_00; - s32 unk_04; + const u8 *name; + s32 id; }; struct ListMenu; @@ -16,7 +19,7 @@ struct ListMenu; struct ListMenuTemplate { const struct ListMenuItem *items; - void (* unk_04)(u32, bool8, struct ListMenu *); + void (* moveCursorFunc)(u32, bool8, struct ListMenu *); void (* unk_08)(u8, s32, u8); u16 totalItems; u16 maxShowed; @@ -32,9 +35,11 @@ struct ListMenuTemplate u32 spaceBetweenItems:6; // x20000, x40000, x80000, x100000, x200000, x400000 = x7E0000 u32 unk_16_7:1; // x800000 u32 unk_17_0:6; // x1000000, x2000000, x4000000, x8000000, x10000000, x20000000 = x3F000000 + u32 cursorKind:2; // x40000000, x80000000 }; -struct ListMenu { +struct ListMenu +{ struct ListMenuTemplate _template; u16 scrollOffset; u16 selectedRow; @@ -44,13 +49,13 @@ struct ListMenu { u8 unk_1F; }; -extern struct ListMenuTemplate gUnknown_03006310; +extern struct ListMenuTemplate gMultiuseListMenuTemplate; // Exported ROM declarations -u8 ListMenuInit(struct ListMenuTemplate *template, u16 a1, u16 a2); -s32 ListMenuHandleInput(u8 id); -void get_coro_args_x18_x1A(u8 a0, u16 *a1, u16 *a2); -void sub_81AE6C8(u8 a0, u16 *a1, u16 *a2); +u8 ListMenuInit(struct ListMenuTemplate *template, u16 cursorPage, u16 cursorPosition); +s32 ListMenuHandleInputGetItemId(u8 listTaskId); +void sub_81AE860(u8 listTaskId, u16 *a1, u16 *a2); +void sub_81AE6C8(u8 listTaskId, u16 *a1, u16 *a2); #endif //GUARD_LIST_MENU_H diff --git a/include/map_obj_8097404.h b/include/map_obj_8097404.h index 27ffd18cb..0800b15b0 100644 --- a/include/map_obj_8097404.h +++ b/include/map_obj_8097404.h @@ -28,5 +28,7 @@ void sub_8097750(struct Sprite *); bool8 sub_8097758(struct Sprite *); void sub_8097FA4(struct MapObject *); void sub_8098044(u8); +void UnfreezeMapObjects(void); +void sub_80974D0(u8 mapObjectId); #endif //GUARD_MAP_OBJ_8097404_H diff --git a/include/menu.h b/include/menu.h index 99ff35adb..124303570 100644 --- a/include/menu.h +++ b/include/menu.h @@ -4,6 +4,9 @@ #include "text.h" #include "window.h" +#define MENU_NOTHING_CHOSEN -2 +#define MENU_B_PRESSED -1 + struct MenuAction { const u8 *text; @@ -32,7 +35,9 @@ void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirs s8 ProcessMenuInputNoWrap_(void); void do_scheduled_bg_tilemap_copies_to_vram(void); void clear_scheduled_bg_copies_to_vram(void); -void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, struct TextColor *color, s8 speed, const u8 *str); +void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const struct TextColor *color, s8 speed, const u8 *str); void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a2, u16 a3); +void sub_81995E4(u8 windowId, u8 optionsNo, const struct MenuAction *actions, const u8 *actionIds); +void sub_8197DF8(u8 windowId, bool8 copyToVram); #endif // GUARD_MENU_H diff --git a/include/menu_helpers.h b/include/menu_helpers.h index f083a10e2..14b6d32ca 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -3,7 +3,8 @@ // Exported type declarations -struct YesNoFuncTable { +struct YesNoFuncTable +{ TaskFunc yesFunc; TaskFunc noFunc; }; @@ -16,5 +17,15 @@ void sub_812225C(u16 *, u16 *, u8, u8); void sub_8122298(u16 *, u16 *, u8, u8, u8); void sub_8121F68(u8 taskId, const struct YesNoFuncTable *data); bool8 sub_81221AC(void); +void ResetVramOamAndBgCntRegs(void); +void SetVBlankHBlankCallbacksToNull(void); +void ResetAllBgsCoordinates(void); +bool16 RunTextPrintersRetIsActive(u8 textPrinterId); +void sub_8122344(void *arg0, u8 arg1); +void LoadListMenuArrowsGfx(void); +void sub_81223FC(u8 *a0, u8 count, u8 a2); +void sub_8122448(u8 *a0, u8 count, u16 x, u16 y); +void DisplayMessageAndContinueTask(u8 taskId, u8 arg1, u16 arg2, u8 arg3, u8 arg4, u8 textSpeed, const u8 *string, void *taskFunc); +void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo); #endif //GUARD_MENU_HELPERS_H diff --git a/include/party_menu.h b/include/party_menu.h index c787bafb1..3756ef569 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -1,7 +1,8 @@ #ifndef GUARD_PARTY_MENU_H #define GUARD_PARTY_MENU_H -enum { +enum +{ AILMENT_NONE, AILMENT_PSN, AILMENT_PRZ, @@ -14,5 +15,6 @@ bool8 pokemon_has_move(struct Pokemon *, u16); void sub_81B58A8(void); void DoWallyTutorialBagMenu(void); u8 pokemon_ailments_get_primary(u32 status); +u8 *GetMonNickname(struct Pokemon *mon, u8 *dst); #endif // GUARD_PARTY_MENU_H diff --git a/include/pokeblock.h b/include/pokeblock.h index a145cbada..6dd07b689 100644 --- a/include/pokeblock.h +++ b/include/pokeblock.h @@ -1,6 +1,9 @@ #ifndef GUARD_POKEBLOCK_H #define GUARD_POKEBLOCK_H +#define GFX_TAG_POKEBLOCK 14818 +#define GFX_TAG_POKEBLOCK_CASE 14800 + enum { PBLOCK_CLR_BLACK, @@ -22,12 +25,44 @@ enum PBLOCK_FEEL, }; +enum +{ + PBLOCK_CASE_FIELD, + PBLOCK_CASE_BATTLE, + PBLOCK_CASE_FEEDER, + PBLOCK_CASE_GIVE +}; + +// use pokeblock +extern u8 gPokeblockMonId; +extern s16 gPokeblockGain; + +void ChooseMonToGivePokeblock(struct Pokeblock *pokeblock, void (*callback)(void)); + +// pokeblock feed +void CB2_PreparePokeblockFeedScene(void); + +// pokeblock +extern const s8 gPokeblockFlavorCompatibilityTable[]; +extern const u8 *const gPokeblockNames[]; +extern const struct CompressedSpriteSheet gPokeblockCase_SpriteSheet; +extern const struct CompressedSpritePalette gPokeblockCase_SpritePal; + +void OpenPokeblockCase(u8 caseId, void (*callback)(void)); +void OpenPokeblockCaseInBattle(void); +void OpenPokeblockCaseOnFeeder(void); +void ResetPokeblockScrollPositions(void); +u8 CreatePokeblockCaseSprite(s16 x, s16 y, u8 subpriority); void ClearPokeblocks(void); -s8 GetFirstFreePokeblockSlot(void); -bool32 AddPokeblock(struct Pokeblock *pokeblock); u8 GetHighestPokeblocksFlavorLevel(const struct Pokeblock *pokeblock); u8 GetPokeblocksFeel(const struct Pokeblock *pokeblock); +s8 GetFirstFreePokeblockSlot(void); +bool32 AddPokeblock(const struct Pokeblock *pokeblock); +bool32 TryClearPokeblock(u8 pkblId); +s16 GetPokeblockData(const struct Pokeblock *pokeblock, u8 field); +s16 PokeblockGetGain(u8 nature, const struct Pokeblock *pokeblock); +void PokeblockCopyName(const struct Pokeblock *pokeblock, u8 *dest); +bool8 CopyMonFavoritePokeblockName(u8 nature, u8 *dest); u8 GetPokeblocksFlavor(const struct Pokeblock *pokeblock); -s16 PokeblockGetGain(u8, const struct Pokeblock *); #endif // GUARD_POKEBLOCK_H diff --git a/include/pokenav.h b/include/pokenav.h index 06676610a..ebe3b325c 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -2,5 +2,16 @@ #define GUARD_POKENAV_H bool8 sub_81D5C18(void); +bool8 sub_81D20BC(void *arg0); +bool8 sub_81D312C(void *arg0); +void sub_81D1ED4(void *arg0); +void sub_81D2108(void *arg0); +void sub_81D20AC(void *arg0); +void sub_81D2230(void *arg0); +void sub_81D3464(void *arg0); +void sub_81D3480(void *arg0, u8 arg1); +void sub_81D2754(void *arg0, void *arg1); +void sub_81D1F84(void *arg0, void *arg1, void *arg2); +const u8 *sub_81D62AC(void); #endif //GUARD_POKENAV_H diff --git a/include/rom6.h b/include/rom6.h index 6d20752e2..fc33b7d1f 100644 --- a/include/rom6.h +++ b/include/rom6.h @@ -1,7 +1,7 @@ #ifndef GUARD_ROM6_H #define GUARD_ROM6_H -void sub_81357FC(u8, void(void)); +void OpenPokeblockCase(u8, void(void)); u8 GetLeadMonIndex(void); u8 GetSSTidalLocation(u8 *grp, u8 *num, s16 *x, s16 *y); void sub_813BADC(bool8); diff --git a/include/songs.h b/include/songs.h deleted file mode 100644 index 37c4f16b4..000000000 --- a/include/songs.h +++ /dev/null @@ -1,466 +0,0 @@ -#ifndef GUARD_SONGS_H -#define GUARD_SONGS_H - -enum -{ - /*0x00*/ SE_STOP, - /*0x01*/ SE_KAIFUKU, - /*0x02*/ SE_PC_LOGON, - /*0x03*/ SE_PC_OFF, - /*0x04*/ SE_PC_ON, - /*0x05*/ SE_SELECT, - /*0x06*/ SE_WIN_OPEN, - /*0x07*/ SE_WALL_HIT, - /*0x08*/ SE_DOOR, - /*0x09*/ SE_KAIDAN, - /*0x0A*/ SE_DANSA, - /*0x0B*/ SE_JITENSYA, - /*0x0C*/ SE_KOUKA_L, // Goggle told me Kouka means 'effectiveness' which makes sense, because - /*0x0D*/ SE_KOUKA_M, // those three sounds play whenever you use a move - /*0x0E*/ SE_KOUKA_H, - /*0x0F*/ SE_BOWA2, - /*0x10*/ SE_POKE_DEAD, - /*0x11*/ SE_NIGERU, - /*0x12*/ SE_JIDO_DOA, - /*0x13*/ SE_NAMINORI, - /*0x14*/ SE_BAN, - /*0x15*/ SE_PIN, - /*0x16*/ SE_BOO, - /*0x17*/ SE_BOWA, - /*0x18*/ SE_JYUNI, - /*0x19*/ SE_A, - /*0x1A*/ SE_I, - /*0x1B*/ SE_U, - /*0x1C*/ SE_E, - /*0x1D*/ SE_O, - /*0x1E*/ SE_N, - /*0x1F*/ SE_SEIKAI, - /*0x20*/ SE_HAZURE, - /*0x21*/ SE_EXP, - /*0x22*/ SE_JITE_PYOKO, - /*0x23*/ SE_MU_PACHI, - /*0x24*/ SE_TK_KASYA, - /*0x25*/ SE_FU_ZAKU, - /*0x26*/ SE_FU_ZAKU2, - /*0x27*/ SE_FU_ZUZUZU, - /*0x28*/ SE_RU_GASHIN, - /*0x29*/ SE_RU_GASYAN, - /*0x2A*/ SE_RU_BARI, - /*0x2B*/ SE_RU_HYUU, - /*0x2C*/ SE_KI_GASYAN, - /*0x2D*/ SE_TK_WARPIN, - /*0x2E*/ SE_TK_WARPOUT, - /*0x2F*/ SE_TU_SAA, - /*0x30*/ SE_HI_TURUN, - /*0x31*/ SE_TRACK_MOVE, - /*0x32*/ SE_TRACK_STOP, - /*0x33*/ SE_TRACK_HAIK, - /*0x34*/ SE_TRACK_DOOR, - /*0x35*/ SE_MOTER, - /*0x36*/ SE_CARD, - /*0x37*/ SE_SAVE, - /*0x38*/ SE_KON, - /*0x39*/ SE_KON2, - /*0x3A*/ SE_KON3, - /*0x3B*/ SE_KON4, - /*0x3C*/ SE_SUIKOMU, - /*0x3D*/ SE_NAGERU, - SE_TOY_C, - SE_TOY_D, - SE_TOY_E, - SE_TOY_F, - SE_TOY_G, - SE_TOY_A, - SE_TOY_B, - SE_TOY_C1, - SE_MIZU, - SE_HASHI, - SE_DAUGI, - SE_PINPON, - SE_FUUSEN1, - SE_FUUSEN2, - SE_FUUSEN3, - SE_TOY_KABE, - SE_TOY_DANGO, - SE_DOKU, - SE_ESUKA, - SE_T_AME, - SE_T_AME_E, - SE_T_OOAME, - SE_T_OOAME_E, - SE_T_KOAME, - SE_T_KOAME_E, - SE_T_KAMI, - SE_T_KAMI2, - SE_ELEBETA, - /*0x5A*/ SE_HINSI, - /*0x5B*/ SE_EXPMAX, - /*0x5C*/ SE_TAMAKORO, - /*0x5D*/ SE_TAMAKORO_E, - /*0x5E*/ SE_BASABASA, - /*0x5F*/ SE_REGI, - SE_C_GAJI, - SE_C_MAKU_U, - SE_C_MAKU_D, - SE_C_PASI, - SE_C_SYU, - SE_C_PIKON, - /*0x66*/ SE_REAPOKE, - /*0x67*/ SE_OP_BASYU, - /*0x68*/ SE_BT_START, - SE_DENDOU, - SE_JIHANKI, - SE_TAMA, - SE_Z_SCROLL, - /*0x6D*/ SE_Z_PAGE, - /*0x6E*/ SE_PN_ON, - /*0x6F*/ SE_PN_OFF, - /*0x70*/ SE_Z_SEARCH, - /*0x71*/ SE_TAMAGO, - /*0x72*/ SE_TB_START, - /*0x73*/ SE_TB_KON, - /*0x74*/ SE_TB_KARA, - /*0x75*/ SE_BIDORO, - /*0x76*/ SE_W085, - /*0x77*/ SE_W085B, - /*0x78*/ SE_W231, - /*0x79*/ SE_W171, - /*0x7A*/ SE_W233, - /*0x7B*/ SE_W233B, - /*0x7C*/ SE_W145, - /*0x7D*/ SE_W145B, - /*0x7E*/ SE_W145C, - /*0x7F*/ SE_W240, - /*0x80*/ SE_W015, - /*0x81*/ SE_W081, - /*0x82*/ SE_W081B, - /*0x83*/ SE_W088, - /*0x84*/ SE_W016, - /*0x85*/ SE_W016B, - /*0x86*/ SE_W003, - /*0x87*/ SE_W104, - /*0x88*/ SE_W013, - /*0x89*/ SE_W196, - /*0x8A*/ SE_W086, - /*0x8B*/ SE_W004, - /*0x8C*/ SE_W025, - /*0x8D*/ SE_W025B, - SE_W152, - SE_W026, - SE_W172, - SE_W172B, - SE_W053, - SE_W007, - SE_W092, - SE_W221, - SE_W221B, - SE_W052, - SE_W036, - SE_W059, - SE_W059B, - SE_W010, - SE_W011, - SE_W017, - SE_W019, - SE_W028, - SE_W013B, - SE_W044, - SE_W029, - SE_W057, - SE_W056, - SE_W250, - SE_W030, - SE_W039, - SE_W054, - SE_W077, - SE_W020, - SE_W082, - SE_W047, - SE_W195, - SE_W006, - SE_W091, - SE_W146, - SE_W120, - SE_W153, - SE_W071B, - SE_W071, - SE_W103, - /*0xB6*/ SE_W062, - /*0xB7*/ SE_W062B, - /*0xB8*/ SE_W048, - /*0xB9*/ SE_W187, - /*0xBA*/ SE_W118, - /*0xBB*/ SE_W155, - /*0xBC*/ SE_W122, - /*0xBD*/ SE_W060, - /*0xBE*/ SE_W185, - /*0xBF*/ SE_W014, - /*0xC0*/ SE_W043, - /*0xC1*/ SE_W207, - /*0xC2*/ SE_W207B, - /*0xC3*/ SE_W215, - /*0xC4*/ SE_W109, - /*0xC5*/ SE_W173, - /*0xC6*/ SE_W280, - /*0xC7*/ SE_W202, - /*0xC8*/ SE_W060B, - /*0xC9*/ SE_W076, - /*0xCA*/ SE_W080, - /*0xCB*/ SE_W100, - /*0xCC*/ SE_W107, - SE_W166, - SE_W129, - SE_W115, - SE_W112, - SE_W197, - SE_W199, - SE_W236, - SE_W204, - SE_W268, - SE_W070, - SE_W063, - SE_W127, - SE_W179, - SE_W151, - SE_W201, - SE_W161, - SE_W161B, - SE_W227, - SE_W227B, - SE_W226, - SE_W208, - SE_W213, - SE_W213B, - SE_W234, - SE_W260, - SE_W328, - SE_W320, - SE_W255, - SE_W291, - SE_W089, - SE_W239, - SE_W230, - SE_W281, - SE_W327, - SE_W287, - SE_W257, - SE_W253, - SE_W258, - SE_W322, - SE_W298, - SE_W287B, - SE_W114, - SE_W063B, - BGM_STOP = 349, - /*0x15E*/ BGM_TETSUJI, - /*0x15F*/ BGM_FIELD13, - /*0x160*/ BGM_KACHI22, - /*0x161*/ BGM_KACHI2, - /*0x162*/ BGM_KACHI3, - /*0x163*/ BGM_KACHI5, - /*0x164*/ BGM_PCC, - /*0x165*/ BGM_NIBI, - /*0x166*/ BGM_SUIKUN, - /*0x167*/ BGM_DOORO1, - /*0x168*/ BGM_DOORO_X1, - /*0x169*/ BGM_DOORO_X3, - /*0x16A*/ BGM_MACHI_S2, - /*0x16B*/ BGM_MACHI_S4, - /*0x16C*/ BGM_GIM, - /*0x16D*/ BGM_NAMINORI, - /*0x16E*/ BGM_DAN01, - /*0x16F*/ BGM_FANFA1, - /*0x170*/ BGM_ME_ASA, - /*0x171*/ BGM_ME_BACHI, - /*0x172*/ BGM_FANFA4, - /*0x173*/ BGM_FANFA5, - /*0x174*/ BGM_ME_WAZA, - /*0x175*/ BGM_BIJYUTU, - /*0x176*/ BGM_DOORO_X4, - /*0x177*/ BGM_FUNE_KAN, - /*0x178*/ BGM_ME_SHINKA, - /*0x179*/ BGM_SHINKA, - /*0x17A*/ BGM_ME_WASURE, - /*0x17B*/ BGM_SYOUJOEYE, - /*0x17C*/ BGM_BOYEYE, - /*0x17D*/ BGM_DAN02, - /*0x17E*/ BGM_MACHI_S3, - /*0x17F*/ BGM_ODAMAKI, - /*0x180*/ BGM_B_TOWER, - /*0x181*/ BGM_SWIMEYE, - /*0x182*/ BGM_DAN03, - /*0x183*/ BGM_ME_KINOMI, - /*0x184*/ BGM_ME_TAMA, - /*0x185*/ BGM_ME_B_BIG, - /*0x186*/ BGM_ME_B_SMALL, - /*0x187*/ BGM_ME_ZANNEN, - /*0x188*/ BGM_BD_TIME, - /*0x189*/ BGM_TEST1, - /*0x18A*/ BGM_TEST2, - /*0x18B*/ BGM_TEST3, - /*0x18C*/ BGM_TEST4, - /*0x18D*/ BGM_TEST, - /*0x18E*/ BGM_GOMACHI0, - /*0x18F*/ BGM_GOTOWN, - /*0x190*/ BGM_POKECEN, - /*0x191*/ BGM_NEXTROAD, - /*0x192*/ BGM_GRANROAD, - /*0x193*/ BGM_CYCLING, - /*0x194*/ BGM_FRIENDLY, - /*0x195*/ BGM_MISHIRO, - /*0x196*/ BGM_TOZAN, - /*0x197*/ BGM_GIRLEYE, - /*0x198*/ BGM_MINAMO, - /*0x199*/ BGM_ASHROAD, - /*0x19A*/ BGM_EVENT0, - /*0x19B*/ BGM_DEEPDEEP, - /*0x19C*/ BGM_KACHI1, - /*0x19D*/ BGM_TITLE3, - /*0x19E*/ BGM_DEMO1, - /*0x19F*/ BGM_GIRL_SUP, - /*0x1A0*/ BGM_HAGESHII, - /*0x1A1*/ BGM_KAKKOII, - /*0x1A2*/ BGM_KAZANBAI, - /*0x1A3*/ BGM_AQA_0, - /*0x1A4*/ BGM_TSURETEK, - /*0x1A5*/ BGM_BOY_SUP, - /*0x1A6*/ BGM_RAINBOW, - /*0x1A7*/ BGM_AYASII, - /*0x1A8*/ BGM_KACHI4, - /*0x1A9*/ BGM_ROPEWAY, - /*0x1AA*/ BGM_CASINO, - /*0x1AB*/ BGM_HIGHTOWN, - /*0x1AC*/ BGM_SAFARI, - BGM_C_ROAD, - BGM_AJITO, - BGM_M_BOAT, - BGM_M_DUNGON, - BGM_FINECITY, - BGM_MACHUPI, - BGM_P_SCHOOL, - BGM_DENDOU, - BGM_TONEKUSA, - BGM_MABOROSI, - BGM_CON_FAN, - BGM_CONTEST0, - BGM_MGM0, - BGM_T_BATTLE, - BGM_OOAME, - BGM_HIDERI, - BGM_RUNECITY, - BGM_CON_K, - BGM_EIKOU_R, - BGM_KARAKURI, - BGM_HUTAGO, - BGM_SITENNOU, - BGM_YAMA_EYE, - BGM_CONLOBBY, - BGM_INTER_V, - BGM_DAIGO, - BGM_THANKFOR, - BGM_END, - /*0x1C9*/ BGM_BATTLE_FRONTIER, // human-readable names start here because we don't know the actual filenames - BGM_BATTLE_ARENA, - BGM_ME_BATTLE_POINTS, // ME_ as in messagebox? Used for KINOMI (berries) and stuff above - BGM_ME_MATCH_CALL, - BGM_BATTLE_PYRAMID, - BGM_BATTLE_PYRAMID_SUMMIT, - BGM_BATTLE_PALACE, - BGM_FANFA_RAYQUAZA, - BGM_BATTLE_TOWER, - BGM_ME_BATTLE_SYMBOL, - BGM_BATTLE_DOME_TOURNAMENT, - BGM_BATTLE_PIKE, - BGM_BATTLE_FACTORY, - /*0x1D6*/ BGM_BATTLE_LEGENDARY, - /*0x1D7*/ BGM_BATTLE_FRONTIER_BRAIN, - /*0x1D8*/ BGM_BATTLE_MEW, - /*0x1D9*/ BGM_BATTLE_DOME, // end of the human-readable names - /*0x1DA*/ BGM_BATTLE27, // wild - /*0x1DB*/ BGM_BATTLE31, // aqua/magma grunt - /*0x1DC*/ BGM_BATTLE20, // trainer - /*0x1DD*/ BGM_BATTLE32, // gym leader - /*0x1DE*/ BGM_BATTLE33, // champion - /*0x1DF*/ BGM_BATTLE36, // regi - /*0x1E0*/ BGM_BATTLE34, // weather trio - /*0x1E1*/ BGM_BATTLE35, // rival - /*0x1E2*/ BGM_BATTLE38, // elite four - /*0x1E3*/ BGM_BATTLE30, // aqua/magma leader - /*0x1E4*/ BGM_FRLG_FOLLOW_ME, // FR/LG names not known, human-readable again! - BGM_FRLG_GAMECORNER, - BGM_FRLG_ROCKET_HIDEOUT, - BGM_FRLG_GYM, - BGM_FRLG_JIGGLYPUFF, - BGM_FRLG_OPENING, - BGM_FRLG_TITLE, - BGM_FRLG_CINNABAR_ISLAND, - BGM_FRLG_LAVENDER_TOWN, - BGM_FRLG_HEALING_TEST, - BGM_FRLG_BICYCLE, - BGM_FRLG_SUSPICIOUS_EYE, - BGM_FRLG_GIRL_EYE, - BGM_FRLG_BOY_EYE, - BGM_FRLG_CONGRATULATIONS_HALL_OF_FAME, - BGM_FRLG_VIRIDIAN_FOREST, - BGM_FRLG_MT_MOON, - BGM_FRLG_POKEMON_MANSION, - BGM_FRLG_CREDITS, - BGM_FRLG_ROUTE_1, - BGM_FRLG_ROUTE_24, - BGM_FRLG_ROUTE_3, - BGM_FRLG_ROUTE_11, - BGM_FRLG_INDIGO_PLATEAU, - BGM_FRLG_BATTLE_LEADER, - BGM_FRLG_BATTLE_TRAINER, - BGM_FRLG_BATTLE_WILD_POKEMON, - BGM_FRLG_BATTLE_CHAMPION, - BGM_FRLG_PALLET_TOWN, - BGM_FRLG_OAK_LAB, - BGM_FRLG_PROF_OAK, - BGM_FRLG_POKEMON_CENTER, - BGM_FRLG_SS_ANNE, - BGM_FRLG_SURF, - BGM_FRLG_POKEMON_TOWER, - BGM_FRLG_SILPH, - BGM_FRLG_CERULEAN_CITY, - BGM_FRLG_CELADON_CITY, - BGM_FRLG_KACHI_TRAINER, // KACHI used in RS test - victory - BGM_FRLG_KACHI_WILD_POKEMON, - BGM_FRLG_KACHI_LEADER, - BGM_FRLG_VERMILION_CITY, - BGM_FRLG_VIRIDIAN_CITY, - BGM_FRLG_RIVAL, - BGM_FRLG_RIVAL_POSTBATTLE, - BGM_FRLG_ME_POKEDEX_EVAL, - BGM_FRLG_ME_KEYITEM, - BGM_FRLG_FANFA_POKEMON_CAUGHT, - BGM_FRLG_FANFA_TRAINERCARD_PHOTO, - BGM_FRLG_GAMEFREAK_LOGO, - BGM_FRLG_CAUGHT_POKEMON, - BGM_FRLG_GAME_EXPLANATION_START, - BGM_FRLG_GAME_EXPLANATION_MIDDLE, - BGM_FRLG_GAME_EXPLANATION_END, - BGM_FRLG_POKEMON_JUMP, - BGM_FRLG_UNION_ROOM, - BGM_FRLG_POKEMON_NETWORK_CENTER, - BGM_FRLG_MYSTERY_GIFT, - BGM_FRLG_DODRIO_BERRY_PICK, - BGM_FRLG_MT_EMBER, - BGM_FRLG_TEACHY_TV_EPISODE, - BGM_FRLG_SEVII_ISLANDS, - BGM_FRLG_TANOBY_RUINS, - BGM_FRLG_ISLAND_ONE, - BGM_FRLG_ISLAND_FOUR, - BGM_FRLG_ISLAND_SIX, - BGM_FRLG_FLUTE, - /*0x227*/ BGM_FRLG_BATTLE_DEOXYS, - /*0x228*/ BGM_FRLG_BATTLE_MEWTWO, - /*0x229*/ BGM_FRLG_BATTLE_LEGENDARY, - /*0x22A*/ BGM_FRLG_LEADER_EYE, - /*0x22B*/ BGM_FRLG_DEOXYS_EYE, - /*0x22C*/ BGM_FRLG_TRAINER_TOWER, - /*0x22D*/ BGM_FRLG_HALL_OF_FAME_PALLET_TOWN, - /*0x22E*/ BGM_FRLG_TEACHY_TV, -}; - -#endif // GUARD_SONGS_H diff --git a/include/strings.h b/include/strings.h index e3650bc63..5521d828b 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1,45 +1,62 @@ #ifndef GUARD_STRINGS_H #define GUARD_STRINGS_H -// Exported type declarations - -// Exported RAM declarations - -// Exported ROM declarations - extern const u8 gText_FromSpace[]; + extern const u8 gText_Lv50[]; extern const u8 gText_OpenLevel[]; + extern const u8 gText_Mom[]; extern const u8 gText_Dad[]; + extern const u8 gText_Cool[]; extern const u8 gText_Beauty[]; extern const u8 gText_Cute[]; extern const u8 gText_Smart[]; extern const u8 gText_Tough[]; + extern const u8 gText_Single[]; extern const u8 gText_Double[]; + +extern const u8 gText_Spicy[]; +extern const u8 gText_Dry[]; +extern const u8 gText_Sweet[]; +extern const u8 gText_Bitter[]; +extern const u8 gText_Sour[]; + +extern const u8 gText_StowCase[]; +extern const u8 gText_LvVar1[]; + extern const u8 gText_Spicy2[]; extern const u8 gText_Dry2[]; extern const u8 gText_Sweet2[]; extern const u8 gText_Bitter2[]; extern const u8 gText_Sour2[]; + extern const u8 gText_Excellent[]; extern const u8 gText_VeryGood[]; extern const u8 gText_Good[]; extern const u8 gText_SoSo[]; extern const u8 gText_Bad[]; extern const u8 gText_TheWorst[]; + extern const u8 gText_Slots[]; extern const u8 gText_Roulette[]; extern const u8 gText_Jackpot[]; + extern const u8 gText_First[]; extern const u8 gText_Second[]; extern const u8 gText_Third[]; + extern const u8 gText_NoDecorations[]; extern const u8 gText_NoDecorationsInUse[]; + extern const u8 gText_Exit[]; extern const u8 gText_Cancel[]; + +extern const u8 gText_ThrowAwayVar1[]; +extern const u8 gText_Var1ThrownAway[]; + extern const u8 gText_Color161Shadow161[]; extern const u8 gText_GoBackPrevMenu[]; extern const u8 gText_CantPlaceInRoom[]; @@ -56,12 +73,14 @@ extern const u8 gText_NoDecorationHere[]; extern const u8 gText_DecorationWillBeDiscarded[]; extern const u8 gText_CantThrowAwayInUse[]; extern const u8 gText_DecorationThrownAway[]; + extern const u8 gText_Desk[]; extern const u8 gText_Chair[]; extern const u8 gText_Plant[]; extern const u8 gText_Ornament[]; extern const u8 gText_Mat[]; extern const u8 gText_Poster[]; + extern const u8 gText_PutOutSelectedDecorItem[]; extern const u8 gText_StoreChosenDecorInPC[]; extern const u8 gText_ThrowAwayUnwantedDecors[]; @@ -92,4 +111,30 @@ extern const u8 gText_Draw[]; extern const u8 gText_Loss[]; extern const u8 gText_Win[]; +extern const u8 gText_Var1AteTheVar2[]; +extern const u8 gText_Var1HappilyAteVar2[]; +extern const u8 gText_Var1DisdainfullyAteVar2[]; + +extern const u8 gText_RedPokeblock[]; +extern const u8 gText_BluePokeblock[]; +extern const u8 gText_PinkPokeblock[]; +extern const u8 gText_GreenPokeblock[]; +extern const u8 gText_YellowPokeblock[]; +extern const u8 gText_PurplePokeblock[]; +extern const u8 gText_IndigoPokeblock[]; +extern const u8 gText_BrownPokeblock[]; +extern const u8 gText_LiteBluePokeblock[]; +extern const u8 gText_OlivePokeblock[]; +extern const u8 gText_GrayPokeblock[]; +extern const u8 gText_BlackPokeblock[]; +extern const u8 gText_WhitePokeblock[]; +extern const u8 gText_GoldPokeblock[]; + +extern const u8 gMenuText_Use[]; +extern const u8 gMenuText_Toss[]; +extern const u8 gMenuText_Give[]; +extern const u8 gMenuText_Give2[]; + +extern const u8 gText_Cancel2[]; + #endif //GUARD_STRINGS_H diff --git a/include/text_window.h b/include/text_window.h index da3fb301e..0af007397 100644 --- a/include/text_window.h +++ b/include/text_window.h @@ -3,8 +3,8 @@ struct TilesPal { - u32* tiles; - u16* pal; + u32 *tiles; + u16 *pal; }; const struct TilesPal* sub_8098758(u8 id); diff --git a/include/trainer_see.h b/include/trainer_see.h index 5da50cfa1..847380782 100644 --- a/include/trainer_see.h +++ b/include/trainer_see.h @@ -4,20 +4,27 @@ struct ApproachingTrainer { u8 mapObjectId; - u8 radius; - u8 field_2; - u8 field_3; + u8 radius; // plus 1 const u8 *trainerScriptPtr; - u8 field_8; - u8 field_9; - u8 field_A; - u8 field_B; + u8 taskId; }; -extern struct ApproachingTrainer gApproachingTrainers[]; +extern u16 gUnknown_03006080; +extern u8 gUnknown_03006084[4]; +extern struct ApproachingTrainer gApproachingTrainers[2]; +extern u8 gNoOfApproachingTrainers; +extern u8 gUnknown_030060AC; +extern u8 gApproachingTrainerId; -void sub_80B4578(struct MapObject *); -u8 sub_80B47BC(void); -void sub_8155D78(struct MapObject *); +bool8 CheckForTrainersWantingBattle(void); +void sub_80B4578(struct MapObject *var); +void EndTrainerApproach(void); +void sub_80B45D0(void); +u8 FldEff_ExclamationMarkIcon1(void); +u8 FldEff_ExclamationMarkIcon2(void); +u8 FldEff_HeartIcon(void); +u8 GetCurrentApproachingTrainerMapObjectId(void); +u8 GetChosenApproachingTrainerMapObjectId(u8 arrayId); +void sub_80B4808(void); -#endif //GUARD_TRAINER_SEE_H +#endif // GUARD_TRAINER_SEE_H |