diff options
67 files changed, 1029 insertions, 825 deletions
diff --git a/.travis.yml b/.travis.yml index 1ff0ad2c7..e9964105e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: generic -dist: trusty +dist: bionic sudo: false env: global: diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 562796c4b..363ca2dca 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -233,14 +233,12 @@ .endm @ Generic compare macro which attempts to deduce argument types based on their values - @ Any values between 0x4000 to 0x4FFF and 0x8000 to 0x8FFF are considered event variable identifiers - .macro compare arg1:req, arg2:req - .if ((\arg1 >> 12) == 4 || (\arg1 >> 12) == 8) && ((\arg2 >> 12) == 4 || (\arg2 >> 12) == 8) - compare_var_to_var \arg1, \arg2 - .elseif ((\arg1 >> 12) == 4 || (\arg1 >> 12) == 8) && (\arg2 >= 0 && \arg2 <= 0xFFFF) - compare_var_to_value \arg1, \arg2 + @ Any values between 0x4000 to 0x40FF and 0x8000 to 0x8015 are considered event variable identifiers + .macro compare var:req, arg:req + .if ((\arg >= VARS_START && \arg <= VARS_END) || (\arg >= SPECIAL_VARS_START && \arg <= SPECIAL_VARS_END)) + compare_var_to_var \var, \arg .else - .error "Invalid arguments for 'compare'" + compare_var_to_value \var, \arg .endif .endm @@ -465,12 +463,12 @@ .2byte \Y .endm - @ Retrieves the number of Pokemon in the player's party, and stores that number in variable 0x800D (LASTRESULT). + @ Retrieves the number of Pokemon in the player's party, and stores that number in VAR_RESULT. .macro getpartysize .byte 0x43 .endm - @ Attempts to add quantity of item index to the player's Bag. If the player has enough room, the item will be added and variable 0x800D (LASTRESULT) will be set to 0x0001; otherwise, LASTRESULT is set to 0x0000. + @ Attempts to add quantity of item index to the player's Bag. If the player has enough room, the item will be added and VAR_RESULT will be set to TRUE; otherwise, VAR_RESULT is set to FALSE. .macro giveitem index:req, quantity:req .byte 0x44 .2byte \index @@ -484,21 +482,21 @@ .2byte \quantity .endm - @ Checks if the player has enough space in their Bag to hold quantity more of item index. Sets variable 0x800D (LASTRESULT) to 0x0001 if there is room, or 0x0000 is there is no room. + @ Checks if the player has enough space in their Bag to hold quantity more of item index. Sets VAR_RESULT to TRUE if there is room, or FALSE is there is no room. .macro checkitemspace index:req, quantity:req .byte 0x46 .2byte \index .2byte \quantity .endm - @ Checks if the player has quantity or more of item index in their Bag. Sets variable 0x800D (LASTRESULT) to 0x0001 if the player has enough of the item, or 0x0000 if they have fewer than quantity of the item. + @ Checks if the player has quantity or more of item index in their Bag. Sets VAR_RESULT to TRUE if the player has enough of the item, or FALSE if they have fewer than quantity of the item. .macro checkitem index:req, quantity:req .byte 0x47 .2byte \index .2byte \quantity .endm - @ Checks which Bag pocket the specified (index) item belongs in, and writes the value to variable 0x800D (LASTRESULT). This script is used to show the name of the proper Bag pocket when the player receives an item via callstd (simplified to giveitem in XSE). + @ Checks which Bag pocket the specified item belongs in, and writes the pocket value (POCKET_*) to VAR_RESULT. This script is used to show the name of the proper Bag pocket when the player receives an item via callstd (simplified to giveitem in XSE). .macro checkitemtype index:req .byte 0x48 .2byte \index @@ -536,7 +534,7 @@ .2byte \decoration .endm - @ Checks if the player has enough space in their PC to hold decoration. Sets variable 0x800D (LASTRESULT) to 0x0001 if there is room, or 0x0000 is there is no room. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + @ Checks if the player has enough space in their PC to hold decoration. Sets VAR_RESULT to TRUE if there is room, or FALSE is there is no room. In FireRed, this command is a nop. (The argument is read, but not used for anything.) .macro checkdecorspace decoration:req .byte 0x4e .2byte \decoration @@ -818,7 +816,7 @@ .byte 0x6d .endm - @ Displays a YES/NO multichoice box at the specified coordinates, and blocks script execution until the user makes a selection. Their selection is stored in variable 0x800D (LASTRESULT); 0x0000 for "NO" or if the user pressed B, and 0x0001 for "YES". + @ Displays a YES/NO multichoice box at the specified coordinates, and blocks script execution until the user makes a selection. Their selection is stored in VAR_RESULT as NO (0) or YES (1). Pressing B is equivalent to answering NO .macro yesnobox x:req, y:req .byte 0x6e .byte \x @@ -925,7 +923,7 @@ .2byte \move .endm - @ Checks if at least one Pokemon in the player's party knows the specified (index) attack. If so, variable 0x800D (LASTRESULT) is set to the (zero-indexed) slot number of the first Pokemon that knows the move. If not, LASTRESULT is set to 0x0006. Variable 0x8004 is also set to this Pokemon's species. + @ Checks if at least one Pokemon in the player's party knows the specified (index) attack. If so, VAR_RESULT is set to the (zero-indexed) slot number of the first Pokemon that knows the move. If not, VAR_RESULT is set to PARTY_SIZE. VAR_0x8004 is also set to this Pokemon's species. .macro checkpartymove index:req .byte 0x7c .2byte \index @@ -1045,7 +1043,7 @@ .byte 0x8e .endm - @ Stores a random integer between 0 and limit in variable 0x800D (LASTRESULT). + @ Stores a random integer between 0 and limit in VAR_RESULT. .macro random limit:req .byte 0x8f .2byte \limit @@ -1065,7 +1063,7 @@ .byte \check .endm - @ If check is 0x00, this command will check if the player has value or more money; script variable 0x800D (LASTRESULT) is set to 0x0001 if the player has enough money, or 0x0000 if the do not. + @ If check is 0x00, this command will check if the player has money >= value; VAR_RESULT is set to TRUE if the player has enough money, or FALSE if they do not. .macro checkmoney value:req, check:req .byte 0x92 .4byte \value @@ -1154,7 +1152,7 @@ .2byte \heallocation .endm - @ Checks the player's gender. If male, then 0x0000 is stored in variable 0x800D (LASTRESULT). If female, then 0x0001 is stored in LASTRESULT. + @ Checks the player's gender. If male, then MALE (0) is stored in VAR_RESULT. If female, then FEMALE (1) is stored in VAR_RESULT. .macro checkplayergender .byte 0xa0 .endm @@ -1437,7 +1435,7 @@ .2byte \slot .endm - @ Checks if the Pokemon in the specified slot of the player's party is obedient. If the Pokemon is disobedient, 0x0001 is written to script variable 0x800D (LASTRESULT). If the Pokemon is obedient (or if the specified slot is empty or invalid), 0x0000 is written. + @ Checks if the Pokemon in the specified slot of the player's party is obedient. If the Pokemon is disobedient, VAR_RESULT is TRUE. If the Pokemon is obedient (or if the specified slot is empty or invalid), VAR_RESULT is FALSE. .macro checkmonobedience slot:req .byte 0xce .2byte \slot @@ -1539,7 +1537,7 @@ .4byte \pointer .endm - .macro warp8 map:req, byte:req, word1:req, word2:req + .macro warpsootopolislegend map:req, byte:req, word1:req, word2:req .byte 0xe0 map \map .byte \byte diff --git a/data/maps/SootopolisCity/scripts.inc b/data/maps/SootopolisCity/scripts.inc index 8831f62a8..d76e10d35 100644 --- a/data/maps/SootopolisCity/scripts.inc +++ b/data/maps/SootopolisCity/scripts.inc @@ -547,7 +547,7 @@ SootopolisCity_EventScript_RayquazaSceneFromPokeCenter:: @ 81E5C1E fadenewbgm MUS_RUNECITY delay 120 clearflag FLAG_HIDE_MAP_NAME_POPUP - warp8 MAP_SOOTOPOLIS_CITY, 255, 43, 32 + warpsootopolislegend MAP_SOOTOPOLIS_CITY, 255, 43, 32 waitstate end @@ -600,7 +600,7 @@ SootopolisCity_EventScript_RayquazaSceneFromDive:: @ 81E5CCE fadenewbgm MUS_NAMINORI delay 120 clearflag FLAG_HIDE_MAP_NAME_POPUP - warp8 MAP_SOOTOPOLIS_CITY, 255, 29, 53 + warpsootopolislegend MAP_SOOTOPOLIS_CITY, 255, 29, 53 waitstate end diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index 006167443..f447d5f25 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -224,7 +224,7 @@ gScriptCmdTable:: @ 81DB67C .4byte ScrCmd_buffertrainerclassname .4byte ScrCmd_buffertrainername .4byte ScrCmd_pokenavcall - .4byte ScrCmd_warpE0 + .4byte ScrCmd_warpsootopolislegend .4byte ScrCmd_buffercontesttype .4byte ScrCmd_bufferitemnameplural diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index c5bdca46d..1081af8f9 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -391,7 +391,7 @@ CableClub_EventScript_EnterColosseum:: @ 8276FBD goto_if_eq CableClub_EventScript_WarpTo4PColosseum special SetCableClubWarp warp MAP_BATTLE_COLOSSEUM_2P, 255, 6, 8 - special sub_80AF948 + special DoCableClubWarp waitstate end @@ -404,7 +404,7 @@ CableClub_EventScript_PlayerApproachLinkRoomRight:: @ 827702B CableClub_EventScript_WarpTo4PColosseum:: @ 8277036 special SetCableClubWarp warp MAP_BATTLE_COLOSSEUM_4P, 255, 5, 8 - special sub_80AF948 + special DoCableClubWarp waitstate end @@ -494,7 +494,7 @@ CableClub_EventScript_EnterTradeCenter:: @ 827713A release special SetCableClubWarp setwarp MAP_TRADE_CENTER, 255, 5, 8 - special sub_80AF948 + special DoCableClubWarp waitstate end @@ -569,7 +569,7 @@ CableClub_EventScript_EnterRecordCorner:: @ 827724C release special SetCableClubWarp setwarp MAP_RECORD_CORNER, 255, 8, 9 - special sub_80AF948 + special DoCableClubWarp waitstate end @@ -618,7 +618,7 @@ MossdeepCity_GameCorner_1F_EventScript_AbortMinigame:: @ 82772F9 @ Unused CableClub_EventScript_CableClubWarp:: @ 8277306 special SetCableClubWarp - special sub_80AF948 + special DoCableClubWarp waitstate end diff --git a/data/scripts/mevent_altering_cave.inc b/data/scripts/mevent_altering_cave.inc index 072005934..499907edd 100644 --- a/data/scripts/mevent_altering_cave.inc +++ b/data/scripts/mevent_altering_cave.inc @@ -1,7 +1,7 @@ MysteryEventScript_AlteringCave:: @ 86756E3 setvaddress MysteryEventScript_AlteringCave addvar VAR_ALTERING_CAVE_WILD_SET, 1 - compare_var_to_value VAR_ALTERING_CAVE_WILD_SET, 10 + compare VAR_ALTERING_CAVE_WILD_SET, 10 vgoto_if_ne MysteryEventScript_AlteringCave_ setvar VAR_ALTERING_CAVE_WILD_SET, 0 MysteryEventScript_AlteringCave_: @ 86756FD diff --git a/data/scripts/mevent_aurora_ticket.inc b/data/scripts/mevent_aurora_ticket.inc index 811c840aa..177d69681 100644 --- a/data/scripts/mevent_aurora_ticket.inc +++ b/data/scripts/mevent_aurora_ticket.inc @@ -7,13 +7,13 @@ MysteryEventScript_AuroraTicket:: @ 867533C checkflag FLAG_BATTLED_DEOXYS vgoto_if_eq AuroraTicket_Obtained checkitem ITEM_AURORA_TICKET, 1 - compare_var_to_value VAR_RESULT, TRUE + compare VAR_RESULT, TRUE vgoto_if_eq AuroraTicket_Obtained vmessage sText_AuroraTicketForYou waitmessage waitbuttonpress checkitemspace ITEM_AURORA_TICKET, 1 - compare_var_to_value VAR_RESULT, FALSE + compare VAR_RESULT, FALSE vgoto_if_eq AuroraTicket_NoBagSpace giveitem_std ITEM_AURORA_TICKET setflag FLAG_ENABLE_SHIP_BIRTH_ISLAND diff --git a/data/scripts/mevent_battle_card.inc b/data/scripts/mevent_battle_card.inc index 8c36ed63a..77f9a9b24 100644 --- a/data/scripts/mevent_battle_card.inc +++ b/data/scripts/mevent_battle_card.inc @@ -4,7 +4,7 @@ MysteryEventScript_BattleCard:: @ 867513C vgoto_if_eq MysteryEventScript_BattleCardInfo setorcopyvar VAR_RESULT, GET_CARD_BATTLES_WON specialvar VAR_0x8008, GetMysteryEventCardVal - compare_var_to_value VAR_0x8008, REQUIRED_CARD_BATTLES + compare VAR_0x8008, REQUIRED_CARD_BATTLES vgoto_if_ne MysteryEventScript_BattleCardInfo lock faceplayer diff --git a/data/scripts/mevent_mystic_ticket.inc b/data/scripts/mevent_mystic_ticket.inc index 0264fb77f..9d532b043 100644 --- a/data/scripts/mevent_mystic_ticket.inc +++ b/data/scripts/mevent_mystic_ticket.inc @@ -9,13 +9,13 @@ MysteryEventScript_MysticTicket:: @ 867550B checkflag FLAG_CAUGHT_HO_OH vgoto_if_eq MysticTicket_Obtained checkitem ITEM_MYSTIC_TICKET, 1 - compare_var_to_value VAR_RESULT, TRUE + compare VAR_RESULT, TRUE vgoto_if_eq MysticTicket_Obtained vmessage sText_MysticTicketForYou waitmessage waitbuttonpress checkitemspace ITEM_MYSTIC_TICKET, 1 - compare_var_to_value VAR_RESULT, FALSE + compare VAR_RESULT, FALSE vgoto_if_eq MysticTicket_NoBagSpace giveitem_std ITEM_MYSTIC_TICKET setflag FLAG_ENABLE_SHIP_NAVEL_ROCK diff --git a/data/scripts/mevent_old_sea_map.inc b/data/scripts/mevent_old_sea_map.inc index dffb56caa..45c5f6728 100644 --- a/data/scripts/mevent_old_sea_map.inc +++ b/data/scripts/mevent_old_sea_map.inc @@ -7,13 +7,13 @@ MysteryEventScript_OldSeaMap:: @ 86757F4 checkflag FLAG_CAUGHT_MEW vgoto_if_eq OldSeaMap_Obtained checkitem ITEM_OLD_SEA_MAP, 1 - compare_var_to_value VAR_RESULT, TRUE + compare VAR_RESULT, TRUE vgoto_if_eq OldSeaMap_Obtained vmessage sText_MysteryGiftOldSeaMapForYou waitmessage waitbuttonpress checkitemspace ITEM_OLD_SEA_MAP, 1 - compare_var_to_value VAR_RESULT, FALSE + compare VAR_RESULT, FALSE vgoto_if_eq OldSeaMap_NoBagSpace giveitem_std ITEM_OLD_SEA_MAP setflag FLAG_ENABLE_SHIP_FARAWAY_ISLAND diff --git a/data/scripts/mevent_pichu.inc b/data/scripts/mevent_pichu.inc index 4df317564..4f5c739af 100644 --- a/data/scripts/mevent_pichu.inc +++ b/data/scripts/mevent_pichu.inc @@ -6,7 +6,7 @@ MysteryEventScript_SurfPichu:: @ 8674D3D SurfPichu_GiveIfPossible: @ 8674D4C specialvar VAR_EVENT_PICHU_SLOT, CalculatePlayerPartyCount - compare_var_to_value VAR_EVENT_PICHU_SLOT, PARTY_SIZE + compare VAR_EVENT_PICHU_SLOT, PARTY_SIZE vgoto_if_eq SurfPichu_FullParty setflag FLAG_MYSTERY_EVENT_DONE vcall SurfPichu_GiveEgg @@ -33,15 +33,15 @@ SurfPichu_GiveEgg: @ 8674D7E giveegg SPECIES_PICHU setmonobedient VAR_EVENT_PICHU_SLOT setmonmetlocation VAR_EVENT_PICHU_SLOT, METLOC_FATEFUL_ENCOUNTER - compare_var_to_value VAR_EVENT_PICHU_SLOT, 1 + compare VAR_EVENT_PICHU_SLOT, 1 vgoto_if_eq SurfPichu_Slot1 - compare_var_to_value VAR_EVENT_PICHU_SLOT, 2 + compare VAR_EVENT_PICHU_SLOT, 2 vgoto_if_eq SurfPichu_Slot2 - compare_var_to_value VAR_EVENT_PICHU_SLOT, 3 + compare VAR_EVENT_PICHU_SLOT, 3 vgoto_if_eq SurfPichu_Slot3 - compare_var_to_value VAR_EVENT_PICHU_SLOT, 4 + compare VAR_EVENT_PICHU_SLOT, 4 vgoto_if_eq SurfPichu_Slot4 - compare_var_to_value VAR_EVENT_PICHU_SLOT, 5 + compare VAR_EVENT_PICHU_SLOT, 5 vgoto_if_eq SurfPichu_Slot5 return diff --git a/data/scripts/mevent_trainer.inc b/data/scripts/mevent_trainer.inc index 1b0117078..4114750d8 100644 --- a/data/scripts/mevent_trainer.inc +++ b/data/scripts/mevent_trainer.inc @@ -1,7 +1,7 @@ MysteryEventScript_VisitingTrainer:: @ 8674EC1 setvaddress MysteryEventScript_VisitingTrainer special ValidateEReaderTrainer - compare_var_to_value VAR_RESULT, 0 + compare VAR_RESULT, 0 vgoto_if_eq MysteryEventScript_VisitingTrainerArrived lock faceplayer diff --git a/data/specials.inc b/data/specials.inc index 9280dc6dd..d19673eb7 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -10,7 +10,7 @@ gSpecials:: @ 81DBA64 def_special HealPlayerParty def_special SetCableClubWarp - def_special sub_80AF948 + def_special DoCableClubWarp def_special ReturnFromLinkRoom def_special CleanupLinkRoomState def_special ExitLinkRoom diff --git a/graphics/object_events/pics/effects/unknown_33.png b/graphics/event_objects/pics/effects/lavaridge_gym_warp.png Binary files differindex 26b852200..26b852200 100644 --- a/graphics/object_events/pics/effects/unknown_33.png +++ b/graphics/event_objects/pics/effects/lavaridge_gym_warp.png diff --git a/graphics/object_events/pics/effects/lavaridge_gym_warp.png b/graphics/object_events/pics/effects/lavaridge_gym_warp.png Binary files differnew file mode 100644 index 000000000..26b852200 --- /dev/null +++ b/graphics/object_events/pics/effects/lavaridge_gym_warp.png diff --git a/include/constants/field_specials.h b/include/constants/field_specials.h index 5dde18058..a2dc117e4 100644 --- a/include/constants/field_specials.h +++ b/include/constants/field_specials.h @@ -7,7 +7,7 @@ #define PC_LOCATION_MAYS_HOUSE 2 // SS Tidal Locations -#define SS_TIDAL_LOCATION_OTHER 0 +#define SS_TIDAL_LOCATION_CURRENTS 0 #define SS_TIDAL_LOCATION_SLATEPORT 1 #define SS_TIDAL_LOCATION_LILYCOVE 2 #define SS_TIDAL_LOCATION_ROUTE124 3 diff --git a/include/constants/vars.h b/include/constants/vars.h index fead22137..4a38bde81 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -273,7 +273,9 @@ #define VAR_UNUSED_0x40FE 0x40FE // Unused Var #define VAR_UNUSED_0x40FF 0x40FF // Unused Var -#define SPECIAL_VARS_START 0x8000 +#define VARS_END 0x40FF + +#define SPECIAL_VARS_START 0x8000 // special vars // They are commonly used as parameters to commands, or return values from commands. #define VAR_0x8000 0x8000 @@ -299,4 +301,6 @@ #define VAR_UNUSED_0x8014 0x8014 #define VAR_TRAINER_BATTLE_OPPONENT_A 0x8015 // Alias of gTrainerBattleOpponent_A +#define SPECIAL_VARS_END 0x8015 + #endif // GUARD_CONSTANTS_VARS_H diff --git a/include/field_effect.h b/include/field_effect.h index 0a99938d7..59f99ad93 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -34,17 +34,17 @@ bool8 FieldEffectCmd_end(u8 **script, u32 *val); bool8 FieldEffectCmd_loadgfx_callnative(u8 **script, u32 *val); bool8 FieldEffectCmd_loadtiles_callnative(u8 **script, u32 *val); bool8 FieldEffectCmd_loadfadedpal_callnative(u8 **script, u32 *val); -void sub_80B6B68(void); -void sub_80B6E4C(u8 a0, u8 priority); -void sub_80B75D8(u8 priority); -void sub_80B7A74(u8 priority); +void FieldCB_FallWarpExit(void); +void StartEscalatorWarp(u8 metatileBehavior, u8 priority); +void StartLavaridgeGymB1FWarp(u8 priority); +void StartLavaridgeGym1FWarp(u8 priority); void sub_80B9C28(s16*, u8); void sub_80B9C54(s16*, u8); void sub_80B9CDC(s16*, u8); -void sub_80B7CAC(struct Sprite*); -void sub_80B7A58(struct Sprite*); +void SpriteCB_PopOutOfAsh(struct Sprite*); +void SpriteCB_LavaridgeGymWarp(struct Sprite*); void MultiplyPaletteRGBComponents(u16 i, u8 r, u8 g, u8 b); void FreeResourcesAndDestroySprite(struct Sprite *sprite, u8 spriteId); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index db045e540..00233bd20 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -61,7 +61,7 @@ void sub_808D194(void); void sub_808D1C8(void); bool32 sub_808D1B4(void); bool32 sub_808D1E8(void); -void sub_808C0A8(u8 a); +void SetPlayerInvisibility(bool8 invisible); u8 player_get_pos_including_state_based_drift(s16 *x, s16 *y); #endif // GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/field_screen_effect.h b/include/field_screen_effect.h index 02a927d4b..e05e30378 100644 --- a/include/field_screen_effect.h +++ b/include/field_screen_effect.h @@ -1,37 +1,35 @@ #ifndef GUARD_FIELD_SCREEN_EFFECT_H #define GUARD_FIELD_SCREEN_EFFECT_H -void pal_fill_for_maplights(void); -void pal_fill_black(void); -void WarpFadeScreen(void); -void sub_80AF128(void); -void FieldCallback_ReturnToEventScript2(void); -void sub_80AF188(void); -void sub_80AF214(void); -void sub_80AF2B4(u8 taskId); -void sub_80AF314(void); -void mapldr_default(void); -void sub_80AF3B0(void); -void sub_80AF3C8(void); -void sub_80AF3E8(void); -void sub_80AF40C(void); -void sub_80AF688(void); -bool8 sub_80AF6A4(void); +void WarpFadeInScreen(void); +void WarpFadeOutScreen(void); +void FadeInFromBlack(void); +void FadeInFromWhite(void); +void FieldCB_ContinueScriptUnionRoom(void); +void FieldCB_ContinueScriptHandleMusic(void); +void FieldCB_ContinueScript(void); +void Task_ReturnToFieldRecordMixing(u8 taskId); +void FieldCB_ReturnToFieldCableLink(void); +void FieldCB_ReturnToFieldWirelessLink(void); +void FieldCB_DefaultWarpExit(void); +void FieldCB_WarpExitFadeFromBlack(void); +void FieldCB_WarpExitFadeFromWhite(void); +bool8 FieldCB_ReturnToFieldOpenStartMenu(void); +void ReturnToFieldOpenStartMenu(void); void sub_80AF6D4(void); void sub_80AF6F0(void); void DoWarp(void); void DoDiveWarp(void); -void sub_80AF79C(void); +void DoSootopolisLegendWarp(void); void DoDoorWarp(void); void DoFallWarp(void); -void sub_80AF80C(u8 metatileBehavior); -void sub_80AF828(void); -void sub_80AF838(void); -void sub_80AF848(void); +void DoEscalatorWarp(u8 metatileBehavior); +void DoLavaridgeGymB1FWarp(void); +void DoLavaridgeGym1FWarp(void); +void DoTeleportWarp(void); void DoMossdeepGymWarp(void); -void sub_80AF8B8(void); -void sub_80AF948(void); -void sub_80AF9F8(void); +void DoPortholeWarp(void); +void DoCableClubWarp(void); void DoContestHallWarp(void); void AnimateFlash(u8 flashLevel); void WriteBattlePyramidViewScanlineEffectBuffer(void); @@ -41,6 +39,6 @@ void DoOrbEffect(void); void FadeOutOrbEffect(void); void sub_80B05B4(void); void WriteFlashScanlineEffectBuffer(u8 flashLevel); -bool8 walkrun_is_standing_still(void); +bool8 IsPlayerStandingStill(void); #endif // GUARD_FIELD_SCREEN_EFFECT_H diff --git a/include/field_special_scene.h b/include/field_special_scene.h index 2219c9433..a54b344d9 100644 --- a/include/field_special_scene.h +++ b/include/field_special_scene.h @@ -10,6 +10,6 @@ void Task_HandleTruckSequence(u8 taskId); void ExecuteTruckSequence(void); void EndTruckSequence(u8); void sub_80C791C(void); -void sub_80FB768(void); +void FieldCB_ShowPortholeView(void); #endif // GUARD_FIELD_SPECIAL_SCENE_H diff --git a/include/overworld.h b/include/overworld.h index 0e3c7e006..78a5b4ad0 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -136,7 +136,7 @@ void CB2_NewGame(void); void CB2_WhiteOut(void); void CB2_LoadMap(void); void sub_8086024(void); -void sub_8086074(void); +void CB2_ReturnToFieldCableClub(void); void CB2_ReturnToField(void); void CB2_ReturnToFieldLocal(void); void CB2_ReturnToFieldLink(void); diff --git a/include/start_menu.h b/include/start_menu.h index eca9f0837..df2a290a2 100644 --- a/include/start_menu.h +++ b/include/start_menu.h @@ -3,7 +3,7 @@ extern bool8 (*gMenuCallback)(void); -void sub_809FA18(void); +void ShowReturnToFieldStartMenu(void); void Task_ShowStartMenu(u8 taskId); void ShowStartMenu(void); void ShowBattlePyramidStartMenu(void); diff --git a/sound/direct_sound_data.inc b/sound/direct_sound_data.inc index f1518ee4b..80f91a01d 100644 --- a/sound/direct_sound_data.inc +++ b/sound/direct_sound_data.inc @@ -23,8 +23,8 @@ DirectSoundWaveData_sc88_timpani:: .incbin "sound/direct_sound_samples/sc88_timpani.bin" .align 2 -DirectSoundWaveData_advanced_orchestra_voice_ahhs:: - .incbin "sound/direct_sound_samples/advanced_orchestra_voice_ahhs.bin" +DirectSoundWaveData_classical_choir_voice_ahhs:: + .incbin "sound/direct_sound_samples/classical_choir_voice_ahhs.bin" .align 2 DirectSoundWaveData_sd90_classical_oboe:: @@ -59,16 +59,16 @@ DirectSoundWaveData_sc88_standard_kick:: .incbin "sound/direct_sound_samples/sc88_standard_kick.bin" .align 2 -DirectSoundWaveData_sc88_standard_snare1:: - .incbin "sound/direct_sound_samples/sc88_standard_snare1.bin" +DirectSoundWaveData_sc88_standard3_snare:: + .incbin "sound/direct_sound_samples/sc88_standard3_snare.bin" .align 2 DirectSoundWaveData_sc88_standard_hand_clap:: .incbin "sound/direct_sound_samples/sc88_standard_hand_clap.bin" .align 2 -DirectSoundWaveData_sc88_standard_snare2:: - .incbin "sound/direct_sound_samples/sc88_standard_snare2.bin" +DirectSoundWaveData_sc88_orchestra_snare:: + .incbin "sound/direct_sound_samples/sc88_orchestra_snare.bin" .align 2 DirectSoundWaveData_unknown_tom:: @@ -91,12 +91,12 @@ DirectSoundWaveData_unknown_tambourine:: .incbin "sound/direct_sound_samples/unknown_tambourine.bin" .align 2 -DirectSoundWaveData_unknown_cymbal_crash:: - .incbin "sound/direct_sound_samples/unknown_cymbal_crash.bin" +DirectSoundWaveData_trinity_cymbal_crash:: + .incbin "sound/direct_sound_samples/trinity_cymbal_crash.bin" .align 2 -DirectSoundWaveData_sc88_standard_cymbal_crash:: - .incbin "sound/direct_sound_samples/sc88_standard_cymbal_crash.bin" +DirectSoundWaveData_sc88_orchestra_cymbal_crash:: + .incbin "sound/direct_sound_samples/sc88_orchestra_cymbal_crash.bin" .align 2 DirectSoundWaveData_sc88_bongo:: @@ -251,20 +251,20 @@ DirectSoundWaveData_emu_ii_pipe_organ:: .incbin "sound/direct_sound_samples/emu_ii_pipe_organ.bin" .align 2 -DirectSoundWaveData_unused_unknown_female_voice:: - .incbin "sound/direct_sound_samples/unused_unknown_female_voice.bin" +DirectSoundWaveData_unknown_female_voice:: + .incbin "sound/direct_sound_samples/unknown_female_voice.bin" .align 2 DirectSoundWaveData_unused_unknown_male_voice:: .incbin "sound/direct_sound_samples/unused_unknown_male_voice.bin" .align 2 -DirectSoundWaveData_unknown_e_piano_low:: - .incbin "sound/direct_sound_samples/unknown_e_piano_low.bin" +DirectSoundWaveData_sd90_classical_detuned_ep1_low:: + .incbin "sound/direct_sound_samples/sd90_classical_detuned_ep1_low.bin" .align 2 -DirectSoundWaveData_unknown_e_piano_high:: - .incbin "sound/direct_sound_samples/unknown_e_piano_high.bin" +DirectSoundWaveData_sd90_classical_detuned_ep1_high:: + .incbin "sound/direct_sound_samples/sd90_classical_detuned_ep1_high.bin" .align 2 DirectSoundWaveData_sc88_timpani_with_snare:: @@ -275,8 +275,8 @@ DirectSoundWaveData_unknown_synth_snare:: .incbin "sound/direct_sound_samples/unknown_synth_snare.bin" .align 2 -DirectSoundWaveData_unused_sc88_square:: - .incbin "sound/direct_sound_samples/unused_sc88_square.bin" +DirectSoundWaveData_sc88_square_wave:: + .incbin "sound/direct_sound_samples/sc88_square_wave.bin" .align 2 DirectSoundWaveData_bicycle_bell:: @@ -1951,8 +1951,8 @@ DirectSoundWaveData_sc88_nylon_str_guitar:: .incbin "sound/direct_sound_samples/sc88_nylon_str_guitar.bin" .align 2 -DirectSoundWaveData_sd90_classical_guitar_harmonics:: - .incbin "sound/direct_sound_samples/sd90_classical_guitar_harmonics.bin" +DirectSoundWaveData_sd90_special_scream_drive:: + .incbin "sound/direct_sound_samples/sd90_special_scream_drive.bin" .align 2 DirectSoundWaveData_88DBBC0:: diff --git a/sound/direct_sound_samples/advanced_orchestra_voice_ahhs.aif b/sound/direct_sound_samples/classical_choir_voice_ahhs.aif Binary files differindex e8784682e..e8784682e 100644 --- a/sound/direct_sound_samples/advanced_orchestra_voice_ahhs.aif +++ b/sound/direct_sound_samples/classical_choir_voice_ahhs.aif diff --git a/sound/direct_sound_samples/sc88_standard_cymbal_crash.aif b/sound/direct_sound_samples/sc88_orchestra_cymbal_crash.aif Binary files differindex 576e3e19e..576e3e19e 100644 --- a/sound/direct_sound_samples/sc88_standard_cymbal_crash.aif +++ b/sound/direct_sound_samples/sc88_orchestra_cymbal_crash.aif diff --git a/sound/direct_sound_samples/sc88_standard_snare2.aif b/sound/direct_sound_samples/sc88_orchestra_snare.aif Binary files differindex 36b640758..36b640758 100644 --- a/sound/direct_sound_samples/sc88_standard_snare2.aif +++ b/sound/direct_sound_samples/sc88_orchestra_snare.aif diff --git a/sound/direct_sound_samples/unused_sc88_square.aif b/sound/direct_sound_samples/sc88_square_wave.aif Binary files differindex 09e17f0ca..09e17f0ca 100644 --- a/sound/direct_sound_samples/unused_sc88_square.aif +++ b/sound/direct_sound_samples/sc88_square_wave.aif diff --git a/sound/direct_sound_samples/sc88_standard_snare1.aif b/sound/direct_sound_samples/sc88_standard3_snare.aif Binary files differindex 544b187d5..544b187d5 100644 --- a/sound/direct_sound_samples/sc88_standard_snare1.aif +++ b/sound/direct_sound_samples/sc88_standard3_snare.aif diff --git a/sound/direct_sound_samples/unknown_e_piano_high.aif b/sound/direct_sound_samples/sd90_classical_detuned_ep1_high.aif Binary files differindex 86ea0fa76..86ea0fa76 100644 --- a/sound/direct_sound_samples/unknown_e_piano_high.aif +++ b/sound/direct_sound_samples/sd90_classical_detuned_ep1_high.aif diff --git a/sound/direct_sound_samples/unknown_e_piano_low.aif b/sound/direct_sound_samples/sd90_classical_detuned_ep1_low.aif Binary files differindex fced03712..fced03712 100644 --- a/sound/direct_sound_samples/unknown_e_piano_low.aif +++ b/sound/direct_sound_samples/sd90_classical_detuned_ep1_low.aif diff --git a/sound/direct_sound_samples/sd90_classical_guitar_harmonics.aif b/sound/direct_sound_samples/sd90_special_scream_drive.aif Binary files differindex 8b7a7da40..8b7a7da40 100644 --- a/sound/direct_sound_samples/sd90_classical_guitar_harmonics.aif +++ b/sound/direct_sound_samples/sd90_special_scream_drive.aif diff --git a/sound/direct_sound_samples/unknown_cymbal_crash.aif b/sound/direct_sound_samples/trinity_cymbal_crash.aif Binary files differindex 4aec6882f..4aec6882f 100644 --- a/sound/direct_sound_samples/unknown_cymbal_crash.aif +++ b/sound/direct_sound_samples/trinity_cymbal_crash.aif diff --git a/sound/direct_sound_samples/unused_unknown_female_voice.aif b/sound/direct_sound_samples/unknown_female_voice.aif Binary files differindex b310823a7..b310823a7 100644 --- a/sound/direct_sound_samples/unused_unknown_female_voice.aif +++ b/sound/direct_sound_samples/unknown_female_voice.aif diff --git a/sound/voice_groups.inc b/sound/voice_groups.inc index c0f546ccf..4b71845aa 100644 --- a/sound/voice_groups.inc +++ b/sound/voice_groups.inc @@ -93,7 +93,7 @@ voicegroup001:: @ 8675FEC voice_square_1 0, 0, 0, 1, 6, 0 @ 8676118 voice_square_1 0, 2, 0, 0, 15, 0 @ 8676124 voice_square_1 0, 2, 0, 0, 15, 0 @ 8676130 - voice_directsound 60, 0, DirectSoundWaveData_advanced_orchestra_voice_ahhs, 255, 0, 255, 0 @ 867613C + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 867613C .align 2 voicegroup002:: @ 8676148 @@ -106,9 +106,9 @@ voicegroup002:: @ 8676148 voice_directsound 60, 0, DirectSoundWaveData_unknown_wood_block_high, 255, 0, 255, 0 @ 8676190 voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_kick, 255, 0, 255, 242 @ 867619C voice_square_1 0, 2, 0, 0, 15, 0 @ 86761A8 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 86761B4 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 86761B4 voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_hand_clap, 255, 255, 255, 127 @ 86761C0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 86761CC + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 86761CC voice_directsound 48, 44, DirectSoundWaveData_unknown_tom, 255, 210, 77, 204 @ 86761D8 voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 @ 86761E4 voice_directsound 51, 54, DirectSoundWaveData_unknown_tom, 255, 216, 77, 204 @ 86761F0 @@ -123,12 +123,12 @@ voicegroup002:: @ 8676148 voice_square_1 0, 2, 0, 0, 15, 0 @ 867625C voice_directsound_no_resample 70, 49, DirectSoundWaveData_unknown_bell, 255, 165, 103, 231 @ 8676268 voice_directsound_no_resample 32, 34, DirectSoundWaveData_unknown_tambourine, 255, 127, 77, 204 @ 8676274 - voice_directsound_no_resample 60, 14, DirectSoundWaveData_unknown_cymbal_crash, 255, 235, 0, 165 @ 8676280 + voice_directsound_no_resample 60, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 235, 0, 165 @ 8676280 voice_square_1 0, 2, 0, 0, 15, 0 @ 867628C - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 246, 0, 216 @ 8676298 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 246, 0, 216 @ 8676298 voice_square_1 0, 2, 0, 0, 15, 0 @ 86762A4 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 246, 0, 216 @ 86762B0 - voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 8, 0, 255, 216 @ 86762BC + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 246, 0, 216 @ 86762B0 + voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86762BC voice_square_1 0, 2, 0, 0, 15, 0 @ 86762C8 voice_directsound_no_resample 72, 104, DirectSoundWaveData_sc88_bongo, 255, 0, 255, 0 @ 86762D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86762E0 @@ -137,30 +137,30 @@ voicegroup002:: @ 8676148 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 8676304 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 8676310 voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_hand_clap, 255, 255, 255, 127 @ 867631C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 8676328 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 8676328 voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676334 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 8676340 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 8676340 voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867634C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 8676358 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 8676358 voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676364 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 8676370 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 8676370 voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867637C voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676388 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 8676394 + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676394 voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 @ 86763A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86763AC - voice_directsound 63, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86763B8 + voice_directsound 63, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86763B8 voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 86763C4 .align 2 voicegroup003:: @ 86763D0 voice_directsound_no_resample 64, 34, DirectSoundWaveData_unknown_tambourine, 255, 127, 77, 204 @ 86763D0 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_unknown_cymbal_crash, 255, 231, 0, 188 @ 86763DC + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86763DC voice_directsound_no_resample 64, 89, DirectSoundWaveData_unknown_cowbell, 255, 0, 255, 242 @ 86763E8 - voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86763F4 + voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86763F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8676400 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 867640C - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 8, 0, 255, 216 @ 8676418 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867640C + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 8, 0, 255, 216 @ 8676418 voice_directsound_no_resample 64, 94, DirectSoundWaveData_unknown_djembe, 255, 0, 255, 0 @ 8676424 voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88_bongo, 255, 0, 255, 0 @ 8676430 voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88_bongo_low, 255, 0, 255, 0 @ 867643C @@ -194,30 +194,30 @@ voicegroup003:: @ 86763D0 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 867658C voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 8676598 voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_hand_clap, 255, 255, 255, 127 @ 86765A4 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 86765B0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 86765B0 voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86765BC - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 86765C8 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 86765C8 voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86765D4 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 86765E0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 86765E0 voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86765EC voice_square_1 0, 2, 0, 0, 15, 0 @ 86765F8 voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676604 voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676610 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 867661C + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867661C voice_directsound 64, 104, DirectSoundWaveData_unknown_ethnic_drum, 255, 0, 255, 235 @ 8676628 voice_square_1 0, 2, 0, 0, 15, 0 @ 8676634 - voice_directsound 63, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 8676640 + voice_directsound 63, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676640 voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 867664C .align 2 voicegroup004:: @ 8676658 voice_directsound_no_resample 66, 34, DirectSoundWaveData_unknown_tambourine, 255, 127, 77, 204 @ 8676658 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_unknown_cymbal_crash, 255, 231, 0, 188 @ 8676664 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 8676664 voice_directsound_no_resample 64, 89, DirectSoundWaveData_unknown_cowbell, 255, 0, 255, 242 @ 8676670 - voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 867667C + voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867667C voice_square_1 0, 2, 0, 0, 15, 0 @ 8676688 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 8676694 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 8, 0, 255, 216 @ 86766A0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676694 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86766A0 voice_directsound_no_resample 64, 94, DirectSoundWaveData_unknown_djembe, 255, 0, 255, 0 @ 86766AC voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88_bongo, 255, 0, 255, 0 @ 86766B8 voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88_bongo_low, 255, 0, 255, 0 @ 86766C4 @@ -251,27 +251,27 @@ voicegroup004:: @ 8676658 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 8676814 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 8676820 voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_hand_clap, 255, 255, 255, 127 @ 867682C - voice_directsound 65, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 8676838 + voice_directsound 65, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 8676838 voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676844 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 8676850 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 8676850 voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867685C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 8676868 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 8676868 voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676874 voice_square_1 0, 2, 0, 0, 15, 0 @ 8676880 voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 867688C voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 8676898 - voice_directsound 56, 89, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86768A4 + voice_directsound 56, 89, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86768A4 voice_directsound 64, 104, DirectSoundWaveData_unknown_ethnic_drum, 255, 0, 255, 235 @ 86768B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86768BC - voice_directsound 63, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86768C8 + voice_directsound 63, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86768C8 voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 86768D4 voice_directsound_no_resample 66, 34, DirectSoundWaveData_unknown_tambourine, 255, 127, 77, 204 @ 86768E0 - voice_directsound 64, 14, DirectSoundWaveData_unknown_cymbal_crash, 255, 231, 0, 188 @ 86768EC + voice_directsound 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86768EC voice_directsound 64, 89, DirectSoundWaveData_unknown_cowbell, 255, 0, 255, 242 @ 86768F8 - voice_directsound 60, 29, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 8676904 + voice_directsound 60, 29, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 8676904 voice_square_1 0, 2, 0, 0, 15, 0 @ 8676910 - voice_directsound 58, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 867691C - voice_directsound 62, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 8, 0, 255, 216 @ 8676928 + voice_directsound 58, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 867691C + voice_directsound 62, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 8, 0, 255, 216 @ 8676928 voice_directsound 64, 94, DirectSoundWaveData_unknown_djembe, 255, 0, 255, 0 @ 8676934 voice_directsound 64, 34, DirectSoundWaveData_sc88_bongo, 255, 0, 255, 0 @ 8676940 voice_directsound 64, 34, DirectSoundWaveData_sc88_bongo_low, 255, 0, 255, 0 @ 867694C @@ -1098,9 +1098,9 @@ voicegroup016:: @ 8678C74 voice_noise_alt 0, 0, 1, 0, 1 @ 8678E18 voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_kick, 255, 0, 255, 242 @ 8678E24 voice_square_1 0, 2, 0, 0, 15, 0 @ 8678E30 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 8678E3C + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 8678E3C voice_square_1 0, 2, 0, 0, 15, 0 @ 8678E48 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 8678E54 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 8678E54 voice_square_1 0, 2, 0, 0, 15, 0 @ 8678E60 voice_square_1 0, 2, 0, 0, 15, 0 @ 8678E6C voice_square_1 0, 2, 0, 0, 15, 0 @ 8678E78 @@ -1623,9 +1623,9 @@ voicegroup022:: @ 867A438 voice_square_1_alt 0, 0, 0, 0, 7, 0 @ 867A5DC voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_kick, 255, 0, 255, 242 @ 867A5E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 867A5F4 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 867A600 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 867A600 voice_square_1 0, 2, 0, 0, 15, 0 @ 867A60C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 867A618 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 867A618 voice_square_1 0, 2, 0, 0, 15, 0 @ 867A624 voice_square_1 0, 2, 0, 0, 15, 0 @ 867A630 voice_square_1 0, 2, 0, 0, 15, 0 @ 867A63C @@ -2420,7 +2420,7 @@ voicegroup031:: @ 867C838 voice_square_1 0, 2, 0, 0, 15, 0 @ 867C9F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CA00 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CA0C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 867CA18 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 867CA18 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CA24 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CA30 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CA3C @@ -2437,9 +2437,9 @@ voicegroup031:: @ 867C838 voice_directsound_no_resample 32, 49, DirectSoundWaveData_unknown_tambourine, 255, 127, 77, 204 @ 867CAC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CACC voice_square_1 0, 2, 0, 0, 15, 0 @ 867CAD8 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 8, 0, 255, 216 @ 867CAE4 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 8, 0, 255, 216 @ 867CAE4 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CAF0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 246, 0, 216 @ 867CAFC + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 246, 0, 216 @ 867CAFC voice_square_1 0, 2, 0, 0, 15, 0 @ 867CB08 voice_square_1 0, 2, 0, 0, 15, 0 @ 867CB14 voice_directsound_no_resample 72, 79, DirectSoundWaveData_sc88_bongo, 255, 0, 255, 0 @ 867CB20 @@ -11583,7 +11583,7 @@ voicegroup107:: @ 8696A70 voice_square_1 0, 2, 0, 0, 15, 0 @ 8696CC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8696CD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8696CE0 - voice_directsound 60, 0, DirectSoundWaveData_advanced_orchestra_voice_ahhs, 255, 0, 255, 0 @ 8696CEC + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 8696CEC voice_square_1 0, 2, 0, 0, 15, 0 @ 8696CF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 8696D04 voice_square_1 0, 2, 0, 0, 15, 0 @ 8696D10 @@ -12040,7 +12040,7 @@ voicegroup111:: @ 8698054 voice_square_1 0, 2, 0, 0, 15, 0 @ 86981A4 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 226 @ 86981B0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 195 @ 86981BC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 195 @ 86981C8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 195 @ 86981C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86981D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86981E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86981EC @@ -12192,8 +12192,8 @@ voicegroup112:: @ 8698654 voice_square_1 0, 2, 0, 0, 15, 0 @ 86988A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86988AC voice_square_1 0, 2, 0, 0, 15, 0 @ 86988B8 - voice_directsound 60, 0, DirectSoundWaveData_advanced_orchestra_voice_ahhs, 128, 165, 128, 188 @ 86988C4 - voice_directsound 60, 0, DirectSoundWaveData_unused_unknown_female_voice, 128, 165, 128, 204 @ 86988D0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 128, 165, 128, 188 @ 86988C4 + voice_directsound 60, 0, DirectSoundWaveData_unknown_female_voice, 128, 165, 128, 204 @ 86988D0 voice_directsound 60, 0, DirectSoundWaveData_unused_unknown_male_voice, 128, 165, 128, 188 @ 86988DC voice_square_1 0, 2, 0, 0, 15, 0 @ 86988E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86988F4 @@ -12529,7 +12529,7 @@ voicegroup114:: @ 8699254 voice_square_1 0, 2, 0, 0, 15, 0 @ 8699824 voice_square_1 0, 2, 0, 0, 15, 0 @ 8699830 voice_square_1 0, 2, 0, 0, 15, 0 @ 869983C - voice_directsound 60, 0, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 246, 0, 216 @ 8699848 + voice_directsound 60, 0, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 246, 0, 216 @ 8699848 .align 2 voicegroup115:: @ 8699854 @@ -12537,8 +12537,8 @@ voicegroup115:: @ 8699854 voice_keysplit voicegroup005, KeySplitTable1 @ 8699860 voice_square_1 0, 2, 0, 0, 15, 0 @ 869986C voice_square_1 0, 2, 0, 0, 15, 0 @ 8699878 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 128, 249, 0, 188 @ 8699884 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_high, 255, 188, 103, 165 @ 8699890 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 249, 0, 188 @ 8699884 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 @ 8699890 voice_square_1 0, 2, 0, 0, 15, 0 @ 869989C voice_square_1 0, 2, 0, 0, 15, 0 @ 86998A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86998B4 @@ -12653,7 +12653,7 @@ voicegroup115:: @ 8699854 voice_square_1 0, 2, 0, 0, 15, 0 @ 8699DD0 voice_square_1 0, 2, 0, 0, 15, 0 @ 8699DDC voice_square_1 0, 2, 0, 0, 15, 0 @ 8699DE8 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 8699DF4 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 8699DF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 8699E00 voice_square_1 0, 2, 0, 0, 15, 0 @ 8699E0C voice_square_1 0, 2, 0, 0, 15, 0 @ 8699E18 @@ -13465,7 +13465,7 @@ voicegroup123:: @ 869BCF0 voice_square_1 0, 2, 0, 0, 15, 0 @ 869C2C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 869C2CC voice_square_1 0, 2, 0, 0, 15, 0 @ 869C2D8 - voice_directsound 60, 0, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 246, 0, 216 @ 869C2E4 + voice_directsound 60, 0, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 246, 0, 216 @ 869C2E4 .align 2 voicegroup124:: @ 869C2F0 @@ -13772,8 +13772,8 @@ voicegroup126:: @ 869CAF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 869D0B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 869D0C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 869D0D0 - voice_directsound 60, 0, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 216 @ 869D0DC - voice_directsound 60, 0, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 246, 0, 216 @ 869D0E8 + voice_directsound 60, 0, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 216 @ 869D0DC + voice_directsound 60, 0, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 246, 0, 216 @ 869D0E8 .align 2 voicegroup127:: @ 869D0F4 @@ -13790,8 +13790,8 @@ voicegroup127:: @ 869D0F4 voice_square_1_alt 0, 2, 2, 0, 15, 0 @ 869D16C voice_square_1_alt 0, 1, 2, 0, 15, 0 @ 869D178 voice_square_1_alt 23, 1, 0, 1, 9, 0 @ 869D184 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 0, 255, 165 @ 869D190 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 226, 0, 165 @ 869D19C + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 0, 255, 165 @ 869D190 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 226, 0, 165 @ 869D19C voice_square_1_alt 0, 2, 0, 6, 0, 1 @ 869D1A8 voice_square_1_alt 36, 0, 0, 2, 0, 0 @ 869D1B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 869D1C0 @@ -13922,17 +13922,17 @@ voicegroup128:: @ 869D6F4 voice_noise_alt 1, 0, 2, 0, 0 @ 869D778 voice_square_1 103, 3, 2, 7, 0, 0 @ 869D784 voice_square_2 3, 2, 7, 0, 0 @ 869D790 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 226, 0, 127 @ 869D79C + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 226, 0, 127 @ 869D79C voice_directsound 60, 0, DirectSoundWaveData_872921C, 255, 0, 255, 0 @ 869D7A8 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 204, 0, 127 @ 869D7B4 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 204, 0, 127 @ 869D7B4 voice_square_1_alt 0, 2, 0, 2, 0, 1 @ 869D7C0 voice_directsound 60, 0, DirectSoundWaveData_872A5D0, 255, 0, 255, 127 @ 869D7CC - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 0, 255, 127 @ 869D7D8 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 0, 255, 127 @ 869D7D8 voice_square_1 103, 0, 0, 7, 0, 0 @ 869D7E4 - voice_directsound 60, 0, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 127 @ 869D7F0 + voice_directsound 60, 0, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 127 @ 869D7F0 voice_directsound 60, 0, DirectSoundWaveData_sc88_wind, 255, 0, 255, 127 @ 869D7FC voice_directsound 60, 0, DirectSoundWaveData_sc88_bubbles, 255, 0, 255, 127 @ 869D808 - voice_directsound 60, 0, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 127 @ 869D814 + voice_directsound 60, 0, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 127 @ 869D814 voice_noise_alt 0, 0, 7, 15, 1 @ 869D820 voice_directsound 60, 0, DirectSoundWaveData_872EEA8, 255, 0, 255, 127 @ 869D82C voice_noise_alt 1, 0, 7, 15, 1 @ 869D838 @@ -13960,7 +13960,7 @@ voicegroup128:: @ 869D6F4 voice_square_1 0, 0, 4, 0, 15, 0 @ 869D940 voice_directsound 60, 0, DirectSoundWaveData_sc88_xylophone, 255, 188, 0, 0 @ 869D94C voice_directsound 60, 0, DirectSoundWaveData_sc88_tubular_bell, 255, 226, 0, 127 @ 869D958 - voice_directsound 60, 0, DirectSoundWaveData_sc88_standard_cymbal_crash, 26, 0, 255, 127 @ 869D964 + voice_directsound 60, 0, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 26, 0, 255, 127 @ 869D964 voice_square_1_alt 0, 2, 0, 1, 0, 0 @ 869D970 voice_directsound 60, 0, DirectSoundWaveData_sc88_glockenspiel, 255, 252, 0, 127 @ 869D97C voice_square_1_alt 0, 1, 0, 2, 0, 0 @ 869D988 @@ -13975,7 +13975,7 @@ voicegroup128:: @ 869D6F4 voice_directsound 60, 0, DirectSoundWaveData_sc88_accordion, 255, 0, 255, 165 @ 869D9F4 voice_directsound 60, 0, DirectSoundWaveData_unknown_tom, 255, 0, 255, 165 @ 869DA00 voice_noise_alt 0, 5, 7, 15, 1 @ 869DA0C - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 128, 242, 0, 165 @ 869DA18 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 128, 242, 0, 165 @ 869DA18 voice_directsound 60, 0, DirectSoundWaveData_sc88_string_ensemble_72, 255, 0, 255, 165 @ 869DA24 voice_square_1 0, 0, 1, 5, 0, 0 @ 869DA30 voice_noise_alt 0, 6, 6, 0, 1 @ 869DA3C @@ -14852,7 +14852,7 @@ voicegroup129:: @ 86A0154 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A02A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A02B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A02BC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86A02C8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A02C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A02D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A02E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A02EC @@ -14869,7 +14869,7 @@ voicegroup129:: @ 86A0154 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A0370 voice_directsound 60, 0, DirectSoundWaveData_sc88_harp, 255, 252, 0, 204 @ 86A037C voice_directsound 60, 0, DirectSoundWaveData_sc88_accordion, 255, 0, 255, 165 @ 86A0388 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 204, 0, 127 @ 86A0394 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 204, 0, 127 @ 86A0394 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A03A0 voice_square_1_alt 0, 2, 0, 0, 15, 0 @ 86A03AC voice_square_1 0, 2, 0, 0, 15, 0 @ 86A03B8 @@ -15435,7 +15435,7 @@ voicegroup133:: @ 86A1BB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A1D68 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A1D74 voice_directsound 60, 0, DirectSoundWaveData_sc88_synth_bass, 255, 252, 0, 115 @ 86A1D80 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 0, 255, 127 @ 86A1D8C + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 0, 255, 127 @ 86A1D8C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A1D98 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A1DA4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A1DB0 @@ -15516,7 +15516,7 @@ voicegroup133:: @ 86A1BB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A2134 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A2140 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A214C - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86A2158 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A2158 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A2164 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A2170 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A217C @@ -15841,8 +15841,8 @@ voicegroup137:: @ 86A2FD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A2FE0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A2FEC voice_square_1 0, 2, 0, 0, 15, 0 @ 86A2FF8 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 165, 180, 165 @ 86A3004 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_high, 255, 137, 154, 165 @ 86A3010 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 165, 180, 165 @ 86A3004 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 137, 154, 165 @ 86A3010 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A301C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A3028 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A3034 @@ -15972,8 +15972,8 @@ voicegroup138:: @ 86A35D4 voice_keysplit voicegroup005, KeySplitTable1 @ 86A35E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A35EC voice_square_1 0, 2, 0, 0, 15, 0 @ 86A35F8 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86A3604 - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 255, 204, 77, 246 @ 86A3610 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86A3604 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86A3610 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A361C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A3628 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A3634 @@ -16721,8 +16721,8 @@ voicegroup145:: @ 86A57F4 voice_keysplit voicegroup005, KeySplitTable1 @ 86A5800 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A580C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A5818 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86A5824 - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 255, 204, 77, 246 @ 86A5830 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86A5824 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86A5830 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A583C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A5848 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A5854 @@ -17079,7 +17079,7 @@ voicegroup148:: @ 86A67E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A685C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A6868 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A6874 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 226, 0, 127 @ 86A6880 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 226, 0, 127 @ 86A6880 voice_directsound 60, 0, DirectSoundWaveData_sc88_tubular_bell, 255, 165, 90, 216 @ 86A688C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A6898 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A68A4 @@ -17105,7 +17105,7 @@ voicegroup148:: @ 86A67E4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A6994 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A69A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A69AC - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 0, 255, 127 @ 86A69B8 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 0, 255, 127 @ 86A69B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A69C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A69D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A69DC @@ -17781,7 +17781,7 @@ voicegroup154:: @ 86A8860 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A886C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A8878 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A8884 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 249, 0, 165 @ 86A8890 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A8890 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A889C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A88A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A88B4 @@ -17877,8 +17877,8 @@ voicegroup155:: @ 86A8CBC voice_keysplit voicegroup005, KeySplitTable1 @ 86A8CC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A8CD4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A8CE0 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 249, 0, 165 @ 86A8CEC - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_high, 255, 188, 103, 165 @ 86A8CF8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A8CEC + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 188, 103, 165 @ 86A8CF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A8D04 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A8D10 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A8D1C @@ -17993,7 +17993,7 @@ voicegroup155:: @ 86A8CBC voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9238 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9244 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9250 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86A925C + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A925C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9268 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9274 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9280 @@ -18009,7 +18009,7 @@ voicegroup156:: @ 86A92BC voice_square_1 0, 2, 0, 0, 15, 0 @ 86A92D4 voice_programmable_wave_alt ProgrammableWaveData_86B4870, 0, 7, 15, 0 @ 86A92E0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A92EC - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 249, 0, 165 @ 86A92F8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A92F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9304 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9310 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A931C @@ -18124,7 +18124,7 @@ voicegroup156:: @ 86A92BC voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9838 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9844 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9850 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86A985C + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86A985C voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9868 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9874 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9880 @@ -18270,7 +18270,7 @@ voicegroup158:: @ 86A9EBC voice_keysplit voicegroup005, KeySplitTable1 @ 86A9EC8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9ED4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9EE0 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 249, 0, 165 @ 86A9EEC + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86A9EEC voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9EF8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9F04 voice_square_1 0, 2, 0, 0, 15, 0 @ 86A9F10 @@ -18297,7 +18297,7 @@ voicegroup158:: @ 86A9EBC voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA00C voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86AA018 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86AA024 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86AA030 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86AA030 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA03C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA048 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA054 @@ -18305,7 +18305,7 @@ voicegroup158:: @ 86A9EBC voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA06C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA078 voice_directsound 60, 0, DirectSoundWaveData_sc88_synth_bass, 255, 252, 0, 115 @ 86AA084 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 0, 255, 127 @ 86AA090 + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 0, 255, 127 @ 86AA090 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA09C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA0A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA0B4 @@ -18319,7 +18319,7 @@ voicegroup158:: @ 86A9EBC voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA114 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA120 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA12C - voice_directsound 60, 0, DirectSoundWaveData_advanced_orchestra_voice_ahhs, 255, 0, 255, 0 @ 86AA138 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 86AA138 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA144 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA150 voice_keysplit voicegroup007, KeySplitTable3 @ 86AA15C @@ -18401,8 +18401,8 @@ voicegroup159:: @ 86AA4BC voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA4C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA4D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA4E0 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 64, 249, 0, 188 @ 86AA4EC - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_high, 51, 249, 0, 165 @ 86AA4F8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 @ 86AA4EC + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 51, 249, 0, 165 @ 86AA4F8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA504 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA510 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AA51C @@ -18754,7 +18754,7 @@ voicegroup162:: @ 86AB4DC voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB4E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB4F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB500 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_high, 64, 188, 108, 244 @ 86AB50C + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 64, 188, 108, 244 @ 86AB50C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB518 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB524 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB530 @@ -18850,8 +18850,8 @@ voicegroup163:: @ 86AB938 voice_keysplit voicegroup005, KeySplitTable1 @ 86AB944 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB950 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB95C - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86AB968 - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 255, 204, 77, 246 @ 86AB974 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AB968 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86AB974 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB980 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB98C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AB998 @@ -18981,8 +18981,8 @@ voicegroup164:: @ 86ABF38 voice_keysplit voicegroup005, KeySplitTable1 @ 86ABF44 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ABF50 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ABF5C - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 128, 180, 108, 209 @ 86ABF68 - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 85, 204, 77, 246 @ 86ABF74 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 180, 108, 209 @ 86ABF68 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 85, 204, 77, 246 @ 86ABF74 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ABF80 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ABF8C voice_square_1 0, 2, 0, 0, 15, 0 @ 86ABF98 @@ -19270,7 +19270,7 @@ voicegroup166:: @ 86ACB38 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACC88 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 255, 0, 255, 127 @ 86ACC94 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 255, 0, 255, 127 @ 86ACCA0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86ACCAC + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86ACCAC voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACCB8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACCC4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACCD0 @@ -19278,7 +19278,7 @@ voicegroup166:: @ 86ACB38 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACCE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACCF4 voice_directsound 60, 0, DirectSoundWaveData_sc88_synth_bass, 255, 252, 0, 115 @ 86ACD00 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88_square, 255, 0, 255, 127 @ 86ACD0C + voice_directsound 60, 0, DirectSoundWaveData_sc88_square_wave, 255, 0, 255, 127 @ 86ACD0C voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACD18 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACD24 voice_square_1 0, 2, 0, 0, 15, 0 @ 86ACD30 @@ -19505,8 +19505,8 @@ voicegroup168:: @ 86AD738 voice_keysplit voicegroup005, KeySplitTable1 @ 86AD744 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AD750 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AD75C - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86AD768 - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 255, 204, 77, 246 @ 86AD774 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AD768 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86AD774 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AD780 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AD78C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AD798 @@ -19948,8 +19948,8 @@ voicegroup172:: @ 86AEB6C voice_keysplit voicegroup005, KeySplitTable1 @ 86AEB78 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AEB84 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AEB90 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86AEB9C - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 255, 204, 77, 246 @ 86AEBA8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AEB9C + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 255, 204, 77, 246 @ 86AEBA8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AEBB4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AEBC0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AEBCC @@ -20079,8 +20079,8 @@ voicegroup173:: @ 86AF16C voice_keysplit voicegroup005, KeySplitTable1 @ 86AF178 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF184 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF190 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86AF19C - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 128, 204, 77, 246 @ 86AF1A8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86AF19C + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 @ 86AF1A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF1B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF1C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF1CC @@ -20211,7 +20211,7 @@ voicegroup174:: @ 86AF76C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF784 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF790 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF79C - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 249, 0, 165 @ 86AF7A8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86AF7A8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF7B4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF7C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AF7CC @@ -20326,7 +20326,7 @@ voicegroup174:: @ 86AF76C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AFCE8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AFCF4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AFD00 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86AFD0C + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86AFD0C voice_square_1 0, 2, 0, 0, 15, 0 @ 86AFD18 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AFD24 voice_square_1 0, 2, 0, 0, 15, 0 @ 86AFD30 @@ -20512,27 +20512,27 @@ voicegroup177:: @ 86B0378 voice_directsound_no_resample 67, 71, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 @ 86B0534 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 @ 86B0540 voice_directsound_no_resample 65, 0, DirectSoundWaveData_sc88_standard_hand_clap, 255, 255, 255, 127 @ 86B054C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 86B0558 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 86B0558 voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B0564 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B0570 voice_directsound 68, 29, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B057C - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 86B0588 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 86B0588 voice_directsound 72, 64, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B0594 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B05A0 voice_directsound 76, 39, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B05AC voice_directsound 80, 89, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 @ 86B05B8 - voice_directsound_no_resample 33, 10, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B05C4 + voice_directsound_no_resample 33, 10, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B05C4 voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 @ 86B05D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B05DC - voice_directsound 63, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B05E8 + voice_directsound 63, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B05E8 voice_directsound_no_resample 64, 64, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 @ 86B05F4 voice_directsound_no_resample 64, 64, DirectSoundWaveData_unknown_tambourine, 255, 127, 77, 204 @ 86B0600 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_unknown_cymbal_crash, 255, 231, 0, 188 @ 86B060C + voice_directsound_no_resample 64, 64, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86B060C voice_directsound_no_resample 64, 64, DirectSoundWaveData_unknown_cowbell, 255, 0, 255, 242 @ 86B0618 - voice_directsound_no_resample 64, 118, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B0624 + voice_directsound_no_resample 64, 118, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B0624 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B0630 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B063C - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 8, 0, 255, 216 @ 86B0648 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B063C + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86B0648 voice_directsound_no_resample 64, 64, DirectSoundWaveData_unknown_djembe, 255, 0, 255, 0 @ 86B0654 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_bongo, 255, 0, 255, 0 @ 86B0660 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88_bongo_low, 255, 0, 255, 0 @ 86B066C @@ -20751,8 +20751,8 @@ voicegroup180:: @ 86B0FF0 voice_keysplit voicegroup005, KeySplitTable1 @ 86B0FFC voice_square_1 0, 2, 0, 0, 15, 0 @ 86B1008 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B1014 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 64, 249, 0, 188 @ 86B1020 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 249, 0, 165 @ 86B102C + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 @ 86B1020 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @ 86B102C voice_square_1 0, 2, 0, 0, 15, 0 @ 86B1038 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B1044 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B1050 @@ -21181,7 +21181,7 @@ voicegroup184:: @ 86B2244 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B2394 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B23A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B23AC - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86B23B8 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86B23B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B23C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B23D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B23DC @@ -21235,7 +21235,7 @@ voicegroup184:: @ 86B2244 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B261C voice_square_1 0, 2, 0, 0, 15, 0 @ 86B2628 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B2634 - voice_directsound 60, 0, DirectSoundWaveData_advanced_orchestra_voice_ahhs, 255, 0, 255, 0 @ 86B2640 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 @ 86B2640 .align 2 voicegroup185:: @ 86B264C @@ -21270,7 +21270,7 @@ voicegroup185:: @ 86B264C voice_square_1 0, 2, 0, 0, 15, 0 @ 86B279C voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 @ 86B27A8 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 @ 86B27B4 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_guitar_harmonics, 255, 0, 255, 165 @ 86B27C0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 @ 86B27C0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B27CC voice_directsound 60, 0, DirectSoundWaveData_sc88_pick_bass, 255, 253, 0, 149 @ 86B27D8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B27E4 @@ -21292,7 +21292,7 @@ voicegroup185:: @ 86B264C voice_square_1 0, 2, 0, 0, 15, 0 @ 86B28A4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B28B0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B28BC - voice_directsound 60, 0, DirectSoundWaveData_advanced_orchestra_voice_ahhs, 85, 0, 154, 165 @ 86B28C8 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 85, 0, 154, 165 @ 86B28C8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B28D4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B28E0 voice_keysplit voicegroup007, KeySplitTable3 @ 86B28EC @@ -21636,8 +21636,8 @@ voicegroup188:: @ 86B384C voice_keysplit voicegroup005, KeySplitTable1 @ 86B3858 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3864 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3870 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86B387C - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 128, 204, 77, 246 @ 86B3888 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86B387C + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 @ 86B3888 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3894 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B38A0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B38AC @@ -21767,8 +21767,8 @@ voicegroup189:: @ 86B3E4C voice_keysplit voicegroup005, KeySplitTable1 @ 86B3E58 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3E64 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3E70 - voice_directsound 60, 0, DirectSoundWaveData_unknown_e_piano_low, 255, 188, 128, 226 @ 86B3E7C - voice_directsound 60, 65, DirectSoundWaveData_unknown_e_piano_high, 128, 204, 77, 246 @ 86B3E88 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @ 86B3E7C + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 @ 86B3E88 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3E94 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3EA0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B3EAC @@ -21896,29 +21896,29 @@ voicegroup190:: @ 86B429C voice_noise_alt 0, 0, 1, 9, 1 @ 86B4440 voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 @ 86B444C voice_square_1 0, 2, 0, 0, 15, 0 @ 86B4458 - voice_directsound_no_resample 64, 52, DirectSoundWaveData_sc88_standard_snare2, 255, 0, 255, 242 @ 86B4464 + voice_directsound_no_resample 64, 52, DirectSoundWaveData_sc88_orchestra_snare, 255, 0, 255, 242 @ 86B4464 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B4470 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B447C voice_square_1 0, 2, 0, 0, 15, 0 @ 86B4488 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B4494 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B44A0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard_snare1, 255, 0, 255, 242 @ 86B44AC + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88_standard3_snare, 255, 0, 255, 242 @ 86B44AC voice_square_1 0, 2, 0, 0, 15, 0 @ 86B44B8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B44C4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B44D0 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B44DC - voice_directsound_no_resample 33, 104, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B44E8 + voice_directsound_no_resample 33, 104, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B44E8 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B44F4 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B4500 - voice_directsound 63, 64, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B450C + voice_directsound 63, 64, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B450C voice_square_1 0, 2, 0, 0, 15, 0 @ 86B4518 voice_directsound_no_resample 64, 34, DirectSoundWaveData_unknown_tambourine, 255, 127, 77, 204 @ 86B4524 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_unknown_cymbal_crash, 255, 231, 0, 188 @ 86B4530 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 @ 86B4530 voice_directsound_no_resample 64, 89, DirectSoundWaveData_unknown_cowbell, 255, 0, 255, 242 @ 86B453C - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B4548 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B4548 voice_square_1 0, 2, 0, 0, 15, 0 @ 86B4554 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 255, 235, 0, 231 @ 86B4560 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_standard_cymbal_crash, 8, 0, 255, 216 @ 86B456C + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 255, 235, 0, 231 @ 86B4560 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88_orchestra_cymbal_crash, 8, 0, 255, 216 @ 86B456C voice_directsound_no_resample 64, 94, DirectSoundWaveData_unknown_djembe, 255, 0, 255, 0 @ 86B4578 voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88_bongo, 255, 0, 255, 0 @ 86B4584 voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88_bongo_low, 255, 0, 255, 0 @ 86B4590 diff --git a/spritesheet_rules.mk b/spritesheet_rules.mk index 262d53232..23dd6fbcf 100644 --- a/spritesheet_rules.mk +++ b/spritesheet_rules.mk @@ -653,7 +653,7 @@ $(OBJEVENTGFXDIR)/effects/unknown_20.4bpp: %.4bpp: %.png $(OBJEVENTGFXDIR)/effects/unknown_29.4bpp: %.4bpp: %.png $(GFX) $< $@ -mwidth 2 -mheight 1 -$(OBJEVENTGFXDIR)/effects/unknown_33.4bpp: %.4bpp: %.png +$(OBJEVENTGFXDIR)/effects/lavaridge_gym_warp.4bpp: %.4bpp: %.png $(GFX) $< $@ -mwidth 2 -mheight 2 $(OBJEVENTGFXDIR)/effects/unknown_35.4bpp: %.4bpp: %.png diff --git a/src/data/field_event_obj/event_object_graphics.h b/src/data/field_event_obj/event_object_graphics.h new file mode 100755 index 000000000..1702392ca --- /dev/null +++ b/src/data/field_event_obj/event_object_graphics.h @@ -0,0 +1,362 @@ +const u32 gEventObjectPic_BrendanNormal[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/walking.4bpp"); +const u32 gEventObjectPic_BrendanRunning[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/running.4bpp"); +const u16 gEventObjectPalette8[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_08.gbapal"); +const u32 gEventObjectPic_RubySapphireBrendanNormal[] = INCBIN_U32("graphics/event_objects/pics/people/ruby_sapphire_brendan/walking.4bpp"); +const u32 gEventObjectPic_RubySapphireBrendanRunning[] = INCBIN_U32("graphics/event_objects/pics/people/ruby_sapphire_brendan/running.4bpp"); +const u16 gEventObjectPalette33[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_33.gbapal"); +const u16 NullPalette_8499A38[16] = {}; +const u16 NullPalette_8499A58[16] = {}; +const u16 NullPalette_8499A78[16] = {}; +const u16 NullPalette_8499A98[16] = {}; +const u16 NullPalette_8499AB8[16] = {}; +const u16 NullPalette_8499AD8[16] = {}; +const u16 NullPalette_8499AF8[16] = {}; +const u16 NullPalette_8499B18[16] = {}; +const u16 NullPalette_8499B38[16] = {}; +const u16 NullPalette_8499B58[16] = {}; +const u16 NullPalette_8499B78[16] = {}; +const u16 NullPalette_8499B98[16] = {}; +const u16 NullPalette_8499BB8[16] = {}; +const u16 NullPalette_8499BD8[16] = {}; +const u16 NullPalette_8499BF8[16] = {}; +const u16 gEventObjectPalette9[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_09.gbapal"); +const u16 gEventObjectPalette10[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_10.gbapal"); +const u32 gEventObjectPic_BrendanFieldMove[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/field_move.4bpp"); +const u32 gEventObjectPic_BrendanSurfing[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/surfing.4bpp"); +const u32 gEventObjectPic_BrendanMachBike[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/mach_bike.4bpp"); +const u32 gEventObjectPic_BrendanAcroBike[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/acro_bike.4bpp"); +const u32 gEventObjectPic_BrendanFishing[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/fishing.4bpp"); +const u32 gEventObjectPic_BrendanWatering[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/watering.4bpp"); +const u32 gEventObjectPic_BrendanDecorating[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/decorating.4bpp"); +const u32 gEventObjectPic_MayDecorating[] = INCBIN_U32("graphics/event_objects/pics/people/may/decorating.4bpp"); +const u32 gEventObjectPic_BrendanUnderwater[] = INCBIN_U32("graphics/event_objects/pics/people/brendan/underwater.4bpp"); +const u32 gEventObjectPic_MayUnderwater[] = INCBIN_U32("graphics/event_objects/pics/people/may/underwater.4bpp"); +const u16 gEventObjectPalette11[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_11.gbapal"); +const u32 gEventObjectPic_MayNormal[] = INCBIN_U32("graphics/event_objects/pics/people/may/walking.4bpp"); +const u32 gEventObjectPic_MayRunning[] = INCBIN_U32("graphics/event_objects/pics/people/may/running.4bpp"); +const u16 gEventObjectPalette17[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_17.gbapal"); +const u16 gEventObjectPalette18[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_18.gbapal"); +const u32 gEventObjectPic_RubySapphireMayNormal[] = INCBIN_U32("graphics/event_objects/pics/people/ruby_sapphire_may/walking.4bpp"); +const u32 gEventObjectPic_RubySapphireMayRunning[] = INCBIN_U32("graphics/event_objects/pics/people/ruby_sapphire_may/running.4bpp"); +const u16 gEventObjectPalette34[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_34.gbapal"); +const u16 gUnusedEventObjectPalette[] = INCBIN_U16("graphics/event_objects/palettes/unused_palette.gbapal"); +const u16 NullPalette_84A54F8[16] = {}; +const u16 NullPalette_84A5518[16] = {}; +const u16 NullPalette_84A5538[16] = {}; +const u16 NullPalette_84A5558[16] = {}; +const u16 NullPalette_84A5578[16] = {}; +const u16 NullPalette_84A5598[16] = {}; +const u16 NullPalette_84A55B8[16] = {}; +const u16 NullPalette_84A55D8[16] = {}; +const u16 NullPalette_84A55F8[16] = {}; +const u16 NullPalette_84A5618[16] = {}; +const u16 NullPalette_84A5638[16] = {}; +const u16 NullPalette_84A5658[16] = {}; +const u16 NullPalette_84A5678[16] = {}; +const u16 NullPalette_84A5698[16] = {}; +const u32 gEventObjectPic_MayMachBike[] = INCBIN_U32("graphics/event_objects/pics/people/may/mach_bike.4bpp"); +const u32 gEventObjectPic_MayAcroBike[] = INCBIN_U32("graphics/event_objects/pics/people/may/acro_bike.4bpp"); +const u32 gEventObjectPic_MaySurfing[] = INCBIN_U32("graphics/event_objects/pics/people/may/surfing.4bpp"); +const u32 gEventObjectPic_MayFieldMove[] = INCBIN_U32("graphics/event_objects/pics/people/may/field_move.4bpp"); +const u32 gEventObjectPic_MayFishing[] = INCBIN_U32("graphics/event_objects/pics/people/may/fishing.4bpp"); +const u32 gEventObjectPic_MayWatering[] = INCBIN_U32("graphics/event_objects/pics/people/may/watering.4bpp"); +const u16 gEventObjectPalette0[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_00.gbapal"); +const u16 gEventObjectPalette1[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_01.gbapal"); +const u16 gEventObjectPalette2[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_02.gbapal"); +const u16 gEventObjectPalette3[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_03.gbapal"); +const u16 gEventObjectPalette4[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_04.gbapal"); +const u16 gEventObjectPalette5[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_05.gbapal"); +const u16 gEventObjectPalette6[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_06.gbapal"); +const u16 gEventObjectPalette7[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_07.gbapal"); +const u32 gEventObjectPic_NinjaBoy[] = INCBIN_U32("graphics/event_objects/pics/people/ninja_boy.4bpp"); +const u32 gEventObjectPic_Twin[] = INCBIN_U32("graphics/event_objects/pics/people/twin.4bpp"); +const u32 gEventObjectPic_Boy1[] = INCBIN_U32("graphics/event_objects/pics/people/boy_1.4bpp"); +const u32 gEventObjectPic_Girl1[] = INCBIN_U32("graphics/event_objects/pics/people/girl_1.4bpp"); +const u32 gEventObjectPic_Boy2[] = INCBIN_U32("graphics/event_objects/pics/people/boy_2.4bpp"); +const u32 gEventObjectPic_Girl2[] = INCBIN_U32("graphics/event_objects/pics/people/girl_2.4bpp"); +const u32 gEventObjectPic_LittleBoy[] = INCBIN_U32("graphics/event_objects/pics/people/little_boy.4bpp"); +const u32 gEventObjectPic_LittleGirl[] = INCBIN_U32("graphics/event_objects/pics/people/little_girl.4bpp"); +const u32 gEventObjectPic_Boy3[] = INCBIN_U32("graphics/event_objects/pics/people/boy_3.4bpp"); +const u32 gEventObjectPic_Girl3[] = INCBIN_U32("graphics/event_objects/pics/people/girl_3.4bpp"); +const u32 gEventObjectPic_RichBoy[] = INCBIN_U32("graphics/event_objects/pics/people/rich_boy.4bpp"); +const u32 gEventObjectPic_Woman1[] = INCBIN_U32("graphics/event_objects/pics/people/woman_1.4bpp"); +const u32 gEventObjectPic_FatMan[] = INCBIN_U32("graphics/event_objects/pics/people/fat_man.4bpp"); +const u32 gEventObjectPic_PokefanF[] = INCBIN_U32("graphics/event_objects/pics/people/pokefan_f.4bpp"); +const u32 gEventObjectPic_Man1[] = INCBIN_U32("graphics/event_objects/pics/people/man_1.4bpp"); +const u32 gEventObjectPic_Woman2[] = INCBIN_U32("graphics/event_objects/pics/people/woman_2.4bpp"); +const u32 gEventObjectPic_ExpertM[] = INCBIN_U32("graphics/event_objects/pics/people/expert_m.4bpp"); +const u32 gEventObjectPic_ExpertF[] = INCBIN_U32("graphics/event_objects/pics/people/expert_f.4bpp"); +const u32 gEventObjectPic_Man2[] = INCBIN_U32("graphics/event_objects/pics/people/man_2.4bpp"); +const u32 gEventObjectPic_Woman3[] = INCBIN_U32("graphics/event_objects/pics/people/woman_3.4bpp"); +const u32 gEventObjectPic_PokefanM[] = INCBIN_U32("graphics/event_objects/pics/people/pokefan_m.4bpp"); +const u32 gEventObjectPic_Woman4[] = INCBIN_U32("graphics/event_objects/pics/people/woman_4.4bpp"); +const u32 gEventObjectPic_Cook[] = INCBIN_U32("graphics/event_objects/pics/people/cook.4bpp"); +const u32 gEventObjectPic_LinkReceptionist[] = INCBIN_U32("graphics/event_objects/pics/people/link_receptionist.4bpp"); +const u32 gEventObjectPic_OldMan[] = INCBIN_U32("graphics/event_objects/pics/people/old_man.4bpp"); +const u32 gEventObjectPic_OldWoman[] = INCBIN_U32("graphics/event_objects/pics/people/old_woman.4bpp"); +const u32 gEventObjectPic_Camper[] = INCBIN_U32("graphics/event_objects/pics/people/camper.4bpp"); +const u32 gEventObjectPic_Picnicker[] = INCBIN_U32("graphics/event_objects/pics/people/picnicker.4bpp"); +const u32 gEventObjectPic_Man3[] = INCBIN_U32("graphics/event_objects/pics/people/man_3.4bpp"); +const u32 gEventObjectPic_Woman5[] = INCBIN_U32("graphics/event_objects/pics/people/woman_5.4bpp"); +const u32 gEventObjectPic_Youngster[] = INCBIN_U32("graphics/event_objects/pics/people/youngster.4bpp"); +const u32 gEventObjectPic_BugCatcher[] = INCBIN_U32("graphics/event_objects/pics/people/bug_catcher.4bpp"); +const u32 gEventObjectPic_PsychicM[] = INCBIN_U32("graphics/event_objects/pics/people/psychic_m.4bpp"); +const u32 gEventObjectPic_SchoolKidM[] = INCBIN_U32("graphics/event_objects/pics/people/school_kid_m.4bpp"); +const u32 gEventObjectPic_Maniac[] = INCBIN_U32("graphics/event_objects/pics/people/maniac.4bpp"); +const u32 gEventObjectPic_HexManiac[] = INCBIN_U32("graphics/event_objects/pics/people/hex_maniac.4bpp"); +const u32 gEventObjectPic_UnusedWoman[] = INCBIN_U32("graphics/event_objects/pics/people/unused_woman.4bpp"); +const u32 gEventObjectPic_SwimmerM[] = INCBIN_U32("graphics/event_objects/pics/people/swimmer_m.4bpp"); +const u32 gEventObjectPic_SwimmerF[] = INCBIN_U32("graphics/event_objects/pics/people/swimmer_f.4bpp"); +const u32 gEventObjectPic_BlackBelt[] = INCBIN_U32("graphics/event_objects/pics/people/black_belt.4bpp"); +const u32 gEventObjectPic_Beauty[] = INCBIN_U32("graphics/event_objects/pics/people/beauty.4bpp"); +const u32 gEventObjectPic_Scientist1[] = INCBIN_U32("graphics/event_objects/pics/people/scientist_1.4bpp"); +const u32 gEventObjectPic_Lass[] = INCBIN_U32("graphics/event_objects/pics/people/lass.4bpp"); +const u32 gEventObjectPic_Gentleman[] = INCBIN_U32("graphics/event_objects/pics/people/gentleman.4bpp"); +const u32 gEventObjectPic_Sailor[] = INCBIN_U32("graphics/event_objects/pics/people/sailor.4bpp"); +const u32 gEventObjectPic_Fisherman[] = INCBIN_U32("graphics/event_objects/pics/people/fisherman.4bpp"); +const u32 gEventObjectPic_RunningTriathleteM[] = INCBIN_U32("graphics/event_objects/pics/people/running_triathlete_m.4bpp"); +const u32 gEventObjectPic_RunningTriathleteF[] = INCBIN_U32("graphics/event_objects/pics/people/running_triathlete_f.4bpp"); +const u32 gEventObjectPic_TuberF[] = INCBIN_U32("graphics/event_objects/pics/people/tuber_f.4bpp"); +const u32 gEventObjectPic_TuberM[] = INCBIN_U32("graphics/event_objects/pics/people/tuber_m.4bpp"); +const u32 gEventObjectPic_Hiker[] = INCBIN_U32("graphics/event_objects/pics/people/hiker.4bpp"); +const u32 gEventObjectPic_CyclingTriathleteM[] = INCBIN_U32("graphics/event_objects/pics/people/cycling_triathlete_m.4bpp"); +const u32 gEventObjectPic_CyclingTriathleteF[] = INCBIN_U32("graphics/event_objects/pics/people/cycling_triathlete_f.4bpp"); +const u32 gEventObjectPic_Man4[] = INCBIN_U32("graphics/event_objects/pics/people/man_4.4bpp"); +const u32 gEventObjectPic_Man5[] = INCBIN_U32("graphics/event_objects/pics/people/man_5.4bpp"); +const u32 gEventObjectPic_Nurse[] = INCBIN_U32("graphics/event_objects/pics/people/nurse.4bpp"); +const u32 gEventObjectPic_ItemBall[] = INCBIN_U32("graphics/event_objects/pics/misc/item_ball.4bpp"); +const u32 gEventObjectPic_ProfBirch[] = INCBIN_U32("graphics/event_objects/pics/people/prof_birch.4bpp"); +const u32 gEventObjectPic_ReporterM[] = INCBIN_U32("graphics/event_objects/pics/people/reporter_m.4bpp"); +const u32 gEventObjectPic_ReporterF[] = INCBIN_U32("graphics/event_objects/pics/people/reporter_f.4bpp"); +const u32 gEventObjectPic_MauvilleOldMan1[] = INCBIN_U32("graphics/event_objects/pics/people/mauville_old_man_1.4bpp"); +const u32 gEventObjectPic_MauvilleOldMan2[] = INCBIN_U32("graphics/event_objects/pics/people/mauville_old_man_2.4bpp"); +const u32 gEventObjectPic_MartEmployee[] = INCBIN_U32("graphics/event_objects/pics/people/mart_employee.4bpp"); +const u32 gEventObjectPic_RooftopSaleWoman[] = INCBIN_U32("graphics/event_objects/pics/people/rooftop_sale_woman.4bpp"); +const u32 gEventObjectPic_Teala[] = INCBIN_U32("graphics/event_objects/pics/people/teala.4bpp"); +const u32 gEventObjectPic_Artist[] = INCBIN_U32("graphics/event_objects/pics/people/artist.4bpp"); +const u32 gEventObjectPic_Cameraman[] = INCBIN_U32("graphics/event_objects/pics/people/cameraman.4bpp"); +const u32 gEventObjectPic_Scientist2[] = INCBIN_U32("graphics/event_objects/pics/people/scientist_2.4bpp"); +const u32 gEventObjectPic_DevonEmployee[] = INCBIN_U32("graphics/event_objects/pics/people/devon_employee.4bpp"); +const u32 gEventObjectPic_AquaMemberM[] = INCBIN_U32("graphics/event_objects/pics/people/team_aqua/aqua_member_m.4bpp"); +const u32 gEventObjectPic_AquaMemberF[] = INCBIN_U32("graphics/event_objects/pics/people/team_aqua/aqua_member_f.4bpp"); +const u32 gEventObjectPic_MagmaMemberM[] = INCBIN_U32("graphics/event_objects/pics/people/team_magma/magma_member_m.4bpp"); +const u32 gEventObjectPic_MagmaMemberF[] = INCBIN_U32("graphics/event_objects/pics/people/team_magma/magma_member_f.4bpp"); +const u32 gEventObjectPic_Sidney[] = INCBIN_U32("graphics/event_objects/pics/people/elite_four/sidney.4bpp"); +const u32 gEventObjectPic_Phoebe[] = INCBIN_U32("graphics/event_objects/pics/people/elite_four/phoebe.4bpp"); +const u32 gEventObjectPic_Glacia[] = INCBIN_U32("graphics/event_objects/pics/people/elite_four/glacia.4bpp"); +const u32 gEventObjectPic_Drake[] = INCBIN_U32("graphics/event_objects/pics/people/elite_four/drake.4bpp"); +const u32 gEventObjectPic_Roxanne[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/roxanne.4bpp"); +const u32 gEventObjectPic_Brawly[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/brawly.4bpp"); +const u32 gEventObjectPic_Wattson[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/wattson.4bpp"); +const u32 gEventObjectPic_Flannery[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/flannery.4bpp"); +const u32 gEventObjectPic_Norman[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/norman.4bpp"); +const u32 gEventObjectPic_Winona[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/winona.4bpp"); +const u32 gEventObjectPic_Liza[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/liza.4bpp"); +const u32 gEventObjectPic_Tate[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/tate.4bpp"); +const u32 gEventObjectPic_Wallace[] = INCBIN_U32("graphics/event_objects/pics/people/wallace.4bpp"); +const u32 gEventObjectPic_Steven[] = INCBIN_U32("graphics/event_objects/pics/people/steven.4bpp"); +const u32 gEventObjectPic_Wally[] = INCBIN_U32("graphics/event_objects/pics/people/wally.4bpp"); +const u32 gEventObjectPic_RubySapphireLittleBoy[] = INCBIN_U32("graphics/event_objects/pics/people/rs_little_boy.4bpp"); +const u32 gEventObjectPic_HotSpringsOldWoman[] = INCBIN_U32("graphics/event_objects/pics/people/hot_springs_old_woman.4bpp"); +const u32 gEventObjectPic_LatiasLatios[] = INCBIN_U32("graphics/event_objects/pics/pokemon/latias_latios.4bpp"); +const u32 gEventObjectPic_GameboyKid[] = INCBIN_U32("graphics/event_objects/pics/people/gameboy_kid.4bpp"); +const u32 gEventObjectPic_ContestJudge[] = INCBIN_U32("graphics/event_objects/pics/people/contest_judge.4bpp"); +const u32 gEventObjectPic_Archie[] = INCBIN_U32("graphics/event_objects/pics/people/team_aqua/archie.4bpp"); +const u32 gEventObjectPic_Maxie[] = INCBIN_U32("graphics/event_objects/pics/people/team_magma/maxie.4bpp"); +const u32 gEventObjectPic_Kyogre[] = INCBIN_U32("graphics/event_objects/pics/pokemon/kyogre.4bpp"); +const u32 gEventObjectPic_Groudon[] = INCBIN_U32("graphics/event_objects/pics/pokemon/groudon.4bpp"); +const u32 gEventObjectPic_Regi[] = INCBIN_U32("graphics/event_objects/pics/pokemon/regi.4bpp"); +const u32 gEventObjectPic_Skitty[] = INCBIN_U32("graphics/event_objects/pics/pokemon/skitty.4bpp"); +const u32 gEventObjectPic_Kecleon[] = INCBIN_U32("graphics/event_objects/pics/pokemon/kecleon.4bpp"); +const u32 gEventObjectPic_Rayquaza[] = INCBIN_U32("graphics/event_objects/pics/pokemon/rayquaza.4bpp"); +const u32 gEventObjectPic_RayquazaStill[] = INCBIN_U32("graphics/event_objects/pics/pokemon/rayquaza_still.4bpp"); +const u32 gEventObjectPic_Zigzagoon[] = INCBIN_U32("graphics/event_objects/pics/pokemon/zigzagoon.4bpp"); +const u32 gEventObjectPic_Pikachu[] = INCBIN_U32("graphics/event_objects/pics/pokemon/pikachu.4bpp"); +const u32 gEventObjectPic_Azumarill[] = INCBIN_U32("graphics/event_objects/pics/pokemon/azumarill.4bpp"); +const u32 gEventObjectPic_Wingull[] = INCBIN_U32("graphics/event_objects/pics/pokemon/wingull.4bpp"); +const u32 gEventObjectPic_TuberMSwimming[] = INCBIN_U32("graphics/event_objects/pics/people/tuber_m_swimming.4bpp"); +const u32 gEventObjectPic_Azurill[] = INCBIN_U32("graphics/event_objects/pics/pokemon/azurill.4bpp"); +const u32 gEventObjectPic_Mom[] = INCBIN_U32("graphics/event_objects/pics/people/mom.4bpp"); +const u16 gEventObjectPalette22[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_22.gbapal"); +const u16 gEventObjectPalette23[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_23.gbapal"); +const u16 gEventObjectPalette24[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_24.gbapal"); +const u16 gEventObjectPalette25[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_25.gbapal"); +const u32 gEventObjectPic_UnusedNatuDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/unused_natu_doll.4bpp"); +const u32 gEventObjectPic_UnusedMagnemiteDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/unused_magnemite_doll.4bpp"); +const u32 gEventObjectPic_UnusedSquirtleDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/unused_squirtle_doll.4bpp"); +const u32 gEventObjectPic_UnusedWooperDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/unused_wooper_doll.4bpp"); +const u32 gEventObjectPic_UnusedPikachuDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/unused_pikachu_doll.4bpp"); +const u32 gEventObjectPic_UnusedPorygon2Doll[] = INCBIN_U32("graphics/event_objects/pics/dolls/unused_porygon2_doll.4bpp"); +const u32 gEventObjectPic_PichuDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/pichu_doll.4bpp"); +const u32 gEventObjectPic_PikachuDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/pikachu_doll.4bpp"); +const u32 gEventObjectPic_MarillDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/marill_doll.4bpp"); +const u32 gEventObjectPic_TogepiDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/togepi_doll.4bpp"); +const u32 gEventObjectPic_CyndaquilDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/cyndaquil_doll.4bpp"); +const u32 gEventObjectPic_ChikoritaDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/chikorita_doll.4bpp"); +const u32 gEventObjectPic_TotodileDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/totodile_doll.4bpp"); +const u32 gEventObjectPic_JigglypuffDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/jigglypuff_doll.4bpp"); +const u32 gEventObjectPic_MeowthDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/meowth_doll.4bpp"); +const u32 gEventObjectPic_ClefairyDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/clefairy_doll.4bpp"); +const u32 gEventObjectPic_DittoDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/ditto_doll.4bpp"); +const u32 gEventObjectPic_SmoochumDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/smoochum_doll.4bpp"); +const u32 gEventObjectPic_TreeckoDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/treecko_doll.4bpp"); +const u32 gEventObjectPic_TorchicDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/torchic_doll.4bpp"); +const u32 gEventObjectPic_MudkipDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/mudkip_doll.4bpp"); +const u32 gEventObjectPic_DuskullDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/duskull_doll.4bpp"); +const u32 gEventObjectPic_WynautDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/wynaut_doll.4bpp"); +const u32 gEventObjectPic_BaltoyDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/baltoy_doll.4bpp"); +const u32 gEventObjectPic_KecleonDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/kecleon_doll.4bpp"); +const u32 gEventObjectPic_AzurillDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/azurill_doll.4bpp"); +const u32 gEventObjectPic_SkittyDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/skitty_doll.4bpp"); +const u32 gEventObjectPic_SwabluDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/swablu_doll.4bpp"); +const u32 gEventObjectPic_GulpinDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/gulpin_doll.4bpp"); +const u32 gEventObjectPic_LotadDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/lotad_doll.4bpp"); +const u32 gEventObjectPic_SeedotDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/seedot_doll.4bpp"); +const u32 gEventObjectPic_PikaCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/pika_cushion.4bpp"); +const u32 gEventObjectPic_RoundCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/round_cushion.4bpp"); +const u32 gEventObjectPic_KissCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/kiss_cushion.4bpp"); +const u32 gEventObjectPic_ZigzagCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/zigzag_cushion.4bpp"); +const u32 gEventObjectPic_SpinCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/spin_cushion.4bpp"); +const u32 gEventObjectPic_DiamondCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/diamond_cushion.4bpp"); +const u32 gEventObjectPic_BallCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/ball_cushion.4bpp"); +const u32 gEventObjectPic_GrassCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/grass_cushion.4bpp"); +const u32 gEventObjectPic_FireCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/fire_cushion.4bpp"); +const u32 gEventObjectPic_WaterCushion[] = INCBIN_U32("graphics/event_objects/pics/cushions/water_cushion.4bpp"); +const u32 gEventObjectPic_BigSnorlaxDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_snorlax_doll.4bpp"); +const u32 gEventObjectPic_BigRhydonDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_rhydon_doll.4bpp"); +const u32 gEventObjectPic_BigLaprasDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_lapras_doll.4bpp"); +const u32 gEventObjectPic_BigVenusaurDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_venusaur_doll.4bpp"); +const u32 gEventObjectPic_BigCharizardDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_charizard_doll.4bpp"); +const u32 gEventObjectPic_BigBlastoiseDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_blastoise_doll.4bpp"); +const u32 gEventObjectPic_BigWailmerDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_wailmer_doll.4bpp"); +const u32 gEventObjectPic_BigRegirockDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_regirock_doll.4bpp"); +const u32 gEventObjectPic_BigRegiceDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_regice_doll.4bpp"); +const u32 gEventObjectPic_BigRegisteelDoll[] = INCBIN_U32("graphics/event_objects/pics/dolls/big_registeel_doll.4bpp"); +const u32 gEventObjectPic_CuttableTree[] = INCBIN_U32("graphics/event_objects/pics/misc/cuttable_tree.4bpp"); +const u32 gEventObjectPic_BreakableRock[] = INCBIN_U32("graphics/event_objects/pics/misc/breakable_rock.4bpp"); +const u32 gEventObjectPic_PushableBoulder[] = INCBIN_U32("graphics/event_objects/pics/misc/pushable_boulder.4bpp"); +const u32 gEventObjectPic_MrBrineysBoat[] = INCBIN_U32("graphics/event_objects/pics/misc/mr_brineys_boat.4bpp"); +const u32 gEventObjectPic_Fossil[] = INCBIN_U32("graphics/event_objects/pics/misc/fossil.4bpp"); +const u32 gEventObjectPic_SubmarineShadow[] = INCBIN_U32("graphics/event_objects/pics/misc/submarine_shadow.4bpp"); +const u16 gEventObjectPalette26[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_26.gbapal"); +const u32 gEventObjectPic_Truck[] = INCBIN_U32("graphics/event_objects/pics/misc/truck.4bpp"); +const u16 gEventObjectPalette14[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_14.gbapal"); +const u32 gEventObjectPic_Vigoroth[] = INCBIN_U32("graphics/event_objects/pics/pokemon/vigoroth.4bpp"); +const u16 gEventObjectPalette15[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_15.gbapal"); +const u32 gEventObjectPic_BirchsBag[] = INCBIN_U32("graphics/event_objects/pics/misc/birchs_bag.4bpp"); +const u32 gEventObjectPic_EnemyZigzagoon[] = INCBIN_U32("graphics/event_objects/pics/pokemon/enemy_zigzagoon.4bpp"); +const u16 gEventObjectPalette16[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_16.gbapal"); +const u32 gEventObjectPic_Poochyena[] = INCBIN_U32("graphics/event_objects/pics/pokemon/poochyena.4bpp"); +const u16 gEventObjectPalette27[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_27.gbapal"); +const u32 gEventObjectPic_CableCar[] = INCBIN_U32("graphics/event_objects/pics/misc/cable_car.4bpp"); +const u16 gEventObjectPalette20[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_20.gbapal"); +const u32 gEventObjectPic_SSTidal[] = INCBIN_U32("graphics/event_objects/pics/misc/ss_tidal.4bpp"); +const u16 gEventObjectPalette21[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_21.gbapal"); +const u32 gFieldEffectObjectPic_BerryTreeGrowthSparkle[] = INCBIN_U32("graphics/event_objects/pics/effects/berry_tree_growth_sparkle.4bpp"); +const u32 gEventObjectPic_BerryTreeDirtPile[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/dirt_pile.4bpp"); +const u32 gEventObjectPic_BerryTreeSprout[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/sprout.4bpp"); +const u32 gEventObjectPic_PechaBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/pecha.4bpp"); +const u32 gEventObjectPic_KelpsyBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/kelpsy.4bpp"); +const u32 gEventObjectPic_WepearBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/wepear.4bpp"); +const u32 gEventObjectPic_IapapaBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/iapapa.4bpp"); +const u32 gEventObjectPic_CheriBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/cheri.4bpp"); +const u32 gEventObjectPic_FigyBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/figy.4bpp"); +const u32 gEventObjectPic_MagoBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/mago.4bpp"); +const u32 gEventObjectPic_LumBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/lum.4bpp"); +const u32 gEventObjectPic_RazzBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/razz.4bpp"); +const u32 gEventObjectPic_GrepaBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/grepa.4bpp"); +const u32 gEventObjectPic_RabutaBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/rabuta.4bpp"); +const u32 gEventObjectPic_NomelBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/nomel.4bpp"); +const u32 gEventObjectPic_LeppaBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/leppa.4bpp"); +const u32 gEventObjectPic_LiechiBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/liechi.4bpp"); +const u32 gEventObjectPic_HondewBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/hondew.4bpp"); +const u32 gEventObjectPic_AguavBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/aguav.4bpp"); +const u32 gEventObjectPic_WikiBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/wiki.4bpp"); +const u32 gEventObjectPic_PomegBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/pomeg.4bpp"); +const u32 gEventObjectPic_RawstBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/rawst.4bpp"); +const u32 gEventObjectPic_SpelonBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/spelon.4bpp"); +const u32 gEventObjectPic_ChestoBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/chesto.4bpp"); +const u32 gEventObjectPic_OranBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/oran.4bpp"); +const u32 gEventObjectPic_PersimBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/persim.4bpp"); +const u32 gEventObjectPic_SitrusBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/sitrus.4bpp"); +const u32 gEventObjectPic_AspearBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/aspear.4bpp"); +const u32 gEventObjectPic_PamtreBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/pamtre.4bpp"); +const u32 gEventObjectPic_CornnBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/cornn.4bpp"); +const u32 gEventObjectPic_LansatBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/lansat.4bpp"); +const u32 gEventObjectPic_DurinBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/durin.4bpp"); +const u32 gEventObjectPic_TamatoBerryTree[] = INCBIN_U32("graphics/event_objects/pics/berry_trees/tamato.4bpp"); +const u32 gFieldEffectObjectPic_SurfBlob[] = INCBIN_U32("graphics/event_objects/pics/effects/surf_blob.4bpp"); +const u32 gEventObjectPic_QuintyPlump[] = INCBIN_U32("graphics/event_objects/pics/people/quinty_plump.4bpp"); +const u16 gEventObjectPalette12[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_12.gbapal"); +const u16 gEventObjectPalette13[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_13.gbapal"); +const u32 gFieldEffectObjectPic_ShadowSmall[] = INCBIN_U32("graphics/event_objects/pics/effects/shadow_small.4bpp"); +const u32 gFieldEffectObjectPic_ShadowMedium[] = INCBIN_U32("graphics/event_objects/pics/effects/shadow_medium.4bpp"); +const u32 gFieldEffectObjectPic_ShadowLarge[] = INCBIN_U32("graphics/event_objects/pics/effects/shadow_large.4bpp"); +const u32 gFieldEffectObjectPic_ShadowExtraLarge[] = INCBIN_U32("graphics/event_objects/pics/effects/shadow_extra_large.4bpp"); +const u32 filler_8368A08[0x48] = {}; +const u8 gFieldEffectPic_CutGrass[] = INCBIN_U8("graphics/event_objects/pics/effects/cut_grass.4bpp"); +const u32 gFieldEffectPic_CutGrass_Copy[] = INCBIN_U32("graphics/event_objects/pics/effects/cut_grass.4bpp"); +const u16 gFieldEffectObjectPalette6[] = INCBIN_U16("graphics/event_objects/palettes/field_effect_object_palette_06.gbapal"); +const u32 gFieldEffectObjectPic_Ripple[] = INCBIN_U32("graphics/event_objects/pics/effects/ripple.4bpp"); +const u32 gFieldEffectObjectPic_Ash[] = INCBIN_U32("graphics/event_objects/pics/effects/ash.4bpp"); +const u32 gFieldEffectObjectPic_Arrow[] = INCBIN_U32("graphics/event_objects/pics/effects/arrow.4bpp"); +const u16 gFieldEffectObjectPalette0[] = INCBIN_U16("graphics/event_objects/palettes/field_effect_object_palette_00.gbapal"); +const u16 gFieldEffectObjectPalette1[] = INCBIN_U16("graphics/event_objects/palettes/field_effect_object_palette_01.gbapal"); +const u32 gFieldEffectObjectPic_GroundImpactDust[] = INCBIN_U32("graphics/event_objects/pics/effects/ground_impact_dust.4bpp"); +const u32 gFieldEffectObjectPic_BikeHopTallGrass[] = INCBIN_U32("graphics/event_objects/pics/effects/bike_hop_tall_grass.4bpp"); +const u32 gUnusedGrass[] = INCBIN_U32("graphics/event_objects/pics/effects/unused_grass.4bpp"); +const u32 gFieldEffectObjectPic_Unknown16[] = INCBIN_U32("graphics/event_objects/pics/effects/unknown_16.4bpp"); +const u32 gFieldEffectObjectPic_Unknown17[] = INCBIN_U32("graphics/event_objects/pics/effects/unknown_17.4bpp"); +const u32 gFieldEffectObjectPic_Unknown18[] = INCBIN_U32("graphics/event_objects/pics/effects/unknown_18.4bpp"); +const u32 gFieldEffectObjectPic_LongGrass[] = INCBIN_U32("graphics/event_objects/pics/effects/long_grass.4bpp"); +const u32 gFieldEffectObjectPic_TallGrass[] = INCBIN_U32("graphics/event_objects/pics/effects/tall_grass.4bpp"); +const u32 gFieldEffectObjectPic_ShortGrass[] = INCBIN_U32("graphics/event_objects/pics/effects/short_grass.4bpp"); +const u32 gFieldEffectObjectPic_SandFootprints[] = INCBIN_U32("graphics/event_objects/pics/effects/sand_footprints.4bpp"); +const u32 gFieldEffectObjectPic_DeepSandFootprints[] = INCBIN_U32("graphics/event_objects/pics/effects/deep_sand_footprints.4bpp"); +const u32 gFieldEffectObjectPic_BikeTireTracks[] = INCBIN_U32("graphics/event_objects/pics/effects/bike_tire_tracks.4bpp"); +const u32 gFieldEffectObjectPic_Unknown19[] = INCBIN_U32("graphics/event_objects/pics/effects/unknown_19.4bpp"); +const u32 gFieldEffectObjectPic_Unknown29[] = INCBIN_U32("graphics/event_objects/pics/effects/unknown_29.4bpp"); +const u32 gFieldEffectObjectPic_BikeHopBigSplash[] = INCBIN_U32("graphics/event_objects/pics/effects/bike_hop_big_splash.4bpp"); +const u32 gFieldEffectObjectPic_Splash[] = INCBIN_U32("graphics/event_objects/pics/effects/splash.4bpp"); +const u32 gFieldEffectObjectPic_BikeHopSmallSplash[] = INCBIN_U32("graphics/event_objects/pics/effects/bike_hop_small_splash.4bpp"); +const u32 gFieldEffectObjectPic_Unknown20[] = INCBIN_U32("graphics/event_objects/pics/effects/unknown_20.4bpp"); +const u32 gFieldEffectObjectPic_TreeDisguise[] = INCBIN_U32("graphics/event_objects/pics/effects/tree_disguise.4bpp"); +const u32 gFieldEffectObjectPic_MountainDisguise[] = INCBIN_U32("graphics/event_objects/pics/effects/mountain_disguise.4bpp"); +const u32 gFieldEffectObjectPic_SandDisguisePlaceholder[] = INCBIN_U32("graphics/event_objects/pics/effects/sand_disguise_placeholder.4bpp"); +const u32 gFieldEffectObjectPic_HotSpringsWater[] = INCBIN_U32("graphics/event_objects/pics/effects/hot_springs_water.4bpp"); +const u16 gFieldEffectObjectPalette2[] = INCBIN_U16("graphics/event_objects/palettes/field_effect_object_palette_02.gbapal"); +const u32 gFieldEffectObjectPic_JumpOutOfAsh[] = INCBIN_U32("graphics/event_objects/pics/effects/jump_out_of_ash.4bpp"); +const u32 gFieldEffectObjectPic_LavaridgeGymWarp[] = INCBIN_U32("graphics/event_objects/pics/effects/lavaridge_gym_warp.4bpp"); +const u32 gFieldEffectObjectPic_Bubbles[] = INCBIN_U32("graphics/event_objects/pics/effects/bubbles.4bpp"); +const u32 gFieldEffectObjectPic_Unknown35[] = INCBIN_U32("graphics/event_objects/pics/effects/unknown_35.4bpp"); +const u16 gFieldEffectObjectPalette3[] = INCBIN_U16("graphics/event_objects/palettes/field_effect_object_palette_03.gbapal"); +const u32 gFieldEffectObjectPic_Bird[] = INCBIN_U32("graphics/event_objects/pics/effects/bird.4bpp"); +const u32 gEventObjectPic_Juan[] = INCBIN_U32("graphics/event_objects/pics/people/gym_leaders/juan.4bpp"); +const u32 gEventObjectPic_Scott[] = INCBIN_U32("graphics/event_objects/pics/people/scott.4bpp"); +const u32 gEventObjectPic_Statue[] = INCBIN_U32("graphics/event_objects/pics/misc/statue.4bpp"); +const u32 gEventObjectPic_Kirlia[] = INCBIN_U32("graphics/event_objects/pics/pokemon/kirlia.4bpp"); +const u32 gEventObjectPic_Dusclops[] = INCBIN_U32("graphics/event_objects/pics/pokemon/dusclops.4bpp"); +const u32 gEventObjectPic_MysteryEventDeliveryman[] = INCBIN_U32("graphics/event_objects/pics/people/mystery_event_deliveryman.4bpp"); +const u32 gEventObjectPic_UnionRoomAttendant[] = INCBIN_U32("graphics/event_objects/pics/people/union_room_attendant.4bpp"); +const u32 gEventObjectPic_MovingBox[] = INCBIN_U32("graphics/event_objects/pics/misc/moving_box.4bpp"); +const u16 gEventObjectPalette19[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_19.gbapal"); +const u32 gEventObjectPic_Sudowoodo[] = INCBIN_U32("graphics/event_objects/pics/pokemon/sudowoodo.4bpp"); +const u32 gEventObjectPic_Mew[] = INCBIN_U32("graphics/event_objects/pics/pokemon/mew.4bpp"); +const u16 gEventObjectPalette28[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_28.gbapal"); +const u32 gEventObjectPic_Red[] = INCBIN_U32("graphics/event_objects/pics/people/red.4bpp"); +const u32 gEventObjectPic_Leaf[] = INCBIN_U32("graphics/event_objects/pics/people/leaf.4bpp"); +const u16 gEventObjectPalette30[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_30.gbapal"); +const u32 gEventObjectPic_BirthIslandStone[] = INCBIN_U32("graphics/event_objects/pics/misc/birth_island_stone.4bpp"); +const u16 gEventObjectPalette29[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_29.gbapal"); +const u32 gEventObjectPic_Deoxys[] = INCBIN_U32("graphics/event_objects/pics/pokemon/deoxys.4bpp"); +const u32 gEventObjectPic_Anabel[] = INCBIN_U32("graphics/event_objects/pics/people/frontier_brains/anabel.4bpp"); +const u32 gEventObjectPic_Tucker[] = INCBIN_U32("graphics/event_objects/pics/people/frontier_brains/tucker.4bpp"); +const u32 gEventObjectPic_Spenser[] = INCBIN_U32("graphics/event_objects/pics/people/frontier_brains/spenser.4bpp"); +const u32 gEventObjectPic_Greta[] = INCBIN_U32("graphics/event_objects/pics/people/frontier_brains/greta.4bpp"); +const u32 gEventObjectPic_Noland[] = INCBIN_U32("graphics/event_objects/pics/people/frontier_brains/noland.4bpp"); +const u32 gEventObjectPic_Lucy[] = INCBIN_U32("graphics/event_objects/pics/people/frontier_brains/lucy.4bpp"); +const u32 gEventObjectPic_Brandon[] = INCBIN_U32("graphics/event_objects/pics/people/frontier_brains/brandon.4bpp"); +const u32 gEventObjectPic_Lugia[] = INCBIN_U32("graphics/event_objects/pics/pokemon/lugia.4bpp"); +const u16 gEventObjectPalette32[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_32.gbapal"); +const u32 gEventObjectPic_HoOh[] = INCBIN_U32("graphics/event_objects/pics/pokemon/ho_oh.4bpp"); +const u16 gEventObjectPalette31[] = INCBIN_U16("graphics/event_objects/palettes/field_object_palette_31.gbapal"); diff --git a/src/data/object_event/event_object_graphics.h b/src/data/object_event/event_object_graphics.h index 764c00ea2..88ca30ff5 100755 --- a/src/data/object_event/event_object_graphics.h +++ b/src/data/object_event/event_object_graphics.h @@ -326,7 +326,7 @@ const u32 gFieldEffectObjectPic_SandDisguisePlaceholder[] = INCBIN_U32("graphics const u32 gFieldEffectObjectPic_HotSpringsWater[] = INCBIN_U32("graphics/object_events/pics/effects/hot_springs_water.4bpp"); const u16 gFieldEffectObjectPalette2[] = INCBIN_U16("graphics/object_events/palettes/field_effect_object_palette_02.gbapal"); const u32 gFieldEffectObjectPic_JumpOutOfAsh[] = INCBIN_U32("graphics/object_events/pics/effects/jump_out_of_ash.4bpp"); -const u32 gFieldEffectObjectPic_Unknown33[] = INCBIN_U32("graphics/object_events/pics/effects/unknown_33.4bpp"); +const u32 gFieldEffectObjectPic_LavaridgeGymWarp[] = INCBIN_U32("graphics/object_events/pics/effects/lavaridge_gym_warp.4bpp"); const u32 gFieldEffectObjectPic_Bubbles[] = INCBIN_U32("graphics/object_events/pics/effects/bubbles.4bpp"); const u32 gFieldEffectObjectPic_Unknown35[] = INCBIN_U32("graphics/object_events/pics/effects/unknown_35.4bpp"); const u16 gFieldEffectObjectPalette3[] = INCBIN_U16("graphics/object_events/palettes/field_effect_object_palette_03.gbapal"); diff --git a/src/data/object_event/field_effect_object_template_pointers.h b/src/data/object_event/field_effect_object_template_pointers.h index 32d2b069a..de39e6db3 100755 --- a/src/data/object_event/field_effect_object_template_pointers.h +++ b/src/data/object_event/field_effect_object_template_pointers.h @@ -31,7 +31,7 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown29; const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass; const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater; const struct SpriteTemplate gFieldEffectObjectTemplate_JumpOutOfAsh; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown33; +const struct SpriteTemplate gFieldEffectObjectTemplate_LavaridgeGymWarp; const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles; const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown35; const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza; @@ -70,7 +70,7 @@ const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[] = { &gFieldEffectObjectTemplate_ShortGrass, &gFieldEffectObjectTemplate_HotSpringsWater, &gFieldEffectObjectTemplate_JumpOutOfAsh, - &gFieldEffectObjectTemplate_Unknown33, + &gFieldEffectObjectTemplate_LavaridgeGymWarp, &gFieldEffectObjectTemplate_Bubbles, &gFieldEffectObjectTemplate_Unknown35, &gFieldEffectObjectTemplate_Rayquaza, diff --git a/src/data/object_event/field_effect_objects.h b/src/data/object_event/field_effect_objects.h index e47973dae..65f35107d 100755 --- a/src/data/object_event/field_effect_objects.h +++ b/src/data/object_event/field_effect_objects.h @@ -892,19 +892,28 @@ const union AnimCmd *const gFieldEffectObjectImageAnimTable_JumpOutOfAsh[] = gFieldEffectObjectImageAnim_850D54C, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpOutOfAsh = {0xFFFF, 0x100D, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_JumpOutOfAsh, gFieldEffectObjectPicTable_JumpOutOfAsh, gDummySpriteAffineAnimTable, sub_80B7CAC}; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpOutOfAsh = +{ + .tileTag = 0xFFFF, + .paletteTag = 0x100D, + .oam = &gObjectEventBaseOam_16x16, + .anims = gFieldEffectObjectImageAnimTable_JumpOutOfAsh, + .images = gFieldEffectObjectPicTable_JumpOutOfAsh, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCB_PopOutOfAsh +}; const struct SpritePalette gFieldEffectObjectPaletteInfo2 = {gFieldEffectObjectPalette2, 0x100D}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown33[] = { - overworld_frame(gFieldEffectObjectPic_Unknown33, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_Unknown33, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_Unknown33, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_Unknown33, 2, 2, 3), - overworld_frame(gFieldEffectObjectPic_Unknown33, 2, 2, 4), +const struct SpriteFrameImage gFieldEffectObjectPicTable_LavaridgeGymWarp[] = { + overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 3), + overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 4), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D5B0[] = +const union AnimCmd gFieldEffectObjectImageAnim_LavaridgeGymWarp[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -914,12 +923,21 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D5B0[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown33[] = +const union AnimCmd *const gFieldEffectObjectImageAnimTable_LavaridgeGymWarp[] = { - gFieldEffectObjectImageAnim_850D5B0, + gFieldEffectObjectImageAnim_LavaridgeGymWarp, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown33 = {0xFFFF, 0x100D, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown33, gFieldEffectObjectPicTable_Unknown33, gDummySpriteAffineAnimTable, sub_80B7A58}; +const struct SpriteTemplate gFieldEffectObjectTemplate_LavaridgeGymWarp = +{ + .tileTag = 0xFFFF, + .paletteTag = 0x100D, + .oam = &gObjectEventBaseOam_16x16, + .anims = gFieldEffectObjectImageAnimTable_LavaridgeGymWarp, + .images = gFieldEffectObjectPicTable_LavaridgeGymWarp, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCB_LavaridgeGymWarp +}; const struct SpriteFrameImage gFieldEffectObjectPicTable_Bubbles[] = { overworld_frame(gFieldEffectObjectPic_Bubbles, 2, 4, 0), diff --git a/src/data/trade.h b/src/data/trade.h index 739132093..b9350863b 100644 --- a/src/data/trade.h +++ b/src/data/trade.h @@ -276,48 +276,65 @@ static const u8 sTradeMonSpriteCoords[(PARTY_SIZE * 2) + 1][2] = {23, 18} // CANCEL }; -static const u8 sTradeMonLevelCoords[][PARTY_SIZE][2] = +static const u8 sTradeMonLevelCoords[][2][2] = { + // Your party { - // Your party {5, 4}, {12, 4}, + }, + { {5, 9}, {12, 9}, + }, + { {5, 14}, {12, 14}, }, + // Friend's party { - // Friend's party + {20, 4}, {27, 4}, + }, + { {20, 9}, {27, 9}, + }, + { {20, 14}, - {27, 14} - } + {27, 14}, + }, }; -static const u8 sTradeMonBoxCoords[][PARTY_SIZE][2] = +static const u8 sTradeMonBoxCoords[][2][2] = { + // Your party { - // Your party {1, 3}, {8, 3}, + }, + { {1, 8}, {8, 8}, + }, + { {1, 13}, {8, 13}, }, + // Friend's party { - // Friend's party {16, 3}, {23, 3}, + }, + { {16, 8}, {23, 8}, + }, + { {16, 13}, - {23, 13} - } + {23, 13}, + }, }; static const u8 sUnref_0832DE6E[] = diff --git a/src/decoration.c b/src/decoration.c index 2a5c2ccd7..8c14be8e1 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1332,7 +1332,7 @@ void sub_8128060(u8 taskId) ConfigureCameraObjectForPlacingDecoration(&sPlaceDecorationGraphicsDataBuffer, gCurDecorationItems[gCurDecorationIndex]); sub_812826C(taskId); SetUpPlacingDecorationPlayerAvatar(taskId, &sPlaceDecorationGraphicsDataBuffer); - pal_fill_black(); + FadeInFromBlack(); gPaletteFade.bufferTransferDisabled = FALSE; gTasks[taskId].data[2] = 2; break; @@ -1738,7 +1738,7 @@ void sub_8128CD4(void) u8 taskId; ScriptContext2_Enable(); - pal_fill_black(); + FadeInFromBlack(); taskId = CreateTask(sub_8128C64, 8); sub_8127580(taskId); gTasks[taskId].data[2] = 0; @@ -2215,7 +2215,7 @@ void sub_81298EC(u8 taskId) case 2: ScriptContext2_Enable(); IdentifyOwnedDecorationsCurrentlyInUseInternal(taskId); - pal_fill_black(); + FadeInFromBlack(); gTasks[taskId].data[2] = 3; break; case 3: @@ -2278,7 +2278,7 @@ void sub_8129ABC(u8 taskId) break; case 1: SetUpPuttingAwayDecorationPlayerAvatar(); - pal_fill_black(); + FadeInFromBlack(); data[2] = 2; break; case 2: @@ -2623,7 +2623,7 @@ void sub_812A334(void) { u8 taskId; - pal_fill_black(); + FadeInFromBlack(); DrawDialogueFrame(0, 1); InitDecorationActionsWindow(); taskId = CreateTask(sub_812A2C4, 8); diff --git a/src/egg_hatch.c b/src/egg_hatch.c index 2a942c9d9..032ae6733 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -470,7 +470,7 @@ static void Task_EggHatch(u8 taskID) { CleanupOverworldWindowsAndTilemaps(); SetMainCallback2(CB2_EggHatch_0); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; DestroyTask(taskID); } } diff --git a/src/event_object_lock.c b/src/event_object_lock.c index 1f1be8d5a..b728f7774 100644 --- a/src/event_object_lock.c +++ b/src/event_object_lock.c @@ -8,7 +8,7 @@ #include "trainer_see.h" #include "constants/event_objects.h" -bool8 walkrun_is_standing_still(void) +bool8 IsPlayerStandingStill(void) { if (gPlayerAvatar.tileTransitionState == T_TILE_TRANSITION) return FALSE; @@ -18,7 +18,7 @@ bool8 walkrun_is_standing_still(void) static void sub_80983A4(u8 taskId) { - if (walkrun_is_standing_still()) + if (IsPlayerStandingStill()) { sub_808B864(); DestroyTask(taskId); @@ -49,7 +49,7 @@ static void sub_8098400(u8 taskId) { struct Task *task = &gTasks[taskId]; - if (!task->data[0] && walkrun_is_standing_still() == TRUE) + if (!task->data[0] && IsPlayerStandingStill() == TRUE) { sub_808B864(); task->data[0] = 1; @@ -123,7 +123,7 @@ static void sub_80985BC(u8 taskId) struct Task *task = &gTasks[taskId]; u8 objectEventId = task->data[2]; - if (!task->data[0] && walkrun_is_standing_still() == TRUE) + if (!task->data[0] && IsPlayerStandingStill() == TRUE) { sub_808B864(); task->data[0] = 1; diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index bd261e055..6d60c30b3 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -710,22 +710,22 @@ static bool8 TryStartWarpEventScript(struct MapPosition *position, u16 metatileB SetupWarp(&gMapHeader, warpEventId, position); if (MetatileBehavior_IsEscalator(metatileBehavior) == TRUE) { - sub_80AF80C(metatileBehavior); + DoEscalatorWarp(metatileBehavior); return TRUE; } if (MetatileBehavior_IsLavaridgeB1FWarp(metatileBehavior) == TRUE) { - sub_80AF828(); + DoLavaridgeGymB1FWarp(); return TRUE; } if (MetatileBehavior_IsLavaridge1FWarp(metatileBehavior) == TRUE) { - sub_80AF838(); + DoLavaridgeGym1FWarp(); return TRUE; } if (MetatileBehavior_IsAquaHideoutWarp(metatileBehavior) == TRUE) { - sub_80AF848(); + DoTeleportWarp(); return TRUE; } if (MetatileBehavior_IsWarpOrBridge(metatileBehavior) == TRUE) diff --git a/src/field_effect.c b/src/field_effect.c index f5f6b1cba..b89000cc3 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -28,6 +28,7 @@ #include "util.h" #include "constants/field_effects.h" #include "constants/event_object_movement.h" +#include "constants/metatile_behaviors.h" #include "constants/rgb.h" #include "constants/songs.h" @@ -68,22 +69,22 @@ static void task00_8084310(u8); static void mapldr_08084390(void); static void c3_080843F8(u8); -static void sub_80B6B94(u8); -static bool8 sub_80B6BCC(struct Task *); -static bool8 sub_80B6C74(struct Task *); -static bool8 sub_80B6C90(struct Task *); -static bool8 sub_80B6D04(struct Task *); -static bool8 sub_80B6DBC(struct Task *); -static bool8 sub_80B6DD8(struct Task *); -static bool8 sub_80B6E18(struct Task *); - -static void sub_80B6E88(u8); -static bool8 sub_80B6EC0(struct Task *); -static bool8 sub_80B6EE0(struct Task *); -static bool8 sub_80B6F50(struct Task *); -static bool8 sub_80B6F74(struct Task *); -static bool8 sub_80B6F84(struct Task *); -static bool8 sub_80B6FA8(struct Task *); +static void Task_FallWarpFieldEffect(u8); +static bool8 FallWarpEffect_1(struct Task *); +static bool8 FallWarpEffect_2(struct Task *); +static bool8 FallWarpEffect_3(struct Task *); +static bool8 FallWarpEffect_4(struct Task *); +static bool8 FallWarpEffect_5(struct Task *); +static bool8 FallWarpEffect_6(struct Task *); +static bool8 FallWarpEffect_7(struct Task *); + +static void Task_EscalatorWarpFieldEffect(u8); +static bool8 EscalatorWarpEffect_1(struct Task *); +static bool8 EscalatorWarpEffect_2(struct Task *); +static bool8 EscalatorWarpEffect_3(struct Task *); +static bool8 EscalatorWarpEffect_4(struct Task *); +static bool8 EscalatorWarpEffect_5(struct Task *); +static bool8 EscalatorWarpEffect_6(struct Task *); static void sub_80B6FB8(struct Task *); static void sub_80B7004(struct Task *); @@ -112,29 +113,27 @@ static bool8 dive_1_lock(struct Task *); static bool8 dive_2_unknown(struct Task *); static bool8 dive_3_unknown(struct Task *); -static void sub_80B75F0(u8); -static bool8 sub_80B764C(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7684(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B76B8(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7704(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B77F8(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7814(struct Task *, struct ObjectEvent *, struct Sprite *); - -static void mapldr_080851BC(void); -static void sub_80B7890(u8); - -static bool8 sub_80B78EC(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B791C(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7968(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B79BC(struct Task *, struct ObjectEvent *, struct Sprite *); - -static void sub_80B7A8C(u8); - -static bool8 sub_80B7AE8(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7B18(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7B94(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7BCC(struct Task *, struct ObjectEvent *, struct Sprite *); -static bool8 sub_80B7BF4(struct Task *, struct ObjectEvent *, struct Sprite *); +static void Task_LavaridgeGymB1FWarp(u8); +static bool8 LavaridgeGymB1FWarpEffect_1(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpEffect_2(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpEffect_3(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpEffect_4(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpEffect_5(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpEffect_6(struct Task *, struct ObjectEvent *, struct Sprite *); + +static void FieldCB_LavaridgeGymB1FWarpExit(void); +static void Task_LavaridgeGymB1FWarpExit(u8); +static bool8 LavaridgeGymB1FWarpExitEffect_1(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpExitEffect_2(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpExitEffect_3(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGymB1FWarpExitEffect_4(struct Task *, struct ObjectEvent *, struct Sprite *); + +static void Task_LavaridgeGym1FWarp(u8); +static bool8 LavaridgeGym1FWarpEffect_1(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGym1FWarpEffect_2(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGym1FWarpEffect_3(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGym1FWarpEffect_4(struct Task *, struct ObjectEvent *, struct Sprite *); +static bool8 LavaridgeGym1FWarpEffect_5(struct Task *, struct ObjectEvent *, struct Sprite *); static void DoEscapeRopeFieldEffect(u8); static void EscapeRopeFieldEffect_Step0(struct Task *); @@ -596,25 +595,25 @@ const u8 gUnknown_0855C3BC[] = {16, 12, 8, 0}; const u8 gUnknown_0855C3C0[] = {16, 12, 8, 0}; const u8 gUnknown_0855C3C4[] = { 0, 0, 0, 0}; -bool8 (*const gUnknown_0855C3C8[])(struct Task *) = +bool8 (*const sFallWarpFieldEffectFuncs[])(struct Task *) = { - sub_80B6BCC, - sub_80B6C74, - sub_80B6C90, - sub_80B6D04, - sub_80B6DBC, - sub_80B6DD8, - sub_80B6E18, + FallWarpEffect_1, + FallWarpEffect_2, + FallWarpEffect_3, + FallWarpEffect_4, + FallWarpEffect_5, + FallWarpEffect_6, + FallWarpEffect_7, }; -bool8 (*const gUnknown_0855C3E4[])(struct Task *) = +bool8 (*const sEscalatorWarpFieldEffectFuncs[])(struct Task *) = { - sub_80B6EC0, - sub_80B6EE0, - sub_80B6F50, - sub_80B6F74, - sub_80B6F84, - sub_80B6FA8, + EscalatorWarpEffect_1, + EscalatorWarpEffect_2, + EscalatorWarpEffect_3, + EscalatorWarpEffect_4, + EscalatorWarpEffect_5, + EscalatorWarpEffect_6, }; bool8 (*const gUnknown_0855C3FC[])(struct Task *) = @@ -644,31 +643,31 @@ bool8 (*const gUnknown_0855C42C[])(struct Task *) = dive_3_unknown, }; -bool8 (*const gUnknown_0855C438[])(struct Task *, struct ObjectEvent *, struct Sprite *) = +bool8 (*const sLavaridgeGymB1FWarpEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = { - sub_80B764C, - sub_80B7684, - sub_80B76B8, - sub_80B7704, - sub_80B77F8, - sub_80B7814, + LavaridgeGymB1FWarpEffect_1, + LavaridgeGymB1FWarpEffect_2, + LavaridgeGymB1FWarpEffect_3, + LavaridgeGymB1FWarpEffect_4, + LavaridgeGymB1FWarpEffect_5, + LavaridgeGymB1FWarpEffect_6, }; -bool8 (*const gUnknown_0855C450[])(struct Task *, struct ObjectEvent *, struct Sprite *) = +bool8 (*const sLavaridgeGymB1FWarpExitEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = { - sub_80B78EC, - sub_80B791C, - sub_80B7968, - sub_80B79BC, + LavaridgeGymB1FWarpExitEffect_1, + LavaridgeGymB1FWarpExitEffect_2, + LavaridgeGymB1FWarpExitEffect_3, + LavaridgeGymB1FWarpExitEffect_4, }; -bool8 (*const gUnknown_0855C460[])(struct Task *, struct ObjectEvent *, struct Sprite *) = +bool8 (*const sLavaridgeGym1FWarpEffectFuncs[])(struct Task *, struct ObjectEvent *, struct Sprite *) = { - sub_80B7AE8, - sub_80B7B18, - sub_80B7B94, - sub_80B7BCC, - sub_80B7BF4, + LavaridgeGym1FWarpEffect_1, + LavaridgeGym1FWarpEffect_2, + LavaridgeGym1FWarpEffect_3, + LavaridgeGym1FWarpEffect_4, + LavaridgeGym1FWarpEffect_5, }; void (*const gEscapeRopeFieldEffectFuncs[])(struct Task *) = @@ -1428,7 +1427,7 @@ void ReturnToFieldFromFlyMapSelect(void) static void FieldCallback_Fly(void) { - pal_fill_black(); + FadeInFromBlack(); CreateTask(task00_8084310, 0); ScriptContext2_Enable(); FreezeObjectEvents(); @@ -1466,7 +1465,7 @@ static void task00_8084310(u8 taskId) static void mapldr_08084390(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_black(); + FadeInFromBlack(); CreateTask(c3_080843F8, 0); gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE; if (gPlayerAvatar.flags & 0x08) @@ -1499,24 +1498,24 @@ static void c3_080843F8(u8 taskId) } } -void sub_80B6B68(void) +void FieldCB_FallWarpExit(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); + WarpFadeInScreen(); ScriptContext2_Enable(); FreezeObjectEvents(); - CreateTask(sub_80B6B94, 0); + CreateTask(Task_FallWarpFieldEffect, 0); gFieldCallback = NULL; } -static void sub_80B6B94(u8 taskId) +static void Task_FallWarpFieldEffect(u8 taskId) { struct Task *task; task = &gTasks[taskId]; - while (gUnknown_0855C3C8[task->data[0]](task)); // return code signifies whether to continue blocking here + while (sFallWarpFieldEffectFuncs[task->data[0]](task)); // return code signifies whether to continue blocking here } -static bool8 sub_80B6BCC(struct Task *task) // gUnknown_0855C3C8[0] +static bool8 FallWarpEffect_1(struct Task *task) { struct ObjectEvent *playerObject; struct Sprite *playerSprite; @@ -1534,7 +1533,7 @@ static bool8 sub_80B6BCC(struct Task *task) // gUnknown_0855C3C8[0] return TRUE; } -static bool8 sub_80B6C74(struct Task *task) // gUnknown_0855C3C8[1] +static bool8 FallWarpEffect_2(struct Task *task) { if (IsWeatherNotFadingIn()) { @@ -1543,7 +1542,7 @@ static bool8 sub_80B6C74(struct Task *task) // gUnknown_0855C3C8[1] return FALSE; } -static bool8 sub_80B6C90(struct Task *task) // gUnknown_0855C3C8[2] +static bool8 FallWarpEffect_3(struct Task *task) { struct Sprite *sprite; s16 centerToCornerVecY; @@ -1558,7 +1557,7 @@ static bool8 sub_80B6C90(struct Task *task) // gUnknown_0855C3C8[2] return FALSE; } -static bool8 sub_80B6D04(struct Task *task) +static bool8 FallWarpEffect_4(struct Task *task) { struct ObjectEvent *objectEvent; struct Sprite *sprite; @@ -1592,7 +1591,7 @@ static bool8 sub_80B6D04(struct Task *task) return FALSE; } -static bool8 sub_80B6DBC(struct Task *task) +static bool8 FallWarpEffect_5(struct Task *task) { task->data[0]++; task->data[1] = 4; @@ -1601,7 +1600,7 @@ static bool8 sub_80B6DBC(struct Task *task) return TRUE; } -static bool8 sub_80B6DD8(struct Task *task) +static bool8 FallWarpEffect_6(struct Task *task) { SetCameraPanning(0, task->data[1]); task->data[1] = -task->data[1]; @@ -1617,36 +1616,36 @@ static bool8 sub_80B6DD8(struct Task *task) return FALSE; } -static bool8 sub_80B6E18(struct Task *task) +static bool8 FallWarpEffect_7(struct Task *task) { gPlayerAvatar.preventStep = FALSE; ScriptContext2_Disable(); CameraObjectReset1(); UnfreezeObjectEvents(); InstallCameraPanAheadCallback(); - DestroyTask(FindTaskIdByFunc(sub_80B6B94)); + DestroyTask(FindTaskIdByFunc(Task_FallWarpFieldEffect)); return FALSE; } -void sub_80B6E4C(u8 a0, u8 priority) +void StartEscalatorWarp(u8 metatileBehavior, u8 priority) { u8 taskId; - taskId = CreateTask(sub_80B6E88, priority); + taskId = CreateTask(Task_EscalatorWarpFieldEffect, priority); gTasks[taskId].data[1] = 0; - if (a0 == 0x6a) + if (metatileBehavior == MB_UP_ESCALATOR) { gTasks[taskId].data[1] = 1; } } -static void sub_80B6E88(u8 taskId) +static void Task_EscalatorWarpFieldEffect(u8 taskId) { struct Task *task; task = &gTasks[taskId]; - while (gUnknown_0855C3E4[task->data[0]](task)); + while (sEscalatorWarpFieldEffectFuncs[task->data[0]](task)); } -static bool8 sub_80B6EC0(struct Task *task) +static bool8 EscalatorWarpEffect_1(struct Task *task) { FreezeObjectEvents(); CameraObjectReset2(); @@ -1655,7 +1654,7 @@ static bool8 sub_80B6EC0(struct Task *task) return FALSE; } -static bool8 sub_80B6EE0(struct Task *task) +static bool8 EscalatorWarpEffect_2(struct Task *task) { struct ObjectEvent *objectEvent; objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; @@ -1674,7 +1673,7 @@ static bool8 sub_80B6EE0(struct Task *task) return FALSE; } -static bool8 sub_80B6F50(struct Task *task) +static bool8 EscalatorWarpEffect_3(struct Task *task) { sub_80B6FB8(task); if (task->data[2] > 3) @@ -1685,14 +1684,14 @@ static bool8 sub_80B6F50(struct Task *task) return FALSE; } -static bool8 sub_80B6F74(struct Task *task) +static bool8 EscalatorWarpEffect_4(struct Task *task) { sub_80B6FB8(task); sub_80B7060(); return FALSE; } -static bool8 sub_80B6F84(struct Task *task) +static bool8 EscalatorWarpEffect_5(struct Task *task) { sub_80B7004(task); if (task->data[2] > 3) @@ -1703,7 +1702,7 @@ static bool8 sub_80B6F84(struct Task *task) return FALSE; } -static bool8 sub_80B6FA8(struct Task *task) +static bool8 EscalatorWarpEffect_6(struct Task *task) { sub_80B7004(task); sub_80B7060(); @@ -1739,7 +1738,7 @@ static void sub_80B7004(struct Task *task) static void sub_80B7050(void) { TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); } static void sub_80B7060(void) @@ -1750,14 +1749,14 @@ static void sub_80B7060(void) WarpIntoMap(); gFieldCallback = sub_80B70B4; SetMainCallback2(CB2_LoadMap); - DestroyTask(FindTaskIdByFunc(sub_80B6E88)); + DestroyTask(FindTaskIdByFunc(Task_EscalatorWarpFieldEffect)); } } static void sub_80B70B4(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); + WarpFadeInScreen(); ScriptContext2_Enable(); CreateTask(sub_80B70DC, 0); gFieldCallback = NULL; @@ -1994,17 +1993,17 @@ static bool8 dive_3_unknown(struct Task *task) return FALSE; } -void sub_80B75D8(u8 priority) +void StartLavaridgeGymB1FWarp(u8 priority) { - CreateTask(sub_80B75F0, priority); + CreateTask(Task_LavaridgeGymB1FWarp, priority); } -static void sub_80B75F0(u8 taskId) +static void Task_LavaridgeGymB1FWarp(u8 taskId) { - while (gUnknown_0855C438[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId])); + while (sLavaridgeGymB1FWarpEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId])); } -static bool8 sub_80B764C(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpEffect_1(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { FreezeObjectEvents(); CameraObjectReset2(); @@ -2016,7 +2015,7 @@ static bool8 sub_80B764C(struct Task *task, struct ObjectEvent *objectEvent, str return TRUE; } -static bool8 sub_80B7684(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpEffect_2(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { SetCameraPanning(0, task->data[1]); task->data[1] = -task->data[1]; @@ -2029,7 +2028,7 @@ static bool8 sub_80B7684(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B76B8(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpEffect_3(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { sprite->pos2.y = 0; task->data[3] = 1; @@ -2043,7 +2042,7 @@ static bool8 sub_80B76B8(struct Task *task, struct ObjectEvent *objectEvent, str return TRUE; } -static bool8 sub_80B7704(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpEffect_4(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { s16 centerToCornerVecY; SetCameraPanning(0, task->data[1]); @@ -2086,41 +2085,41 @@ static bool8 sub_80B7704(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B77F8(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpEffect_5(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); task->data[0]++; return FALSE; } -static bool8 sub_80B7814(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpEffect_6(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (!gPaletteFade.active && BGMusicStopped() == TRUE) { WarpIntoMap(); - gFieldCallback = mapldr_080851BC; + gFieldCallback = FieldCB_LavaridgeGymB1FWarpExit; SetMainCallback2(CB2_LoadMap); - DestroyTask(FindTaskIdByFunc(sub_80B75F0)); + DestroyTask(FindTaskIdByFunc(Task_LavaridgeGymB1FWarp)); } return FALSE; } -static void mapldr_080851BC(void) +static void FieldCB_LavaridgeGymB1FWarpExit(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); + WarpFadeInScreen(); ScriptContext2_Enable(); gFieldCallback = NULL; - CreateTask(sub_80B7890, 0); + CreateTask(Task_LavaridgeGymB1FWarpExit, 0); } -static void sub_80B7890(u8 taskId) +static void Task_LavaridgeGymB1FWarpExit(u8 taskId) { - while (gUnknown_0855C450[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId])); + while (sLavaridgeGymB1FWarpExitEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId])); } -static bool8 sub_80B78EC(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpExitEffect_1(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { CameraObjectReset2(); FreezeObjectEvents(); @@ -2130,7 +2129,7 @@ static bool8 sub_80B78EC(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B791C(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpExitEffect_2(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (IsWeatherNotFadingIn()) { @@ -2144,7 +2143,7 @@ static bool8 sub_80B791C(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B7968(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpExitEffect_3(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { sprite = &gSprites[task->data[1]]; if (sprite->animCmdIndex > 1) @@ -2158,18 +2157,19 @@ static bool8 sub_80B7968(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B79BC(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGymB1FWarpExitEffect_4(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (ObjectEventClearHeldMovementIfFinished(objectEvent)) { gPlayerAvatar.preventStep = FALSE; ScriptContext2_Disable(); UnfreezeObjectEvents(); - DestroyTask(FindTaskIdByFunc(sub_80B7890)); + DestroyTask(FindTaskIdByFunc(Task_LavaridgeGymB1FWarpExit)); } return FALSE; } +// For the ash puff effect when warping off the B1F ash tiles u8 FldEff_LavaridgeGymWarp(void) { u8 spriteId; @@ -2180,7 +2180,7 @@ u8 FldEff_LavaridgeGymWarp(void) return spriteId; } -void sub_80B7A58(struct Sprite *sprite) +void SpriteCB_LavaridgeGymWarp(struct Sprite *sprite) { if (sprite->animEnded) { @@ -2188,17 +2188,17 @@ void sub_80B7A58(struct Sprite *sprite) } } -void sub_80B7A74(u8 priority) +void StartLavaridgeGym1FWarp(u8 priority) { - CreateTask(sub_80B7A8C, priority); + CreateTask(Task_LavaridgeGym1FWarp, priority); } -static void sub_80B7A8C(u8 taskId) +static void Task_LavaridgeGym1FWarp(u8 taskId) { - while(gUnknown_0855C460[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId])); + while(sLavaridgeGym1FWarpEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId], &gObjectEvents[gPlayerAvatar.objectEventId], &gSprites[gPlayerAvatar.spriteId])); } -static bool8 sub_80B7AE8(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGym1FWarpEffect_1(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { FreezeObjectEvents(); CameraObjectReset2(); @@ -2208,7 +2208,7 @@ static bool8 sub_80B7AE8(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B7B18(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGym1FWarpEffect_2(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (ObjectEventClearHeldMovementIfFinished(objectEvent)) { @@ -2230,7 +2230,7 @@ static bool8 sub_80B7B18(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B7B94(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGym1FWarpEffect_3(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (gSprites[task->data[1]].animCmdIndex == 2) { @@ -2240,25 +2240,25 @@ static bool8 sub_80B7B94(struct Task *task, struct ObjectEvent *objectEvent, str return FALSE; } -static bool8 sub_80B7BCC(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGym1FWarpEffect_4(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (!FieldEffectActiveListContains(FLDEFF_POP_OUT_OF_ASH)) { TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); task->data[0]++; } return FALSE; } -static bool8 sub_80B7BF4(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) +static bool8 LavaridgeGym1FWarpEffect_5(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite) { if (!gPaletteFade.active && BGMusicStopped() == TRUE) { WarpIntoMap(); - gFieldCallback = sub_80B6B68; + gFieldCallback = FieldCB_FallWarpExit; SetMainCallback2(CB2_LoadMap); - DestroyTask(FindTaskIdByFunc(sub_80B7A8C)); + DestroyTask(FindTaskIdByFunc(Task_LavaridgeGym1FWarp)); } return FALSE; } @@ -2273,7 +2273,7 @@ u8 FldEff_PopOutOfAsh(void) return spriteId; } -void sub_80B7CAC(struct Sprite *sprite) +void SpriteCB_PopOutOfAsh(struct Sprite *sprite) { if (sprite->animEnded) { @@ -2307,7 +2307,7 @@ static void EscapeRopeFieldEffect_Step1(struct Task *task) if (task->data[14] != 0 && (--task->data[14]) == 0) { TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); } objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; if (!ObjectEventIsMovementOverridden(objectEvent) || ObjectEventClearHeldMovementIfFinished(objectEvent)) @@ -2340,7 +2340,7 @@ void (*const gUnknown_0855C484[])(struct Task *) = { static void mapldr_080859D4(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); + WarpFadeInScreen(); ScriptContext2_Enable(); FreezeObjectEvents(); gFieldCallback = NULL; @@ -2460,7 +2460,7 @@ static void TeleportFieldEffectTask3(struct Task *task) { task->data[0]++; TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); } } @@ -2488,7 +2488,7 @@ static void TeleportFieldEffectTask4(struct Task *task) static void mapldr_08085D88(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); + WarpFadeInScreen(); ScriptContext2_Enable(); FreezeObjectEvents(); gFieldCallback = NULL; @@ -3268,7 +3268,7 @@ static void sub_80B9474(struct Task *task) { if (sub_80B9508(task->data[1])) { - WarpFadeScreen(); + WarpFadeOutScreen(); task->data[0]++; } } diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index ac05bb2fd..ebab51ed8 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -1396,11 +1396,11 @@ void InitPlayerAvatar(s16 x, s16 y, u8 direction, u8 gender) SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_5 | PLAYER_AVATAR_FLAG_ON_FOOT); } -void sub_808C0A8(u8 a) +void SetPlayerInvisibility(bool8 invisible) { - gObjectEvents[gPlayerAvatar.objectEventId].invisible = a; + gObjectEvents[gPlayerAvatar.objectEventId].invisible = invisible; if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING)) - gSprites[gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId].invisible = a; + gSprites[gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId].invisible = invisible; } void sub_808C114(void) diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 77d9f2a91..ea9429ce8 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -28,6 +28,7 @@ #include "task.h" #include "text.h" #include "constants/event_object_movement.h" +#include "constants/event_objects.h" #include "constants/songs.h" #include "constants/rgb.h" #include "trainer_hill.h" @@ -37,21 +38,21 @@ extern const u16 gOrbEffectBackgroundLayerFlags[]; // This file's functions. static void sub_8080B9C(u8); -static void task_map_chg_seq_0807E20C(u8); -static void task_map_chg_seq_0807E2CC(u8); +static void Task_ExitNonAnimDoor(u8); +static void Task_ExitNonDoor(u8); static void task0A_fade_n_map_maybe(u8); static void sub_808115C(u8); -static void palette_bg_faded_fill_white(void); -static void sub_80AF438(u8); +static void FillPalBufferWhite(void); +static void Task_ExitDoor(u8); static bool32 WaitForWeatherFadeIn(void); static void task0A_mpl_807E31C(u8 taskId); -static void sub_80AFA0C(u8 taskId); -static void sub_80AFA88(u8 taskId); +static void Task_WarpAndLoadMap(u8 taskId); +static void Task_DoDoorWarp(u8 taskId); static void Task_EnableScriptAfterMusicFade(u8 taskId); // const -const u16 sFlashLevelPixelRadii[] = { 200, 72, 64, 56, 48, 40, 32, 24, 0 }; -const s32 gMaxFlashLevel = 8; +static const u16 sFlashLevelPixelRadii[] = { 200, 72, 64, 56, 48, 40, 32, 24, 0 }; +const s32 gMaxFlashLevel = ARRAY_COUNT(sFlashLevelPixelRadii) - 1; const struct ScanlineEffectParams sFlashEffectParams = { @@ -61,44 +62,44 @@ const struct ScanlineEffectParams sFlashEffectParams = }; // code -static void palette_bg_faded_fill_white(void) +static void FillPalBufferWhite(void) { CpuFastFill16(RGB_WHITE, gPlttBufferFaded, PLTT_SIZE); } -static void palette_bg_faded_fill_black(void) +static void FillPalBufferBlack(void) { CpuFastFill16(RGB_BLACK, gPlttBufferFaded, PLTT_SIZE); } -void pal_fill_for_maplights(void) +void WarpFadeInScreen(void) { u8 previousMapType = GetLastUsedWarpMapType(); switch (GetMapPairFadeFromType(previousMapType, GetCurrentMapType())) { case 0: - palette_bg_faded_fill_black(); + FillPalBufferBlack(); FadeScreen(FADE_FROM_BLACK, 0); break; case 1: - palette_bg_faded_fill_white(); + FillPalBufferWhite(); FadeScreen(FADE_FROM_WHITE, 0); } } -static void sub_80AF08C(void) +void FadeInFromWhite(void) { - palette_bg_faded_fill_white(); + FillPalBufferWhite(); FadeScreen(FADE_FROM_WHITE, 8); } -void pal_fill_black(void) +void FadeInFromBlack(void) { - palette_bg_faded_fill_black(); + FillPalBufferBlack(); FadeScreen(FADE_FROM_BLACK, 0); } -void WarpFadeScreen(void) +void WarpFadeOutScreen(void) { u8 currentMapType = GetCurrentMapType(); switch (GetMapPairFadeToType(currentMapType, GetDestinationWarpMapHeader()->mapType)) @@ -111,26 +112,26 @@ void WarpFadeScreen(void) } } -static void sub_80AF0F4(u8 arg) +static void SetPlayerVisibility(bool8 visible) { - sub_808C0A8(!arg); + SetPlayerInvisibility(!visible); } -static void task0A_nop_for_a_while(u8 taskId) +static void Task_WaitForUnionRoomFade(u8 taskId) { if (WaitForWeatherFadeIn() == TRUE) DestroyTask(taskId); } -void sub_80AF128(void) +void FieldCB_ContinueScriptUnionRoom(void) { ScriptContext2_Enable(); Overworld_PlaySpecialMapMusic(); - pal_fill_black(); - CreateTask(task0A_nop_for_a_while, 10); + FadeInFromBlack(); + CreateTask(Task_WaitForUnionRoomFade, 10); } -static void task0A_asap_script_env_2_enable_and_set_ctx_running(u8 taskID) +static void Task_WaitForFadeAndEnableScriptCtx(u8 taskID) { if (WaitForWeatherFadeIn() == TRUE) { @@ -139,22 +140,22 @@ static void task0A_asap_script_env_2_enable_and_set_ctx_running(u8 taskID) } } -void FieldCallback_ReturnToEventScript2(void) +void FieldCB_ContinueScriptHandleMusic(void) { ScriptContext2_Enable(); Overworld_PlaySpecialMapMusic(); - pal_fill_black(); - CreateTask(task0A_asap_script_env_2_enable_and_set_ctx_running, 10); + FadeInFromBlack(); + CreateTask(Task_WaitForFadeAndEnableScriptCtx, 10); } -void sub_80AF188(void) +void FieldCB_ContinueScript(void) { ScriptContext2_Enable(); - pal_fill_black(); - CreateTask(task0A_asap_script_env_2_enable_and_set_ctx_running, 10); + FadeInFromBlack(); + CreateTask(Task_WaitForFadeAndEnableScriptCtx, 10); } -static void task_mpl_807DD60(u8 taskId) +static void Task_ReturnToFieldCableLink(u8 taskId) { struct Task *task = &gTasks[taskId]; @@ -167,7 +168,7 @@ static void task_mpl_807DD60(u8 taskId) case 1: if (gTasks[task->data[1]].isActive != TRUE) { - pal_fill_for_maplights(); + WarpFadeInScreen(); task->data[0]++; } break; @@ -181,15 +182,15 @@ static void task_mpl_807DD60(u8 taskId) } } -void sub_80AF214(void) +void FieldCB_ReturnToFieldCableLink(void) { ScriptContext2_Enable(); Overworld_PlaySpecialMapMusic(); - palette_bg_faded_fill_black(); - CreateTask(task_mpl_807DD60, 10); + FillPalBufferBlack(); + CreateTask(Task_ReturnToFieldCableLink, 10); } -static void sub_80AF234(u8 taskId) +static void Task_ReturnToFieldWirelessLink(u8 taskId) { struct Task *task = &gTasks[taskId]; @@ -207,7 +208,7 @@ static void sub_80AF234(u8 taskId) } else { - pal_fill_for_maplights(); + WarpFadeInScreen(); task->data[0]++; } break; @@ -222,7 +223,7 @@ static void sub_80AF234(u8 taskId) } } -void sub_80AF2B4(u8 taskId) +void Task_ReturnToFieldRecordMixing(u8 taskId) { struct Task *task = &gTasks[taskId]; @@ -247,15 +248,15 @@ void sub_80AF2B4(u8 taskId) } } -void sub_80AF314(void) +void FieldCB_ReturnToFieldWirelessLink(void) { ScriptContext2_Enable(); Overworld_PlaySpecialMapMusic(); - palette_bg_faded_fill_black(); - CreateTask(sub_80AF234, 10); + FillPalBufferBlack(); + CreateTask(Task_ReturnToFieldWirelessLink, 10); } -static void sub_80AF334(void) +static void SetUpWarpExitTask(void) { s16 x, y; u8 behavior; @@ -264,59 +265,59 @@ static void sub_80AF334(void) PlayerGetDestCoords(&x, &y); behavior = MapGridGetMetatileBehaviorAt(x, y); if (MetatileBehavior_IsDoor(behavior) == TRUE) - func = sub_80AF438; + func = Task_ExitDoor; else if (MetatileBehavior_IsNonAnimDoor(behavior) == TRUE) - func = task_map_chg_seq_0807E20C; + func = Task_ExitNonAnimDoor; else - func = task_map_chg_seq_0807E2CC; + func = Task_ExitNonDoor; CreateTask(func, 10); } -void mapldr_default(void) +void FieldCB_DefaultWarpExit(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); - sub_80AF334(); + WarpFadeInScreen(); + SetUpWarpExitTask(); ScriptContext2_Enable(); } -void sub_80AF3B0(void) +void FieldCB_WarpExitFadeFromWhite(void) { Overworld_PlaySpecialMapMusic(); - sub_80AF08C(); - sub_80AF334(); + FadeInFromWhite(); + SetUpWarpExitTask(); ScriptContext2_Enable(); } -void sub_80AF3C8(void) +void FieldCB_WarpExitFadeFromBlack(void) { - if (!sub_81D6534()) + if (!sub_81D6534()) // sub_81D6534 always returns false Overworld_PlaySpecialMapMusic(); - pal_fill_black(); - sub_80AF334(); + FadeInFromBlack(); + SetUpWarpExitTask(); ScriptContext2_Enable(); } -void sub_80AF3E8(void) +static void FieldCB_TeleportWarpExit(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); + WarpFadeInScreen(); PlaySE(SE_TK_WARPOUT); CreateTask(task0A_mpl_807E31C, 10); ScriptContext2_Enable(); } -void sub_80AF40C(void) +static void FieldCB_MossdeepGymWarpExit(void) { Overworld_PlaySpecialMapMusic(); - pal_fill_for_maplights(); + WarpFadeInScreen(); PlaySE(SE_TK_WARPOUT); - CreateTask(task_map_chg_seq_0807E2CC, 10); + CreateTask(Task_ExitNonDoor, 10); ScriptContext2_Enable(); sub_8085540(0xE); } -static void sub_80AF438(u8 taskId) +static void Task_ExitDoor(u8 taskId) { struct Task *task = &gTasks[taskId]; s16 *x = &task->data[2]; @@ -325,7 +326,7 @@ static void sub_80AF438(u8 taskId) switch (task->data[0]) { case 0: - sub_80AF0F4(0); + SetPlayerVisibility(FALSE); FreezeObjectEvents(); PlayerGetDestCoords(x, y); FieldSetDoorOpened(*x, *y); @@ -335,18 +336,18 @@ static void sub_80AF438(u8 taskId) if (WaitForWeatherFadeIn()) { u8 objEventId; - sub_80AF0F4(1); - objEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); + SetPlayerVisibility(TRUE); + objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); ObjectEventSetHeldMovement(&gObjectEvents[objEventId], MOVEMENT_ACTION_WALK_NORMAL_DOWN); task->data[0] = 2; } break; case 2: - if (walkrun_is_standing_still()) + if (IsPlayerStandingStill()) { u8 objEventId; task->data[1] = FieldAnimateDoorClose(*x, *y); - objEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); + objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objEventId]); task->data[0] = 3; } @@ -365,7 +366,7 @@ static void sub_80AF438(u8 taskId) } } -static void task_map_chg_seq_0807E20C(u8 taskId) +static void Task_ExitNonAnimDoor(u8 taskId) { struct Task *task = &gTasks[taskId]; s16 *x = &task->data[2]; @@ -374,7 +375,7 @@ static void task_map_chg_seq_0807E20C(u8 taskId) switch (task->data[0]) { case 0: - sub_80AF0F4(0); + SetPlayerVisibility(FALSE); FreezeObjectEvents(); PlayerGetDestCoords(x, y); task->data[0] = 1; @@ -383,14 +384,14 @@ static void task_map_chg_seq_0807E20C(u8 taskId) if (WaitForWeatherFadeIn()) { u8 objEventId; - sub_80AF0F4(1); - objEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); + SetPlayerVisibility(TRUE); + objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); ObjectEventSetHeldMovement(&gObjectEvents[objEventId], GetWalkNormalMovementAction(GetPlayerFacingDirection())); task->data[0] = 2; } break; case 2: - if (walkrun_is_standing_still()) + if (IsPlayerStandingStill()) { UnfreezeObjectEvents(); task->data[0] = 3; @@ -403,7 +404,7 @@ static void task_map_chg_seq_0807E20C(u8 taskId) } } -static void task_map_chg_seq_0807E2CC(u8 taskId) +static void Task_ExitNonDoor(u8 taskId) { switch (gTasks[taskId].data[0]) { @@ -423,7 +424,7 @@ static void task_map_chg_seq_0807E2CC(u8 taskId) } } -static void sub_80AF660(u8 taskId) +static void Task_WaitForFadeShowStartMenu(u8 taskId) { if (WaitForWeatherFadeIn() == TRUE) { @@ -432,16 +433,16 @@ static void sub_80AF660(u8 taskId) } } -void sub_80AF688(void) +void ReturnToFieldOpenStartMenu(void) { - pal_fill_black(); - CreateTask(sub_80AF660, 0x50); + FadeInFromBlack(); + CreateTask(Task_WaitForFadeShowStartMenu, 0x50); ScriptContext2_Enable(); } -bool8 sub_80AF6A4(void) +bool8 FieldCB_ReturnToFieldOpenStartMenu(void) { - sub_809FA18(); + ShowReturnToFieldStartMenu(); return FALSE; } @@ -458,7 +459,7 @@ static void task_mpl_807E3C8(u8 taskId) void sub_80AF6D4(void) { ScriptContext2_Enable(); - pal_fill_black(); + FadeInFromBlack(); CreateTask(task_mpl_807E3C8, 10); } @@ -466,7 +467,7 @@ void sub_80AF6F0(void) { ScriptContext2_Enable(); Overworld_PlaySpecialMapMusic(); - pal_fill_black(); + FadeInFromBlack(); CreateTask(task_mpl_807E3C8, 10); } @@ -487,72 +488,72 @@ void DoWarp(void) { ScriptContext2_Enable(); TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); PlayRainStoppingSoundEffect(); PlaySE(SE_KAIDAN); - gFieldCallback = mapldr_default; - CreateTask(sub_80AFA0C, 10); + gFieldCallback = FieldCB_DefaultWarpExit; + CreateTask(Task_WarpAndLoadMap, 10); } void DoDiveWarp(void) { ScriptContext2_Enable(); TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); PlayRainStoppingSoundEffect(); - gFieldCallback = mapldr_default; - CreateTask(sub_80AFA0C, 10); + gFieldCallback = FieldCB_DefaultWarpExit; + CreateTask(Task_WarpAndLoadMap, 10); } -void sub_80AF79C(void) +void DoSootopolisLegendWarp(void) { ScriptContext2_Enable(); TryFadeOutOldMapMusic(); FadeScreen(FADE_TO_WHITE, 8); PlayRainStoppingSoundEffect(); - gFieldCallback = sub_80AF3B0; - CreateTask(sub_80AFA0C, 10); + gFieldCallback = FieldCB_WarpExitFadeFromWhite; + CreateTask(Task_WarpAndLoadMap, 10); } void DoDoorWarp(void) { ScriptContext2_Enable(); - gFieldCallback = mapldr_default; - CreateTask(sub_80AFA88, 10); + gFieldCallback = FieldCB_DefaultWarpExit; + CreateTask(Task_DoDoorWarp, 10); } void DoFallWarp(void) { DoDiveWarp(); - gFieldCallback = sub_80B6B68; + gFieldCallback = FieldCB_FallWarpExit; } -void sub_80AF80C(u8 metatileBehavior) +void DoEscalatorWarp(u8 metatileBehavior) { ScriptContext2_Enable(); - sub_80B6E4C(metatileBehavior, 10); + StartEscalatorWarp(metatileBehavior, 10); } -void sub_80AF828(void) +void DoLavaridgeGymB1FWarp(void) { ScriptContext2_Enable(); - sub_80B75D8(10); + StartLavaridgeGymB1FWarp(10); } -void sub_80AF838(void) +void DoLavaridgeGym1FWarp(void) { ScriptContext2_Enable(); - sub_80B7A74(10); + StartLavaridgeGym1FWarp(10); } -void sub_80AF848(void) +void DoTeleportWarp(void) { ScriptContext2_Enable(); TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); PlaySE(SE_TK_WARPIN); - CreateTask(sub_80AFA0C, 10); - gFieldCallback = sub_80AF3E8; + CreateTask(Task_WarpAndLoadMap, 10); + gFieldCallback = FieldCB_TeleportWarpExit; } void DoMossdeepGymWarp(void) @@ -561,18 +562,18 @@ void DoMossdeepGymWarp(void) ScriptContext2_Enable(); SaveObjectEvents(); TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); PlaySE(SE_TK_WARPIN); - CreateTask(sub_80AFA0C, 10); - gFieldCallback = sub_80AF40C; + CreateTask(Task_WarpAndLoadMap, 10); + gFieldCallback = FieldCB_MossdeepGymWarpExit; } -void sub_80AF8B8(void) +void DoPortholeWarp(void) { ScriptContext2_Enable(); - WarpFadeScreen(); - CreateTask(sub_80AFA0C, 10); - gFieldCallback = sub_80FB768; + WarpFadeOutScreen(); + CreateTask(Task_WarpAndLoadMap, 10); + gFieldCallback = FieldCB_ShowPortholeView; } static void sub_80AF8E0(u8 taskId) @@ -591,17 +592,17 @@ static void sub_80AF8E0(u8 taskId) break; case 2: WarpIntoMap(); - SetMainCallback2(sub_8086074); + SetMainCallback2(CB2_ReturnToFieldCableClub); DestroyTask(taskId); break; } } -void sub_80AF948(void) +void DoCableClubWarp(void) { ScriptContext2_Enable(); TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); PlaySE(SE_KAIDAN); CreateTask(sub_80AF8E0, 10); } @@ -642,7 +643,7 @@ void ReturnFromLinkRoom(void) CreateTask(Task_ReturnToWorldFromLinkRoom, 10); } -static void sub_80AFA0C(u8 taskId) +static void Task_WarpAndLoadMap(u8 taskId) { struct Task *task = &gTasks[taskId]; @@ -673,7 +674,7 @@ static void sub_80AFA0C(u8 taskId) } } -static void sub_80AFA88(u8 taskId) +static void Task_DoDoorWarp(u8 taskId) { struct Task *task = &gTasks[taskId]; s16 *x = &task->data[2]; @@ -692,21 +693,21 @@ static void sub_80AFA88(u8 taskId) if (task->data[1] < 0 || gTasks[task->data[1]].isActive != TRUE) { u8 objEventId; - objEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); + objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); ObjectEventClearHeldMovementIfActive(&gObjectEvents[objEventId]); - objEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); + objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); ObjectEventSetHeldMovement(&gObjectEvents[objEventId], MOVEMENT_ACTION_WALK_NORMAL_UP); task->data[0] = 2; } break; case 2: - if (walkrun_is_standing_still()) + if (IsPlayerStandingStill()) { u8 objEventId; task->data[1] = FieldAnimateDoorClose(*x, *y - 1); - objEventId = GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0); + objEventId = GetObjectEventIdByLocalIdAndMap(OBJ_EVENT_ID_PLAYER, 0, 0); ObjectEventClearHeldMovementIfFinished(&gObjectEvents[objEventId]); - sub_80AF0F4(0); + SetPlayerVisibility(FALSE); task->data[0] = 3; } break; @@ -718,10 +719,10 @@ static void sub_80AFA88(u8 taskId) break; case 4: TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); PlayRainStoppingSoundEffect(); task->data[0] = 0; - task->func = sub_80AFA0C; + task->func = Task_WarpAndLoadMap; break; } } @@ -755,10 +756,10 @@ void DoContestHallWarp(void) { ScriptContext2_Enable(); TryFadeOutOldMapMusic(); - WarpFadeScreen(); + WarpFadeOutScreen(); PlayRainStoppingSoundEffect(); PlaySE(SE_KAIDAN); - gFieldCallback = sub_80AF3C8; + gFieldCallback = FieldCB_WarpExitFadeFromBlack; CreateTask(task0A_fade_n_map_maybe, 10); } @@ -1032,7 +1033,7 @@ static void sub_80B01BC(u8 taskId) case 1: if (!sub_808D1E8()) { - WarpFadeScreen(); + WarpFadeOutScreen(); task->data[0]++; } break; @@ -1051,14 +1052,14 @@ static void sub_80B01BC(u8 taskId) void sub_80B0244(void) { ScriptContext2_Enable(); - CreateTask(sub_80AFA0C, 10); - gFieldCallback = sub_80AF3E8; + CreateTask(Task_WarpAndLoadMap, 10); + gFieldCallback = FieldCB_TeleportWarpExit; } void sub_80B0268(void) { ScriptContext2_Enable(); - gFieldCallback = mapldr_default; + gFieldCallback = FieldCB_DefaultWarpExit; CreateTask(sub_80B01BC, 10); } diff --git a/src/field_special_scene.c b/src/field_special_scene.c index f5d3abce6..540bcd1d4 100644 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -179,7 +179,7 @@ void Task_HandleTruckSequence(u8 taskId) data[1]++; if (data[1] == SECONDS(2.5)) { - pal_fill_black(); + FadeInFromBlack(); data[1] = 0; data[0] = 2; } @@ -249,12 +249,12 @@ void EndTruckSequence(u8 taskId) } } -bool8 sub_80FB59C(void) +bool8 TrySetPortholeWarpDestination(void) { s8 mapGroup, mapNum; s16 x, y; - if (GetSSTidalLocation(&mapGroup, &mapNum, &x, &y)) + if (GetSSTidalLocation(&mapGroup, &mapNum, &x, &y) != SS_TIDAL_LOCATION_CURRENTS) { return FALSE; } @@ -336,11 +336,11 @@ static void ShowSSTidalWhileSailing(void) StartSpriteAnim(&gSprites[spriteId], GetFaceDirectionAnimNum(DIR_WEST)); } -void sub_80FB768(void) +void FieldCB_ShowPortholeView(void) { ShowSSTidalWhileSailing(); gObjectEvents[gPlayerAvatar.objectEventId].invisible = TRUE; - pal_fill_black(); + FadeInFromBlack(); CreateTask(Task_HandlePorthole, 80); ScriptContext2_Enable(); } @@ -351,6 +351,6 @@ void LookThroughPorthole(void) FlagSet(FLAG_DONT_TRANSITION_MUSIC); FlagSet(FLAG_HIDE_MAP_NAME_POPUP); SetDynamicWarp(0, gSaveBlock1Ptr->location.mapGroup, gSaveBlock1Ptr->location.mapNum, -1); - sub_80FB59C(); - sub_80AF8B8(); + TrySetPortholeWarpDestination(); + DoPortholeWarp(); } diff --git a/src/field_specials.c b/src/field_specials.c index 143e61477..0e7637e6d 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -366,7 +366,7 @@ u8 GetSSTidalLocation(s8 *mapGroup, s8 *mapNum, s16 *x, s16 *y) } *mapGroup = MAP_GROUP(ROUTE132); *y = 20; - return SS_TIDAL_LOCATION_OTHER; + return SS_TIDAL_LOCATION_CURRENTS; } bool32 ShouldDoWallyCall(void) diff --git a/src/item_use.c b/src/item_use.c index 2a614243b..82ffd7170 100755 --- a/src/item_use.c +++ b/src/item_use.c @@ -138,7 +138,7 @@ void SetUpItemUseOnFieldCallback(u8 taskId) void MapPostLoadHook_UseItem(void) { - pal_fill_black(); + FadeInFromBlack(); CreateTask(Task_CallItemUseOnFieldCallback, 8); } diff --git a/src/move_relearner.c b/src/move_relearner.c index 6d9b5865b..e88008689 100644 --- a/src/move_relearner.c +++ b/src/move_relearner.c @@ -376,7 +376,7 @@ static void Task_WaitForFadeOut(u8 taskId) if (!gPaletteFade.active) { SetMainCallback2(CB2_InitLearnMove); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; DestroyTask(taskId); } } diff --git a/src/overworld.c b/src/overworld.c index 2d3125fc4..47bb278bf 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -1526,7 +1526,7 @@ static bool8 map_post_load_hook_exec(void) if (gFieldCallback) gFieldCallback(); else - mapldr_default(); + FieldCB_DefaultWarpExit(); gFieldCallback = NULL; } @@ -1565,7 +1565,7 @@ void CB2_WhiteOut(void) ResetInitialPlayerAvatarState(); ScriptContext1_Init(); ScriptContext2_Disable(); - gFieldCallback = sub_80AF3C8; + gFieldCallback = FieldCB_WarpExitFadeFromBlack; val = 0; do_load_map_stuff_loop(&val); SetFieldVBlankCallback(); @@ -1609,10 +1609,10 @@ void sub_8086024(void) } } -void sub_8086074(void) +void CB2_ReturnToFieldCableClub(void) { FieldClearVBlankHBlankCallbacks(); - gFieldCallback = sub_80AF314; + gFieldCallback = FieldCB_ReturnToFieldWirelessLink; SetMainCallback2(c2_80567AC); } @@ -1663,9 +1663,9 @@ void CB2_ReturnToFieldFromMultiplayer(void) ResetAllMultiplayerState(); if (gWirelessCommType != 0) - gFieldCallback = sub_80AF314; + gFieldCallback = FieldCB_ReturnToFieldWirelessLink; else - gFieldCallback = sub_80AF214; + gFieldCallback = FieldCB_ReturnToFieldCableLink; ScriptContext1_Init(); ScriptContext2_Disable(); @@ -1675,28 +1675,28 @@ void CB2_ReturnToFieldFromMultiplayer(void) void CB2_ReturnToFieldWithOpenMenu(void) { FieldClearVBlankHBlankCallbacks(); - gFieldCallback2 = sub_80AF6A4; + gFieldCallback2 = FieldCB_ReturnToFieldOpenStartMenu; CB2_ReturnToField(); } void CB2_ReturnToFieldContinueScript(void) { FieldClearVBlankHBlankCallbacks(); - gFieldCallback = sub_80AF188; + gFieldCallback = FieldCB_ContinueScript; CB2_ReturnToField(); } void CB2_ReturnToFieldContinueScriptPlayMapMusic(void) { FieldClearVBlankHBlankCallbacks(); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; CB2_ReturnToField(); } void sub_80861E8(void) { FieldClearVBlankHBlankCallbacks(); - gFieldCallback = sub_80AF3C8; + gFieldCallback = FieldCB_WarpExitFadeFromBlack; CB2_ReturnToField(); } @@ -1704,7 +1704,7 @@ static void sub_8086204(void) { if ((gMapHeader.flags & 0xF8) == 8 && SecretBaseMapPopupEnabled() == TRUE) ShowMapNamePopup(); - sub_80AF3C8(); + FieldCB_WarpExitFadeFromBlack(); } void CB2_ContinueSavedGame(void) diff --git a/src/party_menu.c b/src/party_menu.c index e8a019d66..367e84295 100755 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -3745,7 +3745,7 @@ static void Task_HandleFieldMoveExitAreaYesNoInput(u8 taskId) bool8 FieldCallback_PrepareFadeInFromMenu(void) { - pal_fill_black(); + FadeInFromBlack(); CreateTask(Task_FieldMoveWaitForFade, 8); return TRUE; } @@ -6143,7 +6143,7 @@ static void BufferMonSelection(void) bool8 CB2_FadeFromPartyMenu(void) { - pal_fill_black(); + FadeInFromBlack(); CreateTask(Task_PartyMenuWaitForFade, 10); return TRUE; } @@ -6268,7 +6268,7 @@ static void Task_BattlePyramidChooseMonHeldItems(u8 taskId) void MoveDeleterChooseMoveToForget(void) { ShowPokemonSummaryScreen(PSS_MODE_SELECT_MOVE, gPlayerParty, gSpecialVar_0x8004, gPlayerPartyCount - 1, CB2_ReturnToField); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; } void GetNumMovesSelectedMonHas(void) diff --git a/src/player_pc.c b/src/player_pc.c index e10af43b8..bf3a5b01d 100644 --- a/src/player_pc.c +++ b/src/player_pc.c @@ -508,7 +508,7 @@ void Mailbox_DoRedrawMailboxMenuAfterReturn(void) sub_81973A4(); DrawDialogueFrame(0, 1); InitItemStorageMenu(CreateTask(ItemStorage_HandleReturnToProcessInput, 0), 1); - pal_fill_black(); + FadeInFromBlack(); } static void ItemStorage_HandleReturnToProcessInput(u8 taskId) @@ -745,7 +745,7 @@ static void pal_fill_for_maplights_or_black(void) Mailbox_DrawMailboxMenu(taskId); else DestroyTask(taskId); - pal_fill_black(); + FadeInFromBlack(); } static void Mailbox_HandleReturnToProcessInput(u8 taskId) @@ -852,7 +852,7 @@ static void Mailbox_UpdateMailListAfterDeposit(void) Mailbox_DrawMailboxMenu(taskId); else DestroyTask(taskId); - pal_fill_black(); + FadeInFromBlack(); } static void Mailbox_NoPokemonForMail(u8 taskId) diff --git a/src/pokeblock.c b/src/pokeblock.c index 03d5f4da4..342221880 100644 --- a/src/pokeblock.c +++ b/src/pokeblock.c @@ -960,7 +960,7 @@ static void Task_FreeDataAndExitPokeblockCase(u8 taskId) if (!gPaletteFade.active) { if (sPokeblockMenu->caseId == PBLOCK_CASE_FEEDER || sPokeblockMenu->caseId == PBLOCK_CASE_GIVE) - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; DestroyListMenuTask(data[0], &sSavedPokeblockData.lastItemPage, &sSavedPokeblockData.lastItemPos); sub_8136418(); diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index 3118f66cd..4ccb39ce2 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1855,7 +1855,7 @@ static void FieldCb_ReturnToPcMenu(void) gTasks[taskId].data[1] = sPreviousBoxOption; Task_PokemonStorageSystemPC(taskId); SetVBlankCallback(vblankCb); - pal_fill_black(); + FadeInFromBlack(); } static void CreatePCMenu(u8 whichMenu, s16 *windowIdPtr) diff --git a/src/record_mixing.c b/src/record_mixing.c index 00b2cb076..f290c8554 100644 --- a/src/record_mixing.c +++ b/src/record_mixing.c @@ -369,7 +369,7 @@ static void Task_RecordMixing_Main(u8 taskId) sub_808729C(); if (gWirelessCommType != 0) { - CreateTask(sub_80AF2B4, 10); + CreateTask(Task_ReturnToFieldRecordMixing, 10); } ClearDialogWindowAndFrame(0, 1); DestroyTask(taskId); diff --git a/src/region_map.c b/src/region_map.c index b1ba2795c..75ce60056 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -1158,7 +1158,7 @@ static void RegionMap_InitializeStateBasedOnSSTidalLocation(void) gRegionMap->mapSecId = MAPSEC_ROUTE_131; break; default: - case SS_TIDAL_LOCATION_OTHER: + case SS_TIDAL_LOCATION_CURRENTS: mapHeader = Overworld_GetMapHeaderByGroupAndId(mapGroup, mapNum); gRegionMap->mapSecId = mapHeader->regionMapSectionId; diff --git a/src/roulette.c b/src/roulette.c index fb0677cbf..e38da31d0 100644 --- a/src/roulette.c +++ b/src/roulette.c @@ -1727,7 +1727,7 @@ static void sub_8141E7C(u8 taskId) // end roulette ? ResetPaletteFade(); ResetSpriteData(); sub_8140418(); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; SetMainCallback2(CB2_ReturnToField); DestroyTask(taskId); } diff --git a/src/scrcmd.c b/src/scrcmd.c index 82da62b27..e53b20b6b 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -810,7 +810,7 @@ bool8 ScrCmd_warpteleport(struct ScriptContext *ctx) u16 y = VarGet(ScriptReadHalfword(ctx)); SetWarpDestination(mapGroup, mapNum, warpId, x, y); - sub_80AF848(); + DoTeleportWarp(); ResetInitialPlayerAvatarState(); return TRUE; } @@ -2286,7 +2286,7 @@ void SetMovingNpcId(u16 npcId) sMovingNpcId = npcId; } -bool8 ScrCmd_warpE0(struct ScriptContext *ctx) +bool8 ScrCmd_warpsootopolislegend(struct ScriptContext *ctx) { u8 mapGroup = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx); @@ -2295,7 +2295,7 @@ bool8 ScrCmd_warpE0(struct ScriptContext *ctx) u16 y = VarGet(ScriptReadHalfword(ctx)); SetWarpDestination(mapGroup, mapNum, warpId, x, y); - sub_80AF79C(); + DoSootopolisLegendWarp(); ResetInitialPlayerAvatarState(); return TRUE; } diff --git a/src/secret_base.c b/src/secret_base.c index fe941008c..0c67c9596 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -413,7 +413,7 @@ static void Task_EnterSecretBase(u8 taskId) SetSecretBaseWarpDestination(); WarpIntoMap(); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; SetMainCallback2(CB2_LoadMap); DestroyTask(taskId); break; @@ -456,7 +456,7 @@ static void EnterNewlyCreatedSecretBase_StartFadeIn(void) y += 7; MapGridSetMetatileIdAt(x, y, 0x220 | METATILE_COLLISION_MASK); CurrentMapDrawMetatileAt(x, y); - pal_fill_black(); + FadeInFromBlack(); CreateTask(EnterNewlyCreatedSecretBase_WaitFadeIn, 0); } @@ -678,7 +678,7 @@ static void Task_WarpOutOfSecretBase(u8 taskId) case 2: SetWarpDestinationToDynamicWarp(0x7e); WarpIntoMap(); - gFieldCallback = mapldr_default; + gFieldCallback = FieldCB_DefaultWarpExit; SetMainCallback2(CB2_LoadMap); ScriptContext2_Disable(); DestroyTask(taskId); diff --git a/src/shop.c b/src/shop.c index 5b83ca2a9..0bb527f81 100755 --- a/src/shop.c +++ b/src/shop.c @@ -390,7 +390,7 @@ static void Task_GoToBuyOrSellMenu(u8 taskId) static void MapPostLoadHook_ReturnToShopMenu(void) { - pal_fill_black(); + FadeInFromBlack(); CreateTask(Task_ReturnToShopMenu, 8); } diff --git a/src/start_menu.c b/src/start_menu.c index 99f474a90..e13fc4b26 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -83,7 +83,7 @@ EWRAM_DATA static u8 sBattlePyramidFloorWindowId = 0; EWRAM_DATA static u8 sStartMenuCursorPos = 0; EWRAM_DATA static u8 sNumStartMenuActions = 0; EWRAM_DATA static u8 sCurrentStartMenuActions[9] = {0}; -EWRAM_DATA static u8 sUnknown_02037619[2] = {0}; +EWRAM_DATA static u8 sInitStartMenuData[2] = {0}; EWRAM_DATA static u8 (*sSaveDialogCallback)(void) = NULL; EWRAM_DATA static u8 sSaveDialogTimer = 0; @@ -135,9 +135,7 @@ static void StartMenuTask(u8 taskId); static void SaveGameTask(u8 taskId); static void sub_80A0550(u8 taskId); static void sub_80A08A4(u8 taskId); - -// Some other callback -static bool8 sub_809FA00(void); +static bool8 FieldCB_ReturnToFieldStartMenu(void); static const struct WindowTemplate sSafariBallsWindowTemplate = {0, 1, 1, 9, 4, 0xF, 8}; @@ -440,33 +438,33 @@ static bool32 PrintStartMenuActions(s8 *pIndex, u32 count) static bool32 InitStartMenuStep(void) { - s8 value = sUnknown_02037619[0]; + s8 state = sInitStartMenuData[0]; - switch (value) + switch (state) { case 0: - sUnknown_02037619[0]++; + sInitStartMenuData[0]++; break; case 1: BuildStartMenuActions(); - sUnknown_02037619[0]++; + sInitStartMenuData[0]++; break; case 2: sub_81973A4(); DrawStdWindowFrame(sub_81979C4(sNumStartMenuActions), FALSE); - sUnknown_02037619[1] = 0; - sUnknown_02037619[0]++; + sInitStartMenuData[1] = 0; + sInitStartMenuData[0]++; break; case 3: if (GetSafariZoneFlag()) ShowSafariBallsWindow(); if (InBattlePyramid()) ShowPyramidFloorWindow(); - sUnknown_02037619[0]++; + sInitStartMenuData[0]++; break; case 4: - if (PrintStartMenuActions(&sUnknown_02037619[1], 2)) - sUnknown_02037619[0]++; + if (PrintStartMenuActions(&sInitStartMenuData[1], 2)) + sInitStartMenuData[0]++; break; case 5: sStartMenuCursorPos = sub_81983AC(GetStartMenuWindowId(), 1, 0, 9, 16, sNumStartMenuActions, sStartMenuCursorPos); @@ -479,8 +477,8 @@ static bool32 InitStartMenuStep(void) static void InitStartMenu(void) { - sUnknown_02037619[0] = 0; - sUnknown_02037619[1] = 0; + sInitStartMenuData[0] = 0; + sInitStartMenuData[1] = 0; while (!InitStartMenuStep()) ; } @@ -495,28 +493,28 @@ static void CreateStartMenuTask(TaskFunc followupFunc) { u8 taskId; - sUnknown_02037619[0] = 0; - sUnknown_02037619[1] = 0; + sInitStartMenuData[0] = 0; + sInitStartMenuData[1] = 0; taskId = CreateTask(StartMenuTask, 0x50); SetTaskFuncWithFollowupFunc(taskId, StartMenuTask, followupFunc); } -static bool8 sub_809FA00(void) +static bool8 FieldCB_ReturnToFieldStartMenu(void) { if (InitStartMenuStep() == FALSE) { return FALSE; } - sub_80AF688(); + ReturnToFieldOpenStartMenu(); return TRUE; } -void sub_809FA18(void) +void ShowReturnToFieldStartMenu(void) { - sUnknown_02037619[0] = 0; - sUnknown_02037619[1] = 0; - gFieldCallback2 = sub_809FA00; + sInitStartMenuData[0] = 0; + sInitStartMenuData[1] = 0; + gFieldCallback2 = FieldCB_ReturnToFieldStartMenu; } void Task_ShowStartMenu(u8 taskId) diff --git a/src/trade.c b/src/trade.c index 91b514067..af60d64c9 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1988,73 +1988,28 @@ static void DrawTradeMenuPartyMonInfo(u8 whichParty, u8 monIdx, u8 x, u8 y, u8 w sTradeMenuData->tilemapBuffer[(y - 1) * 32 + x + 1] = symbolTile; } -// Very close but loop preamble not working. -#ifdef NONMATCHING static void DrawTradeMenuPartyInfo(u8 whichParty) { - int i; - + s32 i; for (i = 0; i < sTradeMenuData->partyCounts[whichParty]; i++) { - DrawTradeMenuPartyMonInfo(whichParty, i, - sTradeMonLevelCoords[whichParty][i][0], - sTradeMonLevelCoords[whichParty][i][1], - sTradeMonBoxCoords[whichParty][i][0], - sTradeMonBoxCoords[whichParty][i][1]); + const u8 (*r5)[2]; + const u8 (*r4)[2]; + u32 r0 = 3 * whichParty; + const u8 (*r1)[2][2] = sTradeMonLevelCoords; + + r5 = r1[r0]; + r4 = sTradeMonBoxCoords[r0]; + DrawTradeMenuPartyMonInfo( + whichParty, + i, + r5[i][0], + r5[i][1], + r4[i][0], + r4[i][1] + ); } } -#else -NAKED -static void DrawTradeMenuPartyInfo(u8 whichParty) -{ - asm_unified("push {r4-r7,lr}\n\ - sub sp, 0x8\n\ - lsls r0, 24\n\ - lsrs r6, r0, 24\n\ - movs r7, 0\n\ - ldr r0, =sTradeMenuData\n\ - ldr r0, [r0]\n\ - adds r0, 0x36\n\ - adds r0, r6\n\ - ldrb r0, [r0]\n\ - cmp r7, r0\n\ - bge _08079E94\n\ - lsls r0, r6, 1\n\ - adds r0, r6\n\ - ldr r1, =sTradeMonLevelCoords\n\ - lsls r0, 2\n\ - adds r5, r0, r1\n\ - ldr r1, =sTradeMonBoxCoords\n\ - adds r4, r0, r1\n\ -_08079E6A:\n\ - lsls r1, r7, 24\n\ - lsrs r1, 24\n\ - ldrb r2, [r5]\n\ - ldrb r3, [r5, 0x1]\n\ - ldrb r0, [r4]\n\ - str r0, [sp]\n\ - ldrb r0, [r4, 0x1]\n\ - str r0, [sp, 0x4]\n\ - adds r0, r6, 0\n\ - bl DrawTradeMenuPartyMonInfo\n\ - adds r5, 0x2\n\ - adds r4, 0x2\n\ - adds r7, 0x1\n\ - ldr r0, =sTradeMenuData\n\ - ldr r0, [r0]\n\ - adds r0, 0x36\n\ - adds r0, r6\n\ - ldrb r0, [r0]\n\ - cmp r7, r0\n\ - blt _08079E6A\n\ -_08079E94:\n\ - add sp, 0x8\n\ - pop {r4-r7}\n\ - pop {r0}\n\ - bx r0\n\ - .pool"); -} -#endif // NONMATCHING static void ResetTradeMenuPartyPositions(u8 whichParty) { @@ -2541,10 +2496,8 @@ int CanRegisterMonForTradingBoard(struct UnkLinkRfuStruct_02022B14Substruct rfuP return CANT_REGISTER_MON; } -// r6/r7 flip. Ugh. // Spin Trade wasnt fully implemented, but this checks if a mon would be valid to Spin Trade // Unlike later generations, this version of Spin Trade isnt only for Eggs -#ifdef NONMATCHING int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) { int i, version, versions, canTradeAnyMon, numMonsLeft; @@ -2560,8 +2513,8 @@ int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) } } - canTradeAnyMon = TRUE; versions = 0; + canTradeAnyMon = TRUE; for (i = 0; i < GetLinkPlayerCount(); i++) { version = gLinkPlayers[i].version & 0xFF; @@ -2581,11 +2534,14 @@ int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) struct LinkPlayer *player = &gLinkPlayers[i]; // Does player not have National Dex - if (!(player->progressFlags & 0xF)) - canTradeAnyMon = FALSE; + do + { + if (!(player->progressFlags & 0xF)) + canTradeAnyMon = FALSE; - if (versions && (player->progressFlags / 16)) - canTradeAnyMon = FALSE; + if (versions && (player->progressFlags / 16)) + canTradeAnyMon = FALSE; + } while (0); } if (canTradeAnyMon == FALSE) @@ -2611,154 +2567,6 @@ int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx) else return CAN_TRADE_MON; } -#else -NAKED -int CanSpinTradeMon(struct Pokemon *mon, u16 a1) -{ - asm_unified("push {r4-r7,lr}\n\ - mov r7, r8\n\ - push {r7}\n\ - sub sp, 0x18\n\ - adds r6, r0, 0\n\ - lsls r1, 16\n\ - lsrs r1, 16\n\ - mov r8, r1\n\ - movs r5, 0\n\ - ldr r0, =gPlayerPartyCount\n\ - ldrb r0, [r0]\n\ - cmp r5, r0\n\ - bge _0807A95A\n\ - mov r4, sp\n\ -_0807A934:\n\ - movs r0, 0x64\n\ - muls r0, r5\n\ - adds r0, r6, r0\n\ - movs r1, 0x41\n\ - bl GetMonData\n\ - str r0, [r4]\n\ - movs r1, 0xCE\n\ - lsls r1, 1\n\ - cmp r0, r1\n\ - bne _0807A94E\n\ - movs r0, 0\n\ - str r0, [r4]\n\ -_0807A94E:\n\ - adds r4, 0x4\n\ - adds r5, 0x1\n\ - ldr r0, =gPlayerPartyCount\n\ - ldrb r0, [r0]\n\ - cmp r5, r0\n\ - blt _0807A934\n\ -_0807A95A:\n\ - movs r7, 0\n\ - movs r6, 0x1\n\ - movs r5, 0\n\ - ldr r4, =gLinkPlayers\n\ - b _0807A980\n\ - .pool\n\ -_0807A96C:\n\ - ldrb r0, [r4]\n\ - subs r0, 0x4\n\ - cmp r0, 0x1\n\ - bhi _0807A978\n\ - movs r7, 0\n\ - b _0807A97C\n\ -_0807A978:\n\ - movs r0, 0x1\n\ - orrs r7, r0\n\ -_0807A97C:\n\ - adds r4, 0x1C\n\ - adds r5, 0x1\n\ -_0807A980:\n\ - bl GetLinkPlayerCount\n\ - lsls r0, 24\n\ - lsrs r0, 24\n\ - cmp r5, r0\n\ - blt _0807A96C\n\ - movs r5, 0\n\ - movs r4, 0\n\ - b _0807A9B4\n\ -_0807A992:\n\ - ldr r0, =gLinkPlayers\n\ - adds r2, r4, r0\n\ - ldrb r1, [r2, 0x10]\n\ - movs r0, 0xF\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - bne _0807A9A2\n\ - movs r6, 0\n\ -_0807A9A2:\n\ - cmp r7, 0\n\ - beq _0807A9B0\n\ - ldrb r0, [r2, 0x10]\n\ - lsrs r0, 4\n\ - cmp r0, 0\n\ - beq _0807A9B0\n\ - movs r6, 0\n\ -_0807A9B0:\n\ - adds r4, 0x1C\n\ - adds r5, 0x1\n\ -_0807A9B4:\n\ - bl GetLinkPlayerCount\n\ - lsls r0, 24\n\ - lsrs r0, 24\n\ - cmp r5, r0\n\ - blt _0807A992\n\ - cmp r6, 0\n\ - bne _0807A9EA\n\ - mov r1, r8\n\ - lsls r0, r1, 2\n\ - mov r1, sp\n\ - adds r4, r1, r0\n\ - ldrh r0, [r4]\n\ - bl IsSpeciesInHoennDex\n\ - cmp r0, 0\n\ - bne _0807A9E0\n\ - movs r0, 0x2\n\ - b _0807AA1A\n\ - .pool\n\ -_0807A9E0:\n\ - ldr r0, [r4]\n\ - cmp r0, 0\n\ - bne _0807A9EA\n\ - movs r0, 0x3\n\ - b _0807AA1A\n\ -_0807A9EA:\n\ - movs r2, 0\n\ - movs r5, 0\n\ - ldr r0, =gPlayerPartyCount\n\ - ldrb r0, [r0]\n\ - cmp r2, r0\n\ - bge _0807AA0A\n\ - adds r3, r0, 0\n\ - mov r1, sp\n\ -_0807A9FA:\n\ - cmp r8, r5\n\ - beq _0807AA02\n\ - ldr r0, [r1]\n\ - adds r2, r0\n\ -_0807AA02:\n\ - adds r1, 0x4\n\ - adds r5, 0x1\n\ - cmp r5, r3\n\ - blt _0807A9FA\n\ -_0807AA0A:\n\ - cmp r2, 0\n\ - beq _0807AA18\n\ - movs r0, 0\n\ - b _0807AA1A\n\ - .pool\n\ -_0807AA18:\n\ - movs r0, 0x1\n\ -_0807AA1A:\n\ - add sp, 0x18\n\ - pop {r3}\n\ - mov r8, r3\n\ - pop {r4-r7}\n\ - pop {r1}\n\ - bx r1"); -} -#endif // NONMATCHING static void sub_807AA28(struct Sprite *sprite) { @@ -4942,7 +4750,7 @@ static void Task_InGameTrade(u8 taskId) if (!gPaletteFade.active) { SetMainCallback2(CB2_InGameTrade); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; DestroyTask(taskId); } } diff --git a/src/union_room.c b/src/union_room.c index 3880d85be..08e177bac 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -1424,7 +1424,7 @@ void sub_8014384(void) break; case 1: if (!FuncIsActiveTask(sub_80140E0)) - SetMainCallback2(sub_8086074); + SetMainCallback2(CB2_ReturnToFieldCableClub); break; } @@ -2880,7 +2880,7 @@ void sub_80156E0(u8 taskId) if (!gPaletteFade.active) { sUnionRoomTrade.field_0 = 1; - gFieldCallback = sub_80AF128; + gFieldCallback = FieldCB_ContinueScriptUnionRoom; ChooseMonForTradingBoard(PARTY_MENU_TYPE_UNION_ROOM_REGISTER, CB2_ReturnToField); } break; @@ -2992,7 +2992,7 @@ void sub_80156E0(u8 taskId) memcpy(&gUnknown_02022C38, &data->field_0->arr[taskData[1]].unk.field_0.unk_00, sizeof(gUnknown_02022C38)); gUnionRoomRequestedMonType = data->field_0->arr[taskData[1]].unk.field_0.type; gUnionRoomOfferedSpecies = data->field_0->arr[taskData[1]].unk.field_0.species; - gFieldCallback = sub_80AF128; + gFieldCallback = FieldCB_ContinueScriptUnionRoom; ChooseMonForTradingBoard(PARTY_MENU_TYPE_UNION_ROOM_TRADE, CB2_ReturnToField); sub_80156B0(data); sUnionRoomTrade.field_8 = taskData[1]; diff --git a/src/walda_phrase.c b/src/walda_phrase.c index e8c1e4aed..4b617e3b8 100644 --- a/src/walda_phrase.c +++ b/src/walda_phrase.c @@ -70,7 +70,7 @@ static void CB2_HandleGivenWaldaPhrase(void) } StringCopy(gStringVar1, GetWaldaPhrasePtr()); - gFieldCallback = FieldCallback_ReturnToEventScript2; + gFieldCallback = FieldCB_ContinueScriptHandleMusic; SetMainCallback2(CB2_ReturnToField); } |