diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2017-10-14 09:52:56 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2017-10-14 09:52:56 -0400 |
commit | a252140f3b462efbeaec392030479e9e12999f23 (patch) | |
tree | bb85cfb66bc0aa970e9b27eedaa7d9894e83666f /include | |
parent | 1112af4e1905135a7bc2dd53353b52762ff7d49a (diff) | |
parent | 0d38d443b561f9baaae12324712503dfccaf01ea (diff) |
Merge branch 'master' into mail
Diffstat (limited to 'include')
51 files changed, 376 insertions, 98 deletions
diff --git a/include/battle.h b/include/battle.h index a3a51db71..f00b7f9ab 100644 --- a/include/battle.h +++ b/include/battle.h @@ -810,8 +810,8 @@ struct BattleScripting u8 atk6C_state; u8 learnMoveState; u8 field_20; - u8 field_21; - u8 field_22; + u8 reshowMainState; + u8 reshowHelperState; u8 field_23; u8 field_24; u8 multiplayerId; @@ -841,9 +841,29 @@ void FreeBattleSpritesData(void); void AllocateMonSpritesGfx(void); void FreeMonSpritesGfx(void); void BattleMusicStop(void); -void sub_805E990(struct Pokemon* mon, u8 bank); +void sub_805E990(struct Pokemon *mon, u8 bank); void sub_805EF14(void); bool8 BattleInitAllSprites(u8 *state1, u8 *state2); +void sub_805E350(void); +bool8 BattleLoadAllHealthBoxesGfx(u8 state); +void LoadAndCreateEnemyShadowSprites(void); +void SetBankEnemyShadowSpriteCallback(u8 bank, u16 species); +void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 bank); +void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 bank); +void BattleLoadSubstituteSpriteGfx(u8 bank, bool8 arg1); + +enum +{ + BACK_PIC_BRENDAN, + BACK_PIC_MAY, + BACK_PIC_RED, + BACK_PIC_LEAF, + BACK_PIC_RS_BRENDAN, + BACK_PIC_RS_MAY, + BACK_PIC_WALLY, + BACK_PIC_STEVEN +}; +void LoadBackTrainerBankSpriteGfx(u8 backPicId, u8 bank); // rom_80A5C6C u8 GetBankSide(u8 bank); diff --git a/include/battle_controller_player.h b/include/battle_controller_player.h new file mode 100644 index 000000000..6d095efe7 --- /dev/null +++ b/include/battle_controller_player.h @@ -0,0 +1,7 @@ +#ifndef GUARD_BATTLE_CONTROLLER_PLAYER_H +#define GUARD_BATTLE_CONTROLLER_PLAYER_H + +void ActionSelectionCreateCursorAt(u8 cursorPos, u8 unused); +void ActionSelectionDestroyCursorAt(u8 cursorPos); + +#endif // GUARD_BATTLE_CONTROLLER_PLAYER_H diff --git a/include/battle_controllers.h b/include/battle_controllers.h index e36c95fbe..e710deea5 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_CONTROLLERS_H #define GUARD_BATTLE_CONTROLLERS_H +#include "battle_controller_player.h" + #define REQUEST_ALL_BATTLE 0x0 #define REQUEST_SPECIES_BATTLE 0x1 #define REQUEST_HELDITEM_BATTLE 0x2 diff --git a/include/battle_frontier_2.h b/include/battle_frontier_2.h new file mode 100644 index 000000000..4f37248cc --- /dev/null +++ b/include/battle_frontier_2.h @@ -0,0 +1,9 @@ +#ifndef GUARD_BATTLE_FRONTIER_2_H +#define GUARD_BATTLE_FRONTIER_2_H + +void sub_81A8934(u8); +void sub_81A895C(void); +u16 sub_81A89A0(u8); +void sub_81A8AF8(void); + +#endif // GUARD_BATTLE_FRONTIER_2_H diff --git a/include/battle_interface.h b/include/battle_interface.h new file mode 100644 index 000000000..cecc7bd1f --- /dev/null +++ b/include/battle_interface.h @@ -0,0 +1,28 @@ +#ifndef GUARD_BATTLE_INTERFACE_H +#define GUARD_BATTLE_INTERFACE_H + +enum +{ + HEALTHBOX_ALL, + HEALTHBOX_CURRENT_HP, + HEALTHBOX_MAX_HP, + HEALTHBOX_LEVEL, + HEALTHBOX_NICK, + HEALTHBOX_HEALTH_BAR, + HEALTHBOX_EXP_BAR, + HEALTHBOX_7, + HEALTHBOX_8, + HEALTHBOX_STATUS_ICON, + HEALTHBOX_SAFARI_ALL_TEXT, + HEALTHBOX_SAFARI_BALLS_TEXT +}; + +u8 CreateBankHealthboxSprites(u8 bank); +u8 CreateSafariPlayerHealthboxSprites(void); +void SetBankHealthboxSpritePos(u8 bank); +void SetHealthboxSpriteVisible(u8 healthboxSpriteId); +void SetHealthboxSpriteInvisible(u8 healthboxSpriteId); +void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elementId); +void nullsub_30(u8 healthboxSpriteId, bool8 isDoubleBattleBankOnly); + +#endif // GUARD_BATTLE_INTERFACE_H diff --git a/include/battle_setup.h b/include/battle_setup.h index 80fb55da2..e4acd8601 100644 --- a/include/battle_setup.h +++ b/include/battle_setup.h @@ -1,6 +1,15 @@ #ifndef GUARD_BATTLE_SETUP_H #define GUARD_BATTLE_SETUP_H +void BattleSetup_StartScriptedWildBattle(void); u8 BattleSetup_GetTerrainId(void); +u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data); + +u8 HasTrainerAlreadyBeenFought(u16); +void trainer_flag_set(u16); +void trainer_flag_clear(u16); +void BattleSetup_StartTrainerBattle(void); +u8 *BattleSetup_GetScriptAddrAfterBattle(void); +u8 *BattleSetup_GetTrainerPostBattleScript(void); #endif // GUARD_BATTLE_SETUP_H diff --git a/include/bg.h b/include/bg.h index 0dcb84a34..0c6b4ac26 100644 --- a/include/bg.h +++ b/include/bg.h @@ -1,6 +1,16 @@ #ifndef GUARD_BG_H #define GUARD_BG_H +struct BGCntrlBitfield // for the I/O registers +{ + volatile u16 priority:2; + volatile u16 charBaseBlock:2; + volatile u16 field_0_2:4; + volatile u16 field_1_0:5; + volatile u16 areaOverflowMode:1; + volatile u16 screenSize:2; +}; + enum { BG_CTRL_ATTR_VISIBLE = 1, diff --git a/include/clock.h b/include/clock.h new file mode 100644 index 000000000..4e6560c91 --- /dev/null +++ b/include/clock.h @@ -0,0 +1,8 @@ +#ifndef GUARD_CLOCK_H +#define GUARD_CLOCK_H + +// TODO: time of day and seconds in a day defines + +void DoTimeBasedEvents(void); + +#endif diff --git a/include/coins.h b/include/coins.h index 43434b227..996519605 100644 --- a/include/coins.h +++ b/include/coins.h @@ -6,7 +6,7 @@ void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y); void HideCoinsWindow(void); u16 GetCoins(void); void SetCoins(u16 coinAmount); -bool8 AddCoins(u16 toAdd); -bool8 SubtractCoins(u16 toSub); +bool8 GiveCoins(u16 toAdd); +bool8 TakeCoins(u16 toSub); #endif // GUARD_COINS_H diff --git a/include/contest.h b/include/contest.h index 6eda956b4..5c473bd2c 100644 --- a/include/contest.h +++ b/include/contest.h @@ -11,7 +11,7 @@ struct ContestStruct_02039E00 { extern struct ContestStruct_02039E00 gUnknown_02039E00[4]; extern u8 gUnknown_02039F24; -extern EWRAM_DATA u16 gUnknown_02039F2C; +extern EWRAM_DATA u16 gScriptContestCategory; extern EWRAM_DATA u8 gUnknown_02039F2E; extern EWRAM_DATA u8 gUnknown_02039F30; diff --git a/include/contest_link_80F57C4.h b/include/contest_link_80F57C4.h new file mode 100644 index 000000000..98523c175 --- /dev/null +++ b/include/contest_link_80F57C4.h @@ -0,0 +1,8 @@ +#ifndef GUARD_CONTEST_LINK_80F57C4_H +#define GUARD_CONTEST_LINK_80F57C4_H + +void sub_80F840C(void); +void sub_80F8484(void); +void sub_80F84C4(u8); + +#endif // GUARD_CONTEST_LINK_80F57C4_H diff --git a/include/contest_painting.h b/include/contest_painting.h new file mode 100644 index 000000000..f8366a997 --- /dev/null +++ b/include/contest_painting.h @@ -0,0 +1,6 @@ +#ifndef GUARD_CONTESTPAINTING_H +#define GUARD_CONTESTPAINTING_H + +void sub_812FDA8(u32); + +#endif diff --git a/include/data2.h b/include/data2.h new file mode 100644 index 000000000..db9532811 --- /dev/null +++ b/include/data2.h @@ -0,0 +1,19 @@ +#ifndef GUARD_DATA2_H +#define GUARD_DATA2_H + +struct MonCoords +{ + // This would use a bitfield, but some function + // uses it as a u8 and casting won't match. + u8 coords; // u8 x:4, y:4; + u8 y_offset; +}; + +extern struct MonCoords gTrainerBackPicCoords[]; + +extern const u8 gSpeciesNames[][POKEMON_NAME_LENGTH + 1]; +extern const u8 gMoveNames[][13]; +extern const u8 gAbilityNames[][13]; +extern const u8 gTypeNames[][7]; + +#endif // GUARD_DATA2_H diff --git a/include/decoration.h b/include/decoration.h index c089bdc83..bbb77d127 100644 --- a/include/decoration.h +++ b/include/decoration.h @@ -125,8 +125,6 @@ enum DecoId { /*120*/ DECOR_REGISTEEL_DOLL }; -// Exported type declarations - struct Decoration { /*0x00*/ u8 id; @@ -139,9 +137,6 @@ struct Decoration /*0x1c*/ const u16 *tiles; }; -// Exported RAM declarations - -// Exported ROM declarations extern const struct Decoration gDecorations[]; #endif //GUARD_DECORATION_H diff --git a/include/decoration_inventory.h b/include/decoration_inventory.h new file mode 100644 index 000000000..5ca345933 --- /dev/null +++ b/include/decoration_inventory.h @@ -0,0 +1,10 @@ +#ifndef GUARD_DECORATION_INVENTORY_H +#define GUARD_DECORATION_INVENTORY_H + +void ClearDecorationInventories(void); +u8 CheckHasDecoration(u8); +u8 DecorationAdd(u8); +u8 DecorationCheckSpace(u8); +s8 DecorationRemove(u8); + +#endif // GUARD_DECORATION_INVENTORY_H diff --git a/include/event_data.h b/include/event_data.h index a2a501283..0bd11fdcd 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -27,7 +27,7 @@ bool8 VarSet(u16 id, u16 value); u8 VarGetFieldObjectGraphicsId(u8 id); u8 *GetFlagPointer(u16 id); u8 FlagSet(u16 id); -u8 FlagReset(u16 id); +u8 FlagClear(u16 id); bool8 FlagGet(u16 id); extern u16 gSpecialVar_0x8000; diff --git a/include/field_door.h b/include/field_door.h new file mode 100644 index 000000000..f1dfc551d --- /dev/null +++ b/include/field_door.h @@ -0,0 +1,11 @@ +#ifndef GUARD_FIELDDOOR_H +#define GUARD_FIELDDOOR_H + +void FieldSetDoorOpened(u32, u32); +void FieldSetDoorClosed(u32, u32); +s8 FieldAnimateDoorClose(u32, u32); +s8 FieldAnimateDoorOpen(u32, u32); +bool8 FieldIsDoorAnimationRunning(void); +u32 GetDoorSoundEffect(u32 x, u32 y); + +#endif diff --git a/include/field_effect.h b/include/field_effect.h index 7ec26b3d7..aa3f7eba0 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -1,7 +1,3 @@ -// -// Created by Scott Norton on 9/15/17. -// - #ifndef GUARD_FIELD_EFFECTS_H #define GUARD_FIELD_EFFECTS_H @@ -73,8 +69,9 @@ enum FieldEffectScriptIdx FLDEFF_USE_TELEPORT }; -extern u32 gFieldEffectSpawnParams[8]; - u8 FieldEffectStart(u8); +bool8 FieldEffectActiveListContains(u8 id); + +extern u32 gFieldEffectArguments[8]; #endif //GUARD_FIELD_EFFECTS_H diff --git a/include/field_fadetransition.h b/include/field_fadetransition.h new file mode 100644 index 000000000..7c2d16a24 --- /dev/null +++ b/include/field_fadetransition.h @@ -0,0 +1,12 @@ +#ifndef GUARD_FIELD_FADETRANSITION_H +#define GUARD_FIELD_FADETRANSITION_H + +void sub_80AF734(void); +void sp13E_warp_to_last_warp(void); +void sub_80AF7D0(void); +void sp13F_fall_to_last_warp(void); + +void sub_80AF848(void); +void sub_80AF87C(void); + +#endif // GUARD_FIELD_FADETRANSITION_H diff --git a/include/field_map_obj.h b/include/field_map_obj.h index 40cc64054..b18b6cfd3 100755 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -33,6 +33,7 @@ u8 sub_808D4F4(void); void RemoveFieldObjectByLocalIdAndMap(u8, u8, u8); void npc_load_two_palettes__no_record(u16, u8); void npc_load_two_palettes__and_record(u16, u8); +void sub_808EBA8(u8, u8, u8, s16, s16); void pal_patch_for_npc(u16, u8); void sub_808E16C(s16, s16); void sub_8092FF0(s16, s16, s16 *, s16 *); @@ -63,6 +64,7 @@ void npc_coords_shift(struct MapObject *, s16, s16); void sub_808EB08(struct MapObject *, s16, s16); void sub_808F254(u8, u8, u8); void FieldObjectStep(struct MapObject *, struct Sprite *, bool8(struct MapObject *, struct Sprite *)); +u8 FieldObjectFaceOppositeDirection(struct MapObject *, u8); u8 GetOppositeDirection(u8); u8 GetStepInPlaceDelay4AnimId(u32); u8 GetStepInPlaceDelay8AnimId(u32); @@ -71,6 +73,7 @@ u8 GetStepInPlaceDelay32AnimId(u32); u8 npc_block_way(struct MapObject *, s16, s16, u32); void MoveCoords(u8, s16 *, s16 *); bool8 FieldObjectIsSpecialAnimActive(struct MapObject *); +u8 FieldObjectClearAnimIfSpecialAnimFinished(struct MapObject *); // Exported data declarations diff --git a/include/field_map_obj_helpers.h b/include/field_map_obj_helpers.h new file mode 100644 index 000000000..ba797ec98 --- /dev/null +++ b/include/field_map_obj_helpers.h @@ -0,0 +1,7 @@ +#ifndef GUARD_FIELDMAPOBJHELP_H +#define GUARD_FIELDMAPOBJHELP_H + +void UnfreezeMapObjects(void); +void sub_8097B78(u8, u8); + +#endif diff --git a/include/field_message_box.h b/include/field_message_box.h index e33d52ccf..432c9078b 100644 --- a/include/field_message_box.h +++ b/include/field_message_box.h @@ -1,12 +1,10 @@ -#ifndef GUARD_field_message_box_H -#define GUARD_field_message_box_H +#ifndef GUARD_FIELD_MESSAGE_BOX_H +#define GUARD_FIELD_MESSAGE_BOX_H -// Exported type declarations +bool8 ShowFieldMessage(const u8 *message); +bool8 sub_8098238(const u8 *message); +bool8 ShowFieldAutoScrollMessage(const u8 *message); +void HideFieldMessageBox(void); +bool8 IsFieldMessageBoxHidden(void); -// Exported RAM declarations - -// Exported ROM declarations - -void ShowFieldMessage(const u8 *); - -#endif //GUARD_field_message_box_H +#endif // GUARD_FIELD_MESSAGE_BOX_H diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index a787cf805..5c16e9414 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -1,7 +1,3 @@ -// -// Created by Scott Norton on 9/6/17. -// - #ifndef GUARD_FIELD_PLAYER_AVATAR_H #define GUARD_FIELD_PLAYER_AVATAR_H @@ -14,4 +10,6 @@ u8 player_get_direction_lower_nybble(void); u8 player_get_direction_upper_nybble(void); u8 player_get_x22(void); +void sub_808D074(u8); + #endif //GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/field_screen_effect.h b/include/field_screen_effect.h new file mode 100644 index 000000000..ef81c2f9e --- /dev/null +++ b/include/field_screen_effect.h @@ -0,0 +1,8 @@ +#ifndef GUARD_FIELD_SCREEN_EFFECT_H +#define GUARD_FIELD_SCREEN_EFFECT_H + +void sub_80AF79C(void); +void sub_80B009C(u8); +void sub_80B0244(void); + +#endif // GUARD_FIELD_SCREEN_EFFECT_H diff --git a/include/field_specials.h b/include/field_specials.h new file mode 100644 index 000000000..1f8fbf147 --- /dev/null +++ b/include/field_specials.h @@ -0,0 +1,6 @@ +#ifndef GUARD_FIELD_SPECIALS_H +#define GUARD_FIELD_SPECIALS_H + +u8 GetLeadMonIndex(void); + +#endif // GUARD_FIELD_SPECIALS_H diff --git a/include/field_tasks.h b/include/field_tasks.h new file mode 100644 index 000000000..2a2a772d8 --- /dev/null +++ b/include/field_tasks.h @@ -0,0 +1,6 @@ +#ifndef GUARD_FIELD_TASKS_H +#define GUARD_FIELD_TASKS_H + +void ActivatePerStepCallback(u8); + +#endif // GUARD_FIELD_TASKS_H diff --git a/include/field_weather.h b/include/field_weather.h new file mode 100644 index 000000000..e12107e70 --- /dev/null +++ b/include/field_weather.h @@ -0,0 +1,12 @@ +#ifndef GUARD_WEATHER_H +#define GUARD_WEATHER_H + +void fade_screen(u8, s8); + +void SetSav1Weather(u32); +u8 GetSav1Weather(void); +void sub_80AEDBC(void); + +void DoCurrentWeather(void); + +#endif // GUARD_WEATHER_H diff --git a/include/fieldmap.h b/include/fieldmap.h index e95e4e0ce..3efc5e36f 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -1,19 +1,11 @@ -// -// Created by scott on 9/16/2017. -// - #ifndef GUARD_FIELDMAP_H #define GUARD_FIELDMAP_H -// Exported type declarations - -// Exported RAM declarations extern struct MapCoords { int width; int height; } gUnknown_03005DC0; -// Exported ROM declarations u32 MapGridGetMetatileBehaviorAt(int, int); void MapGridSetMetatileIdAt(int, int, u16); void GetCameraCoords(u16*, u16*); diff --git a/include/item.h b/include/item.h index e642ca608..a136f03ec 100644 --- a/include/item.h +++ b/include/item.h @@ -31,6 +31,7 @@ extern struct BagPocket gBagPockets[]; void GetBerryCountString(u8* dst, const u8* berryName, u32 quantity); void CopyItemName(u16 itemId, u8 *string); +void CopyItemNameHandlePlural(u16 itemId, u8 *string, u32 quantity); bool8 IsBagPocketNonEmpty(u8 pocket); bool8 CheckBagHasItem(u16 itemId, u16 count); bool8 CheckBagHasSpace(u16 itemId, u16 count); diff --git a/include/map_obj_lock.h b/include/map_obj_lock.h new file mode 100644 index 000000000..a10648f2f --- /dev/null +++ b/include/map_obj_lock.h @@ -0,0 +1,11 @@ +#ifndef GUARD_MAP_OBJ_LOCK_H +#define GUARD_MAP_OBJ_LOCK_H + +bool8 sub_80983C4(void); +void ScriptFreezeMapObjects(void); +bool8 sub_809847C(void); +void LockSelectedMapObject(void); +void sub_8098630(void); +bool8 sub_8098734(void); + +#endif // GUARD_MAP_OBJ_LOCK_H diff --git a/include/menu.h b/include/menu.h index 957bed9b4..480ffd1ce 100644 --- a/include/menu.h +++ b/include/menu.h @@ -22,5 +22,6 @@ void SetWindowBorderStyle(u8 windowId, bool8 copyToVram, u16 tileStart, u8 palet void reset_temp_tile_data_buffers(void); int decompress_and_copy_tile_data_to_vram(u8 bg_id, const void *src, int size, u16 offset, u8 mode); bool8 free_temp_tile_data_buffers_if_possible(void); +u64 sub_8198A50(struct WindowTemplate*, u8, u8, u8, u8, u8, u8, u16); // returns something but it isn't used, fix when menu.s is decomp'd #endif // GUARD_MENU_H diff --git a/include/money.h b/include/money.h index 22a3657f6..5c7c1c984 100644 --- a/include/money.h +++ b/include/money.h @@ -5,7 +5,7 @@ u32 GetMoney(u32* moneyPtr); void SetMoney(u32* moneyPtr, u32 newValue); bool8 IsEnoughMoney(u32* moneyPtr, u32 cost); void AddMoney(u32* moneyPtr, u32 toAdd); -void SubtractMoney(u32* moneyPtr, u32 toSub); +void RemoveMoney(u32* moneyPtr, u32 toSub); bool8 IsEnoughForCostInVar0x8005(void); void SubtractMoneyFromVar0x8005(void); void PrintMoneyAmountInMoneyBox(u8 windowId, int amount, u8 speed); diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h new file mode 100644 index 000000000..ab23a8d00 --- /dev/null +++ b/include/mystery_event_script.h @@ -0,0 +1,8 @@ +#ifndef GUARD_MYSTERY_EVENT_SCRIPT_H +#define GUARD_MYSTERY_EVENT_SCRIPT_H + +u32 RunMysteryEventScript(u8 *); +void SetMysteryEventScriptStatus(u32 val); +u16 GetRecordMixingGift(void); + +#endif // GUARD_MYSTERY_EVENT_SCRIPT_H diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h new file mode 100644 index 000000000..6377897d3 --- /dev/null +++ b/include/new_menu_helpers.h @@ -0,0 +1,9 @@ +#ifndef GUARD_NEW_MENU_HELPERS_H +#define GUARD_NEW_MENU_HELPERS_H + +void sub_81973A4(void); +void sub_81973C4(u8, u8); +void sub_819746C(u8 windowId, bool8 copyToVram); +void sub_81973FC(u8, u8); + +#endif // GUARD_NEW_MENU_HELPERS_H diff --git a/include/overworld.h b/include/overworld.h new file mode 100644 index 000000000..1869222b0 --- /dev/null +++ b/include/overworld.h @@ -0,0 +1,59 @@ +#ifndef GUARD_ROM4_H +#define GUARD_ROM4_H + +struct UnkPlayerStruct +{ + u8 player_field_0; + u8 player_field_1; +}; + +struct LinkPlayerMapObject +{ + u8 active; + u8 linkPlayerId; + u8 mapObjId; + u8 mode; +}; + +struct UCoords32 +{ + u32 x, y; +}; + +extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4]; + +void IncrementGameStat(u8 index); + +void Overworld_SetMapObjTemplateCoords(u8, s16, s16); +void Overworld_SetMapObjTemplateMovementType(u8, u8); + +void Overworld_SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); + +void saved_warp2_set_2(int unused, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); +void Overworld_SetHealLocationWarp(u8); +void sub_8084DD4(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y); +void sub_8084E2C(s8, s8, s8, s8, s8); +void sub_8084E80(s8, s8, s8, s8, s8); +void sub_8084EBC(s16, s16); + +void player_avatar_init_params_reset(void); + +void Overworld_SetFlashLevel(s32 a1); +//u8 Overworld_GetFlashLevel(void); +void sub_8085524(u16); + +void Overworld_SetSavedMusic(u16); +void Overworld_ChangeMusicToDefault(void); +void Overworld_ChangeMusicTo(u16); + +bool32 is_c1_link_related_active(void); + +void strange_npc_table_clear(void); +const struct MapHeader *get_mapheader_by_bank_and_number(u8, u8); +void FieldObjectMoveDestCoords(struct MapObject *, u32, s16 *, s16 *); +void sub_8086230(void); +void c2_exit_to_overworld_2_switch(void); +bool32 sub_8087598(void); +void c2_exit_to_overworld_1_continue_scripts_restart_music(void); + +#endif //GUARD_ROM4_H diff --git a/include/palette.h b/include/palette.h index de2cf0083..d3bcd2271 100644 --- a/include/palette.h +++ b/include/palette.h @@ -8,6 +8,9 @@ #define gPaletteFade_delay (gPaletteFade.multipurpose2) // normal and hardware fade #define gPaletteFade_submode (gPaletteFade.multipurpose2) // fast fade +#define PLTT_BUFFER_SIZE 0x200 +#define PLTT_DECOMP_BUFFER_SIZE (PLTT_BUFFER_SIZE * 2) + enum { FAST_FADE_IN_FROM_WHITE, diff --git a/include/party_menu.h b/include/party_menu.h new file mode 100644 index 000000000..175aba639 --- /dev/null +++ b/include/party_menu.h @@ -0,0 +1,6 @@ +#ifndef GUARD_PARTY_MENU_H +#define GUARD_PARTY_MENU_H + +bool8 pokemon_has_move(struct Pokemon *, u16); + +#endif // GUARD_PARTY_MENU_H diff --git a/include/pokemon_3.h b/include/pokemon_3.h new file mode 100644 index 000000000..5c9862d57 --- /dev/null +++ b/include/pokemon_3.h @@ -0,0 +1,7 @@ +#ifndef GUARD_POKEMON_3_H +#define GUARD_POKEMON_3_H + +const u8* GetTrainerClassNameFromId(u16 trainerId); +const u8* GetTrainerNameFromId(u16 trainerId); + +#endif // GUARD_POKEMON_3_H diff --git a/include/reshow_battle_screen.h b/include/reshow_battle_screen.h index 62773b48b..c22135280 100644 --- a/include/reshow_battle_screen.h +++ b/include/reshow_battle_screen.h @@ -1,6 +1,7 @@ #ifndef GUARD_RESHOW_BATTLE_SCREEN_H #define GUARD_RESHOW_BATTLE_SCREEN_H +void nullsub_35(void); void ReshowBattleScreenAfterMenu(void); #endif // GUARD_RESHOW_BATTLE_SCREEN_H diff --git a/include/rom4.h b/include/rom4.h deleted file mode 100644 index 683d2c04f..000000000 --- a/include/rom4.h +++ /dev/null @@ -1,35 +0,0 @@ - -#ifndef GUARD_ROM4_H -#define GUARD_ROM4_H - -struct UnkPlayerStruct -{ - u8 player_field_0; - u8 player_field_1; -}; - -struct LinkPlayerMapObject -{ - u8 active; - u8 linkPlayerId; - u8 mapObjId; - u8 mode; -}; - -struct UCoords32 -{ - u32 x, y; -}; - - -extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4]; - -void strange_npc_table_clear(void); -const struct MapHeader *get_mapheader_by_bank_and_number(u8, u8); -void FieldObjectMoveDestCoords(struct MapObject *, u32, s16 *, s16 *); -void sub_8086230(void); -void c2_exit_to_overworld_2_switch(void); -bool32 sub_8087598(void); -void c2_exit_to_overworld_1_continue_scripts_restart_music(void); - -#endif //GUARD_ROM4_H diff --git a/include/rom6.h b/include/rom6.h index 006e93910..0e9927855 100644 --- a/include/rom6.h +++ b/include/rom6.h @@ -2,6 +2,6 @@ #define GUARD_ROM6_H void sub_81357FC(u8, void(void)); -u8 GetIdxOfFirstPartyMemberThatIsNotAnEgg(void); +u8 GetLeadMonIndex(void); #endif //GUARD_ROM6_H diff --git a/include/script.h b/include/script.h index ec6a212bc..2b5f8c2ce 100644 --- a/include/script.h +++ b/include/script.h @@ -28,8 +28,8 @@ void StopScript(struct ScriptContext *ctx); bool8 RunScriptCommand(struct ScriptContext *ctx); u8 ScriptPush(struct ScriptContext *ctx, const u8 *ptr); const u8 *ScriptPop(struct ScriptContext *ctx); -void ScriptJump(struct ScriptContext *ctx, u8 *ptr); -void ScriptCall(struct ScriptContext *ctx, u8 *ptr); +void ScriptJump(struct ScriptContext *ctx, const u8 *ptr); +void ScriptCall(struct ScriptContext *ctx, const u8 *ptr); void ScriptReturn(struct ScriptContext *ctx); u16 ScriptReadHalfword(struct ScriptContext *ctx); u32 ScriptReadWord(struct ScriptContext *ctx); diff --git a/include/script_menu.h b/include/script_menu.h index de80d28d4..717eda041 100644 --- a/include/script_menu.h +++ b/include/script_menu.h @@ -1,11 +1,13 @@ #ifndef GUARD_SCRIPT_MENU_H #define GUARD_SCRIPT_MENU_H -// Exported type declarations - -// Exported RAM declarations - -// Exported ROM declarations extern const u8 *const gUnknown_0858BAF0[9]; +bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 var3, u8 var4); +bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 var3, u8 var4, u8 var5); +bool8 ScriptMenu_YesNo(u8 var1, u8 var2); +bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, u8 a4, u8 columnCount); +bool8 ScriptMenu_ShowPokemonPic(u16 var1, u8 var2, u8 var3); +bool8 (*ScriptMenu_GetPicboxWaitFunc(void))(void); + #endif //GUARD_SCRIPT_MENU_H diff --git a/include/script_movement.h b/include/script_movement.h new file mode 100644 index 000000000..4c3fa6002 --- /dev/null +++ b/include/script_movement.h @@ -0,0 +1,8 @@ +#ifndef GUARD_SCRIPT_MOVEMENT_H +#define GUARD_SCRIPT_MOVEMENT_H + +bool8 ScriptMovement_StartObjectMovementScript(u8, u8, u8, const u8 *); +bool8 ScriptMovement_IsObjectMovementFinished(u8, u8, u8); +void sub_80D338C(void); + +#endif // GUARD_SCRIPT_MOVEMENT_H diff --git a/include/script_pokemon_80F8.h b/include/script_pokemon_80F8.h new file mode 100644 index 000000000..8dd7ed0c0 --- /dev/null +++ b/include/script_pokemon_80F8.h @@ -0,0 +1,10 @@ +#ifndef GUARD_SCRIPTPOKE80F8_H +#define GUARD_SCRIPTPOKE80F8_H + +void ShowContestWinner(void); +u8 ScriptGiveMon(u16, u8, u16, u32, u32, u8); +u8 ScriptGiveEgg(u16); +void CreateScriptedWildMon(u16, u8, u16); +void ScriptSetMonMoveSlot(u8, u16, u8); + +#endif diff --git a/include/script_pokemon_81B9.h b/include/script_pokemon_81B9.h new file mode 100644 index 000000000..1b8563ee6 --- /dev/null +++ b/include/script_pokemon_81B9.h @@ -0,0 +1,6 @@ +#ifndef GUARD_SCRIPTPOKE81B9_H +#define GUARD_SCRIPTPOKE81B9_H + +void sub_81B9404(void); + +#endif diff --git a/include/shop.h b/include/shop.h index ac5b512ca..d3e86408c 100644 --- a/include/shop.h +++ b/include/shop.h @@ -1,12 +1,10 @@ #ifndef GUARD_SHOP_H #define GUARD_SHOP_H -// Exported type declarations - -// Exported RAM declarations - extern EWRAM_DATA struct ItemSlot gUnknown_02039F80[3]; -// Exported ROM declarations +void CreatePokemartMenu(const u16 *); +void CreateDecorationShop1Menu(const u16 *); +void CreateDecorationShop2Menu(const u16 *); -#endif //GUARD_SHOP_H +#endif // GUARD_SHOP_H diff --git a/include/slot_machine.h b/include/slot_machine.h new file mode 100644 index 000000000..8334e56fc --- /dev/null +++ b/include/slot_machine.h @@ -0,0 +1,6 @@ +#ifndef GUARD_SLOT_MACHINE_H +#define GUARD_SLOT_MACHINE_H + +void PlaySlotMachine(u8, void *); + +#endif // GUARD_SLOT_MACHINE_H diff --git a/include/text.h b/include/text.h index c09b41ad3..594661717 100644 --- a/include/text.h +++ b/include/text.h @@ -170,6 +170,7 @@ typedef struct { u8 flag_0:1; u8 flag_1:1; u8 flag_2:1; + u8 flag_3:1; } TextFlags; extern TextFlags gTextFlags; @@ -195,7 +196,7 @@ u8 gGlyphDimensions[0x2]; void SetFontsPointer(const struct FontInfo *fonts); void DeactivateAllTextPrinters(void); -u16 PrintTextOnWindow(u8 windowId, u8 fontId, u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextSubPrinter *, u16)); +u16 PrintTextOnWindow(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextSubPrinter *, u16)); bool16 AddTextPrinter(struct TextSubPrinter *textSubPrinter, u8 speed, void (*callback)(struct TextSubPrinter *, u16)); void RunTextPrinters(void); bool16 IsTextPrinterActive(u8 id); diff --git a/include/trainer_see.h b/include/trainer_see.h index 3f39783b8..ab035d9f8 100644 --- a/include/trainer_see.h +++ b/include/trainer_see.h @@ -2,6 +2,7 @@ #define GUARD_TRAINER_SEE_H void sub_80B4578(struct MapObject *); +u8 sub_80B47BC(void); void sub_8155D78(struct MapObject *); #endif //GUARD_TRAINER_SEE_H diff --git a/include/tv.h b/include/tv.h index b85cac82a..9495387ef 100644 --- a/include/tv.h +++ b/include/tv.h @@ -1,12 +1,6 @@ #ifndef GUARD_TV_H #define GUARD_TV_H -// Exported type declarations - -// Exported RAM declarations - -// Exported ROM declarations - extern u8 *const gTVStringVarPtrs[3]; void ClearTVShowData(void); @@ -16,6 +10,6 @@ bool8 GetPriceReduction(u8 newsKind); u8 GetRibbonCount(struct Pokemon *pokemon); void sub_80EE184(void); void sub_80F14F8(TVShow *shows); -int sub_80EF370(int value); +size_t sub_80EF370(int value); #endif //GUARD_TV_H |