summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Huderle <huderlem@gmail.com>2018-10-31 18:40:40 -0500
committerGitHub <noreply@github.com>2018-10-31 18:40:40 -0500
commitcbc414c44115550c811d6629c23c2e749d9d7fe3 (patch)
tree42a2274534149cb609636c3ef98a90438a11ca33
parent425cb7ec71d549bed0a73bb864c3f33a1c89f1c4 (diff)
parentbc71641386573c7e865d0cec941f84310fbd648f (diff)
Merge pull request #698 from Slawter666/synchronise
Synchronise with pokeemerald
-rw-r--r--include/battle_setup.h4
-rw-r--r--include/constants/event_objects.h3
-rw-r--r--include/event_object_movement.h33
-rw-r--r--include/field_control_avatar.h4
-rw-r--r--include/global.fieldmap.h2
-rw-r--r--include/item_menu.h2
-rw-r--r--include/overworld.h25
-rw-r--r--include/rom6.h2
-rw-r--r--include/script.h2
-rw-r--r--src/battle/battle_setup.c6
-rw-r--r--src/berry.c526
-rw-r--r--src/bike.c91
-rw-r--r--src/choose_party.c2
-rw-r--r--src/contest.c2
-rw-r--r--src/daycare.c2
-rw-r--r--src/decoration.c4
-rw-r--r--src/egg_hatch.c4
-rw-r--r--src/event_object_movement.c2036
-rw-r--r--src/field_control_avatar.c18
-rw-r--r--src/field_effect.c56
-rw-r--r--src/field_effect_helpers.c14
-rw-r--r--src/field_player_avatar.c24
-rw-r--r--src/field_poison.c6
-rw-r--r--src/field_specials.c2
-rw-r--r--src/field_tasks.c2
-rw-r--r--src/fieldmap.c6
-rw-r--r--src/fldeff_cut.c49
-rw-r--r--src/fldeff_strength.c4
-rw-r--r--src/hof_pc.c2
-rw-r--r--src/item_menu.c10
-rw-r--r--src/item_use.c6
-rw-r--r--src/mail.c2
-rw-r--r--src/move_tutor_menu.c2
-rw-r--r--src/overworld.c128
-rw-r--r--src/player_pc.c4
-rw-r--r--src/pokeblock.c4
-rw-r--r--src/pokemon_menu.c2
-rw-r--r--src/pokemon_storage_system.c2
-rw-r--r--src/rom6.c18
-rw-r--r--src/roulette.c2
-rw-r--r--src/safari_zone.c2
-rw-r--r--src/script.c4
-rw-r--r--src/script_pokemon_util_80F99CC.c2
-rw-r--r--src/shop.c2
-rw-r--r--src/trade.c2
-rw-r--r--src/trainer_see.c2
46 files changed, 1611 insertions, 1516 deletions
diff --git a/include/battle_setup.h b/include/battle_setup.h
index fec5a249a..f0608cb21 100644
--- a/include/battle_setup.h
+++ b/include/battle_setup.h
@@ -55,9 +55,9 @@ void BattleSetup_StartScriptedWildBattle(void);
s8 BattleSetup_GetTerrain(void);
u8 BattleSetup_GetBattleTowerBattleTransition(void);
u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data);
-void TrainerWantsBattle(u8, u8 *);
+void TrainerWantsBattle(u8, const u8 *);
-bool32 GetTrainerFlagFromScriptPointer(u8 *data);
+bool32 GetTrainerFlagFromScriptPointer(const u8 *data);
//u8 ScrSpecial_GetTrainerBattleMode(void);
//u8 ScrSpecial_HasTrainerBeenFought(void);
//void sub_808257C(void);
diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h
index 7c236671d..32c7b7625 100644
--- a/include/constants/event_objects.h
+++ b/include/constants/event_objects.h
@@ -240,6 +240,9 @@
#define EVENT_OBJ_GFX_VAR_E 254
#define EVENT_OBJ_GFX_VAR_F 255
+#define NUM_OBJECT_GRAPHICS_INFO 217
+#define SPRITE_VAR 239
+
#define SHADOW_SIZE_S 0
#define SHADOW_SIZE_M 1
#define SHADOW_SIZE_L 2
diff --git a/include/event_object_movement.h b/include/event_object_movement.h
index ece46fce0..b3040d6df 100644
--- a/include/event_object_movement.h
+++ b/include/event_object_movement.h
@@ -347,23 +347,17 @@ u8 GetFirstInactiveEventObjectId(void);
u8 GetEventObjectIdByLocalIdAndMap(u8, u8, u8);
bool8 TryGetEventObjectIdByLocalIdAndMap(u8, u8, u8, u8 *);
u8 GetEventObjectIdByXY(s16, s16);
-u8 GetEventObjectIdByLocalIdAndMapInternal(u8, u8, u8);
-u8 GetEventObjectIdByLocalId(u8);
-u8 GetAvailableEventObjectId(u16, u8, u8, u8 *);
void RemoveEventObjectByLocalIdAndMap(u8, u8, u8);
-void RemoveEventObjectInternal(struct EventObject *);
u8 SpawnSpecialEventObject(struct EventObjectTemplate *);
u8 show_sprite(u8, u8, u8);
-void MakeObjectTemplateFromEventObjectTemplate(struct EventObjectTemplate *eventObjTemplate, struct SpriteTemplate *sprTemplate, const struct SubspriteTable **subspriteTables);
u8 AddPseudoEventObject(u16 graphicsId, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority);
u8 sub_805B410(u8, u8, s16, s16, u8, u8);
void TrySpawnEventObjects(s16, s16);
void sub_805B710(u16 i, u16 i1);
-void sub_805B980(struct EventObject *, u8);
+void EventObjectSetGraphicsId(struct EventObject *, u8);
void EventObjectTurn(struct EventObject *, u8);
void EventObjectTurnByLocalIdAndMap(u8, u8, u8, u8);
const struct EventObjectGraphicsInfo *GetEventObjectGraphicsInfo(u8);
-void SetEventObjectDynamicGraphicsId(struct EventObject *);
void npc_by_local_id_and_map_set_field_1_bit_x20(u8, u8, u8, u8);
void EventObjectGetLocalIdAndMap(struct EventObject *, void *, void *, void *);
void sub_805BCC0(s16 x, s16 y);
@@ -372,9 +366,7 @@ void sub_805BD48(u8, u8, u8);
void sub_805BD90(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y);
void FreeAndReserveObjectSpritePalettes(void);
void sub_805BDF8(u16);
-u8 sub_805BE58(const struct SpritePalette *);
-void PatchObjectPalette(u16, u16);
-u8 FindEventObjectPaletteIndexByTag(u16);
+void PatchObjectPalette(u16, u8);
void LoadPlayerObjectReflectionPalette(u16, u8);
void LoadSpecialObjectReflectionPalette(u16, u8);
void ShiftEventObjectCoords(struct EventObject *pObject, s16 x, s16 y);
@@ -384,8 +376,7 @@ u8 GetEventObjectIdByXYZ(u16, u16, u8);
void UpdateEventObjectsForCameraUpdate(s16, s16);
u8 AddCameraObject(u8);
void CameraObjectReset1(void);
-u8 * GetEventObjectScriptPointerByEventObjectId(u8);
-u16 GetEventObjectFlagIdByEventObjectId(u8);
+const u8 *GetEventObjectScriptPointerByEventObjectId(u8);
u8 EventObjectGetBerryTreeId(u8);
struct EventObjectTemplate *GetEventObjectTemplateByLocalIdAndMap(u8, u8, u8);
void OverrideTemplateCoordsForEventObject(struct EventObject *pObject);
@@ -406,7 +397,6 @@ bool8 IsBerryTreeSparkling(u8, u8, u8);
void sub_8060288(u8, u8, u8);
void sub_8060388(s16, s16, s16 *, s16 *);
void sub_80603CC(s16 x, s16 y, s16 *pInt, s16 *pInt1);
-void GetEventObjectMovingCameraOffset(s16 *, s16 *);
void EventObjectMoveDestCoords(struct EventObject *pObject, u32 unk_19, s16 *pInt, s16 *pInt1);
bool8 EventObjectIsMovementOverridden(struct EventObject *);
bool8 EventObjectIsHeldMovementActive(struct EventObject *);
@@ -466,25 +456,8 @@ void DoShadowFieldEffect(struct EventObject *eventObject);
u8 sub_8064704(struct Sprite *);
u8 sub_806478C(struct Sprite *);
void SetAndStartSpriteAnim(struct Sprite *sprite, u8 a2, u8 a3);
-void DoRippleFieldEffect(struct EventObject *eventObj, struct Sprite *sprite);
bool8 IsZCoordMismatchAt(u8 z, s16 x, s16 y);
bool8 AreZCoordsCompatible(u8 z1, u8 z2);
-void EventObjectUpdateMetatileBehaviors(struct EventObject *);
-void GetGroundEffectFlags_Reflection(struct EventObject *, u32 *);
-void GetGroundEffectFlags_TallGrassOnSpawn(struct EventObject *, u32 *);
-void GetGroundEffectFlags_TallGrassOnBeginStep(struct EventObject *, u32 *);
-void GetGroundEffectFlags_LongGrassOnSpawn(struct EventObject *, u32 *);
-void GetGroundEffectFlags_LongGrassOnBeginStep(struct EventObject *, u32 *);
-void GetGroundEffectFlags_Tracks(struct EventObject *, u32 *);
-void GetGroundEffectFlags_SandPile(struct EventObject *, u32 *);
-void GetGroundEffectFlags_ShallowFlowingWater(struct EventObject *, u32 *);
-void GetGroundEffectFlags_Puddle(struct EventObject *, u32 *);
-void GetGroundEffectFlags_Ripple(struct EventObject *, u32 *);
-void GetGroundEffectFlags_ShortGrass(struct EventObject *, u32 *);
-void GetGroundEffectFlags_HotSprings(struct EventObject *, u32 *);
-void GetGroundEffectFlags_Seaweed(struct EventObject *, u32 *);
-void GetGroundEffectFlags_JumpLanding(struct EventObject *, u32 *);
-u8 EventObjectCheckForReflectiveSurface(struct EventObject *);
u8 GetLedgeJumpDirection(s16, s16, u8);
u8 ZCoordToPriority(u8);
void EventObjectUpdateZCoord(struct EventObject *pObject);
diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h
index 599d1da0c..df6482688 100644
--- a/include/field_control_avatar.h
+++ b/include/field_control_avatar.h
@@ -26,11 +26,11 @@ struct FieldInput
void ClearPlayerFieldInput(struct FieldInput *pStruct);
void GetPlayerFieldInput(struct FieldInput *pStruct, u16 keys, u16 heldKeys);
int ProcessPlayerFieldInput(struct FieldInput *pStruct);
-u8 *GetInteractedLinkPlayerScript(struct MapPosition *, u8, u8);
+const u8 *GetInteractedLinkPlayerScript(struct MapPosition *, u8, u8);
void ClearPoisonStepCounter(void);
void RestartWildEncounterImmunitySteps(void);
u8 *GetCoordEventScriptAtMapPosition(struct MapPosition *);
-u8 *GetEventObjectScriptPointerPlayerFacing(void);
+const u8 *GetEventObjectScriptPointerPlayerFacing(void);
u8 TrySetDiveWarp(void);
bool8 dive_warp(struct MapPosition*, u16);
diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h
index aa13a9ac0..81f805ee2 100644
--- a/include/global.fieldmap.h
+++ b/include/global.fieldmap.h
@@ -304,7 +304,7 @@ struct PlayerAvatar /* 0x202E858 */
struct Camera
{
- bool8 field_0:1;
+ bool8 active:1;
s32 x;
s32 y;
};
diff --git a/include/item_menu.h b/include/item_menu.h
index 22ef3892c..1a34b8f53 100644
--- a/include/item_menu.h
+++ b/include/item_menu.h
@@ -37,7 +37,7 @@ void CleanUpOverworldMessage(u8);
void ExecuteItemUseFromBlackPalette(void);
void sub_80A5D04(void);
void ItemMenu_LoadSellMenu(void);
-void sub_80A68CC();
+void CB2_ChooseBerry();
void sub_80A6A30(void);
bool32 UseRegisteredKeyItem(void);
void sub_80A6DCC(void);
diff --git a/include/overworld.h b/include/overworld.h
index f7571ee0f..9d00194be 100644
--- a/include/overworld.h
+++ b/include/overworld.h
@@ -31,7 +31,6 @@ extern u8 gUnknown_03004860;
void Overworld_ResetStateAfterFly(void);
void Overworld_ResetStateAfterTeleport(void);
void Overworld_ResetStateAfterDigEscRope(void);
-void Overworld_ResetStateAfterWhiteOut(void);
void ResetGameStats(void);
void IncrementGameStat(u8 index);
u32 GetGameStat(u8 index);
@@ -98,7 +97,6 @@ bool8 BGMusicStopped(void);
void Overworld_FadeOutMapMusic(void);
// PlayAmbientCry
void UpdateAmbientCry(s16 *, u16 *);
-void ChooseAmbientCrySpecies(void);
u8 GetMapTypeByGroupAndId(s8 mapGroup, s8 mapNum);
// GetMapTypeByWarpData
u8 Overworld_GetMapTypeOfSaveblockLocation(void);
@@ -115,8 +113,7 @@ bool32 is_c1_link_related_active(void);
// c1_overworld
// OverworldBasic
void CB2_OverworldBasic(void);
-void c2_overworld(void);
-// set_callback1
+// SetMainCallback1
// sub_80543DC
void CB2_NewGame(void);
void CB2_WhiteOut(void);
@@ -124,9 +121,9 @@ void CB2_LoadMap(void);
void CB2_LoadMap2(void);
void sub_8054534(void);
void sub_8054588(void);
-void c2_exit_to_overworld_2_switch(void);
-void c2_exit_to_overworld_2_local(void);
-void c2_exit_to_overworld_2_link(void);
+void CB2_ReturnToField(void);
+void CB2_ReturnToFieldLocal(void);
+void CB2_ReturnToFieldLink(void);
// sub_805465C
void c2_exit_to_overworld_1_sub_8080DEC(void);
// sub_80546B8
@@ -135,8 +132,6 @@ void sub_80546F0(void);
// sub_805470C
void CB2_ContinueSavedGame(void);
void FieldClearVBlankHBlankCallbacks(void);
-void SetFieldVBlankCallback(void);
-void VBlankCB_Field(void);
bool32 sub_805493C(u8 *, u32);
bool32 sub_8054A4C(u8 *);
bool32 sub_8054A9C(u8 *a1);
@@ -184,13 +179,10 @@ bool32 sub_8055618(struct UnkStruct_8054FF8 *);
bool32 sub_8055630(struct UnkStruct_8054FF8 *);
u8 *sub_8055648(struct UnkStruct_8054FF8 *);
bool32 sub_8055660(struct UnkStruct_8054FF8 *);
-u8 *sub_805568C(struct UnkStruct_8054FF8 *);
-u16 sub_8055758(u8 *);
+const u8 *sub_805568C(struct UnkStruct_8054FF8 *);
void sub_80557E8(void);
void sub_80557F4(void);
-void sub_8055808(u8 *);
void sub_8055824(void);
-void sub_8055840(u8 *);
void sub_805585C(void);
bool32 sub_8055870(void);
u32 sub_80558AC(void);
@@ -199,8 +191,6 @@ u32 sub_8055940(void);
// ClearLinkPlayerEventObject
void ClearLinkPlayerEventObjects(void);
// ZeroEventObject
-void SpawnLinkPlayerEventObject(u8, s16, s16, u8);
-void InitLinkPlayerEventObjectPos(struct EventObject *, s16, s16);
// unref_sub_8055A6C
// unref_sub_8055A9C
u8 sub_8055AE8(u8);
@@ -208,7 +198,6 @@ void sub_8055B08(u8, u16 *, u16 *);
u8 sub_8055B30(u8);
u8 sub_8055B50(u8);
// unref_sub_8055B74
-u8 GetLinkPlayerIdAt(s16, s16);
void sub_8055BFC(u8, u8);
// sub_8055C68
// sub_8055C88
@@ -218,10 +207,6 @@ void sub_8055BFC(u8, u8);
// sub_8055D18
// sub_8055D30
// sub_8055D38
-u8 npc_something3(u8, u8);
-u8 LinkPlayerDetectCollision(u8, u8, s16, s16);
-void CreateLinkPlayerSprite(u8);
-void SpriteCB_LinkPlayer(struct Sprite *);
void sub_805465C(void);
void CB2_InitTestMenu(void);
diff --git a/include/rom6.h b/include/rom6.h
index 105eac19a..508817163 100644
--- a/include/rom6.h
+++ b/include/rom6.h
@@ -3,7 +3,7 @@
extern struct MapPosition gPlayerFacingPosition;
-bool8 SetLastTalkedObjectInFrontOfPlayer(u8);
+bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId);
u8 oei_task_add(void);
void debug_sub_8120968(void);
diff --git a/include/script.h b/include/script.h
index 5a899cf4a..17effd358 100644
--- a/include/script.h
+++ b/include/script.h
@@ -50,6 +50,6 @@ bool8 mapheader_run_first_tag2_script_list_match(void);
void mapheader_run_first_tag4_script_list_match(void);
void ClearRamScript(void);
bool8 InitRamScript(u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objectId);
-u8 *GetRamScript(u8 objectId, u8 *script);
+const u8 *GetRamScript(u8 objectId, const u8 *script);
#endif // GUARD_SCRIPT_H
diff --git a/src/battle/battle_setup.c b/src/battle/battle_setup.c
index fc929eb4d..c457cc8ec 100644
--- a/src/battle/battle_setup.c
+++ b/src/battle/battle_setup.c
@@ -627,7 +627,7 @@ static void CB2_EndWildBattle(void)
}
else
{
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
gFieldCallback = sub_8080E44;
}
}
@@ -1038,7 +1038,7 @@ u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data)
}
}
-void TrainerWantsBattle(u8 trainerEventObjId, u8 *trainerScript)
+void TrainerWantsBattle(u8 trainerEventObjId, const u8 *trainerScript)
{
gSelectedEventObject = trainerEventObjId;
gSpecialVar_LastTalked = gEventObjects[trainerEventObjId].localId;
@@ -1047,7 +1047,7 @@ void TrainerWantsBattle(u8 trainerEventObjId, u8 *trainerScript)
ScriptContext2_Enable();
}
-bool32 GetTrainerFlagFromScriptPointer(u8 *data)
+bool32 GetTrainerFlagFromScriptPointer(const u8 *data)
{
u32 flag = TrainerBattleLoadArg16(data + 2);
return FlagGet(TRAINER_FLAG_START + flag);
diff --git a/src/berry.c b/src/berry.c
index 6e7d4592c..cca07a6bb 100644
--- a/src/berry.c
+++ b/src/berry.c
@@ -1,7 +1,7 @@
#include "global.h"
#include "berry.h"
-#include "field_control_avatar.h"
#include "event_object_movement.h"
+#include "field_control_avatar.h"
#include "fieldmap.h"
#include "item.h"
#include "item_menu.h"
@@ -59,92 +59,92 @@
#define NAME_STARF_BERRY _("STARF")
#define NAME_ENIGMA_BERRY _("ENIGMA")
-static const u8 gBerryDescriptionPart1_Cheri[] = _("Blooms with delicate pretty flowers.");
-static const u8 gBerryDescriptionPart2_Cheri[] = _("The bright red BERRY is very spicy.");
-static const u8 gBerryDescriptionPart1_Chesto[] = _("The BERRY’s thick skin and fruit are");
-static const u8 gBerryDescriptionPart2_Chesto[] = _("very tough. It is dry-tasting all over.");
-static const u8 gBerryDescriptionPart1_Pecha[] = _("Very sweet and delicious.");
-static const u8 gBerryDescriptionPart2_Pecha[] = _("Also very tender - handle with care.");
-static const u8 gBerryDescriptionPart1_Rawst[] = _("If the leaves grow long and curly,");
-static const u8 gBerryDescriptionPart2_Rawst[] = _("the BERRY seems to grow very bitter.");
-static const u8 gBerryDescriptionPart1_Aspear[] = _("The hard BERRY is dense with a rich");
-static const u8 gBerryDescriptionPart2_Aspear[] = _("juice. It is quite sour.");
-static const u8 gBerryDescriptionPart1_Leppa[] = _("Grows slower than CHERI and others.");
-static const u8 gBerryDescriptionPart2_Leppa[] = _("The smaller the BERRY, the tastier.");
-static const u8 gBerryDescriptionPart1_Oran[] = _("A peculiar BERRY with a mix of flavors.");
-static const u8 gBerryDescriptionPart2_Oran[] = _("BERRIES grow in half a day.");
-static const u8 gBerryDescriptionPart1_Persim[] = _("Loves sunlight. The BERRY’s color");
-static const u8 gBerryDescriptionPart2_Persim[] = _("grows vivid when exposed to the sun.");
-static const u8 gBerryDescriptionPart1_Lum[] = _("Slow to grow. If raised with loving");
-static const u8 gBerryDescriptionPart2_Lum[] = _("care, it may grow two BERRIES.");
-static const u8 gBerryDescriptionPart1_Sitrus[] = _("Closely related to ORAN. The large");
-static const u8 gBerryDescriptionPart2_Sitrus[] = _("BERRY has a well-rounded flavor.");
-static const u8 gBerryDescriptionPart1_Figy[] = _("The BERRY, which looks chewed up,");
-static const u8 gBerryDescriptionPart2_Figy[] = _("brims with spicy substances.");
-static const u8 gBerryDescriptionPart1_Wiki[] = _("The BERRY is said to have grown lumpy");
-static const u8 gBerryDescriptionPart2_Wiki[] = _("to help POKéMON grip it.");
-static const u8 gBerryDescriptionPart1_Mago[] = _("The BERRY turns curvy as it grows.");
-static const u8 gBerryDescriptionPart2_Mago[] = _("The curvier, the sweeter and tastier.");
-static const u8 gBerryDescriptionPart1_Aguav[] = _("The flower is dainty. It is rare in its");
-static const u8 gBerryDescriptionPart2_Aguav[] = _("ability to grow without light.");
-static const u8 gBerryDescriptionPart1_Iapapa[] = _("The BERRY is very big and sour.");
-static const u8 gBerryDescriptionPart2_Iapapa[] = _("It takes at least a day to grow.");
-static const u8 gBerryDescriptionPart1_Razz[] = _("The red BERRY tastes slightly spicy.");
-static const u8 gBerryDescriptionPart2_Razz[] = _("It grows quickly in just four hours.");
-static const u8 gBerryDescriptionPart1_Bluk[] = _("The BERRY is blue on the outside, but");
-static const u8 gBerryDescriptionPart2_Bluk[] = _("it blackens the mouth when eaten.");
-static const u8 gBerryDescriptionPart1_Nanab[] = _("This BERRY was the seventh");
-static const u8 gBerryDescriptionPart2_Nanab[] = _("discovered in the world. It is sweet.");
-static const u8 gBerryDescriptionPart1_Wepear[] = _("The flower is small and white. It has a");
-static const u8 gBerryDescriptionPart2_Wepear[] = _("delicate balance of bitter and sour.");
-static const u8 gBerryDescriptionPart1_Pinap[] = _("Weak against wind and cold.");
-static const u8 gBerryDescriptionPart2_Pinap[] = _("The fruit is spicy and the skin, sour.");
-static const u8 gBerryDescriptionPart1_Pomeg[] = _("However much it is watered,");
-static const u8 gBerryDescriptionPart2_Pomeg[] = _("it only grows up to six BERRIES.");
-static const u8 gBerryDescriptionPart1_Kelpsy[] = _("A rare variety shaped like a root.");
-static const u8 gBerryDescriptionPart2_Kelpsy[] = _("Grows a very large flower.");
-static const u8 gBerryDescriptionPart1_Qualot[] = _("Loves water. Grows strong even in");
-static const u8 gBerryDescriptionPart2_Qualot[] = _("locations with constant rainfall.");
-static const u8 gBerryDescriptionPart1_Hondew[] = _("A BERRY that is very valuable and");
-static const u8 gBerryDescriptionPart2_Hondew[] = _("rarely seen. It is very delicious.");
-static const u8 gBerryDescriptionPart1_Grepa[] = _("Despite its tenderness and round");
-static const u8 gBerryDescriptionPart2_Grepa[] = _("shape, the BERRY is unimaginably sour.");
-static const u8 gBerryDescriptionPart1_Tamato[] = _("The BERRY is lip-bendingly spicy.");
-static const u8 gBerryDescriptionPart2_Tamato[] = _("It takes time to grow.");
-static const u8 gBerryDescriptionPart1_Cornn[] = _("A BERRY from an ancient era. May not");
-static const u8 gBerryDescriptionPart2_Cornn[] = _("grow unless planted in quantity.");
-static const u8 gBerryDescriptionPart1_Magost[] = _("A BERRY that is widely said to have");
-static const u8 gBerryDescriptionPart2_Magost[] = _("a finely balanced flavor.");
-static const u8 gBerryDescriptionPart1_Rabuta[] = _("A rare variety that is overgrown with");
-static const u8 gBerryDescriptionPart2_Rabuta[] = _("hair. It is quite bitter.");
-static const u8 gBerryDescriptionPart1_Nomel[] = _("Quite sour. Just one bite makes it");
-static const u8 gBerryDescriptionPart2_Nomel[] = _("impossible to taste for three days.");
-static const u8 gBerryDescriptionPart1_Spelon[] = _("The vividly red BERRY is very spicy.");
-static const u8 gBerryDescriptionPart2_Spelon[] = _("Its warts secrete a spicy substance.");
-static const u8 gBerryDescriptionPart1_Pamtre[] = _("Drifts on the sea from somewhere.");
-static const u8 gBerryDescriptionPart2_Pamtre[] = _("It is thought to grow elsewhere.");
-static const u8 gBerryDescriptionPart1_Watmel[] = _("A huge BERRY, with some over 20");
-static const u8 gBerryDescriptionPart2_Watmel[] = _("inches discovered. Exceedingly sweet.");
-static const u8 gBerryDescriptionPart1_Durin[] = _("Bitter to even look at. It is so");
-static const u8 gBerryDescriptionPart2_Durin[] = _("bitter, no one has ever eaten it as is.");
-static const u8 gBerryDescriptionPart1_Belue[] = _("It is glossy and looks delicious, but");
-static const u8 gBerryDescriptionPart2_Belue[] = _("it is awfully sour. Takes time to grow.");
-static const u8 gBerryDescriptionPart1_Liechi[] = _("A mysterious BERRY. It is rumored to");
-static const u8 gBerryDescriptionPart2_Liechi[] = _("contain the power of the sea.");
-static const u8 gBerryDescriptionPart1_Ganlon[] = _("A mysterious BERRY. It is rumored to");
-static const u8 gBerryDescriptionPart2_Ganlon[] = _("contain the power of the land.");
-static const u8 gBerryDescriptionPart1_Salac[] = _("A mysterious BERRY. It is rumored to");
-static const u8 gBerryDescriptionPart2_Salac[] = _("contain the power of the sky.");
-static const u8 gBerryDescriptionPart1_Petaya[] = _("A mysterious BERRY. It is rumored to");
-static const u8 gBerryDescriptionPart2_Petaya[] = _("contain the power of all living things.");
-static const u8 gBerryDescriptionPart1_Apicot[] = _("A very mystifying BERRY. No telling");
-static const u8 gBerryDescriptionPart2_Apicot[] = _("what may happen or how it can be used.");
-static const u8 gBerryDescriptionPart1_Lansat[] = _("Said to be a legendary BERRY.");
-static const u8 gBerryDescriptionPart2_Lansat[] = _("Holding it supposedly brings joy.");
-static const u8 gBerryDescriptionPart1_Starf[] = _("So strong, it was abandoned at the");
-static const u8 gBerryDescriptionPart2_Starf[] = _("world’s edge. Considered a mirage.");
-static const u8 gBerryDescriptionPart1_Enigma[] = _("A completely enigmatic BERRY.");
-static const u8 gBerryDescriptionPart2_Enigma[] = _("Appears to have the power of stars.");
+static const u8 sBerryDescriptionPart1_Cheri[] = _("Blooms with delicate pretty flowers.");
+static const u8 sBerryDescriptionPart2_Cheri[] = _("The bright red BERRY is very spicy.");
+static const u8 sBerryDescriptionPart1_Chesto[] = _("The BERRY’s thick skin and fruit are");
+static const u8 sBerryDescriptionPart2_Chesto[] = _("very tough. It is dry-tasting all over.");
+static const u8 sBerryDescriptionPart1_Pecha[] = _("Very sweet and delicious.");
+static const u8 sBerryDescriptionPart2_Pecha[] = _("Also very tender - handle with care.");
+static const u8 sBerryDescriptionPart1_Rawst[] = _("If the leaves grow long and curly,");
+static const u8 sBerryDescriptionPart2_Rawst[] = _("the BERRY seems to grow very bitter.");
+static const u8 sBerryDescriptionPart1_Aspear[] = _("The hard BERRY is dense with a rich");
+static const u8 sBerryDescriptionPart2_Aspear[] = _("juice. It is quite sour.");
+static const u8 sBerryDescriptionPart1_Leppa[] = _("Grows slower than CHERI and others.");
+static const u8 sBerryDescriptionPart2_Leppa[] = _("The smaller the BERRY, the tastier.");
+static const u8 sBerryDescriptionPart1_Oran[] = _("A peculiar BERRY with a mix of flavors.");
+static const u8 sBerryDescriptionPart2_Oran[] = _("BERRIES grow in half a day.");
+static const u8 sBerryDescriptionPart1_Persim[] = _("Loves sunlight. The BERRY’s color");
+static const u8 sBerryDescriptionPart2_Persim[] = _("grows vivid when exposed to the sun.");
+static const u8 sBerryDescriptionPart1_Lum[] = _("Slow to grow. If raised with loving");
+static const u8 sBerryDescriptionPart2_Lum[] = _("care, it may grow two BERRIES.");
+static const u8 sBerryDescriptionPart1_Sitrus[] = _("Closely related to ORAN. The large");
+static const u8 sBerryDescriptionPart2_Sitrus[] = _("BERRY has a well-rounded flavor.");
+static const u8 sBerryDescriptionPart1_Figy[] = _("The BERRY, which looks chewed up,");
+static const u8 sBerryDescriptionPart2_Figy[] = _("brims with spicy substances.");
+static const u8 sBerryDescriptionPart1_Wiki[] = _("The BERRY is said to have grown lumpy");
+static const u8 sBerryDescriptionPart2_Wiki[] = _("to help POKéMON grip it.");
+static const u8 sBerryDescriptionPart1_Mago[] = _("The BERRY turns curvy as it grows.");
+static const u8 sBerryDescriptionPart2_Mago[] = _("The curvier, the sweeter and tastier.");
+static const u8 sBerryDescriptionPart1_Aguav[] = _("The flower is dainty. It is rare in its");
+static const u8 sBerryDescriptionPart2_Aguav[] = _("ability to grow without light.");
+static const u8 sBerryDescriptionPart1_Iapapa[] = _("The BERRY is very big and sour.");
+static const u8 sBerryDescriptionPart2_Iapapa[] = _("It takes at least a day to grow.");
+static const u8 sBerryDescriptionPart1_Razz[] = _("The red BERRY tastes slightly spicy.");
+static const u8 sBerryDescriptionPart2_Razz[] = _("It grows quickly in just four hours.");
+static const u8 sBerryDescriptionPart1_Bluk[] = _("The BERRY is blue on the outside, but");
+static const u8 sBerryDescriptionPart2_Bluk[] = _("it blackens the mouth when eaten.");
+static const u8 sBerryDescriptionPart1_Nanab[] = _("This BERRY was the seventh");
+static const u8 sBerryDescriptionPart2_Nanab[] = _("discovered in the world. It is sweet.");
+static const u8 sBerryDescriptionPart1_Wepear[] = _("The flower is small and white. It has a");
+static const u8 sBerryDescriptionPart2_Wepear[] = _("delicate balance of bitter and sour.");
+static const u8 sBerryDescriptionPart1_Pinap[] = _("Weak against wind and cold.");
+static const u8 sBerryDescriptionPart2_Pinap[] = _("The fruit is spicy and the skin, sour.");
+static const u8 sBerryDescriptionPart1_Pomeg[] = _("However much it is watered,");
+static const u8 sBerryDescriptionPart2_Pomeg[] = _("it only grows up to six BERRIES.");
+static const u8 sBerryDescriptionPart1_Kelpsy[] = _("A rare variety shaped like a root.");
+static const u8 sBerryDescriptionPart2_Kelpsy[] = _("Grows a very large flower.");
+static const u8 sBerryDescriptionPart1_Qualot[] = _("Loves water. Grows strong even in");
+static const u8 sBerryDescriptionPart2_Qualot[] = _("locations with constant rainfall.");
+static const u8 sBerryDescriptionPart1_Hondew[] = _("A BERRY that is very valuable and");
+static const u8 sBerryDescriptionPart2_Hondew[] = _("rarely seen. It is very delicious.");
+static const u8 sBerryDescriptionPart1_Grepa[] = _("Despite its tenderness and round");
+static const u8 sBerryDescriptionPart2_Grepa[] = _("shape, the BERRY is unimaginably sour.");
+static const u8 sBerryDescriptionPart1_Tamato[] = _("The BERRY is lip-bendingly spicy.");
+static const u8 sBerryDescriptionPart2_Tamato[] = _("It takes time to grow.");
+static const u8 sBerryDescriptionPart1_Cornn[] = _("A BERRY from an ancient era. May not");
+static const u8 sBerryDescriptionPart2_Cornn[] = _("grow unless planted in quantity.");
+static const u8 sBerryDescriptionPart1_Magost[] = _("A BERRY that is widely said to have");
+static const u8 sBerryDescriptionPart2_Magost[] = _("a finely balanced flavor.");
+static const u8 sBerryDescriptionPart1_Rabuta[] = _("A rare variety that is overgrown with");
+static const u8 sBerryDescriptionPart2_Rabuta[] = _("hair. It is quite bitter.");
+static const u8 sBerryDescriptionPart1_Nomel[] = _("Quite sour. Just one bite makes it");
+static const u8 sBerryDescriptionPart2_Nomel[] = _("impossible to taste for three days.");
+static const u8 sBerryDescriptionPart1_Spelon[] = _("The vividly red BERRY is very spicy.");
+static const u8 sBerryDescriptionPart2_Spelon[] = _("Its warts secrete a spicy substance.");
+static const u8 sBerryDescriptionPart1_Pamtre[] = _("Drifts on the sea from somewhere.");
+static const u8 sBerryDescriptionPart2_Pamtre[] = _("It is thought to grow elsewhere.");
+static const u8 sBerryDescriptionPart1_Watmel[] = _("A huge BERRY, with some over 20");
+static const u8 sBerryDescriptionPart2_Watmel[] = _("inches discovered. Exceedingly sweet.");
+static const u8 sBerryDescriptionPart1_Durin[] = _("Bitter to even look at. It is so");
+static const u8 sBerryDescriptionPart2_Durin[] = _("bitter, no one has ever eaten it as is.");
+static const u8 sBerryDescriptionPart1_Belue[] = _("It is glossy and looks delicious, but");
+static const u8 sBerryDescriptionPart2_Belue[] = _("it is awfully sour. Takes time to grow.");
+static const u8 sBerryDescriptionPart1_Liechi[] = _("A mysterious BERRY. It is rumored to");
+static const u8 sBerryDescriptionPart2_Liechi[] = _("contain the power of the sea.");
+static const u8 sBerryDescriptionPart1_Ganlon[] = _("A mysterious BERRY. It is rumored to");
+static const u8 sBerryDescriptionPart2_Ganlon[] = _("contain the power of the land.");
+static const u8 sBerryDescriptionPart1_Salac[] = _("A mysterious BERRY. It is rumored to");
+static const u8 sBerryDescriptionPart2_Salac[] = _("contain the power of the sky.");
+static const u8 sBerryDescriptionPart1_Petaya[] = _("A mysterious BERRY. It is rumored to");
+static const u8 sBerryDescriptionPart2_Petaya[] = _("contain the power of all living things.");
+static const u8 sBerryDescriptionPart1_Apicot[] = _("A very mystifying BERRY. No telling");
+static const u8 sBerryDescriptionPart2_Apicot[] = _("what may happen or how it can be used.");
+static const u8 sBerryDescriptionPart1_Lansat[] = _("Said to be a legendary BERRY.");
+static const u8 sBerryDescriptionPart2_Lansat[] = _("Holding it supposedly brings joy.");
+static const u8 sBerryDescriptionPart1_Starf[] = _("So strong, it was abandoned at the");
+static const u8 sBerryDescriptionPart2_Starf[] = _("world’s edge. Considered a mirage.");
+static const u8 sBerryDescriptionPart1_Enigma[] = _("A completely enigmatic BERRY.");
+static const u8 sBerryDescriptionPart2_Enigma[] = _("Appears to have the power of stars.");
#elif defined(GERMAN)
#define NAME_CHERI_BERRY _("AMRENA")
#define NAME_CHESTO_BERRY _("MARON")
@@ -190,92 +190,92 @@ static const u8 gBerryDescriptionPart2_Enigma[] = _("Appears to have the power o
#define NAME_STARF_BERRY _("KRAMBO")
#define NAME_ENIGMA_BERRY _("ENIGMA")
-static const u8 gBerryDescriptionPart1_Cheri[] = _("Erblüht mit hübschen, zarten Blumen.");
-static const u8 gBerryDescriptionPart2_Cheri[] = _("Diese knallrote BEERE ist sehr scharf.");
-static const u8 gBerryDescriptionPart1_Chesto[] = _("Diese BEERE hat eine dicke Haut und");
-static const u8 gBerryDescriptionPart2_Chesto[] = _("hartes Fruchtfleisch. Trocken!");
-static const u8 gBerryDescriptionPart1_Pecha[] = _("Sehr süß und delikat.");
-static const u8 gBerryDescriptionPart2_Pecha[] = _("Sehr zart. Vorsichtig anfassen!");
-static const u8 gBerryDescriptionPart1_Rawst[] = _("Wenn die Blätter lang und wellig sind,");
-static const u8 gBerryDescriptionPart2_Rawst[] = _("wird die BEERE sehr bitter.");
-static const u8 gBerryDescriptionPart1_Aspear[] = _("Diese harte BEERE ist sehr");
-static const u8 gBerryDescriptionPart2_Aspear[] = _("saftig und sauer im Geschmack!");
-static const u8 gBerryDescriptionPart1_Leppa[] = _("Wächst langsamer als AMRENA und");
-static const u8 gBerryDescriptionPart2_Leppa[] = _("andere. Je kleiner, desto delikater.");
-static const u8 gBerryDescriptionPart1_Oran[] = _("Eine BEERE unterschiedlichsten Ge-");
-static const u8 gBerryDescriptionPart2_Oran[] = _("schmacks. Wächst an einem halben Tag.");
-static const u8 gBerryDescriptionPart1_Persim[] = _("Liebt Sonnenlicht. Die BEERE");
-static const u8 gBerryDescriptionPart2_Persim[] = _("wächst im Sonnenlicht sehr schnell.");
-static const u8 gBerryDescriptionPart1_Lum[] = _("Langsamer Wuchs. Wird sie liebevoll ge-");
-static const u8 gBerryDescriptionPart2_Lum[] = _("pflegt, kann sie 2 BEEREN tragen.");
-static const u8 gBerryDescriptionPart1_Sitrus[] = _("Eng verwandt mit SINEL. Diese große");
-static const u8 gBerryDescriptionPart2_Sitrus[] = _("BEERE ist von rundem Geschmack.");
-static const u8 gBerryDescriptionPart1_Figy[] = _("Die BEERE sieht angekaut aus. Sie ist");
-static const u8 gBerryDescriptionPart2_Figy[] = _("voller scharfer Substanzen.");
-static const u8 gBerryDescriptionPart1_Wiki[] = _("Die BEERE wächst unförmig,");
-static const u8 gBerryDescriptionPart2_Wiki[] = _("damit PKMN sie besser greifen können.");
-static const u8 gBerryDescriptionPart1_Mago[] = _("Die BEERE hat Ausbeulungen. Je mehr");
-static const u8 gBerryDescriptionPart2_Mago[] = _("Beulen, desto schmackhafter ist sie.");
-static const u8 gBerryDescriptionPart1_Aguav[] = _("Die Blume ist zart. Sie ist fähig,");
-static const u8 gBerryDescriptionPart2_Aguav[] = _("ohne Licht wachsen zu können.");
-static const u8 gBerryDescriptionPart1_Iapapa[] = _("Die BEERE ist groß und sauer.");
-static const u8 gBerryDescriptionPart2_Iapapa[] = _("Sie braucht einen Tag zum Wachsen.");
-static const u8 gBerryDescriptionPart1_Razz[] = _("Diese rote BEERE schmeckt etwas");
-static const u8 gBerryDescriptionPart2_Razz[] = _("scharf. Sie wächst in nur 4 Stunden.");
-static const u8 gBerryDescriptionPart1_Bluk[] = _("Die BEERE ist außen blau, verfärbt");
-static const u8 gBerryDescriptionPart2_Bluk[] = _("sich im Mund aber schwarz.");
-static const u8 gBerryDescriptionPart1_Nanab[] = _("Diese BEERE war die 7., die auf der");
-static const u8 gBerryDescriptionPart2_Nanab[] = _("Welt entdeckt wurde. Sie ist süß.");
-static const u8 gBerryDescriptionPart1_Wepear[] = _("Die Blume ist klein und weiß. Angenehm");
-static const u8 gBerryDescriptionPart2_Wepear[] = _("bitter und sauer zugleich.");
-static const u8 gBerryDescriptionPart1_Pinap[] = _("Wind und Kälte verträgt sie nicht.");
-static const u8 gBerryDescriptionPart2_Pinap[] = _("Fruchtfleisch: Scharf. Haut: Sauer.");
-static const u8 gBerryDescriptionPart1_Pomeg[] = _("Egal wie viel Wasser sie bekommt, sie");
-static const u8 gBerryDescriptionPart2_Pomeg[] = _("trägt immer bis zu 6 BEEREN.");
-static const u8 gBerryDescriptionPart1_Kelpsy[] = _("Eine Seltenheit. Geformt wie eine");
-static const u8 gBerryDescriptionPart2_Kelpsy[] = _("Wurzel. Hat eine große Blume.");
-static const u8 gBerryDescriptionPart1_Qualot[] = _("Liebt das Wasser. Wächst besonders");
-static const u8 gBerryDescriptionPart2_Qualot[] = _("gut in regenreichen Gegenden.");
-static const u8 gBerryDescriptionPart1_Hondew[] = _("Eine wertvolle und seltene BEERE.");
-static const u8 gBerryDescriptionPart2_Hondew[] = _("Sie ist sehr schmackhaft.");
-static const u8 gBerryDescriptionPart1_Grepa[] = _("Die BEERE ist zart und von runder");
-static const u8 gBerryDescriptionPart2_Grepa[] = _("Form. Aber sie ist unglaublich sauer!");
-static const u8 gBerryDescriptionPart1_Tamato[] = _("Die Schärfe der BEERE verbrennt die");
-static const u8 gBerryDescriptionPart2_Tamato[] = _("Lippen. Sie braucht Zeit zum Wachsen.");
-static const u8 gBerryDescriptionPart1_Cornn[] = _("Eine BEERE aus alten Zeiten. Wächst");
-static const u8 gBerryDescriptionPart2_Cornn[] = _("nur, wenn in großen Mengen gepflanzt.");
-static const u8 gBerryDescriptionPart1_Magost[] = _("Eine BEERE, die für ihren feinen, aus-");
-static const u8 gBerryDescriptionPart2_Magost[] = _("gewogenen Geschmack bekannt ist.");
-static const u8 gBerryDescriptionPart1_Rabuta[] = _("Eine Seltenheit, die über und über mit");
-static const u8 gBerryDescriptionPart2_Rabuta[] = _("Haaren bewachsen ist. Sehr bitter!");
-static const u8 gBerryDescriptionPart1_Nomel[] = _("Sehr sauer. Ein Biss betäubt die");
-static const u8 gBerryDescriptionPart2_Nomel[] = _("Geschmacksnerven für 3 Tage!");
-static const u8 gBerryDescriptionPart1_Spelon[] = _("Die leuchtend rote BEERE ist sehr");
-static const u8 gBerryDescriptionPart2_Spelon[] = _("scharf. Gibt scharfe Substanzen ab!");
-static const u8 gBerryDescriptionPart1_Pamtre[] = _("Wird vom Meer angespült. Sie wächst");
-static const u8 gBerryDescriptionPart2_Pamtre[] = _("an einem anderen Ort.");
-static const u8 gBerryDescriptionPart1_Watmel[] = _("Eine große BEERE, 25 cm groß.");
-static const u8 gBerryDescriptionPart2_Watmel[] = _("Außergewöhnlich süß.");
-static const u8 gBerryDescriptionPart1_Durin[] = _("Bitter schon ihr Anblick! Sie ist so");
-static const u8 gBerryDescriptionPart2_Durin[] = _("bitter, dass niemand sie pur isst.");
-static const u8 gBerryDescriptionPart1_Belue[] = _("Sie glänzt, sieht zart aus, ist extrem");
-static const u8 gBerryDescriptionPart2_Belue[] = _("sauer und braucht Zeit zum Wachsen.");
-static const u8 gBerryDescriptionPart1_Liechi[] = _("Eine geheimnisvolle BEERE. Man sagt,");
-static const u8 gBerryDescriptionPart2_Liechi[] = _("sie enthalte die Kraft des Meeres.");
-static const u8 gBerryDescriptionPart1_Ganlon[] = _("Eine geheimnisvolle BEERE. Man sagt,");
-static const u8 gBerryDescriptionPart2_Ganlon[] = _("sie enthalte die Kraft des Landes.");
-static const u8 gBerryDescriptionPart1_Salac[] = _("Eine geheimnisvolle BEERE. Man sagt,");
-static const u8 gBerryDescriptionPart2_Salac[] = _("sie enthalte die Kraft des Himmels.");
-static const u8 gBerryDescriptionPart1_Petaya[] = _("Eine geheimnisvolle BEERE. Man sagt,");
-static const u8 gBerryDescriptionPart2_Petaya[] = _("sie enthalte die Kraft allen Lebens.");
-static const u8 gBerryDescriptionPart1_Apicot[] = _("Eine rätselhafte BEERE. Man kann");
-static const u8 gBerryDescriptionPart2_Apicot[] = _("nicht sagen, wie und was sie ist.");
-static const u8 gBerryDescriptionPart1_Lansat[] = _("Eine legendäre BEERE. Sie zu");
-static const u8 gBerryDescriptionPart2_Lansat[] = _("tragen bringt Freude.");
-static const u8 gBerryDescriptionPart1_Starf[] = _("So stark, dass sie an den Rand der");
-static const u8 gBerryDescriptionPart2_Starf[] = _("Welt verbannt wurde. Ein Märchen?");
-static const u8 gBerryDescriptionPart1_Enigma[] = _("Eine enigmatische BEERE. Sie scheint");
-static const u8 gBerryDescriptionPart2_Enigma[] = _("die Macht der Sterne zu besitzen.");
+static const u8 sBerryDescriptionPart1_Cheri[] = _("Erblüht mit hübschen, zarten Blumen.");
+static const u8 sBerryDescriptionPart2_Cheri[] = _("Diese knallrote BEERE ist sehr scharf.");
+static const u8 sBerryDescriptionPart1_Chesto[] = _("Diese BEERE hat eine dicke Haut und");
+static const u8 sBerryDescriptionPart2_Chesto[] = _("hartes Fruchtfleisch. Trocken!");
+static const u8 sBerryDescriptionPart1_Pecha[] = _("Sehr süß und delikat.");
+static const u8 sBerryDescriptionPart2_Pecha[] = _("Sehr zart. Vorsichtig anfassen!");
+static const u8 sBerryDescriptionPart1_Rawst[] = _("Wenn die Blätter lang und wellig sind,");
+static const u8 sBerryDescriptionPart2_Rawst[] = _("wird die BEERE sehr bitter.");
+static const u8 sBerryDescriptionPart1_Aspear[] = _("Diese harte BEERE ist sehr");
+static const u8 sBerryDescriptionPart2_Aspear[] = _("saftig und sauer im Geschmack!");
+static const u8 sBerryDescriptionPart1_Leppa[] = _("Wächst langsamer als AMRENA und");
+static const u8 sBerryDescriptionPart2_Leppa[] = _("andere. Je kleiner, desto delikater.");
+static const u8 sBerryDescriptionPart1_Oran[] = _("Eine BEERE unterschiedlichsten Ge-");
+static const u8 sBerryDescriptionPart2_Oran[] = _("schmacks. Wächst an einem halben Tag.");
+static const u8 sBerryDescriptionPart1_Persim[] = _("Liebt Sonnenlicht. Die BEERE");
+static const u8 sBerryDescriptionPart2_Persim[] = _("wächst im Sonnenlicht sehr schnell.");
+static const u8 sBerryDescriptionPart1_Lum[] = _("Langsamer Wuchs. Wird sie liebevoll ge-");
+static const u8 sBerryDescriptionPart2_Lum[] = _("pflegt, kann sie 2 BEEREN tragen.");
+static const u8 sBerryDescriptionPart1_Sitrus[] = _("Eng verwandt mit SINEL. Diese große");
+static const u8 sBerryDescriptionPart2_Sitrus[] = _("BEERE ist von rundem Geschmack.");
+static const u8 sBerryDescriptionPart1_Figy[] = _("Die BEERE sieht angekaut aus. Sie ist");
+static const u8 sBerryDescriptionPart2_Figy[] = _("voller scharfer Substanzen.");
+static const u8 sBerryDescriptionPart1_Wiki[] = _("Die BEERE wächst unförmig,");
+static const u8 sBerryDescriptionPart2_Wiki[] = _("damit PKMN sie besser greifen können.");
+static const u8 sBerryDescriptionPart1_Mago[] = _("Die BEERE hat Ausbeulungen. Je mehr");
+static const u8 sBerryDescriptionPart2_Mago[] = _("Beulen, desto schmackhafter ist sie.");
+static const u8 sBerryDescriptionPart1_Aguav[] = _("Die Blume ist zart. Sie ist fähig,");
+static const u8 sBerryDescriptionPart2_Aguav[] = _("ohne Licht wachsen zu können.");
+static const u8 sBerryDescriptionPart1_Iapapa[] = _("Die BEERE ist groß und sauer.");
+static const u8 sBerryDescriptionPart2_Iapapa[] = _("Sie braucht einen Tag zum Wachsen.");
+static const u8 sBerryDescriptionPart1_Razz[] = _("Diese rote BEERE schmeckt etwas");
+static const u8 sBerryDescriptionPart2_Razz[] = _("scharf. Sie wächst in nur 4 Stunden.");
+static const u8 sBerryDescriptionPart1_Bluk[] = _("Die BEERE ist außen blau, verfärbt");
+static const u8 sBerryDescriptionPart2_Bluk[] = _("sich im Mund aber schwarz.");
+static const u8 sBerryDescriptionPart1_Nanab[] = _("Diese BEERE war die 7., die auf der");
+static const u8 sBerryDescriptionPart2_Nanab[] = _("Welt entdeckt wurde. Sie ist süß.");
+static const u8 sBerryDescriptionPart1_Wepear[] = _("Die Blume ist klein und weiß. Angenehm");
+static const u8 sBerryDescriptionPart2_Wepear[] = _("bitter und sauer zugleich.");
+static const u8 sBerryDescriptionPart1_Pinap[] = _("Wind und Kälte verträgt sie nicht.");
+static const u8 sBerryDescriptionPart2_Pinap[] = _("Fruchtfleisch: Scharf. Haut: Sauer.");
+static const u8 sBerryDescriptionPart1_Pomeg[] = _("Egal wie viel Wasser sie bekommt, sie");
+static const u8 sBerryDescriptionPart2_Pomeg[] = _("trägt immer bis zu 6 BEEREN.");
+static const u8 sBerryDescriptionPart1_Kelpsy[] = _("Eine Seltenheit. Geformt wie eine");
+static const u8 sBerryDescriptionPart2_Kelpsy[] = _("Wurzel. Hat eine große Blume.");
+static const u8 sBerryDescriptionPart1_Qualot[] = _("Liebt das Wasser. Wächst besonders");
+static const u8 sBerryDescriptionPart2_Qualot[] = _("gut in regenreichen Gegenden.");
+static const u8 sBerryDescriptionPart1_Hondew[] = _("Eine wertvolle und seltene BEERE.");
+static const u8 sBerryDescriptionPart2_Hondew[] = _("Sie ist sehr schmackhaft.");
+static const u8 sBerryDescriptionPart1_Grepa[] = _("Die BEERE ist zart und von runder");
+static const u8 sBerryDescriptionPart2_Grepa[] = _("Form. Aber sie ist unglaublich sauer!");
+static const u8 sBerryDescriptionPart1_Tamato[] = _("Die Schärfe der BEERE verbrennt die");
+static const u8 sBerryDescriptionPart2_Tamato[] = _("Lippen. Sie braucht Zeit zum Wachsen.");
+static const u8 sBerryDescriptionPart1_Cornn[] = _("Eine BEERE aus alten Zeiten. Wächst");
+static const u8 sBerryDescriptionPart2_Cornn[] = _("nur, wenn in großen Mengen gepflanzt.");
+static const u8 sBerryDescriptionPart1_Magost[] = _("Eine BEERE, die für ihren feinen, aus-");
+static const u8 sBerryDescriptionPart2_Magost[] = _("gewogenen Geschmack bekannt ist.");
+static const u8 sBerryDescriptionPart1_Rabuta[] = _("Eine Seltenheit, die über und über mit");
+static const u8 sBerryDescriptionPart2_Rabuta[] = _("Haaren bewachsen ist. Sehr bitter!");
+static const u8 sBerryDescriptionPart1_Nomel[] = _("Sehr sauer. Ein Biss betäubt die");
+static const u8 sBerryDescriptionPart2_Nomel[] = _("Geschmacksnerven für 3 Tage!");
+static const u8 sBerryDescriptionPart1_Spelon[] = _("Die leuchtend rote BEERE ist sehr");
+static const u8 sBerryDescriptionPart2_Spelon[] = _("scharf. Gibt scharfe Substanzen ab!");
+static const u8 sBerryDescriptionPart1_Pamtre[] = _("Wird vom Meer angespült. Sie wächst");
+static const u8 sBerryDescriptionPart2_Pamtre[] = _("an einem anderen Ort.");
+static const u8 sBerryDescriptionPart1_Watmel[] = _("Eine große BEERE, 25 cm groß.");
+static const u8 sBerryDescriptionPart2_Watmel[] = _("Außergewöhnlich süß.");
+static const u8 sBerryDescriptionPart1_Durin[] = _("Bitter schon ihr Anblick! Sie ist so");
+static const u8 sBerryDescriptionPart2_Durin[] = _("bitter, dass niemand sie pur isst.");
+static const u8 sBerryDescriptionPart1_Belue[] = _("Sie glänzt, sieht zart aus, ist extrem");
+static const u8 sBerryDescriptionPart2_Belue[] = _("sauer und braucht Zeit zum Wachsen.");
+static const u8 sBerryDescriptionPart1_Liechi[] = _("Eine geheimnisvolle BEERE. Man sagt,");
+static const u8 sBerryDescriptionPart2_Liechi[] = _("sie enthalte die Kraft des Meeres.");
+static const u8 sBerryDescriptionPart1_Ganlon[] = _("Eine geheimnisvolle BEERE. Man sagt,");
+static const u8 sBerryDescriptionPart2_Ganlon[] = _("sie enthalte die Kraft des Landes.");
+static const u8 sBerryDescriptionPart1_Salac[] = _("Eine geheimnisvolle BEERE. Man sagt,");
+static const u8 sBerryDescriptionPart2_Salac[] = _("sie enthalte die Kraft des Himmels.");
+static const u8 sBerryDescriptionPart1_Petaya[] = _("Eine geheimnisvolle BEERE. Man sagt,");
+static const u8 sBerryDescriptionPart2_Petaya[] = _("sie enthalte die Kraft allen Lebens.");
+static const u8 sBerryDescriptionPart1_Apicot[] = _("Eine rätselhafte BEERE. Man kann");
+static const u8 sBerryDescriptionPart2_Apicot[] = _("nicht sagen, wie und was sie ist.");
+static const u8 sBerryDescriptionPart1_Lansat[] = _("Eine legendäre BEERE. Sie zu");
+static const u8 sBerryDescriptionPart2_Lansat[] = _("tragen bringt Freude.");
+static const u8 sBerryDescriptionPart1_Starf[] = _("So stark, dass sie an den Rand der");
+static const u8 sBerryDescriptionPart2_Starf[] = _("Welt verbannt wurde. Ein Märchen?");
+static const u8 sBerryDescriptionPart1_Enigma[] = _("Eine enigmatische BEERE. Sie scheint");
+static const u8 sBerryDescriptionPart2_Enigma[] = _("die Macht der Sterne zu besitzen.");
#endif
const struct Berry gBerries[] =
@@ -286,8 +286,8 @@ const struct Berry gBerries[] =
.size = 20,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Cheri,
- .description2 = gBerryDescriptionPart2_Cheri,
+ .description1 = sBerryDescriptionPart1_Cheri,
+ .description2 = sBerryDescriptionPart2_Cheri,
.stageDuration = 3,
.spicy = 10,
.dry = 0,
@@ -302,8 +302,8 @@ const struct Berry gBerries[] =
.size = 80,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Chesto,
- .description2 = gBerryDescriptionPart2_Chesto,
+ .description1 = sBerryDescriptionPart1_Chesto,
+ .description2 = sBerryDescriptionPart2_Chesto,
.stageDuration = 3,
.spicy = 0,
.dry = 10,
@@ -318,8 +318,8 @@ const struct Berry gBerries[] =
.size = 40,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Pecha,
- .description2 = gBerryDescriptionPart2_Pecha,
+ .description1 = sBerryDescriptionPart1_Pecha,
+ .description2 = sBerryDescriptionPart2_Pecha,
.stageDuration = 3,
.spicy = 0,
.dry = 0,
@@ -334,8 +334,8 @@ const struct Berry gBerries[] =
.size = 32,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Rawst,
- .description2 = gBerryDescriptionPart2_Rawst,
+ .description1 = sBerryDescriptionPart1_Rawst,
+ .description2 = sBerryDescriptionPart2_Rawst,
.stageDuration = 3,
.spicy = 0,
.dry = 0,
@@ -350,8 +350,8 @@ const struct Berry gBerries[] =
.size = 50,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Aspear,
- .description2 = gBerryDescriptionPart2_Aspear,
+ .description1 = sBerryDescriptionPart1_Aspear,
+ .description2 = sBerryDescriptionPart2_Aspear,
.stageDuration = 3,
.spicy = 0,
.dry = 0,
@@ -366,8 +366,8 @@ const struct Berry gBerries[] =
.size = 28,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Leppa,
- .description2 = gBerryDescriptionPart2_Leppa,
+ .description1 = sBerryDescriptionPart1_Leppa,
+ .description2 = sBerryDescriptionPart2_Leppa,
.stageDuration = 4,
.spicy = 10,
.dry = 0,
@@ -382,8 +382,8 @@ const struct Berry gBerries[] =
.size = 35,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Oran,
- .description2 = gBerryDescriptionPart2_Oran,
+ .description1 = sBerryDescriptionPart1_Oran,
+ .description2 = sBerryDescriptionPart2_Oran,
.stageDuration = 3,
.spicy = 10,
.dry = 10,
@@ -398,8 +398,8 @@ const struct Berry gBerries[] =
.size = 47,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Persim,
- .description2 = gBerryDescriptionPart2_Persim,
+ .description1 = sBerryDescriptionPart1_Persim,
+ .description2 = sBerryDescriptionPart2_Persim,
.stageDuration = 3,
.spicy = 10,
.dry = 10,
@@ -414,8 +414,8 @@ const struct Berry gBerries[] =
.size = 34,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Lum,
- .description2 = gBerryDescriptionPart2_Lum,
+ .description1 = sBerryDescriptionPart1_Lum,
+ .description2 = sBerryDescriptionPart2_Lum,
.stageDuration = 12,
.spicy = 10,
.dry = 10,
@@ -430,8 +430,8 @@ const struct Berry gBerries[] =
.size = 95,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Sitrus,
- .description2 = gBerryDescriptionPart2_Sitrus,
+ .description1 = sBerryDescriptionPart1_Sitrus,
+ .description2 = sBerryDescriptionPart2_Sitrus,
.stageDuration = 6,
.spicy = 10,
.dry = 10,
@@ -446,8 +446,8 @@ const struct Berry gBerries[] =
.size = 100,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Figy,
- .description2 = gBerryDescriptionPart2_Figy,
+ .description1 = sBerryDescriptionPart1_Figy,
+ .description2 = sBerryDescriptionPart2_Figy,
.stageDuration = 6,
.spicy = 10,
.dry = 0,
@@ -462,8 +462,8 @@ const struct Berry gBerries[] =
.size = 115,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Wiki,
- .description2 = gBerryDescriptionPart2_Wiki,
+ .description1 = sBerryDescriptionPart1_Wiki,
+ .description2 = sBerryDescriptionPart2_Wiki,
.stageDuration = 6,
.spicy = 0,
.dry = 10,
@@ -478,8 +478,8 @@ const struct Berry gBerries[] =
.size = 126,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Mago,
- .description2 = gBerryDescriptionPart2_Mago,
+ .description1 = sBerryDescriptionPart1_Mago,
+ .description2 = sBerryDescriptionPart2_Mago,
.stageDuration = 6,
.spicy = 0,
.dry = 0,
@@ -494,8 +494,8 @@ const struct Berry gBerries[] =
.size = 64,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Aguav,
- .description2 = gBerryDescriptionPart2_Aguav,
+ .description1 = sBerryDescriptionPart1_Aguav,
+ .description2 = sBerryDescriptionPart2_Aguav,
.stageDuration = 6,
.spicy = 0,
.dry = 0,
@@ -510,8 +510,8 @@ const struct Berry gBerries[] =
.size = 223,
.maxYield = 3,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Iapapa,
- .description2 = gBerryDescriptionPart2_Iapapa,
+ .description1 = sBerryDescriptionPart1_Iapapa,
+ .description2 = sBerryDescriptionPart2_Iapapa,
.stageDuration = 6,
.spicy = 0,
.dry = 0,
@@ -526,8 +526,8 @@ const struct Berry gBerries[] =
.size = 120,
.maxYield = 6,
.minYield = 3,
- .description1 = gBerryDescriptionPart1_Razz,
- .description2 = gBerryDescriptionPart2_Razz,
+ .description1 = sBerryDescriptionPart1_Razz,
+ .description2 = sBerryDescriptionPart2_Razz,
.stageDuration = 1,
.spicy = 10,
.dry = 10,
@@ -542,8 +542,8 @@ const struct Berry gBerries[] =
.size = 108,
.maxYield = 6,
.minYield = 3,
- .description1 = gBerryDescriptionPart1_Bluk,
- .description2 = gBerryDescriptionPart2_Bluk,
+ .description1 = sBerryDescriptionPart1_Bluk,
+ .description2 = sBerryDescriptionPart2_Bluk,
.stageDuration = 1,
.spicy = 0,
.dry = 10,
@@ -558,8 +558,8 @@ const struct Berry gBerries[] =
.size = 77,
.maxYield = 6,
.minYield = 3,
- .description1 = gBerryDescriptionPart1_Nanab,
- .description2 = gBerryDescriptionPart2_Nanab,
+ .description1 = sBerryDescriptionPart1_Nanab,
+ .description2 = sBerryDescriptionPart2_Nanab,
.stageDuration = 1,
.spicy = 0,
.dry = 0,
@@ -574,8 +574,8 @@ const struct Berry gBerries[] =
.size = 74,
.maxYield = 6,
.minYield = 3,
- .description1 = gBerryDescriptionPart1_Wepear,
- .description2 = gBerryDescriptionPart2_Wepear,
+ .description1 = sBerryDescriptionPart1_Wepear,
+ .description2 = sBerryDescriptionPart2_Wepear,
.stageDuration = 1,
.spicy = 0,
.dry = 0,
@@ -590,8 +590,8 @@ const struct Berry gBerries[] =
.size = 80,
.maxYield = 6,
.minYield = 3,
- .description1 = gBerryDescriptionPart1_Pinap,
- .description2 = gBerryDescriptionPart2_Pinap,
+ .description1 = sBerryDescriptionPart1_Pinap,
+ .description2 = sBerryDescriptionPart2_Pinap,
.stageDuration = 1,
.spicy = 10,
.dry = 0,
@@ -606,8 +606,8 @@ const struct Berry gBerries[] =
.size = 135,
.maxYield = 6,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Pomeg,
- .description2 = gBerryDescriptionPart2_Pomeg,
+ .description1 = sBerryDescriptionPart1_Pomeg,
+ .description2 = sBerryDescriptionPart2_Pomeg,
.stageDuration = 3,
.spicy = 10,
.dry = 0,
@@ -622,8 +622,8 @@ const struct Berry gBerries[] =
.size = 150,
.maxYield = 6,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Kelpsy,
- .description2 = gBerryDescriptionPart2_Kelpsy,
+ .description1 = sBerryDescriptionPart1_Kelpsy,
+ .description2 = sBerryDescriptionPart2_Kelpsy,
.stageDuration = 3,
.spicy = 0,
.dry = 10,
@@ -638,8 +638,8 @@ const struct Berry gBerries[] =
.size = 110,
.maxYield = 6,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Qualot,
- .description2 = gBerryDescriptionPart2_Qualot,
+ .description1 = sBerryDescriptionPart1_Qualot,
+ .description2 = sBerryDescriptionPart2_Qualot,
.stageDuration = 3,
.spicy = 10,
.dry = 0,
@@ -654,8 +654,8 @@ const struct Berry gBerries[] =
.size = 162,
.maxYield = 6,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Hondew,
- .description2 = gBerryDescriptionPart2_Hondew,
+ .description1 = sBerryDescriptionPart1_Hondew,
+ .description2 = sBerryDescriptionPart2_Hondew,
.stageDuration = 3,
.spicy = 10,
.dry = 10,
@@ -670,8 +670,8 @@ const struct Berry gBerries[] =
.size = 149,
.maxYield = 6,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Grepa,
- .description2 = gBerryDescriptionPart2_Grepa,
+ .description1 = sBerryDescriptionPart1_Grepa,
+ .description2 = sBerryDescriptionPart2_Grepa,
.stageDuration = 3,
.spicy = 0,
.dry = 10,
@@ -686,8 +686,8 @@ const struct Berry gBerries[] =
.size = 200,
.maxYield = 4,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Tamato,
- .description2 = gBerryDescriptionPart2_Tamato,
+ .description1 = sBerryDescriptionPart1_Tamato,
+ .description2 = sBerryDescriptionPart2_Tamato,
.stageDuration = 6,
.spicy = 20,
.dry = 10,
@@ -702,8 +702,8 @@ const struct Berry gBerries[] =
.size = 75,
.maxYield = 4,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Cornn,
- .description2 = gBerryDescriptionPart2_Cornn,
+ .description1 = sBerryDescriptionPart1_Cornn,
+ .description2 = sBerryDescriptionPart2_Cornn,
.stageDuration = 6,
.spicy = 0,
.dry = 20,
@@ -718,8 +718,8 @@ const struct Berry gBerries[] =
.size = 140,
.maxYield = 4,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Magost,
- .description2 = gBerryDescriptionPart2_Magost,
+ .description1 = sBerryDescriptionPart1_Magost,
+ .description2 = sBerryDescriptionPart2_Magost,
.stageDuration = 6,
.spicy = 0,
.dry = 0,
@@ -734,8 +734,8 @@ const struct Berry gBerries[] =
.size = 226,
.maxYield = 4,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Rabuta,
- .description2 = gBerryDescriptionPart2_Rabuta,
+ .description1 = sBerryDescriptionPart1_Rabuta,
+ .description2 = sBerryDescriptionPart2_Rabuta,
.stageDuration = 6,
.spicy = 0,
.dry = 0,
@@ -750,8 +750,8 @@ const struct Berry gBerries[] =
.size = 285,
.maxYield = 4,
.minYield = 2,
- .description1 = gBerryDescriptionPart1_Nomel,
- .description2 = gBerryDescriptionPart2_Nomel,
+ .description1 = sBerryDescriptionPart1_Nomel,
+ .description2 = sBerryDescriptionPart2_Nomel,
.stageDuration = 6,
.spicy = 10,
.dry = 0,
@@ -766,8 +766,8 @@ const struct Berry gBerries[] =
.size = 133,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Spelon,
- .description2 = gBerryDescriptionPart2_Spelon,
+ .description1 = sBerryDescriptionPart1_Spelon,
+ .description2 = sBerryDescriptionPart2_Spelon,
.stageDuration = 18,
.spicy = 40,
.dry = 10,
@@ -782,8 +782,8 @@ const struct Berry gBerries[] =
.size = 244,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Pamtre,
- .description2 = gBerryDescriptionPart2_Pamtre,
+ .description1 = sBerryDescriptionPart1_Pamtre,
+ .description2 = sBerryDescriptionPart2_Pamtre,
.stageDuration = 18,
.spicy = 0,
.dry = 40,
@@ -798,8 +798,8 @@ const struct Berry gBerries[] =
.size = 250,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Watmel,
- .description2 = gBerryDescriptionPart2_Watmel,
+ .description1 = sBerryDescriptionPart1_Watmel,
+ .description2 = sBerryDescriptionPart2_Watmel,
.stageDuration = 18,
.spicy = 0,
.dry = 0,
@@ -814,8 +814,8 @@ const struct Berry gBerries[] =
.size = 280,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Durin,
- .description2 = gBerryDescriptionPart2_Durin,
+ .description1 = sBerryDescriptionPart1_Durin,
+ .description2 = sBerryDescriptionPart2_Durin,
.stageDuration = 18,
.spicy = 0,
.dry = 0,
@@ -830,8 +830,8 @@ const struct Berry gBerries[] =
.size = 300,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Belue,
- .description2 = gBerryDescriptionPart2_Belue,
+ .description1 = sBerryDescriptionPart1_Belue,
+ .description2 = sBerryDescriptionPart2_Belue,
.stageDuration = 18,
.spicy = 10,
.dry = 0,
@@ -846,8 +846,8 @@ const struct Berry gBerries[] =
.size = 111,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Liechi,
- .description2 = gBerryDescriptionPart2_Liechi,
+ .description1 = sBerryDescriptionPart1_Liechi,
+ .description2 = sBerryDescriptionPart2_Liechi,
.stageDuration = 24,
.spicy = 40,
.dry = 0,
@@ -862,8 +862,8 @@ const struct Berry gBerries[] =
.size = 33,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Ganlon,
- .description2 = gBerryDescriptionPart2_Ganlon,
+ .description1 = sBerryDescriptionPart1_Ganlon,
+ .description2 = sBerryDescriptionPart2_Ganlon,
.stageDuration = 24,
.spicy = 0,
.dry = 40,
@@ -878,8 +878,8 @@ const struct Berry gBerries[] =
.size = 95,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Salac,
- .description2 = gBerryDescriptionPart2_Salac,
+ .description1 = sBerryDescriptionPart1_Salac,
+ .description2 = sBerryDescriptionPart2_Salac,
.stageDuration = 24,
.spicy = 0,
.dry = 0,
@@ -894,8 +894,8 @@ const struct Berry gBerries[] =
.size = 237,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Petaya,
- .description2 = gBerryDescriptionPart2_Petaya,
+ .description1 = sBerryDescriptionPart1_Petaya,
+ .description2 = sBerryDescriptionPart2_Petaya,
.stageDuration = 24,
.spicy = 40,
.dry = 0,
@@ -910,8 +910,8 @@ const struct Berry gBerries[] =
.size = 75,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Apicot,
- .description2 = gBerryDescriptionPart2_Apicot,
+ .description1 = sBerryDescriptionPart1_Apicot,
+ .description2 = sBerryDescriptionPart2_Apicot,
.stageDuration = 24,
.spicy = 0,
.dry = 40,
@@ -926,8 +926,8 @@ const struct Berry gBerries[] =
.size = 97,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Lansat,
- .description2 = gBerryDescriptionPart2_Lansat,
+ .description1 = sBerryDescriptionPart1_Lansat,
+ .description2 = sBerryDescriptionPart2_Lansat,
.stageDuration = 24,
.spicy = 10,
.dry = 10,
@@ -942,8 +942,8 @@ const struct Berry gBerries[] =
.size = 153,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Starf,
- .description2 = gBerryDescriptionPart2_Starf,
+ .description1 = sBerryDescriptionPart1_Starf,
+ .description2 = sBerryDescriptionPart2_Starf,
.stageDuration = 24,
.spicy = 10,
.dry = 10,
@@ -958,8 +958,8 @@ const struct Berry gBerries[] =
.size = 0,
.maxYield = 2,
.minYield = 1,
- .description1 = gBerryDescriptionPart1_Enigma,
- .description2 = gBerryDescriptionPart2_Enigma,
+ .description1 = sBerryDescriptionPart1_Enigma,
+ .description2 = sBerryDescriptionPart2_Enigma,
.stageDuration = 24,
.spicy = 40,
.dry = 40,
@@ -1285,7 +1285,7 @@ void BerryTreeTimeUpdate(s32 minutesPassed)
}
}
-void PlantBerryTree(u8 id, u8 berry, u8 stage, bool8 noSparkle)
+void PlantBerryTree(u8 id, u8 berry, u8 stage, bool8 sparkle)
{
struct BerryTree *tree = GetBerryTreeInfo(id);
@@ -1298,7 +1298,7 @@ void PlantBerryTree(u8 id, u8 berry, u8 stage, bool8 noSparkle)
tree->berryYield = CalcBerryYield(tree);
tree->minutesUntilNextStage *= 4;
}
- if (noSparkle == FALSE)
+ if (!sparkle)
{
tree->growthSparkle = TRUE;
}
@@ -1444,7 +1444,7 @@ void EventObjectInteractionGetBerryTreeData(void)
void Berry_FadeAndGoToBerryBagMenu(void)
{
- SetMainCallback2(sub_80A68CC);
+ SetMainCallback2(CB2_ChooseBerry);
}
void EventObjectInteractionPlantBerryTree(void)
@@ -1542,7 +1542,7 @@ void ResetBerryTreeSparkleFlags(void)
top = cam_top + 3;
right = cam_left + 14;
bottom = top + 8;
- for (i = 0; i < (u8)ARRAY_COUNT(gSaveBlock1.eventObjects); i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (gEventObjects[i].active && gEventObjects[i].movementType == MOVEMENT_TYPE_BERRY_TREE_GROWTH)
{
diff --git a/src/bike.c b/src/bike.c
index bf61d2aed..b1176997b 100644
--- a/src/bike.c
+++ b/src/bike.c
@@ -3,11 +3,11 @@
#include "event_object_movement.h"
#include "field_player_avatar.h"
#include "fieldmap.h"
-#include "constants/flags.h"
#include "global.fieldmap.h"
#include "metatile_behavior.h"
#include "overworld.h"
#include "sound.h"
+#include "constants/flags.h"
#include "constants/map_types.h"
#include "constants/songs.h"
@@ -78,7 +78,7 @@ static void (*const sMachBikeTransitions[])(u8) =
MachBikeTransition_TrySlowDown,
};
-// bikeFrameCounter is input which is represented by gMachBikeSpeeds in order: 0 is normal speed (1 speed), 1 is fast speed (2 speed), 2 is fastest speed (4 speed)
+// bikeFrameCounter is input which is represented by sMachBikeSpeeds in order: 0 is normal speed (1 speed), 1 is fast speed (2 speed), 2 is fastest speed (4 speed)
static void (*const sMachBikeSpeedCallbacks[])(u8) =
{
PlayerGoSpeed1, // normal speed (1 speed)
@@ -115,21 +115,22 @@ static u8 (*const sAcroBikeInputHandlers[])(u8 *, u16, u16) =
};
// used with bikeFrameCounter from mach bike
-const u16 gMachBikeSpeeds[] = {SPEED_NORMAL, SPEED_FAST, SPEED_FASTEST};
+static const u16 sMachBikeSpeeds[] = {SPEED_NORMAL, SPEED_FAST, SPEED_FASTEST};
// this is a list of timers to compare against later, terminated with 0. the only timer being compared against is 4 frames in this list.
-static const u8 AcroBikeJumpTimerList[] = {4, 0};
+static const u8 sAcroBikeJumpTimerList[] = {4, 0};
// this is a list of history inputs to do in order to do the check to retrieve a jump direction for acro bike. it seems to be an extensible list, so its possible that Game Freak may have intended for the Acro Bike to have more complex tricks at some point. The final list only has the acro jump.
-static const struct BikeHistoryInputInfo gAcroBikeTricksList[] =
+static const struct BikeHistoryInputInfo sAcroBikeTricksList[] =
{
// the 0xF is a mask performed with each byte of the array in order to perform the check on only the last entry of the history list, otherwise the check wouldnt work as there can be 0xF0 as opposed to 0x0F.
- {DIR_SOUTH, B_BUTTON, 0xF, 0xF, AcroBikeJumpTimerList, AcroBikeJumpTimerList, DIR_SOUTH},
- {DIR_NORTH, B_BUTTON, 0xF, 0xF, AcroBikeJumpTimerList, AcroBikeJumpTimerList, DIR_NORTH},
- {DIR_WEST, B_BUTTON, 0xF, 0xF, AcroBikeJumpTimerList, AcroBikeJumpTimerList, DIR_WEST},
- {DIR_EAST, B_BUTTON, 0xF, 0xF, AcroBikeJumpTimerList, AcroBikeJumpTimerList, DIR_EAST},
+ {DIR_SOUTH, B_BUTTON, 0xF, 0xF, sAcroBikeJumpTimerList, sAcroBikeJumpTimerList, DIR_SOUTH},
+ {DIR_NORTH, B_BUTTON, 0xF, 0xF, sAcroBikeJumpTimerList, sAcroBikeJumpTimerList, DIR_NORTH},
+ {DIR_WEST, B_BUTTON, 0xF, 0xF, sAcroBikeJumpTimerList, sAcroBikeJumpTimerList, DIR_WEST},
+ {DIR_EAST, B_BUTTON, 0xF, 0xF, sAcroBikeJumpTimerList, sAcroBikeJumpTimerList, DIR_EAST},
};
+// code
void MovePlayerOnBike(u8 direction, u16 newKeys, u16 heldKeys)
{
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_MACH_BIKE)
@@ -253,31 +254,31 @@ static void MachBikeTransition_TrySpeedUp(u8 direction)
}
}
-static void MachBikeTransition_TrySlowDown(u8 var)
+static void MachBikeTransition_TrySlowDown(u8 direction)
{
u8 collision;
if (gPlayerAvatar.bikeSpeed != SPEED_STANDING)
gPlayerAvatar.bikeFrameCounter = --gPlayerAvatar.bikeSpeed;
- collision = get_some_collision(var);
+ collision = get_some_collision(direction);
if (collision > 0 && collision < 12)
{
if (collision == COLLISION_LEDGE_JUMP)
{
- PlayerJumpLedge(var);
+ PlayerJumpLedge(direction);
}
else
{
Bike_SetBikeStill();
if (collision < 5 || collision > 8)
- PlayerOnBikeCollide(var);
+ PlayerOnBikeCollide(direction);
}
}
else
{
- sMachBikeSpeedCallbacks[gPlayerAvatar.bikeFrameCounter](var);
+ sMachBikeSpeedCallbacks[gPlayerAvatar.bikeFrameCounter](direction);
}
}
@@ -620,7 +621,7 @@ static void AcroBikeTransition_WheelieHoppingStanding(u8 direction)
static void AcroBikeTransition_WheelieHoppingMoving(u8 direction)
{
- u8 var;
+ u8 collision;
struct EventObject *playerEventObj = &gEventObjects[gPlayerAvatar.eventObjectId];
if (CanBikeFaceDirOnMetatile(direction, playerEventObj->currentMetatileBehavior) == 0)
@@ -628,19 +629,19 @@ static void AcroBikeTransition_WheelieHoppingMoving(u8 direction)
AcroBikeTransition_WheelieHoppingStanding(playerEventObj->movementDirection);
return;
}
- var = get_some_collision(direction);
+ collision = get_some_collision(direction);
//TODO: Try to get rid of this goto
- if (var == 0 || var == 9)
+ if (collision == 0 || collision == 9)
{
goto derp;
}
- else if (var == 6)
+ else if (collision == 6)
{
PlayerLedgeHoppingWheelie(direction);
}
- else if (var < 5 || var > 8)
+ else if (collision < 5 || collision > 8)
{
- if (var <= 11)
+ if (collision <= 11)
{
AcroBikeTransition_WheelieHoppingStanding(direction);
}
@@ -654,20 +655,20 @@ static void AcroBikeTransition_WheelieHoppingMoving(u8 direction)
static void AcroBikeTransition_SideJump(u8 direction)
{
- u8 var;
+ u8 collision;
struct EventObject *playerEventObj;
- var = get_some_collision(direction);
- if (var != 0)
+ collision = get_some_collision(direction);
+ if (collision != 0)
{
- if (var == 7)
+ if (collision == 7)
return;
- if (var < 10)
+ if (collision < 10)
{
AcroBikeTransition_TurnDirection(direction);
return;
}
- if (WillPlayerCollideWithCollision(var, direction) == FALSE)
+ if (WillPlayerCollideWithCollision(collision, direction) == FALSE)
{
AcroBikeTransition_TurnDirection(direction);
return;
@@ -686,7 +687,7 @@ static void AcroBikeTransition_TurnJump(u8 direction)
static void AcroBikeTransition_WheelieMoving(u8 direction)
{
- u8 var;
+ u8 collision;
struct EventObject *playerEventObj = &gEventObjects[gPlayerAvatar.eventObjectId];
if (CanBikeFaceDirOnMetatile(direction, playerEventObj->currentMetatileBehavior) == 0)
@@ -694,18 +695,18 @@ static void AcroBikeTransition_WheelieMoving(u8 direction)
PlayerIdleWheelie(playerEventObj->movementDirection);
return;
}
- var = get_some_collision(direction);
- if (var > 0 && var < 12)
+ collision = get_some_collision(direction);
+ if (collision > 0 && collision < 12)
{
- if (var == 6)
+ if (collision == 6)
{
PlayerLedgeHoppingWheelie(direction);
}
- else if (var == 9)
+ else if (collision == 9)
{
PlayerIdleWheelie(direction);
}
- else if (var <= 4)
+ else if (collision <= 4)
{
if (MetatileBehavior_IsBumpySlope(playerEventObj->currentMetatileBehavior))
PlayerIdleWheelie(direction);
@@ -720,7 +721,7 @@ static void AcroBikeTransition_WheelieMoving(u8 direction)
static void AcroBikeTransition_WheelieRisingMoving(u8 direction)
{
- u8 var;
+ u8 collision;
struct EventObject *playerEventObj = &gEventObjects[gPlayerAvatar.eventObjectId];
if (CanBikeFaceDirOnMetatile(direction, playerEventObj->currentMetatileBehavior) == 0)
@@ -728,18 +729,18 @@ static void AcroBikeTransition_WheelieRisingMoving(u8 direction)
PlayerStartWheelie(playerEventObj->movementDirection);
return;
}
- var = get_some_collision(direction);
- if (var > 0 && var < 12)
+ collision = get_some_collision(direction);
+ if (collision > 0 && collision < 12)
{
- if (var == 6)
+ if (collision == 6)
{
PlayerLedgeHoppingWheelie(direction);
}
- else if (var == 9)
+ else if (collision == 9)
{
PlayerIdleWheelie(direction);
}
- else if (var <= 4)
+ else if (collision <= 4)
{
if (MetatileBehavior_IsBumpySlope(playerEventObj->currentMetatileBehavior))
PlayerIdleWheelie(direction);
@@ -830,9 +831,9 @@ static u8 AcroBike_GetJumpDirection(void)
{
u32 i;
- for (i = 0; i < 4; i++)
+ for (i = 0; i < ARRAY_COUNT(sAcroBikeTricksList); i++)
{
- const struct BikeHistoryInputInfo *historyInputInfo = &gAcroBikeTricksList[i];
+ const struct BikeHistoryInputInfo *historyInputInfo = &sAcroBikeTricksList[i];
u32 dirHistory = gPlayerAvatar.directionHistory;
u32 abStartSelectHistory = gPlayerAvatar.abStartSelectHistory;
@@ -936,14 +937,14 @@ static bool8 CanBikeFaceDirOnMetatile(u8 direction, u8 tile)
{
if (direction == DIR_EAST || direction == DIR_WEST)
{
- //Bike cannot face east or west on a vertical rail
+ // Bike cannot face east or west on a vertical rail
if (MetatileBehavior_IsIsolatedVerticalRail(tile)
|| MetatileBehavior_IsVerticalRail(tile))
return FALSE;
}
else
{
- //Bike cannot face north or south on a horizontal rail
+ // Bike cannot face north or south on a horizontal rail
if (MetatileBehavior_IsIsolatedHorizontalRail(tile)
|| MetatileBehavior_IsHorizontalRail(tile))
return FALSE;
@@ -989,7 +990,7 @@ bool8 player_should_look_direction_be_enforced_upon_movement(void)
return TRUE;
}
-void GetOnOffBike(u8 var)
+void GetOnOffBike(u8 transitionFlags)
{
gUnusedBikeCameraAheadPanback = FALSE;
@@ -1001,7 +1002,7 @@ void GetOnOffBike(u8 var)
}
else
{
- SetPlayerAvatarTransitionFlags(var);
+ SetPlayerAvatarTransitionFlags(transitionFlags);
Overworld_SetSavedMusic(MUS_CYCLING);
Overworld_ChangeMusicTo(MUS_CYCLING);
}
@@ -1042,7 +1043,7 @@ s16 GetPlayerSpeed(void)
// because the player pressed a direction, it won't ever return a speed of 0 since this function returns the player's current speed.
s16 machSpeeds[3];
- memcpy(machSpeeds, gMachBikeSpeeds, sizeof(machSpeeds));
+ memcpy(machSpeeds, sMachBikeSpeeds, sizeof(machSpeeds));
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_MACH_BIKE)
return machSpeeds[gPlayerAvatar.bikeFrameCounter];
diff --git a/src/choose_party.c b/src/choose_party.c
index 8aef949cb..305f9cd63 100644
--- a/src/choose_party.c
+++ b/src/choose_party.c
@@ -942,7 +942,7 @@ static void sub_8123170(u8 taskId)
if (!gPaletteFade.active)
{
gFieldCallback = sub_81231AC;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
DestroyTask(taskId);
}
}
diff --git a/src/contest.c b/src/contest.c
index 076d08759..8c795abc0 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -2056,7 +2056,7 @@ void sub_80ADFD8(u8 taskId)
{
DestroyTask(taskId);
gFieldCallback = sub_80AE010;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
}
}
diff --git a/src/daycare.c b/src/daycare.c
index 6dade2f20..1bc2d9ef1 100644
--- a/src/daycare.c
+++ b/src/daycare.c
@@ -1071,5 +1071,5 @@ void ShowDaycareLevelMenu(void)
void ChooseSendDaycareMon(void)
{
OpenPartyMenu(PARTY_MENU_TYPE_DAYCARE, 0);
- gMain.savedCallback = c2_exit_to_overworld_2_switch;
+ gMain.savedCallback = CB2_ReturnToField;
}
diff --git a/src/decoration.c b/src/decoration.c
index a4976932d..e5b427738 100644
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -3176,7 +3176,7 @@ void c1_overworld_prev_quest(u8 taskId)
sub_81016F4();
FreeSpritePaletteByTag(0xbb8);
gFieldCallback = &sub_8100364;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
DestroyTask(taskId);
break;
}
@@ -4139,7 +4139,7 @@ void sub_81015E0(u8 taskId)
case 1:
sub_81016F4();
gFieldCallback = sub_8101678;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
DestroyTask(taskId);
break;
}
diff --git a/src/egg_hatch.c b/src/egg_hatch.c
index 6dc55ef28..876034d2a 100644
--- a/src/egg_hatch.c
+++ b/src/egg_hatch.c
@@ -473,7 +473,7 @@ static void CB2_EggHatch_0(void)
static void EggHatchSetMonNickname(void)
{
SetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar3);
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
}
static void Task_EggHatchPlayBGM(u8 taskID)
@@ -576,7 +576,7 @@ static void CB2_EggHatch_1(void)
break;
case 11:
if (!gPaletteFade.active)
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
break;
}
RunTasks();
diff --git a/src/event_object_movement.c b/src/event_object_movement.c
index c8685bb49..743d9bb92 100644
--- a/src/event_object_movement.c
+++ b/src/event_object_movement.c
@@ -1,17 +1,17 @@
#include "global.h"
-#include "event_object_movement.h"
#include "berry.h"
#include "event_data.h"
+#include "event_object_movement.h"
#include "field_camera.h"
#include "field_effect.h"
#include "field_effect_helpers.h"
#include "field_player_avatar.h"
#include "fieldmap.h"
+#include "metatile_behavior.h"
+#include "overworld.h"
#include "palette.h"
#include "random.h"
-#include "overworld.h"
#include "sprite.h"
-#include "metatile_behavior.h"
#include "trainer_see.h"
#include "constants/field_effects.h"
#include "constants/maps.h"
@@ -57,11 +57,41 @@ static void CameraObject_0(struct Sprite *);
static void CameraObject_1(struct Sprite *);
static void CameraObject_2(struct Sprite *);
static void ObjectCB_CameraObject(struct Sprite *sprite);
-static bool8 EventObjectZCoordIsCompatible(struct EventObject*, u8);
+static bool8 EventObjectDoesZCoordMatch(struct EventObject *, u8);
static struct EventObjectTemplate *FindEventObjectTemplateByLocalId(u8, struct EventObjectTemplate*, u8);
static void UpdateEventObjectSpriteSubpriorityAndVisibility(struct Sprite *);
static void InitObjectPriorityByZCoord(struct Sprite *sprite, u8 z);
static void CreateReflectionEffectSprites(void);
+static u8 GetEventObjectIdByLocalIdAndMapInternal(u8, u8, u8);
+static u8 GetEventObjectIdByLocalId(u8);
+static void RemoveEventObjectInternal(struct EventObject *);
+static void MakeObjectTemplateFromEventObjectTemplate(struct EventObjectTemplate *eventObjTemplate, struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables);
+static void RemoveEventObjectIfOutsideView(struct EventObject *eventObject);
+static void SetPlayerAvatarEventObjectIdAndObjectId(u8, u8);
+static void sub_805B914(struct EventObject *);
+static u8 sub_805BE58(const struct SpritePalette *);
+static bool8 GetAvailableEventObjectId(u16, u8, u8, u8 *);
+static void SetEventObjectDynamicGraphicsId(struct EventObject *);
+static u8 FindEventObjectPaletteIndexByTag(u16);
+static u16 GetEventObjectFlagIdByEventObjectId(u8);
+static void GetEventObjectMovingCameraOffset(s16 *, s16 *);
+static void EventObjectUpdateMetatileBehaviors(struct EventObject *);
+static void GetGroundEffectFlags_Reflection(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_TallGrassOnSpawn(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_TallGrassOnBeginStep(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_LongGrassOnSpawn(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_LongGrassOnBeginStep(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_Tracks(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_SandPile(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_ShallowFlowingWater(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_Puddle(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_Ripple(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_ShortGrass(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_HotSprings(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_Seaweed(struct EventObject *, u32 *);
+static void GetGroundEffectFlags_JumpLanding(struct EventObject *, u32 *);
+static u8 EventObjectCheckForReflectiveSurface(struct EventObject *);
+static void DoRippleFieldEffect(struct EventObject *eventObj, struct Sprite *sprite);
const u8 gReflectionEffectPaletteMap[] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11, 0, 0, 0, 0};
@@ -79,83 +109,83 @@ void (*const gCameraObjectFuncs[])(struct Sprite *) = {
// movement type callbacks
static void (*const sMovementTypeCallbacks[])(struct Sprite *) =
{
- MovementType_None, // MOVEMENT_TYPE_NONE
- MovementType_LookAround, // MOVEMENT_TYPE_LOOK_AROUND
- MovementType_WanderAround, // MOVEMENT_TYPE_WANDER_AROUND
- MovementType_WanderUpAndDown, // MOVEMENT_TYPE_WANDER_UP_AND_DOWN
- MovementType_WanderUpAndDown, // MOVEMENT_TYPE_WANDER_DOWN_AND_UP
- MovementType_WanderLeftAndRight, // MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT
- MovementType_WanderLeftAndRight, // MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT
- MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_UP
- MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_DOWN
- MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_LEFT
- MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_RIGHT
- MovementType_Player, // MOVEMENT_TYPE_PLAYER
- MovementType_BerryTreeGrowth, // MOVEMENT_TYPE_BERRY_TREE_GROWTH
- MovementType_FaceDownAndUp, // MOVEMENT_TYPE_FACE_DOWN_AND_UP
- MovementType_FaceLeftAndRight, // MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT
- MovementType_FaceUpAndLeft, // MOVEMENT_TYPE_FACE_UP_AND_LEFT
- MovementType_FaceUpAndRight, // MOVEMENT_TYPE_FACE_UP_AND_RIGHT
- MovementType_FaceDownAndLeft, // MOVEMENT_TYPE_FACE_DOWN_AND_LEFT
- MovementType_FaceDownAndRight, // MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
- MovementType_FaceDownUpAndLeft, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT
- MovementType_FaceDownUpAndRight, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT
- MovementType_FaceUpLeftAndRight, // MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT
- MovementType_FaceDownLeftAndRight, // MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT
- MovementType_RotateCounterclockwise, // MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE
- MovementType_RotateClockwise, // MOVEMENT_TYPE_ROTATE_CLOCKWISE
- MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_UP_AND_DOWN
- MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_DOWN_AND_UP
- MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT
- MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT
- MovementType_WalkSequenceUpRightLeftDown, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN
- MovementType_WalkSequenceRightLeftDownUp, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP
- MovementType_WalkSequenceDownUpRightLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT
- MovementType_WalkSequenceLeftDownUpRight, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT
- MovementType_WalkSequenceUpLeftRightDown, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN
- MovementType_WalkSequenceLeftRightDownUp, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP
- MovementType_WalkSequenceDownUpLeftRight, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT
- MovementType_WalkSequenceRightDownUpLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT
- MovementType_WalkSequenceLeftUpDownRight, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT
- MovementType_WalkSequenceUpDownRightLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT
- MovementType_WalkSequenceRightLeftUpDown, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN
- MovementType_WalkSequenceDownRightLeftUp, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP
- MovementType_WalkSequenceRightUpDownLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT
- MovementType_WalkSequenceUpDownLeftRight, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT
- MovementType_WalkSequenceLeftRightUpDown, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN
- MovementType_WalkSequenceDownLeftRightUp, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP
- MovementType_WalkSequenceUpLeftDownRight, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT
- MovementType_WalkSequenceDownRightUpLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT
- MovementType_WalkSequenceLeftDownRightUp, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP
- MovementType_WalkSequenceRightUpLeftDown, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN
- MovementType_WalkSequenceUpRightDownLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT
- MovementType_WalkSequenceDownLeftUpRight, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
- MovementType_WalkSequenceLeftUpRightDown, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
- MovementType_WalkSequenceRightDownLeftUp, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP
- MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER
- MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE
- MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE
- MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE
- MovementType_TreeDisguise, // MOVEMENT_TYPE_TREE_DISGUISE
- MovementType_MountainDisguise, // MOVEMENT_TYPE_MOUNTAIN_DISGUISE
- MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS
- MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS
- MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS
- MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS
- MovementType_Hidden, // MOVEMENT_TYPE_HIDDEN
- MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_DOWN
- MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_UP
- MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_LEFT
- MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT
- MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_DOWN
- MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_UP
- MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_LEFT
- MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT
- MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_DOWN
- MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_UP
- MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_LEFT
- MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT
- MovementType_Invisible, // MOVEMENT_TYPE_INVISIBLE
+ MovementType_None, // MOVEMENT_TYPE_NONE
+ MovementType_LookAround, // MOVEMENT_TYPE_LOOK_AROUND
+ MovementType_WanderAround, // MOVEMENT_TYPE_WANDER_AROUND
+ MovementType_WanderUpAndDown, // MOVEMENT_TYPE_WANDER_UP_AND_DOWN
+ MovementType_WanderUpAndDown, // MOVEMENT_TYPE_WANDER_DOWN_AND_UP
+ MovementType_WanderLeftAndRight, // MOVEMENT_TYPE_WANDER_LEFT_AND_RIGHT
+ MovementType_WanderLeftAndRight, // MOVEMENT_TYPE_WANDER_RIGHT_AND_LEFT
+ MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_UP
+ MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_DOWN
+ MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_LEFT
+ MovementType_FaceDirection, // MOVEMENT_TYPE_FACE_RIGHT
+ MovementType_Player, // MOVEMENT_TYPE_PLAYER
+ MovementType_BerryTreeGrowth, // MOVEMENT_TYPE_BERRY_TREE_GROWTH
+ MovementType_FaceDownAndUp, // MOVEMENT_TYPE_FACE_DOWN_AND_UP
+ MovementType_FaceLeftAndRight, // MOVEMENT_TYPE_FACE_LEFT_AND_RIGHT
+ MovementType_FaceUpAndLeft, // MOVEMENT_TYPE_FACE_UP_AND_LEFT
+ MovementType_FaceUpAndRight, // MOVEMENT_TYPE_FACE_UP_AND_RIGHT
+ MovementType_FaceDownAndLeft, // MOVEMENT_TYPE_FACE_DOWN_AND_LEFT
+ MovementType_FaceDownAndRight, // MOVEMENT_TYPE_FACE_DOWN_AND_RIGHT
+ MovementType_FaceDownUpAndLeft, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_LEFT
+ MovementType_FaceDownUpAndRight, // MOVEMENT_TYPE_FACE_DOWN_UP_AND_RIGHT
+ MovementType_FaceUpLeftAndRight, // MOVEMENT_TYPE_FACE_UP_LEFT_AND_RIGHT
+ MovementType_FaceDownLeftAndRight, // MOVEMENT_TYPE_FACE_DOWN_LEFT_AND_RIGHT
+ MovementType_RotateCounterclockwise, // MOVEMENT_TYPE_ROTATE_COUNTERCLOCKWISE
+ MovementType_RotateClockwise, // MOVEMENT_TYPE_ROTATE_CLOCKWISE
+ MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_UP_AND_DOWN
+ MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_DOWN_AND_UP
+ MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_LEFT_AND_RIGHT
+ MovementType_WalkBackAndForth, // MOVEMENT_TYPE_WALK_RIGHT_AND_LEFT
+ MovementType_WalkSequenceUpRightLeftDown, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_LEFT_DOWN
+ MovementType_WalkSequenceRightLeftDownUp, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_DOWN_UP
+ MovementType_WalkSequenceDownUpRightLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_RIGHT_LEFT
+ MovementType_WalkSequenceLeftDownUpRight, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_UP_RIGHT
+ MovementType_WalkSequenceUpLeftRightDown, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_RIGHT_DOWN
+ MovementType_WalkSequenceLeftRightDownUp, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_DOWN_UP
+ MovementType_WalkSequenceDownUpLeftRight, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_UP_LEFT_RIGHT
+ MovementType_WalkSequenceRightDownUpLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_UP_LEFT
+ MovementType_WalkSequenceLeftUpDownRight, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_DOWN_RIGHT
+ MovementType_WalkSequenceUpDownRightLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_RIGHT_LEFT
+ MovementType_WalkSequenceRightLeftUpDown, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_LEFT_UP_DOWN
+ MovementType_WalkSequenceDownRightLeftUp, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_LEFT_UP
+ MovementType_WalkSequenceRightUpDownLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_DOWN_LEFT
+ MovementType_WalkSequenceUpDownLeftRight, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_DOWN_LEFT_RIGHT
+ MovementType_WalkSequenceLeftRightUpDown, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_RIGHT_UP_DOWN
+ MovementType_WalkSequenceDownLeftRightUp, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_RIGHT_UP
+ MovementType_WalkSequenceUpLeftDownRight, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_LEFT_DOWN_RIGHT
+ MovementType_WalkSequenceDownRightUpLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_RIGHT_UP_LEFT
+ MovementType_WalkSequenceLeftDownRightUp, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_DOWN_RIGHT_UP
+ MovementType_WalkSequenceRightUpLeftDown, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_UP_LEFT_DOWN
+ MovementType_WalkSequenceUpRightDownLeft, // MOVEMENT_TYPE_WALK_SEQUENCE_UP_RIGHT_DOWN_LEFT
+ MovementType_WalkSequenceDownLeftUpRight, // MOVEMENT_TYPE_WALK_SEQUENCE_DOWN_LEFT_UP_RIGHT
+ MovementType_WalkSequenceLeftUpRightDown, // MOVEMENT_TYPE_WALK_SEQUENCE_LEFT_UP_RIGHT_DOWN
+ MovementType_WalkSequenceRightDownLeftUp, // MOVEMENT_TYPE_WALK_SEQUENCE_RIGHT_DOWN_LEFT_UP
+ MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER
+ MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE
+ MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE
+ MovementType_CopyPlayer, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE
+ MovementType_TreeDisguise, // MOVEMENT_TYPE_TREE_DISGUISE
+ MovementType_MountainDisguise, // MOVEMENT_TYPE_MOUNTAIN_DISGUISE
+ MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_IN_GRASS
+ MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_OPPOSITE_IN_GRASS
+ MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_COUNTERCLOCKWISE_IN_GRASS
+ MovementType_CopyPlayerInGrass, // MOVEMENT_TYPE_COPY_PLAYER_CLOCKWISE_IN_GRASS
+ MovementType_Hidden, // MOVEMENT_TYPE_HIDDEN
+ MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_DOWN
+ MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_UP
+ MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_LEFT
+ MovementType_WalkInPlace, // MOVEMENT_TYPE_WALK_IN_PLACE_RIGHT
+ MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_DOWN
+ MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_UP
+ MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_LEFT
+ MovementType_JogInPlace, // MOVEMENT_TYPE_JOG_IN_PLACE_RIGHT
+ MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_DOWN
+ MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_UP
+ MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_LEFT
+ MovementType_RunInPlace, // MOVEMENT_TYPE_RUN_IN_PLACE_RIGHT
+ MovementType_Invisible, // MOVEMENT_TYPE_INVISIBLE
};
const u8 gRangedMovementTypes[] = {
@@ -318,6 +348,36 @@ const u8 gInitialMovementTypeFacingDirections[] = {
DIR_SOUTH, // MOVEMENT_TYPE_INVISIBLE
};
+#define EVENT_OBJ_PAL_TAG_0 0x1103
+#define EVENT_OBJ_PAL_TAG_1 0x1104
+#define EVENT_OBJ_PAL_TAG_2 0x1105
+#define EVENT_OBJ_PAL_TAG_3 0x1106
+#define EVENT_OBJ_PAL_TAG_4 0x1107
+#define EVENT_OBJ_PAL_TAG_5 0x1108
+#define EVENT_OBJ_PAL_TAG_6 0x1109
+#define EVENT_OBJ_PAL_TAG_7 0x110A
+#define EVENT_OBJ_PAL_TAG_8 0x1100
+#define EVENT_OBJ_PAL_TAG_9 0x1101
+#define EVENT_OBJ_PAL_TAG_10 0x1102
+#define EVENT_OBJ_PAL_TAG_11 0x1115
+#define EVENT_OBJ_PAL_TAG_12 0x110B
+#define EVENT_OBJ_PAL_TAG_13 0x110C
+#define EVENT_OBJ_PAL_TAG_14 0x110D
+#define EVENT_OBJ_PAL_TAG_15 0x110E
+#define EVENT_OBJ_PAL_TAG_16 0x110F
+#define EVENT_OBJ_PAL_TAG_17 0x1110
+#define EVENT_OBJ_PAL_TAG_18 0x1111
+#define EVENT_OBJ_PAL_TAG_19 0x1112
+#define EVENT_OBJ_PAL_TAG_20 0x1113
+#define EVENT_OBJ_PAL_TAG_21 0x1114
+#define EVENT_OBJ_PAL_TAG_22 0x1116
+#define EVENT_OBJ_PAL_TAG_23 0x1117
+#define EVENT_OBJ_PAL_TAG_24 0x1118
+#define EVENT_OBJ_PAL_TAG_25 0x1119
+#define EVENT_OBJ_PAL_TAG_26 0x111A
+
+#define EVENT_OBJ_PAL_TAG_NONE 0x11FF
+
#include "data/field_event_obj/event_object_graphics_info_pointers.h"
#include "data/field_event_obj/field_effect_object_template_pointers.h"
#include "data/field_event_obj/event_object_pic_tables.h"
@@ -327,208 +387,208 @@ const u8 gInitialMovementTypeFacingDirections[] = {
#include "data/field_event_obj/event_object_graphics_info.h"
const struct SpritePalette sEventObjectSpritePalettes[] = {
- {gEventObjectPalette0, 0x1103},
- {gEventObjectPalette1, 0x1104},
- {gEventObjectPalette2, 0x1105},
- {gEventObjectPalette3, 0x1106},
- {gEventObjectPalette4, 0x1107},
- {gEventObjectPalette5, 0x1108},
- {gEventObjectPalette6, 0x1109},
- {gEventObjectPalette7, 0x110A},
- {gEventObjectPalette8, 0x1100},
- {gEventObjectPalette9, 0x1101},
- {gEventObjectPalette10, 0x1102},
- {gEventObjectPalette11, 0x1115},
- {gEventObjectPalette12, 0x110B},
- {gEventObjectPalette13, 0x110C},
- {gEventObjectPalette14, 0x110D},
- {gEventObjectPalette15, 0x110E},
- {gEventObjectPalette16, 0x110F},
- {gEventObjectPalette17, 0x1110},
- {gEventObjectPalette18, 0x1111},
- {gEventObjectPalette19, 0x1112},
- {gEventObjectPalette20, 0x1113},
- {gEventObjectPalette21, 0x1114},
- {gEventObjectPalette22, 0x1116},
- {gEventObjectPalette23, 0x1117},
- {gEventObjectPalette24, 0x1118},
- {gEventObjectPalette25, 0x1119},
- {gEventObjectPalette26, 0x111A},
- {NULL, 0x0000}
+ {gEventObjectPalette0, EVENT_OBJ_PAL_TAG_0},
+ {gEventObjectPalette1, EVENT_OBJ_PAL_TAG_1},
+ {gEventObjectPalette2, EVENT_OBJ_PAL_TAG_2},
+ {gEventObjectPalette3, EVENT_OBJ_PAL_TAG_3},
+ {gEventObjectPalette4, EVENT_OBJ_PAL_TAG_4},
+ {gEventObjectPalette5, EVENT_OBJ_PAL_TAG_5},
+ {gEventObjectPalette6, EVENT_OBJ_PAL_TAG_6},
+ {gEventObjectPalette7, EVENT_OBJ_PAL_TAG_7},
+ {gEventObjectPalette8, EVENT_OBJ_PAL_TAG_8},
+ {gEventObjectPalette9, EVENT_OBJ_PAL_TAG_9},
+ {gEventObjectPalette10, EVENT_OBJ_PAL_TAG_10},
+ {gEventObjectPalette11, EVENT_OBJ_PAL_TAG_11},
+ {gEventObjectPalette12, EVENT_OBJ_PAL_TAG_12},
+ {gEventObjectPalette13, EVENT_OBJ_PAL_TAG_13},
+ {gEventObjectPalette14, EVENT_OBJ_PAL_TAG_14},
+ {gEventObjectPalette15, EVENT_OBJ_PAL_TAG_15},
+ {gEventObjectPalette16, EVENT_OBJ_PAL_TAG_16},
+ {gEventObjectPalette17, EVENT_OBJ_PAL_TAG_17},
+ {gEventObjectPalette18, EVENT_OBJ_PAL_TAG_18},
+ {gEventObjectPalette19, EVENT_OBJ_PAL_TAG_19},
+ {gEventObjectPalette20, EVENT_OBJ_PAL_TAG_20},
+ {gEventObjectPalette21, EVENT_OBJ_PAL_TAG_21},
+ {gEventObjectPalette22, EVENT_OBJ_PAL_TAG_22},
+ {gEventObjectPalette23, EVENT_OBJ_PAL_TAG_23},
+ {gEventObjectPalette24, EVENT_OBJ_PAL_TAG_24},
+ {gEventObjectPalette25, EVENT_OBJ_PAL_TAG_25},
+ {gEventObjectPalette26, EVENT_OBJ_PAL_TAG_26},
+ {NULL, 0x0000},
};
const u16 gPlayerReflectionPaletteTags[] = {
- 0x1101,
- 0x1101,
- 0x1101,
- 0x1101
+ EVENT_OBJ_PAL_TAG_9,
+ EVENT_OBJ_PAL_TAG_9,
+ EVENT_OBJ_PAL_TAG_9,
+ EVENT_OBJ_PAL_TAG_9,
};
// These were probably intended to be used for the female player's reflection.
const u16 gUnusedPlayerReflectionPaletteTags[] = {
- 0x1111,
- 0x1111,
- 0x1111,
- 0x1111
+ EVENT_OBJ_PAL_TAG_18,
+ EVENT_OBJ_PAL_TAG_18,
+ EVENT_OBJ_PAL_TAG_18,
+ EVENT_OBJ_PAL_TAG_18,
};
const u16 gPlayerUnderwaterReflectionPaletteTags[] = {
- 0x1115,
- 0x1115,
- 0x1115,
- 0x1115
+ EVENT_OBJ_PAL_TAG_11,
+ EVENT_OBJ_PAL_TAG_11,
+ EVENT_OBJ_PAL_TAG_11,
+ EVENT_OBJ_PAL_TAG_11,
};
const struct ReflectionPaletteSet gPlayerReflectionPaletteSets[] = {
- {0x1100, gPlayerReflectionPaletteTags},
- {0x1110, gPlayerReflectionPaletteTags},
- {0x1115, gPlayerUnderwaterReflectionPaletteTags},
- {0x11FF, NULL}
+ {EVENT_OBJ_PAL_TAG_8, gPlayerReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_17, gPlayerReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_11, gPlayerUnderwaterReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_NONE, NULL},
};
const u16 gQuintyPlumpReflectionPaletteTags[] = {
- 0x110C,
- 0x110C,
- 0x110C,
- 0x110C
+ EVENT_OBJ_PAL_TAG_13,
+ EVENT_OBJ_PAL_TAG_13,
+ EVENT_OBJ_PAL_TAG_13,
+ EVENT_OBJ_PAL_TAG_13,
};
const u16 gTruckReflectionPaletteTags[] = {
- 0x110D,
- 0x110D,
- 0x110D,
- 0x110D
+ EVENT_OBJ_PAL_TAG_14,
+ EVENT_OBJ_PAL_TAG_14,
+ EVENT_OBJ_PAL_TAG_14,
+ EVENT_OBJ_PAL_TAG_14,
};
const u16 gMachokeMoverReflectionPaletteTags[] = {
- 0x110E,
- 0x110E,
- 0x110E,
- 0x110E
+ EVENT_OBJ_PAL_TAG_15,
+ EVENT_OBJ_PAL_TAG_15,
+ EVENT_OBJ_PAL_TAG_15,
+ EVENT_OBJ_PAL_TAG_15,
};
const u16 gMovingBoxReflectionPaletteTags[] = {
- 0x1112,
- 0x1112,
- 0x1112,
- 0x1112
+ EVENT_OBJ_PAL_TAG_19,
+ EVENT_OBJ_PAL_TAG_19,
+ EVENT_OBJ_PAL_TAG_19,
+ EVENT_OBJ_PAL_TAG_19,
};
const u16 gCableCarReflectionPaletteTags[] = {
- 0x1113,
- 0x1113,
- 0x1113,
- 0x1113
+ EVENT_OBJ_PAL_TAG_20,
+ EVENT_OBJ_PAL_TAG_20,
+ EVENT_OBJ_PAL_TAG_20,
+ EVENT_OBJ_PAL_TAG_20,
};
const u16 gSSTidalReflectionPaletteTags[] = {
- 0x1114,
- 0x1114,
- 0x1114,
- 0x1114
+ EVENT_OBJ_PAL_TAG_21,
+ EVENT_OBJ_PAL_TAG_21,
+ EVENT_OBJ_PAL_TAG_21,
+ EVENT_OBJ_PAL_TAG_21,
};
const u16 gSubmarineShadowReflectionPaletteTags[] = {
- 0x111A,
- 0x111A,
- 0x111A,
- 0x111A
+ EVENT_OBJ_PAL_TAG_26,
+ EVENT_OBJ_PAL_TAG_26,
+ EVENT_OBJ_PAL_TAG_26,
+ EVENT_OBJ_PAL_TAG_26,
};
const u16 gKyogre2ReflectionPaletteTags[] = {
- 0x1117,
- 0x1117,
- 0x1117,
- 0x1117
+ EVENT_OBJ_PAL_TAG_23,
+ EVENT_OBJ_PAL_TAG_23,
+ EVENT_OBJ_PAL_TAG_23,
+ EVENT_OBJ_PAL_TAG_23,
};
const u16 gGroudon2ReflectionPaletteTags[] = {
- 0x1119,
- 0x1119,
- 0x1119,
- 0x1119
+ EVENT_OBJ_PAL_TAG_25,
+ EVENT_OBJ_PAL_TAG_25,
+ EVENT_OBJ_PAL_TAG_25,
+ EVENT_OBJ_PAL_TAG_25,
};
const u16 gInvisibleKecleonReflectionPaletteTags[] = {
- 0x1109,
- 0x1109,
- 0x1109,
- 0x1109
+ EVENT_OBJ_PAL_TAG_6,
+ EVENT_OBJ_PAL_TAG_6,
+ EVENT_OBJ_PAL_TAG_6,
+ EVENT_OBJ_PAL_TAG_6,
};
const struct ReflectionPaletteSet gSpecialObjectReflectionPaletteSets[] = {
- {0x1100, gPlayerReflectionPaletteTags},
- {0x1110, gPlayerReflectionPaletteTags},
- {0x110B, gQuintyPlumpReflectionPaletteTags},
- {0x110D, gTruckReflectionPaletteTags},
- {0x110E, gMachokeMoverReflectionPaletteTags},
- {0x1112, gMovingBoxReflectionPaletteTags},
- {0x1113, gCableCarReflectionPaletteTags},
- {0x1114, gSSTidalReflectionPaletteTags},
- {0x1116, gKyogre2ReflectionPaletteTags},
- {0x1118, gGroudon2ReflectionPaletteTags},
- {0x1105, gInvisibleKecleonReflectionPaletteTags},
- {0x111A, gSubmarineShadowReflectionPaletteTags},
- {0x11FF, NULL}
+ {EVENT_OBJ_PAL_TAG_8, gPlayerReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_17, gPlayerReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_12, gQuintyPlumpReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_14, gTruckReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_15, gMachokeMoverReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_19, gMovingBoxReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_20, gCableCarReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_21, gSSTidalReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_22, gKyogre2ReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_24, gGroudon2ReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_2, gInvisibleKecleonReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_26, gSubmarineShadowReflectionPaletteTags},
+ {EVENT_OBJ_PAL_TAG_NONE, NULL},
};
const u16 gObjectPaletteTags0[] = {
- 0x1100,
- 0x1101,
- 0x1103,
- 0x1104,
- 0x1105,
- 0x1106,
- 0x1107,
- 0x1108,
- 0x1109,
- 0x110A
+ EVENT_OBJ_PAL_TAG_8,
+ EVENT_OBJ_PAL_TAG_9,
+ EVENT_OBJ_PAL_TAG_0,
+ EVENT_OBJ_PAL_TAG_1,
+ EVENT_OBJ_PAL_TAG_2,
+ EVENT_OBJ_PAL_TAG_3,
+ EVENT_OBJ_PAL_TAG_4,
+ EVENT_OBJ_PAL_TAG_5,
+ EVENT_OBJ_PAL_TAG_6,
+ EVENT_OBJ_PAL_TAG_7,
};
const u16 gObjectPaletteTags1[] = {
- 0x1100,
- 0x1101,
- 0x1103,
- 0x1104,
- 0x1105,
- 0x1106,
- 0x1107,
- 0x1108,
- 0x1109,
- 0x110A
+ EVENT_OBJ_PAL_TAG_8,
+ EVENT_OBJ_PAL_TAG_9,
+ EVENT_OBJ_PAL_TAG_0,
+ EVENT_OBJ_PAL_TAG_1,
+ EVENT_OBJ_PAL_TAG_2,
+ EVENT_OBJ_PAL_TAG_3,
+ EVENT_OBJ_PAL_TAG_4,
+ EVENT_OBJ_PAL_TAG_5,
+ EVENT_OBJ_PAL_TAG_6,
+ EVENT_OBJ_PAL_TAG_7,
};
const u16 gObjectPaletteTags2[] = {
- 0x1100,
- 0x1101,
- 0x1103,
- 0x1104,
- 0x1105,
- 0x1106,
- 0x1107,
- 0x1108,
- 0x1109,
- 0x110A
+ EVENT_OBJ_PAL_TAG_8,
+ EVENT_OBJ_PAL_TAG_9,
+ EVENT_OBJ_PAL_TAG_0,
+ EVENT_OBJ_PAL_TAG_1,
+ EVENT_OBJ_PAL_TAG_2,
+ EVENT_OBJ_PAL_TAG_3,
+ EVENT_OBJ_PAL_TAG_4,
+ EVENT_OBJ_PAL_TAG_5,
+ EVENT_OBJ_PAL_TAG_6,
+ EVENT_OBJ_PAL_TAG_7,
};
const u16 gObjectPaletteTags3[] = {
- 0x1100,
- 0x1101,
- 0x1103,
- 0x1104,
- 0x1105,
- 0x1106,
- 0x1107,
- 0x1108,
- 0x1109,
- 0x110A
+ EVENT_OBJ_PAL_TAG_8,
+ EVENT_OBJ_PAL_TAG_9,
+ EVENT_OBJ_PAL_TAG_0,
+ EVENT_OBJ_PAL_TAG_1,
+ EVENT_OBJ_PAL_TAG_2,
+ EVENT_OBJ_PAL_TAG_3,
+ EVENT_OBJ_PAL_TAG_4,
+ EVENT_OBJ_PAL_TAG_5,
+ EVENT_OBJ_PAL_TAG_6,
+ EVENT_OBJ_PAL_TAG_7,
};
const u16 *const gObjectPaletteTagSets[] = {
gObjectPaletteTags0,
gObjectPaletteTags1,
gObjectPaletteTags2,
- gObjectPaletteTags3
+ gObjectPaletteTags3,
};
#include "data/field_event_obj/berry_tree_graphics_tables.h"
@@ -942,7 +1002,7 @@ const u8 gOppositeDirections[] = {
DIR_NORTHEAST,
DIR_NORTHWEST,
DIR_SOUTHEAST,
- DIR_SOUTHWEST
+ DIR_SOUTHWEST,
};
const u8 gUnknown_08375757[][4] = {
@@ -975,20 +1035,20 @@ extern struct EventObject gEventObjects[16];
u8 gUnknown_Debug_03004BC0;
#endif
-static void ClearEventObject(struct EventObject *eventObj)
+static void ClearEventObject(struct EventObject *eventObject)
{
- memset(eventObj, 0, sizeof(struct EventObject));
- eventObj->localId = 0xFF;
- eventObj->mapNum = 0xFF;
- eventObj->mapGroup = 0xFF;
- eventObj->movementActionId = 0xFF;
+ memset(eventObject, 0, sizeof(struct EventObject));
+ eventObject->localId = 0xFF;
+ eventObject->mapNum = 0xFF;
+ eventObject->mapGroup = 0xFF;
+ eventObject->movementActionId = 0xFF;
}
static void ClearAllEventObjects(void)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
ClearEventObject(&gEventObjects[i]);
#if DEBUG
gUnknown_Debug_03004BC0 = 0;
@@ -1010,23 +1070,23 @@ static void CreateReflectionEffectSprites(void)
// continuously updates OAM rot/scale matrices using affine animations that scale
// the sprite up and down horizontally. The second one is needed to handle the inverted
// effect when the object is facing to the east. (The sprite has h-flip enabled).
- u8 spriteId = spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[21], 0, 0, 0x1F);
+ u8 spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[21], 0, 0, 31);
gSprites[spriteId].oam.affineMode = 1;
InitSpriteAffineAnim(&gSprites[spriteId]);
StartSpriteAffineAnim(&gSprites[spriteId], 0);
- gSprites[spriteId].invisible = 1;
+ gSprites[spriteId].invisible = TRUE;
- spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[21], 0, 0, 0x1F);
+ spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[21], 0, 0, 31);
gSprites[spriteId].oam.affineMode = 1;
InitSpriteAffineAnim(&gSprites[spriteId]);
StartSpriteAffineAnim(&gSprites[spriteId], 1);
- gSprites[spriteId].invisible = 1;
+ gSprites[spriteId].invisible = TRUE;
}
u8 GetFirstInactiveEventObjectId(void)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (!gEventObjects[i].active)
break;
@@ -1037,7 +1097,7 @@ u8 GetFirstInactiveEventObjectId(void)
u8 GetEventObjectIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
{
- if (localId < 255)
+ if (localId < 0xFF)
return GetEventObjectIdByLocalIdAndMapInternal(localId, mapNum, mapGroup);
else
return GetEventObjectIdByLocalId(localId);
@@ -1046,7 +1106,7 @@ u8 GetEventObjectIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
bool8 TryGetEventObjectIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 *eventObjectId)
{
*eventObjectId = GetEventObjectIdByLocalIdAndMap(localId, mapNum, mapGroup);
- if (*eventObjectId == 16)
+ if (*eventObjectId == EVENT_OBJECTS_COUNT)
return TRUE;
else
return FALSE;
@@ -1055,7 +1115,7 @@ bool8 TryGetEventObjectIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8
u8 GetEventObjectIdByXY(s16 x, s16 y)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (gEventObjects[i].active && gEventObjects[i].currentCoords.x == x && gEventObjects[i].currentCoords.y == y)
break;
@@ -1064,76 +1124,76 @@ u8 GetEventObjectIdByXY(s16 x, s16 y)
return i;
}
-u8 GetEventObjectIdByLocalIdAndMapInternal(u8 localId, u8 mapNum, u8 mapGroup)
+static u8 GetEventObjectIdByLocalIdAndMapInternal(u8 localId, u8 mapNum, u8 mapGroup)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (gEventObjects[i].active && gEventObjects[i].localId == localId && gEventObjects[i].mapNum == mapNum && gEventObjects[i].mapGroup == mapGroup)
return i;
}
- return 16;
+ return EVENT_OBJECTS_COUNT;
}
-u8 GetEventObjectIdByLocalId(u8 localId)
+static u8 GetEventObjectIdByLocalId(u8 localId)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (gEventObjects[i].active && gEventObjects[i].localId == localId)
return i;
}
- return 16;
+ return EVENT_OBJECTS_COUNT;
}
-u8 TryInitEventObjectStateFromTemplate(struct EventObjectTemplate *template, u8 mapNum, u8 mapGroup)
+static u8 InitEventObjectStateFromTemplate(struct EventObjectTemplate *template, u8 mapNum, u8 mapGroup)
{
- struct EventObject *eventObj;
+ struct EventObject *eventObject;
u8 eventObjectId;
s16 initialX;
s16 initialY;
if (GetAvailableEventObjectId(template->localId, mapNum, mapGroup, &eventObjectId) != 0)
- return 16;
+ return EVENT_OBJECTS_COUNT;
- eventObj = (void *)&gEventObjects[eventObjectId];
- ClearEventObject((struct EventObject *)eventObj);
+ eventObject = &gEventObjects[eventObjectId];
+ ClearEventObject(eventObject);
initialX = template->x + 7;
initialY = template->y + 7;
- eventObj->active = TRUE;
- eventObj->triggerGroundEffectsOnMove = TRUE;
- eventObj->graphicsId = template->graphicsId;
- eventObj->movementType = template->movementType;
- eventObj->localId = template->localId;
- eventObj->mapNum = mapNum;
+ eventObject->active = TRUE;
+ eventObject->triggerGroundEffectsOnMove = TRUE;
+ eventObject->graphicsId = template->graphicsId;
+ eventObject->movementType = template->movementType;
+ eventObject->localId = template->localId;
+ eventObject->mapNum = mapNum;
asm("":::"r6");
- eventObj->mapGroup = mapGroup;
- eventObj->initialCoords.x = initialX;
- eventObj->initialCoords.y = initialY;
- eventObj->currentCoords.x = initialX;
- eventObj->currentCoords.y = initialY;
- eventObj->previousCoords.x = initialX;
- eventObj->previousCoords.y = initialY;
- eventObj->currentElevation = template->elevation;
- eventObj->previousElevation = template->elevation;
- eventObj->range.as_nybbles.x = template->movementRangeX;
- eventObj->range.as_nybbles.y = template->movementRangeY;
- eventObj->trainerType = template->trainerType;
- eventObj->trainerRange_berryTreeId = template->trainerRange_berryTreeId;
- eventObj->previousMovementDirection = gInitialMovementTypeFacingDirections[template->movementType];
- SetEventObjectDirection((struct EventObject *)eventObj, eventObj->previousMovementDirection);
+ eventObject->mapGroup = mapGroup;
+ eventObject->initialCoords.x = initialX;
+ eventObject->initialCoords.y = initialY;
+ eventObject->currentCoords.x = initialX;
+ eventObject->currentCoords.y = initialY;
+ eventObject->previousCoords.x = initialX;
+ eventObject->previousCoords.y = initialY;
+ eventObject->currentElevation = template->elevation;
+ eventObject->previousElevation = template->elevation;
+ eventObject->range.as_nybbles.x = template->movementRangeX;
+ eventObject->range.as_nybbles.y = template->movementRangeY;
+ eventObject->trainerType = template->trainerType;
+ eventObject->trainerRange_berryTreeId = template->trainerRange_berryTreeId;
+ eventObject->previousMovementDirection = gInitialMovementTypeFacingDirections[template->movementType];
+ SetEventObjectDirection(eventObject, eventObject->previousMovementDirection);
asm("":::"r5","r6");
- SetEventObjectDynamicGraphicsId((struct EventObject *)eventObj);
+ SetEventObjectDynamicGraphicsId(eventObject);
- if (gRangedMovementTypes[eventObj->movementType])
+ if (gRangedMovementTypes[eventObject->movementType])
{
// Ensure a ranged movement type has at least 1 tile of room to move.
- if (eventObj->range.as_nybbles.x == 0)
- eventObj->range.as_nybbles.x++;
- if (eventObj->range.as_nybbles.y == 0)
- eventObj->range.as_nybbles.y++;
+ if (eventObject->range.as_nybbles.x == 0)
+ eventObject->range.as_nybbles.x++;
+ if (eventObject->range.as_nybbles.y == 0)
+ eventObject->range.as_nybbles.y++;
}
#if DEBUG
@@ -1144,44 +1204,46 @@ u8 TryInitEventObjectStateFromTemplate(struct EventObjectTemplate *template, u8
u8 TryInitLocalEventObject(u8 localId)
{
- u8 eventObjectCount;
u8 i;
+ u8 eventObjectCount;
if (gMapHeader.events == NULL)
- return 16;
+ return EVENT_OBJECTS_COUNT;
eventObjectCount = gMapHeader.events->eventObjectCount;
for (i = 0; i < eventObjectCount; i++)
{
struct EventObjectTemplate *template = &gSaveBlock1.eventObjectTemplates[i];
if (template->localId == localId && !FlagGet(template->flagId))
- return TryInitEventObjectStateFromTemplate(template, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup);
+ return InitEventObjectStateFromTemplate(template, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup);
}
- return 16;
+ return EVENT_OBJECTS_COUNT;
}
-u8 GetAvailableEventObjectId(u16 localId, u8 mapNum, u8 mapGroup, u8 *eventObjectId)
+static bool8 GetAvailableEventObjectId(u16 localId, u8 mapNum, u8 mapGroup, u8 *eventObjectId)
{
u8 i = 0;
- for (i = 0; i < 16 && gEventObjects[i].active; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
+ if (!gEventObjects[i].active)
+ break;
if (gEventObjects[i].localId == localId && gEventObjects[i].mapNum == mapNum && gEventObjects[i].mapGroup == mapGroup)
- return 1;
+ return TRUE;
}
- if (i >= 16)
- return 1;
+ if (i >= EVENT_OBJECTS_COUNT)
+ return TRUE;
*eventObjectId = i;
- for (; i < 16; i++)
+ for (; i < EVENT_OBJECTS_COUNT; i++)
{
if (gEventObjects[i].active && gEventObjects[i].localId == localId && gEventObjects[i].mapNum == mapNum && gEventObjects[i].mapGroup == mapGroup)
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-void RemoveEventObject(struct EventObject *eventObject)
+static void RemoveEventObject(struct EventObject *eventObject)
{
eventObject->active = FALSE;
RemoveEventObjectInternal(eventObject);
@@ -1200,7 +1262,7 @@ void RemoveEventObjectByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
}
}
-void RemoveEventObjectInternal(struct EventObject *eventObject)
+static void RemoveEventObjectInternal(struct EventObject *eventObject)
{
struct SpriteFrameImage image;
image.size = GetEventObjectGraphicsInfo(eventObject->graphicsId)->size;
@@ -1212,152 +1274,160 @@ void RemoveAllEventObjectsExceptPlayer(void)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (i != gPlayerAvatar.eventObjectId)
RemoveEventObject(&gEventObjects[i]);
}
}
-static u8 TrySetupEventObjectSprite(struct EventObjectTemplate *eventObjTemplate, struct SpriteTemplate *sprTemplate, u8 mapNum, u8 mapGroup, s16 cameraDeltaX, s16 cameraDeltaY)
+static u8 TrySetupEventObjectSprite(struct EventObjectTemplate *eventObjectTemplate, struct SpriteTemplate *spriteTemplate, u8 mapNum, u8 mapGroup, s16 cameraDeltaX, s16 cameraDeltaY)
{
- u8 eventObjectId;
u8 spriteId;
- const struct EventObjectGraphicsInfo *gfxInfo;
- struct EventObject *eventObject;
+ u8 eventObjectId;
struct Sprite *sprite;
+ struct EventObject *eventObject;
+ const struct EventObjectGraphicsInfo *graphicsInfo;
- eventObjectId = TryInitEventObjectStateFromTemplate(eventObjTemplate, mapNum, mapGroup);
- if (eventObjectId == 16)
- return 16;
+ eventObjectId = InitEventObjectStateFromTemplate(eventObjectTemplate, mapNum, mapGroup);
+ if (eventObjectId == EVENT_OBJECTS_COUNT)
+ return EVENT_OBJECTS_COUNT;
eventObject = &gEventObjects[eventObjectId];
- gfxInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
- if (gfxInfo->paletteSlot == 0)
- LoadPlayerObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
- else if (gfxInfo->paletteSlot == 10)
- LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
-
+ graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
+ if (graphicsInfo->paletteSlot == 0)
+ {
+ LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
+ }
+ else if (graphicsInfo->paletteSlot == 10)
+ {
+ LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
+ }
if (eventObject->movementType == MOVEMENT_TYPE_INVISIBLE)
+ {
eventObject->invisible = TRUE;
-
-#ifdef NONMATCHING
- sprTemplate->paletteTag = 0xFFFF;
-#else
- *(u16 *)&sprTemplate->paletteTag = 0xFFFF;
-#endif
- spriteId = CreateSprite(sprTemplate, 0, 0, 0);
+ }
+ *(u16 *)&spriteTemplate->paletteTag = 0xFFFF;
+ spriteId = CreateSprite(spriteTemplate, 0, 0, 0);
if (spriteId == MAX_SPRITES)
{
#if DEBUG
gUnknown_Debug_03004BC0--;
#endif
gEventObjects[eventObjectId].active = FALSE;
- return 16;
+ return EVENT_OBJECTS_COUNT;
}
sprite = &gSprites[spriteId];
sub_8060388(cameraDeltaX + eventObject->currentCoords.x, cameraDeltaY + eventObject->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
- sprite->centerToCornerVecX = -(gfxInfo->width >> 1);
- sprite->centerToCornerVecY = -(gfxInfo->height >> 1);
+ sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
+ sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
- sprite->oam.paletteNum = gfxInfo->paletteSlot;
+ sprite->oam.paletteNum = graphicsInfo->paletteSlot;
sprite->coordOffsetEnabled = TRUE;
sprite->data[0] = eventObjectId;
eventObject->spriteId = spriteId;
- eventObject->inanimate = gfxInfo->inanimate;
+ eventObject->inanimate = graphicsInfo->inanimate;
if (!eventObject->inanimate)
+ {
StartSpriteAnim(sprite, GetFaceDirectionAnimNum(eventObject->facingDirection));
+ }
SetObjectSubpriorityByZCoord(eventObject->previousElevation, sprite, 1);
UpdateEventObjectVisibility(eventObject, sprite);
return eventObjectId;
}
-u8 TrySpawnEventObject(struct EventObjectTemplate *eventObjTemplate, u8 mapNum, u8 mapGroup, s16 cameraDeltaX, s16 cameraDeltaY)
+static u8 TrySpawnEventObject(struct EventObjectTemplate *eventObjectTemplate, u8 mapNum, u8 mapGroup, s16 cameraDeltaX, s16 cameraDeltaY)
{
+ u8 eventObjectId;
struct SpriteTemplate spriteTemplate;
- const struct SubspriteTable *subspriteTables = NULL;
struct SpriteFrameImage spriteFrameImage;
- const struct EventObjectGraphicsInfo *gfxInfo;
- u8 eventObjectId;
+ const struct EventObjectGraphicsInfo *graphicsInfo;
+ const struct SubspriteTable *subspriteTables = NULL;
- gfxInfo = GetEventObjectGraphicsInfo(eventObjTemplate->graphicsId);
- MakeObjectTemplateFromEventObjectTemplate(eventObjTemplate, &spriteTemplate, &subspriteTables);
- spriteFrameImage.size = gfxInfo->size;
+ graphicsInfo = GetEventObjectGraphicsInfo(eventObjectTemplate->graphicsId);
+ MakeObjectTemplateFromEventObjectTemplate(eventObjectTemplate, &spriteTemplate, &subspriteTables);
+ spriteFrameImage.size = graphicsInfo->size;
spriteTemplate.images = &spriteFrameImage;
- eventObjectId = TrySetupEventObjectSprite(eventObjTemplate, &spriteTemplate, mapNum, mapGroup, cameraDeltaX, cameraDeltaY);
- if (eventObjectId == 16)
- return 16;
- gSprites[gEventObjects[eventObjectId].spriteId].images = gfxInfo->images;
+ eventObjectId = TrySetupEventObjectSprite(eventObjectTemplate, &spriteTemplate, mapNum, mapGroup, cameraDeltaX, cameraDeltaY);
+ if (eventObjectId == EVENT_OBJECTS_COUNT)
+ {
+ return EVENT_OBJECTS_COUNT;
+ }
+ gSprites[gEventObjects[eventObjectId].spriteId].images = graphicsInfo->images;
if (subspriteTables != NULL)
+ {
SetSubspriteTables(&gSprites[gEventObjects[eventObjectId].spriteId], subspriteTables);
+ }
return eventObjectId;
}
-u8 SpawnSpecialEventObject(struct EventObjectTemplate *eventObjTemplate)
+u8 SpawnSpecialEventObject(struct EventObjectTemplate *eventObjectTemplate)
{
s16 x;
s16 y;
GetEventObjectMovingCameraOffset(&x, &y);
- return TrySpawnEventObject(eventObjTemplate, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup, x, y);
+ return TrySpawnEventObject(eventObjectTemplate, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup, x, y);
}
u8 SpawnSpecialEventObjectParametrized(u8 graphicsId, u8 movementType, u8 localId, s16 x, s16 y, u8 elevation)
{
- struct EventObjectTemplate eventObjTemplate;
+ struct EventObjectTemplate eventObjectTemplate;
x -= 7;
y -= 7;
- eventObjTemplate.localId = localId;
- eventObjTemplate.graphicsId = graphicsId;
- eventObjTemplate.unk2 = 0;
- eventObjTemplate.x = x;
- eventObjTemplate.y = y;
- eventObjTemplate.elevation = elevation;
- eventObjTemplate.movementType = movementType;
- eventObjTemplate.movementRangeX = 0;
- eventObjTemplate.movementRangeY = 0;
- eventObjTemplate.trainerType = 0;
- eventObjTemplate.trainerRange_berryTreeId = 0;
- return SpawnSpecialEventObject(&eventObjTemplate);
-}
-
-u8 show_sprite(u8 a, u8 b, u8 c)
-{
- struct EventObjectTemplate *r5;
+ eventObjectTemplate.localId = localId;
+ eventObjectTemplate.graphicsId = graphicsId;
+ eventObjectTemplate.unk2 = 0;
+ eventObjectTemplate.x = x;
+ eventObjectTemplate.y = y;
+ eventObjectTemplate.elevation = elevation;
+ eventObjectTemplate.movementType = movementType;
+ eventObjectTemplate.movementRangeX = 0;
+ eventObjectTemplate.movementRangeY = 0;
+ eventObjectTemplate.trainerType = 0;
+ eventObjectTemplate.trainerRange_berryTreeId = 0;
+ return SpawnSpecialEventObject(&eventObjectTemplate);
+}
+
+u8 show_sprite(u8 localId, u8 mapNum, u8 mapGroup)
+{
+ struct EventObjectTemplate *eventObjectTemplate;
s16 x;
s16 y;
- r5 = GetEventObjectTemplateByLocalIdAndMap(a, b, c);
- if (r5 == NULL)
- return 16;
+ eventObjectTemplate = GetEventObjectTemplateByLocalIdAndMap(localId, mapNum, mapGroup);
+ if (eventObjectTemplate == NULL)
+ {
+ return EVENT_OBJECTS_COUNT;
+ }
GetEventObjectMovingCameraOffset(&x, &y);
- return TrySpawnEventObject(r5, b, c, x, y);
+ return TrySpawnEventObject(eventObjectTemplate, mapNum, mapGroup, x, y);
}
-void MakeObjectTemplateFromEventObjectGraphicsInfo(u16 graphicsId, void (*callback)(struct Sprite *), struct SpriteTemplate *sprTemplate, const struct SubspriteTable **subspriteTables)
+void MakeObjectTemplateFromEventObjectGraphicsInfo(u16 graphicsId, void (*callback)(struct Sprite *), struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables)
{
- const struct EventObjectGraphicsInfo *gfxInfo = GetEventObjectGraphicsInfo(graphicsId);
+ const struct EventObjectGraphicsInfo *graphicsInfo = GetEventObjectGraphicsInfo(graphicsId);
- sprTemplate->tileTag = gfxInfo->tileTag;
- sprTemplate->paletteTag = gfxInfo->paletteTag;
- sprTemplate->oam = gfxInfo->oam;
- sprTemplate->anims = gfxInfo->anims;
- sprTemplate->images = gfxInfo->images;
- sprTemplate->affineAnims = gfxInfo->affineAnims;
- sprTemplate->callback = callback;
- *subspriteTables = gfxInfo->subspriteTables;
+ spriteTemplate->tileTag = graphicsInfo->tileTag;
+ spriteTemplate->paletteTag = graphicsInfo->paletteTag;
+ spriteTemplate->oam = graphicsInfo->oam;
+ spriteTemplate->anims = graphicsInfo->anims;
+ spriteTemplate->images = graphicsInfo->images;
+ spriteTemplate->affineAnims = graphicsInfo->affineAnims;
+ spriteTemplate->callback = callback;
+ *subspriteTables = graphicsInfo->subspriteTables;
}
-void MakeObjectTemplateFromEventObjectGraphicsInfoWithCallbackIndex(u16 graphicsId, u16 movementType, struct SpriteTemplate *sprTemplate, const struct SubspriteTable **subspriteTables)
+static void MakeObjectTemplateFromEventObjectGraphicsInfoWithCallbackIndex(u16 graphicsId, u16 movementType, struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables)
{
- MakeObjectTemplateFromEventObjectGraphicsInfo(graphicsId, sMovementTypeCallbacks[movementType], sprTemplate, subspriteTables);
+ MakeObjectTemplateFromEventObjectGraphicsInfo(graphicsId, sMovementTypeCallbacks[movementType], spriteTemplate, subspriteTables);
}
-void MakeObjectTemplateFromEventObjectTemplate(struct EventObjectTemplate *eventObjTemplate, struct SpriteTemplate *sprTemplate, const struct SubspriteTable **subspriteTables)
+static void MakeObjectTemplateFromEventObjectTemplate(struct EventObjectTemplate *eventObjTemplate, struct SpriteTemplate *spriteTemplate, const struct SubspriteTable **subspriteTables)
{
- MakeObjectTemplateFromEventObjectGraphicsInfoWithCallbackIndex(eventObjTemplate->graphicsId, eventObjTemplate->movementType, sprTemplate, subspriteTables);
+ MakeObjectTemplateFromEventObjectGraphicsInfoWithCallbackIndex(eventObjTemplate->graphicsId, eventObjTemplate->movementType, spriteTemplate, subspriteTables);
}
u8 AddPseudoEventObject(u16 graphicsId, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority)
@@ -1368,9 +1438,11 @@ u8 AddPseudoEventObject(u16 graphicsId, void (*callback)(struct Sprite *), s16 x
MakeObjectTemplateFromEventObjectGraphicsInfo(graphicsId, callback, &spriteTemplate, &subspriteTables);
if (spriteTemplate.paletteTag != 0xFFFF)
+ {
sub_805BDF8(spriteTemplate.paletteTag);
+ }
spriteId = CreateSprite(&spriteTemplate, x, y, subpriority);
- if (spriteId != 64 && subspriteTables != NULL)
+ if (spriteId != MAX_SPRITES && subspriteTables != NULL)
{
SetSubspriteTables(&gSprites[spriteId], subspriteTables);
gSprites[spriteId].subspriteMode = 2;
@@ -1380,35 +1452,33 @@ u8 AddPseudoEventObject(u16 graphicsId, void (*callback)(struct Sprite *), s16 x
u8 sub_805B410(u8 graphicsId, u8 b, s16 x, s16 y, u8 elevation, u8 direction)
{
- const struct EventObjectGraphicsInfo *gfxInfo;
+ u8 spriteId;
struct SpriteTemplate spriteTemplate;
const struct SubspriteTable *subspriteTables;
- u8 spriteId;
+ const struct EventObjectGraphicsInfo *graphicsInfo;
- gfxInfo = GetEventObjectGraphicsInfo(graphicsId);
+ graphicsInfo = GetEventObjectGraphicsInfo(graphicsId);
MakeObjectTemplateFromEventObjectGraphicsInfo(graphicsId, UpdateEventObjectSpriteSubpriorityAndVisibility, &spriteTemplate, &subspriteTables);
-#ifdef NONMATCHING
- spriteTemplate.paletteTag = 0xFFFF;
-#else
*(u16 *)&spriteTemplate.paletteTag = 0xFFFF;
-#endif
x += 7;
y += 7;
sub_8060470(&x, &y, 8, 16);
spriteId = CreateSpriteAtEnd(&spriteTemplate, x, y, 0);
- if (spriteId != 64)
+ if (spriteId != MAX_SPRITES)
{
struct Sprite *sprite = &gSprites[spriteId];
- sprite->centerToCornerVecX = -(gfxInfo->width >> 1);
- sprite->centerToCornerVecY = -(gfxInfo->height >> 1);
+ sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
+ sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.y += sprite->centerToCornerVecY;
- sprite->oam.paletteNum = gfxInfo->paletteSlot;
+ sprite->oam.paletteNum = graphicsInfo->paletteSlot;
sprite->coordOffsetEnabled = TRUE;
sprite->data[0] = b;
sprite->data[1] = elevation;
- if (gfxInfo->paletteSlot == 10)
- LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
+ if (graphicsInfo->paletteSlot == 10)
+ {
+ LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
+ }
if (subspriteTables != NULL)
{
SetSubspriteTables(sprite, subspriteTables);
@@ -1427,37 +1497,33 @@ void TrySpawnEventObjects(s16 cameraDeltaX, s16 cameraDeltaY)
if (gMapHeader.events != NULL)
{
- s16 r9 = gSaveBlock1.pos.x - 2;
- s16 sp8 = gSaveBlock1.pos.x + 17;
- s16 r10 = gSaveBlock1.pos.y;
- s16 spC = gSaveBlock1.pos.y + 16;
+ s16 left = gSaveBlock1.pos.x - 2;
+ s16 right = gSaveBlock1.pos.x + 17;
+ s16 top = gSaveBlock1.pos.y;
+ s16 bottom = gSaveBlock1.pos.y + 16;
u8 objectCount = gMapHeader.events->eventObjectCount;
for (i = 0; i < objectCount; i++)
{
struct EventObjectTemplate *template = &gSaveBlock1.eventObjectTemplates[i];
- s16 foo = template->x + 7;
- s16 bar = template->y + 7;
+ s16 npcX = template->x + 7;
+ s16 npcY = template->y + 7;
- if (r10 <= bar && spC >= bar && r9 <= foo && sp8 >= foo
+ if (top <= npcY && bottom >= npcY && left <= npcX && right >= npcX
&& !FlagGet(template->flagId))
TrySpawnEventObject(template, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup, cameraDeltaX, cameraDeltaY);
}
}
}
-void RemoveEventObjectIfOutsideView(struct EventObject *eventObject);
-
void RemoveEventObjectsOutsideView(void)
{
- u8 i;
- u8 j;
+ u8 i, j;
+ bool8 isActiveLinkPlayer;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
- bool8 isActiveLinkPlayer;
-
- for (j = 0, isActiveLinkPlayer = 0; j < 4; j++)
+ for (j = 0, isActiveLinkPlayer = FALSE; j < 4; j++)
{
if (gLinkPlayerEventObjects[j].active && i == gLinkPlayerEventObjects[j].eventObjId)
isActiveLinkPlayer = TRUE;
@@ -1472,18 +1538,18 @@ void RemoveEventObjectsOutsideView(void)
}
}
-void RemoveEventObjectIfOutsideView(struct EventObject *eventObject)
+static void RemoveEventObjectIfOutsideView(struct EventObject *eventObject)
{
- s16 r7 = gSaveBlock1.pos.x - 2;
- s16 r5 = gSaveBlock1.pos.x + 17;
- s16 r4 = gSaveBlock1.pos.y;
- s16 r6 = gSaveBlock1.pos.y + 16;
+ s16 left = gSaveBlock1.pos.x - 2;
+ s16 right = gSaveBlock1.pos.x + 17;
+ s16 top = gSaveBlock1.pos.y;
+ s16 bottom = gSaveBlock1.pos.y + 16;
- if (eventObject->currentCoords.x >= r7 && eventObject->currentCoords.x <= r5
- && eventObject->currentCoords.y >= r4 && eventObject->currentCoords.y <= r6)
+ if (eventObject->currentCoords.x >= left && eventObject->currentCoords.x <= right
+ && eventObject->currentCoords.y >= top && eventObject->currentCoords.y <= bottom)
return;
- if (eventObject->initialCoords.x >= r7 && eventObject->initialCoords.x <= r5
- && eventObject->initialCoords.y >= r4 && eventObject->initialCoords.y <= r6)
+ if (eventObject->initialCoords.x >= left && eventObject->initialCoords.x <= right
+ && eventObject->initialCoords.y >= top && eventObject->initialCoords.y <= bottom)
return;
RemoveEventObject(eventObject);
}
@@ -1498,7 +1564,7 @@ void sub_805B710(u16 a, u16 b)
gUnknown_Debug_03004BC0 = 0;
#endif
ClearPlayerAvatarInfo();
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (gEventObjects[i].active)
{
@@ -1511,69 +1577,74 @@ void sub_805B710(u16 a, u16 b)
CreateReflectionEffectSprites();
}
-extern void SetPlayerAvatarEventObjectIdAndObjectId(u8, u8);
-extern void sub_805B914(struct EventObject *);
-
-void sub_805B75C(u8 eventObjectId, s16 b, s16 c)
+void sub_805B75C(u8 eventObjectId, s16 x, s16 y)
{
- struct SpriteTemplate sp0;
- struct SpriteFrameImage sp18;
- const struct SubspriteTable *subspriteTables;
- const struct EventObjectGraphicsInfo *gfxInfo;
- struct EventObject *eventObject;
u8 spriteId;
+ struct Sprite *sprite;
+ struct EventObject *eventObject;
+ struct SpriteTemplate spriteTemplate;
+ struct SpriteFrameImage spriteFrameImage;
+ const struct SubspriteTable *subspriteTables;
+ const struct EventObjectGraphicsInfo *graphicsInfo;
- #define i spriteId
+#define i spriteId
for (i = 0; i < 4; i++)
{
if (gLinkPlayerEventObjects[i].active && eventObjectId == gLinkPlayerEventObjects[i].eventObjId)
return;
}
- #undef i
+#undef i
eventObject = &gEventObjects[eventObjectId];
asm("":::"r5");
subspriteTables = NULL;
- gfxInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
- sp18.size = gfxInfo->size;
- MakeObjectTemplateFromEventObjectGraphicsInfoWithCallbackIndex(eventObject->graphicsId, eventObject->movementType, &sp0, &subspriteTables);
- sp0.images = &sp18;
- *(u16 *)&sp0.paletteTag = 0xFFFF;
- if (gfxInfo->paletteSlot == 0)
- LoadPlayerObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
- if (gfxInfo->paletteSlot > 9)
- LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
- *(u16 *)&sp0.paletteTag = 0xFFFF;
- spriteId = CreateSprite(&sp0, 0, 0, 0);
- if (spriteId != 64)
+ graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
+ spriteFrameImage.size = graphicsInfo->size;
+ MakeObjectTemplateFromEventObjectGraphicsInfoWithCallbackIndex(eventObject->graphicsId, eventObject->movementType, &spriteTemplate, &subspriteTables);
+ spriteTemplate.images = &spriteFrameImage;
+ *(u16 *)&spriteTemplate.paletteTag = 0xFFFF;
+ if (graphicsInfo->paletteSlot == 0)
{
- struct Sprite *sprite = &gSprites[spriteId];
-
- sub_8060388(b + eventObject->currentCoords.x, c + eventObject->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
- sprite->centerToCornerVecX = -(gfxInfo->width >> 1);
- sprite->centerToCornerVecY = -(gfxInfo->height >> 1);
+ LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
+ }
+ if (graphicsInfo->paletteSlot > 9)
+ {
+ LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
+ }
+ *(u16 *)&spriteTemplate.paletteTag = 0xFFFF;
+ spriteId = CreateSprite(&spriteTemplate, 0, 0, 0);
+ if (spriteId != MAX_SPRITES)
+ {
+ sprite = &gSprites[spriteId];
+ sub_8060388(x + eventObject->currentCoords.x, y + eventObject->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
+ sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
+ sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
- sprite->images = gfxInfo->images;
+ sprite->images = graphicsInfo->images;
if (eventObject->movementType == MOVEMENT_TYPE_PLAYER)
{
SetPlayerAvatarEventObjectIdAndObjectId(eventObjectId, spriteId);
eventObject->warpArrowSpriteId = CreateWarpArrowSprite();
}
if (subspriteTables != NULL)
+ {
SetSubspriteTables(sprite, subspriteTables);
- sprite->oam.paletteNum = gfxInfo->paletteSlot;
+ }
+ sprite->oam.paletteNum = graphicsInfo->paletteSlot;
sprite->coordOffsetEnabled = TRUE;
sprite->data[0] = eventObjectId;
eventObject->spriteId = spriteId;
if (!eventObject->inanimate && eventObject->movementType != MOVEMENT_TYPE_PLAYER)
+ {
StartSpriteAnim(sprite, GetFaceDirectionAnimNum(eventObject->facingDirection));
+ }
sub_805B914(eventObject);
SetObjectSubpriorityByZCoord(eventObject->previousElevation, sprite, 1);
}
}
-void sub_805B914(struct EventObject *eventObject)
+static void sub_805B914(struct EventObject *eventObject)
{
eventObject->singleMovementActive = FALSE;
eventObject->triggerGroundEffectsOnMove = TRUE;
@@ -1586,7 +1657,7 @@ void sub_805B914(struct EventObject *eventObject)
EventObjectClearHeldMovement(eventObject);
}
-void SetPlayerAvatarEventObjectIdAndObjectId(u8 eventObjectId, u8 spriteId)
+static void SetPlayerAvatarEventObjectIdAndObjectId(u8 eventObjectId, u8 spriteId)
{
gPlayerAvatar.eventObjectId = eventObjectId;
gPlayerAvatar.spriteId = spriteId;
@@ -1594,40 +1665,48 @@ void SetPlayerAvatarEventObjectIdAndObjectId(u8 eventObjectId, u8 spriteId)
SetPlayerAvatarExtraStateTransition(gEventObjects[eventObjectId].graphicsId, 0x20);
}
-void sub_805B980(struct EventObject *eventObject, u8 graphicsId)
+void EventObjectSetGraphicsId(struct EventObject *eventObject, u8 graphicsId)
{
- const struct EventObjectGraphicsInfo *gfxInfo;
+ const struct EventObjectGraphicsInfo *graphicsInfo;
struct Sprite *sprite;
- gfxInfo = GetEventObjectGraphicsInfo(graphicsId);
+ graphicsInfo = GetEventObjectGraphicsInfo(graphicsId);
sprite = &gSprites[eventObject->spriteId];
- if (gfxInfo->paletteSlot == 0)
- PatchObjectPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
- if (gfxInfo->paletteSlot == 10)
- LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
- sprite->oam.shape = gfxInfo->oam->shape;
- sprite->oam.size = gfxInfo->oam->size;
- sprite->images = gfxInfo->images;
- sprite->anims = gfxInfo->anims;
- sprite->subspriteTables = gfxInfo->subspriteTables;
- sprite->oam.paletteNum = gfxInfo->paletteSlot;
- eventObject->inanimate = gfxInfo->inanimate;
+ if (graphicsInfo->paletteSlot == 0)
+ {
+ PatchObjectPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
+ }
+ if (graphicsInfo->paletteSlot == 10)
+ {
+ LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, graphicsInfo->paletteSlot);
+ }
+ sprite->oam.shape = graphicsInfo->oam->shape;
+ sprite->oam.size = graphicsInfo->oam->size;
+ sprite->images = graphicsInfo->images;
+ sprite->anims = graphicsInfo->anims;
+ sprite->subspriteTables = graphicsInfo->subspriteTables;
+ sprite->oam.paletteNum = graphicsInfo->paletteSlot;
+ eventObject->inanimate = graphicsInfo->inanimate;
eventObject->graphicsId = graphicsId;
sub_80603CC(eventObject->currentCoords.x, eventObject->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
- sprite->centerToCornerVecX = -(gfxInfo->width >> 1);
- sprite->centerToCornerVecY = -(gfxInfo->height >> 1);
+ sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
+ sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
if (eventObject->trackedByCamera)
+ {
CameraObjectReset1();
+ }
}
-void unref_sub_805BA80(u8 localId, u8 mapNum, u8 mapGroup, u8 graphicsId)
+void EventObjectSetGraphicsIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 graphicsId)
{
u8 eventObjectId;
if (!TryGetEventObjectIdByLocalIdAndMap(localId, mapNum, mapGroup, &eventObjectId))
- sub_805B980(&gEventObjects[eventObjectId], graphicsId);
+ {
+ EventObjectSetGraphicsId(&gEventObjects[eventObjectId], graphicsId);
+ }
}
void EventObjectTurn(struct EventObject *eventObject, u8 direction)
@@ -1645,58 +1724,70 @@ void EventObjectTurnByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, u8 direc
u8 eventObjectId;
if (!TryGetEventObjectIdByLocalIdAndMap(localId, mapNum, mapGroup, &eventObjectId))
+ {
EventObjectTurn(&gEventObjects[eventObjectId], direction);
+ }
}
-void unref_TurnPlayer(struct PlayerAvatar *player, u8 direction)
+void PlayerObjectTurn(struct PlayerAvatar *playerAvatar, u8 direction)
{
- EventObjectTurn(&gEventObjects[player->eventObjectId], direction);
+ EventObjectTurn(&gEventObjects[playerAvatar->eventObjectId], direction);
}
-void get_berry_tree_graphics(struct EventObject *eventObject, struct Sprite *sprite)
+static void get_berry_tree_graphics(struct EventObject *eventObject, struct Sprite *sprite)
{
- u8 treeStage;
- u8 treeId;
+ u8 berryStage;
+ u8 berryId;
eventObject->invisible = TRUE;
sprite->invisible = TRUE;
- treeStage = GetStageByBerryTreeId(eventObject->trainerRange_berryTreeId);
- if (treeStage != 0)
+ berryStage = GetStageByBerryTreeId(eventObject->trainerRange_berryTreeId);
+ if (berryStage != 0)
{
eventObject->invisible = FALSE;
sprite->invisible = FALSE;
- treeId = GetBerryTypeByBerryTreeId(eventObject->trainerRange_berryTreeId) - 1;
- treeStage--;
- if (treeId > 0x2B)
- treeId = 0;
- sub_805B980(eventObject, gBerryTreeGraphicsIdTablePointers[treeId][treeStage]);
- sprite->images = gBerryTreePicTablePointers[treeId];
- sprite->oam.paletteNum = gBerryTreePaletteSlotTablePointers[treeId][treeStage];
- StartSpriteAnim(sprite, treeStage);
+ berryId = GetBerryTypeByBerryTreeId(eventObject->trainerRange_berryTreeId) - 1;
+ berryStage--;
+ if (berryId > 0x2B)
+ {
+ berryId = 0;
+ }
+ EventObjectSetGraphicsId(eventObject, gBerryTreeGraphicsIdTablePointers[berryId][berryStage]);
+ sprite->images = gBerryTreePicTablePointers[berryId];
+ sprite->oam.paletteNum = gBerryTreePaletteSlotTablePointers[berryId][berryStage];
+ StartSpriteAnim(sprite, berryStage);
}
}
const struct EventObjectGraphicsInfo *GetEventObjectGraphicsInfo(u8 graphicsId)
{
- if (graphicsId > 0xEF)
+ if (graphicsId > SPRITE_VAR)
+ {
graphicsId = VarGetEventObjectGraphicsId(graphicsId + 16);
- if (graphicsId > 0xD9)
- graphicsId = 5;
+ }
+ if (graphicsId > NUM_OBJECT_GRAPHICS_INFO)
+ {
+ graphicsId = EVENT_OBJ_GFX_LITTLE_BOY_1;
+ }
return gEventObjectGraphicsInfoPointers[graphicsId];
}
-void SetEventObjectDynamicGraphicsId(struct EventObject *eventObject)
+static void SetEventObjectDynamicGraphicsId(struct EventObject *eventObject)
{
- if (eventObject->graphicsId > 0xEF)
+ if (eventObject->graphicsId > SPRITE_VAR)
+ {
eventObject->graphicsId = VarGetEventObjectGraphicsId(eventObject->graphicsId + 16);
+ }
}
-void npc_by_local_id_and_map_set_field_1_bit_x20(u8 localId, u8 mapNum, u8 mapGroup, u8 d)
+void npc_by_local_id_and_map_set_field_1_bit_x20(u8 localId, u8 mapNum, u8 mapGroup, u8 state)
{
u8 eventObjectId;
if (!TryGetEventObjectIdByLocalIdAndMap(localId, mapNum, mapGroup, &eventObjectId))
- gEventObjects[eventObjectId].invisible = d;
+ {
+ gEventObjects[eventObjectId].invisible = state;
+ }
}
void EventObjectGetLocalIdAndMap(struct EventObject *eventObject, void *localId, void *mapNum, void *mapGroup)
@@ -1712,7 +1803,7 @@ void sub_805BCC0(s16 x, s16 y)
struct EventObject *eventObject;
eventObjectId = GetEventObjectIdByXY(x, y);
- if (eventObjectId != 16)
+ if (eventObjectId != EVENT_OBJECTS_COUNT)
{
eventObject = &gEventObjects[eventObjectId];
eventObject->triggerGroundEffectsOnMove = TRUE;
@@ -1766,52 +1857,60 @@ void FreeAndReserveObjectSpritePalettes(void)
gReservedSpritePaletteCount = 12;
}
-void sub_805BDF8(u16 tag)
+void sub_805BDF8(u16 paletteTag)
{
- u16 paletteIndex = FindEventObjectPaletteIndexByTag(tag);
+ u16 paletteSlot = FindEventObjectPaletteIndexByTag(paletteTag);
- if (paletteIndex != 0x11FF) //always happens. FindEventObjectPaletteIndexByTag returns u8
- sub_805BE58(&sEventObjectSpritePalettes[paletteIndex]);
+ if (paletteSlot != EVENT_OBJ_PAL_TAG_NONE) //always happens. FindEventObjectPaletteIndexByTag returns u8
+ {
+ sub_805BE58(&sEventObjectSpritePalettes[paletteSlot]);
+ }
}
-void unref_sub_805BE24(u16 *arr)
+void unref_sub_805BE24(u16 *paletteTags)
{
u8 i;
- for (i = 0; arr[i] != 0x11FF; i++)
- sub_805BDF8(arr[i]);
+ for (i = 0; paletteTags[i] != EVENT_OBJ_PAL_TAG_NONE; i++)
+ sub_805BDF8(paletteTags[i]);
}
-u8 sub_805BE58(const struct SpritePalette *palette)
+static u8 sub_805BE58(const struct SpritePalette *palette)
{
if (IndexOfSpritePaletteTag(palette->tag) != 0xFF)
+ {
return 0xFF;
- else
- return LoadSpritePalette(palette);
+ }
+ return LoadSpritePalette(palette);
}
-void PatchObjectPalette(u16 paletteTag, u16 paletteIndex)
+void PatchObjectPalette(u16 paletteTag, u8 paletteSlot)
{
- u8 index = paletteIndex;
- u8 tagPaletteIndex = FindEventObjectPaletteIndexByTag(paletteTag);
+ u8 paletteIndex = FindEventObjectPaletteIndexByTag(paletteTag);
- LoadPalette(sEventObjectSpritePalettes[tagPaletteIndex].data, index * 16 + 0x100, 0x20);
+ LoadPalette(sEventObjectSpritePalettes[paletteIndex].data, 16 * paletteSlot + 0x100, 0x20);
}
-static void PatchObjectPalettes(const u16 *paletteTags, u8 paletteIndex, u8 maxPaletteIndex)
+static void PatchObjectPalettes(const u16 *paletteTags, u8 minSlot, u8 maxSlot)
{
- for (; paletteIndex < maxPaletteIndex; paletteTags++, paletteIndex++)
- PatchObjectPalette(*paletteTags, paletteIndex);
+ while (minSlot < maxSlot)
+ {
+ PatchObjectPalette(*paletteTags, minSlot);
+ paletteTags++;
+ minSlot++;
+ }
}
-u8 FindEventObjectPaletteIndexByTag(u16 tag)
+static u8 FindEventObjectPaletteIndexByTag(u16 tag)
{
u8 i;
- for (i = 0; sEventObjectSpritePalettes[i].tag != 0x11FF; i++)
+ for (i = 0; sEventObjectSpritePalettes[i].tag != EVENT_OBJ_PAL_TAG_NONE; i++)
{
if (sEventObjectSpritePalettes[i].tag == tag)
+ {
return i;
+ }
}
return 0xFF;
}
@@ -1821,7 +1920,7 @@ void LoadPlayerObjectReflectionPalette(u16 paletteTag, u8 paletteIndex)
u8 i;
PatchObjectPalette(paletteTag, paletteIndex);
- for (i = 0; gPlayerReflectionPaletteSets[i].mainPaletteTag != 0x11FF; i++)
+ for (i = 0; gPlayerReflectionPaletteSets[i].mainPaletteTag != EVENT_OBJ_PAL_TAG_NONE; i++)
{
if (gPlayerReflectionPaletteSets[i].mainPaletteTag == paletteTag)
{
@@ -1837,7 +1936,7 @@ void LoadSpecialObjectReflectionPalette(u16 paletteTag, u8 paletteIndex)
sCurrentSpecialObjectPaletteTag = paletteTag;
PatchObjectPalette(paletteTag, paletteIndex);
- for (i = 0; gSpecialObjectReflectionPaletteSets[i].mainPaletteTag != 0x11FF; i++)
+ for (i = 0; gSpecialObjectReflectionPaletteSets[i].mainPaletteTag != EVENT_OBJ_PAL_TAG_NONE; i++)
{
if (gSpecialObjectReflectionPaletteSets[i].mainPaletteTag == paletteTag)
{
@@ -1863,7 +1962,7 @@ void ShiftEventObjectCoords(struct EventObject *eventObject, s16 x, s16 y)
eventObject->currentCoords.y = y;
}
-void SetEventObjectCoords(struct EventObject *eventObject, s16 x, s16 y)
+static void SetEventObjectCoords(struct EventObject *eventObject, s16 x, s16 y)
{
eventObject->previousCoords.x = x;
eventObject->previousCoords.y = y;
@@ -1874,12 +1973,12 @@ void SetEventObjectCoords(struct EventObject *eventObject, s16 x, s16 y)
void sub_805C058(struct EventObject *eventObject, s16 x, s16 y)
{
struct Sprite *sprite = &gSprites[eventObject->spriteId];
- const struct EventObjectGraphicsInfo *gfxInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
+ const struct EventObjectGraphicsInfo *graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
SetEventObjectCoords(eventObject, x, y);
sub_80603CC(eventObject->currentCoords.x, eventObject->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
- sprite->centerToCornerVecX = -(gfxInfo->width >> 1);
- sprite->centerToCornerVecY = -(gfxInfo->height >> 1);
+ sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
+ sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
sub_805B914(eventObject);
@@ -1910,11 +2009,11 @@ void UpdateEventObjectCoordsForCameraUpdate(void)
s16 deltaX;
s16 deltaY;
- if (gCamera.field_0)
+ if (gCamera.active)
{
deltaX = gCamera.x;
deltaY = gCamera.y;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
if (gEventObjects[i].active)
{
@@ -1933,22 +2032,26 @@ u8 GetEventObjectIdByXYZ(u16 x, u16 y, u8 z)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
- if (gEventObjects[i].active && gEventObjects[i].currentCoords.x == x && gEventObjects[i].currentCoords.y == y
- && EventObjectZCoordIsCompatible(&gEventObjects[i], z))
- return i;
+ if (gEventObjects[i].active)
+ {
+ if (gEventObjects[i].currentCoords.x == x && gEventObjects[i].currentCoords.y == y && EventObjectDoesZCoordMatch(&gEventObjects[i], z))
+ {
+ return i;
+ }
+ }
}
- return 16;
+ return EVENT_OBJECTS_COUNT;
}
-static bool8 EventObjectZCoordIsCompatible(struct EventObject *eventObject, u8 z)
+static bool8 EventObjectDoesZCoordMatch(struct EventObject *eventObject, u8 z)
{
- if (eventObject->currentElevation != 0 && z != 0
- && eventObject->currentElevation != z)
+ if (eventObject->currentElevation != 0 && z != 0 && eventObject->currentElevation != z)
+ {
return FALSE;
- else
- return TRUE;
+ }
+ return TRUE;
}
void UpdateEventObjectsForCameraUpdate(s16 cameraDeltaX, s16 cameraDeltaY)
@@ -2002,14 +2105,16 @@ static void CameraObject_2(struct Sprite *sprite)
sprite->data[3] = 0;
}
-struct Sprite *FindCameraObject(void)
+static struct Sprite *FindCameraObject(void)
{
u8 i;
for (i = 0; i < MAX_SPRITES; i++)
{
if (gSprites[i].inUse && gSprites[i].callback == ObjectCB_CameraObject)
+ {
return &gSprites[i];
+ }
}
return NULL;
}
@@ -2041,7 +2146,7 @@ u8 CameraObjectGetFollowedObjectId(void)
struct Sprite *cameraSprite = FindCameraObject();
if (cameraSprite == NULL)
- return 64;
+ return MAX_SPRITES;
else
return cameraSprite->data[0];
}
@@ -2086,7 +2191,6 @@ u8 CreateCopySpriteAt(struct Sprite *src, s16 x, s16 y, u8 subpriority)
return i;
}
}
-
return MAX_SPRITES;
}
@@ -2101,26 +2205,22 @@ void SetEventObjectDirection(struct EventObject *eventObject, u8 direction)
eventObject->movementDirection = direction;
}
-u8 *GetEventObjectScriptPointerByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
+static const u8 *GetEventObjectScriptPointerByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
{
- struct EventObjectTemplate *template = GetEventObjectTemplateByLocalIdAndMap(localId, mapNum, mapGroup);
-
- return template->script;
+ return GetEventObjectTemplateByLocalIdAndMap(localId, mapNum, mapGroup)->script;
}
-u8 *GetEventObjectScriptPointerByEventObjectId(u8 eventObjectId)
+const u8 *GetEventObjectScriptPointerByEventObjectId(u8 eventObjectId)
{
return GetEventObjectScriptPointerByLocalIdAndMap(gEventObjects[eventObjectId].localId, gEventObjects[eventObjectId].mapNum, gEventObjects[eventObjectId].mapGroup);
}
-u16 GetEventObjectFlagIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
+static u16 GetEventObjectFlagIdByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup)
{
- struct EventObjectTemplate *template = GetEventObjectTemplateByLocalIdAndMap(localId, mapNum, mapGroup);
-
- return template->flagId;
+ return GetEventObjectTemplateByLocalIdAndMap(localId, mapNum, mapGroup)->flagId;
}
-u16 GetEventObjectFlagIdByEventObjectId(u8 eventObjectId)
+static u16 GetEventObjectFlagIdByEventObjectId(u8 eventObjectId)
{
return GetEventObjectFlagIdByLocalIdAndMap(gEventObjects[eventObjectId].localId, gEventObjects[eventObjectId].mapNum, gEventObjects[eventObjectId].mapGroup);
}
@@ -2225,7 +2325,7 @@ void TryOverrideTemplateCoordsForEventObject(u8 localId, u8 mapNum, u8 mapGroup)
void InitEventObjectPalettes(u8 reflectionType)
{
FreeAndReserveObjectSpritePalettes();
- sCurrentSpecialObjectPaletteTag = 0x11FF;
+ sCurrentSpecialObjectPaletteTag = EVENT_OBJ_PAL_TAG_NONE;
sCurrentReflectionType = reflectionType;
PatchObjectPalettes(gObjectPaletteTagSets[sCurrentReflectionType], 0, 10);
}
@@ -2239,7 +2339,7 @@ u16 GetObjectPaletteTag(u8 paletteIndex)
return gObjectPaletteTagSets[sCurrentReflectionType][paletteIndex];
// Palette slots 10 and 11 belong to the special object.
- for (i = 0; gSpecialObjectReflectionPaletteSets[i].mainPaletteTag != 0x11FF; i++)
+ for (i = 0; gSpecialObjectReflectionPaletteSets[i].mainPaletteTag != EVENT_OBJ_PAL_TAG_NONE; i++)
{
if (gSpecialObjectReflectionPaletteSets[i].mainPaletteTag == sCurrentSpecialObjectPaletteTag)
{
@@ -2247,48 +2347,48 @@ u16 GetObjectPaletteTag(u8 paletteIndex)
}
}
- return 0x11FF;
+ return EVENT_OBJ_PAL_TAG_NONE;
}
movement_type_empty_callback(MovementType_None);
movement_type_def(MovementType_WanderAround, gMovementTypeFuncs_WanderAround);
-u8 MovementType_WanderAround_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderAround_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderAround_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderAround_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderAround_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderAround_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite) == 0)
{
- return 0;
+ return FALSE;
}
SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]);
sprite->data[1] = 3;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderAround_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderAround_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_WanderAround_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderAround_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[4];
@@ -2300,28 +2400,28 @@ u8 MovementType_WanderAround_Step4(struct EventObject *eventObject, struct Sprit
{
sprite->data[1] = 1;
}
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderAround_Step5(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderAround_Step5(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetWalkNormalMovementAction(eventObject->movementDirection));
eventObject->singleMovementActive = 1;
sprite->data[1] = 6;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderAround_Step6(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderAround_Step6(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite) != 0)
{
eventObject->singleMovementActive = 0;
sprite->data[1] = 1;
}
- return 0;
+ return FALSE;
}
-u8 EventObjectIsTrainerAndCloseToPlayer(struct EventObject *eventObject)
+bool8 EventObjectIsTrainerAndCloseToPlayer(struct EventObject *eventObject)
{
s16 x;
s16 y;
@@ -2331,13 +2431,13 @@ u8 EventObjectIsTrainerAndCloseToPlayer(struct EventObject *eventObject)
s16 maxx;
s16 miny;
s16 maxy;
- if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_DASH) == 0)
+ if (!TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_DASH))
{
- return 0;
+ return FALSE;
}
if (eventObject->trainerType != 1 && eventObject->trainerType != 3)
{
- return 0;
+ return FALSE;
}
PlayerGetDestCoords(&x, &y);
objx = eventObject->currentCoords.x;
@@ -2348,9 +2448,9 @@ u8 EventObjectIsTrainerAndCloseToPlayer(struct EventObject *eventObject)
maxy = objy + eventObject->trainerRange_berryTreeId;
if (minx > x || maxx < x || miny > y || maxy < y)
{
- return 0;
+ return FALSE;
}
- return 1;
+ return TRUE;
}
u8 GetVectorDirection(s16 x, s16 y, s16 xAbs, s16 yAbs)
@@ -2555,21 +2655,21 @@ u8 TryGetTrainerEncounterDirection(struct EventObject *eventObject, u8 direction
movement_type_def(MovementType_LookAround, gMovementTypeFuncs_LookAround);
-u8 MovementType_LookAround_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_LookAround_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_LookAround_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_LookAround_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_LookAround_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_LookAround_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -2577,75 +2677,75 @@ u8 MovementType_LookAround_Step2(struct EventObject *eventObject, struct Sprite
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_LookAround_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_LookAround_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_LookAround_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_LookAround_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[4];
- memcpy(directions, gStandardDirections, 4);
+ memcpy(directions, gStandardDirections, sizeof directions);
direction = TryGetTrainerEncounterDirection(eventObject, 0);
if (direction == DIR_NONE)
direction = directions[Random() & 3];
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_WanderUpAndDown, gMovementTypeFuncs_WanderUpAndDown);
-u8 MovementType_WanderUpAndDown_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderUpAndDown_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderUpAndDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderUpAndDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderUpAndDown_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderUpAndDown_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite) == 0)
{
- return 0;
+ return FALSE;
}
SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]);
sprite->data[1] = 3;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderUpAndDown_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderUpAndDown_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_WanderUpAndDown_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderUpAndDown_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gUpAndDownDirections, 2);
+ memcpy(directions, gUpAndDownDirections, sizeof directions);
direction = directions[Random() & 1];
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 5;
@@ -2653,69 +2753,69 @@ u8 MovementType_WanderUpAndDown_Step4(struct EventObject *eventObject, struct Sp
{
sprite->data[1] = 1;
}
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderUpAndDown_Step5(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderUpAndDown_Step5(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetWalkNormalMovementAction(eventObject->movementDirection));
eventObject->singleMovementActive = 1;
sprite->data[1] = 6;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderUpAndDown_Step6(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderUpAndDown_Step6(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite) != 0)
{
eventObject->singleMovementActive = 0;
sprite->data[1] = 1;
}
- return 0;
+ return FALSE;
}
movement_type_def(MovementType_WanderLeftAndRight, gMovementTypeFuncs_WanderLeftAndRight);
-u8 MovementType_WanderLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite) == 0)
{
- return 0;
+ return FALSE;
}
SetMovementDelay(sprite, gMovementDelaysMedium[Random() & 3]);
sprite->data[1] = 3;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_WanderLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gLeftAndRightDirections, 2);
+ memcpy(directions, gLeftAndRightDirections, sizeof directions);
direction = directions[Random() & 1];
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 5;
@@ -2723,56 +2823,57 @@ u8 MovementType_WanderLeftAndRight_Step4(struct EventObject *eventObject, struct
{
sprite->data[1] = 1;
}
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderLeftAndRight_Step5(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderLeftAndRight_Step5(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetWalkNormalMovementAction(eventObject->movementDirection));
eventObject->singleMovementActive = 1;
sprite->data[1] = 6;
- return 1;
+ return TRUE;
}
-u8 MovementType_WanderLeftAndRight_Step6(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WanderLeftAndRight_Step6(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite) != 0)
{
eventObject->singleMovementActive = 0;
sprite->data[1] = 1;
}
- return 0;
+ return FALSE;
}
movement_type_def(MovementType_FaceDirection, gMovementTypeFuncs_FaceDirection);
-u8 MovementType_FaceDirection_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDirection_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDirection_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDirection_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite) != 0)
{
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDirection_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDirection_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
eventObject->singleMovementActive = 0;
- return 0;
+ return FALSE;
}
void MovementType_BerryTreeGrowth(struct Sprite *sprite)
{
struct EventObject *eventObject;
+
eventObject = &gEventObjects[sprite->data[0]];
if (!(sprite->data[7] & 1))
{
@@ -2787,12 +2888,12 @@ static u8 MovementType_BerryTreeGrowth_Callback(struct EventObject *eventObject,
return gMovementTypeFuncs_BerryTreeGrowth[sprite->data[1]](eventObject, sprite);
}
-u8 MovementType_BerryTreeGrowth_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_BerryTreeGrowth_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 berryTreeStage;
ClearEventObjectMovement(eventObject, sprite);
- eventObject->invisible = 1;
- sprite->invisible = 1;
+ eventObject->invisible = TRUE;
+ sprite->invisible = TRUE;
berryTreeStage = GetStageByBerryTreeId(eventObject->trainerRange_berryTreeId);
if (!berryTreeStage)
{
@@ -2805,33 +2906,33 @@ u8 MovementType_BerryTreeGrowth_Step0(struct EventObject *eventObject, struct Sp
FieldEffectStart(FLDEFF_BERRY_TREE_GROWTH_SPARKLE);
sprite->animNum = 0;
}
- return 0;
+ return FALSE;
}
- eventObject->invisible = 0;
- sprite->invisible = 0;
+ eventObject->invisible = FALSE;
+ sprite->invisible = FALSE;
berryTreeStage--;
if (sprite->animNum != berryTreeStage)
{
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
get_berry_tree_graphics(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_BerryTreeGrowth_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_BerryTreeGrowth_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
sprite->data[1] = 0;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_BerryTreeGrowth_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_BerryTreeGrowth_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
eventObject->singleMovementActive = 1;
sprite->data[1] = 3;
@@ -2842,55 +2943,55 @@ u8 MovementType_BerryTreeGrowth_Step2(struct EventObject *eventObject, struct Sp
gFieldEffectArguments[2] = sprite->subpriority - 1;
gFieldEffectArguments[3] = sprite->oam.priority;
FieldEffectStart(FLDEFF_BERRY_TREE_GROWTH_SPARKLE);
- return 1;
+ return TRUE;
}
-u8 MovementType_BerryTreeGrowth_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_BerryTreeGrowth_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
sprite->data[2]++;
eventObject->invisible = ((sprite->data[2] & 0x2) >> 1);
- sprite->animPaused = 1;
+ sprite->animPaused = TRUE;
if (sprite->data[2] > 64)
{
get_berry_tree_graphics(eventObject, sprite);
sprite->data[1] = 4;
sprite->data[2] = 0;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_BerryTreeGrowth_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_BerryTreeGrowth_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
sprite->data[2]++;
eventObject->invisible = ((sprite->data[2] & 0x2) >> 1);
- sprite->animPaused = 1;
+ sprite->animPaused = TRUE;
if (sprite->data[2] > 64)
{
sprite->data[1] = 0;
sprite->data[7] &= (-3);
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
movement_type_def(MovementType_FaceDownAndUp, gMovementTypeFuncs_FaceDownAndUp);
-u8 MovementType_FaceDownAndUp_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndUp_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownAndUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownAndUp_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndUp_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -2898,24 +2999,24 @@ u8 MovementType_FaceDownAndUp_Step2(struct EventObject *eventObject, struct Spri
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownAndUp_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndUp_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownAndUp_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndUp_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gUpAndDownDirections, 2);
+ memcpy(directions, gUpAndDownDirections, sizeof gUpAndDownDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 1);
if (direction == DIR_NONE)
{
@@ -2923,26 +3024,26 @@ u8 MovementType_FaceDownAndUp_Step4(struct EventObject *eventObject, struct Spri
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceLeftAndRight, gMovementTypeFuncs_FaceLeftAndRight);
-u8 MovementType_FaceLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -2950,24 +3051,24 @@ u8 MovementType_FaceLeftAndRight_Step2(struct EventObject *eventObject, struct S
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gLeftAndRightDirections, 2);
+ memcpy(directions, gLeftAndRightDirections, sizeof gLeftAndRightDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 2);
if (direction == DIR_NONE)
{
@@ -2975,26 +3076,26 @@ u8 MovementType_FaceLeftAndRight_Step4(struct EventObject *eventObject, struct S
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceUpAndLeft, gMovementTypeFuncs_FaceUpAndLeft);
-u8 MovementType_FaceUpAndLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceUpAndLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceUpAndLeft_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndLeft_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3002,24 +3103,24 @@ u8 MovementType_FaceUpAndLeft_Step2(struct EventObject *eventObject, struct Spri
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceUpAndLeft_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndLeft_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceUpAndLeft_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndLeft_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gUpAndLeftDirections, 2);
+ memcpy(directions, gUpAndLeftDirections, sizeof gUpAndLeftDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 3);
if (direction == DIR_NONE)
{
@@ -3027,26 +3128,26 @@ u8 MovementType_FaceUpAndLeft_Step4(struct EventObject *eventObject, struct Spri
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceUpAndRight, gMovementTypeFuncs_FaceUpAndRight);
-u8 MovementType_FaceUpAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceUpAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceUpAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3054,24 +3155,24 @@ u8 MovementType_FaceUpAndRight_Step2(struct EventObject *eventObject, struct Spr
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceUpAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceUpAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gUpAndRightDirections, 2);
+ memcpy(directions, gUpAndRightDirections, sizeof gUpAndRightDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 4);
if (direction == DIR_NONE)
{
@@ -3079,26 +3180,26 @@ u8 MovementType_FaceUpAndRight_Step4(struct EventObject *eventObject, struct Spr
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceDownAndLeft, gMovementTypeFuncs_FaceDownAndLeft);
-u8 MovementType_FaceDownAndLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownAndLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownAndLeft_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndLeft_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3106,24 +3207,24 @@ u8 MovementType_FaceDownAndLeft_Step2(struct EventObject *eventObject, struct Sp
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownAndLeft_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndLeft_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownAndLeft_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndLeft_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gDownAndLeftDirections, 2);
+ memcpy(directions, gDownAndLeftDirections, sizeof gDownAndLeftDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 5);
if (direction == DIR_NONE)
{
@@ -3131,26 +3232,26 @@ u8 MovementType_FaceDownAndLeft_Step4(struct EventObject *eventObject, struct Sp
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceDownAndRight, gMovementTypeFuncs_FaceDownAndRight);
-u8 MovementType_FaceDownAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3158,24 +3259,24 @@ u8 MovementType_FaceDownAndRight_Step2(struct EventObject *eventObject, struct S
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[2];
- memcpy(directions, gDownAndRightDirections, 2);
+ memcpy(directions, gDownAndRightDirections, sizeof gDownAndRightDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 6);
if (direction == DIR_NONE)
{
@@ -3183,26 +3284,26 @@ u8 MovementType_FaceDownAndRight_Step4(struct EventObject *eventObject, struct S
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceDownUpAndLeft, gMovementTypeFuncs_FaceDownUpAndLeft);
-u8 MovementType_FaceDownUpAndLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownUpAndLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownUpAndLeft_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndLeft_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3210,24 +3311,24 @@ u8 MovementType_FaceDownUpAndLeft_Step2(struct EventObject *eventObject, struct
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownUpAndLeft_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndLeft_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownUpAndLeft_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndLeft_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[4];
- memcpy(directions, gDownUpAndLeftDirections, 4);
+ memcpy(directions, gDownUpAndLeftDirections, sizeof gDownUpAndLeftDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 7);
if (direction == DIR_NONE)
{
@@ -3235,26 +3336,26 @@ u8 MovementType_FaceDownUpAndLeft_Step4(struct EventObject *eventObject, struct
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceDownUpAndRight, gMovementTypeFuncs_FaceDownUpAndRight);
-u8 MovementType_FaceDownUpAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownUpAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownUpAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3262,24 +3363,24 @@ u8 MovementType_FaceDownUpAndRight_Step2(struct EventObject *eventObject, struct
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownUpAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownUpAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownUpAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[4];
- memcpy(directions, gDownUpAndRightDirections, 4);
+ memcpy(directions, gDownUpAndRightDirections, sizeof gDownUpAndRightDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 8);
if (direction == DIR_NONE)
{
@@ -3287,26 +3388,26 @@ u8 MovementType_FaceDownUpAndRight_Step4(struct EventObject *eventObject, struct
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceUpLeftAndRight, gMovementTypeFuncs_FaceUpLeftAndRight);
-u8 MovementType_FaceUpLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceUpLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceUpLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3314,24 +3415,24 @@ u8 MovementType_FaceUpLeftAndRight_Step2(struct EventObject *eventObject, struct
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceUpLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceUpLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceUpLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[4];
- memcpy(directions, gUpLeftAndRightDirections, 4);
+ memcpy(directions, gUpLeftAndRightDirections, sizeof gUpLeftAndRightDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 9);
if (direction == DIR_NONE)
{
@@ -3339,26 +3440,26 @@ u8 MovementType_FaceUpLeftAndRight_Step4(struct EventObject *eventObject, struct
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_FaceDownLeftAndRight, gMovementTypeFuncs_FaceDownLeftAndRight);
-u8 MovementType_FaceDownLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownLeftAndRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownLeftAndRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_FaceDownLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownLeftAndRight_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
@@ -3366,24 +3467,24 @@ u8 MovementType_FaceDownLeftAndRight_Step2(struct EventObject *eventObject, stru
eventObject->singleMovementActive = 0;
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownLeftAndRight_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 4;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_FaceDownLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_FaceDownLeftAndRight_Step4(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[4];
- memcpy(directions, gDownLeftAndRightDirections, 4);
+ memcpy(directions, gDownLeftAndRightDirections, sizeof gDownLeftAndRightDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 10);
if (direction == DIR_NONE)
{
@@ -3391,43 +3492,43 @@ u8 MovementType_FaceDownLeftAndRight_Step4(struct EventObject *eventObject, stru
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_RotateCounterclockwise, gMovementTypeFuncs_RotateCounterclockwise);
-u8 MovementType_RotateCounterclockwise_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateCounterclockwise_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_RotateCounterclockwise_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateCounterclockwise_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
SetMovementDelay(sprite, 48);
sprite->data[1] = 2;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_RotateCounterclockwise_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateCounterclockwise_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_RotateCounterclockwise_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateCounterclockwise_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[5];
- memcpy(directions, gCounterclockwiseDirections, 5);
+ memcpy(directions, gCounterclockwiseDirections, sizeof gCounterclockwiseDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 0);
if (direction == DIR_NONE)
{
@@ -3435,43 +3536,43 @@ u8 MovementType_RotateCounterclockwise_Step3(struct EventObject *eventObject, st
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 0;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_RotateClockwise, gMovementTypeFuncs_RotateClockwise);
-u8 MovementType_RotateClockwise_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateClockwise_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_RotateClockwise_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateClockwise_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
SetMovementDelay(sprite, 0x30);
sprite->data[1] = 2;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_RotateClockwise_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateClockwise_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (WaitForMovementDelay(sprite) || EventObjectIsTrainerAndCloseToPlayer(eventObject))
{
sprite->data[1] = 3;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_RotateClockwise_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RotateClockwise_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
u8 directions[5];
- memcpy(directions, gClockwiseDirections, 5);
+ memcpy(directions, gClockwiseDirections, sizeof gClockwiseDirections);
direction = TryGetTrainerEncounterDirection(eventObject, 0);
if (direction == DIR_NONE)
{
@@ -3479,19 +3580,19 @@ u8 MovementType_RotateClockwise_Step3(struct EventObject *eventObject, struct Sp
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 0;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_WalkBackAndForth, gMovementTypeFuncs_WalkBackAndForth);
-u8 MovementType_WalkBackAndForth_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WalkBackAndForth_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_WalkBackAndForth_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WalkBackAndForth_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 direction;
direction = gInitialMovementTypeFacingDirections[eventObject->movementType];
@@ -3501,13 +3602,14 @@ u8 MovementType_WalkBackAndForth_Step1(struct EventObject *eventObject, struct S
}
SetEventObjectDirection(eventObject, direction);
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_WalkBackAndForth_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WalkBackAndForth_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 collisionState;
u8 movementActionId;
+
if (eventObject->directionSequenceIndex && eventObject->initialCoords.x == eventObject->currentCoords.x && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 0;
@@ -3529,30 +3631,31 @@ u8 MovementType_WalkBackAndForth_Step2(struct EventObject *eventObject, struct S
EventObjectSetSingleMovement(eventObject, sprite, movementActionId);
eventObject->singleMovementActive = 1;
sprite->data[1] = 3;
- return 1;
+ return TRUE;
}
-u8 MovementType_WalkBackAndForth_Step3(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WalkBackAndForth_Step3(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
eventObject->singleMovementActive = 0;
sprite->data[1] = 1;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_WalkSequence_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WalkSequence_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MoveNextDirectionInSequence(struct EventObject *eventObject, struct Sprite *sprite, u8 *directionSequence)
+bool8 MoveNextDirectionInSequence(struct EventObject *eventObject, struct Sprite *sprite, u8 *directionSequence)
{
u8 collisionState;
u8 movementActionId;
+
if (eventObject->directionSequenceIndex == 3 && eventObject->initialCoords.x == eventObject->currentCoords.x && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 0;
@@ -3574,17 +3677,17 @@ u8 MoveNextDirectionInSequence(struct EventObject *eventObject, struct Sprite *s
EventObjectSetSingleMovement(eventObject, sprite, movementActionId);
eventObject->singleMovementActive = 1;
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
-u8 MovementType_WalkSequence_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WalkSequence_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
eventObject->singleMovementActive = 0;
sprite->data[1] = 1;
}
- return 0;
+ return FALSE;
}
movement_type_def(MovementType_WalkSequenceUpRightLeftDown, gMovementTypeFuncs_WalkSequenceUpRightLeftDown);
@@ -3592,7 +3695,7 @@ movement_type_def(MovementType_WalkSequenceUpRightLeftDown, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceUpRightLeftDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gUpRightLeftDownDirections, 4);
+ memcpy(directions, gUpRightLeftDownDirections, sizeof gUpRightLeftDownDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
@@ -3605,7 +3708,7 @@ movement_type_def(MovementType_WalkSequenceRightLeftDownUp, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceRightLeftDownUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gRightLeftDownUpDirections, 4);
+ memcpy(directions, gRightLeftDownUpDirections, sizeof gRightLeftDownUpDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 2;
@@ -3618,7 +3721,7 @@ movement_type_def(MovementType_WalkSequenceDownUpRightLeft, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceDownUpRightLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gDownUpRightLeftDirections, 4);
+ memcpy(directions, gDownUpRightLeftDirections, sizeof gDownUpRightLeftDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 2;
@@ -3631,7 +3734,7 @@ movement_type_def(MovementType_WalkSequenceLeftDownUpRight, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceLeftDownUpRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gLeftDownUpRightDirections, 4);
+ memcpy(directions, gLeftDownUpRightDirections, sizeof gLeftDownUpRightDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3644,7 +3747,7 @@ movement_type_def(MovementType_WalkSequenceUpLeftRightDown, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceUpLeftRightDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gUpLeftRightDownDirections, 4);
+ memcpy(directions, gUpLeftRightDownDirections, sizeof gUpLeftRightDownDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
@@ -3657,7 +3760,7 @@ movement_type_def(MovementType_WalkSequenceLeftRightDownUp, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceLeftRightDownUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gLeftRightDownUpDirections, 4);
+ memcpy(directions, gLeftRightDownUpDirections, sizeof gLeftRightDownUpDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 2;
@@ -3670,7 +3773,7 @@ movement_type_def(MovementType_WalkSequenceDownUpLeftRight, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceDownUpLeftRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gStandardDirections, 4);
+ memcpy(directions, gStandardDirections, sizeof gStandardDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 2;
@@ -3683,7 +3786,7 @@ movement_type_def(MovementType_WalkSequenceRightDownUpLeft, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceRightDownUpLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gRightDownUpLeftDirections, 4);
+ memcpy(directions, gRightDownUpLeftDirections, sizeof gRightDownUpLeftDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3696,7 +3799,7 @@ movement_type_def(MovementType_WalkSequenceLeftUpDownRight, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceLeftUpDownRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gLeftUpDownRightDirections, 4);
+ memcpy(directions, gLeftUpDownRightDirections, sizeof gLeftUpDownRightDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3709,7 +3812,7 @@ movement_type_def(MovementType_WalkSequenceUpDownRightLeft, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceUpDownRightLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gUpDownRightLeftDirections, 4);
+ memcpy(directions, gUpDownRightLeftDirections, sizeof gUpDownRightLeftDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 2;
@@ -3722,7 +3825,7 @@ movement_type_def(MovementType_WalkSequenceRightLeftUpDown, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceRightLeftUpDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gRightLeftUpDownDirections, 4);
+ memcpy(directions, gRightLeftUpDownDirections, sizeof gRightLeftUpDownDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 2;
@@ -3735,7 +3838,7 @@ movement_type_def(MovementType_WalkSequenceDownRightLeftUp, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceDownRightLeftUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gDownRightLeftUpDirections, 4);
+ memcpy(directions, gDownRightLeftUpDirections, sizeof gDownRightLeftUpDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
@@ -3748,7 +3851,7 @@ movement_type_def(MovementType_WalkSequenceRightUpDownLeft, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceRightUpDownLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gRightUpDownLeftDirections, 4);
+ memcpy(directions, gRightUpDownLeftDirections, sizeof gRightUpDownLeftDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3761,7 +3864,7 @@ movement_type_def(MovementType_WalkSequenceUpDownLeftRight, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceUpDownLeftRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gUpDownLeftRightDirections, 4);
+ memcpy(directions, gUpDownLeftRightDirections, sizeof gUpDownLeftRightDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 2;
@@ -3774,7 +3877,7 @@ movement_type_def(MovementType_WalkSequenceLeftRightUpDown, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceLeftRightUpDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gLeftRightUpDownDirections, 4);
+ memcpy(directions, gLeftRightUpDownDirections, sizeof gLeftRightUpDownDirections);
if (eventObject->directionSequenceIndex == 1 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 2;
@@ -3787,7 +3890,7 @@ movement_type_def(MovementType_WalkSequenceDownLeftRightUp, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceDownLeftRightUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gDownLeftRightUpDirections, 4);
+ memcpy(directions, gDownLeftRightUpDirections, sizeof gDownLeftRightUpDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
@@ -3800,7 +3903,7 @@ movement_type_def(MovementType_WalkSequenceUpLeftDownRight, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceUpLeftDownRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gUpLeftDownRightDirections, 4);
+ memcpy(directions, gUpLeftDownRightDirections, sizeof gUpLeftDownRightDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3813,7 +3916,7 @@ movement_type_def(MovementType_WalkSequenceDownRightUpLeft, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceDownRightUpLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gDownRightUpLeftDirections, 4);
+ memcpy(directions, gDownRightUpLeftDirections, sizeof gDownRightUpLeftDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3826,7 +3929,7 @@ movement_type_def(MovementType_WalkSequenceLeftDownRightUp, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceLeftDownRightUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gLeftDownRightUpDirections, 4);
+ memcpy(directions, gLeftDownRightUpDirections, sizeof gLeftDownRightUpDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
@@ -3839,7 +3942,7 @@ movement_type_def(MovementType_WalkSequenceRightUpLeftDown, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceRightUpLeftDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gRightUpLeftDownDirections, 4);
+ memcpy(directions, gRightUpLeftDownDirections, sizeof gRightUpLeftDownDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
@@ -3852,7 +3955,7 @@ movement_type_def(MovementType_WalkSequenceUpRightDownLeft, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceUpRightDownLeft_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gUpRightDownLeftDirections, 4);
+ memcpy(directions, gUpRightDownLeftDirections, sizeof gUpRightDownLeftDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3865,7 +3968,7 @@ movement_type_def(MovementType_WalkSequenceDownLeftUpRight, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceDownLeftUpRight_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gDownLeftUpRightDirections, 4);
+ memcpy(directions, gDownLeftUpRightDirections, sizeof gDownLeftUpRightDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.y == eventObject->currentCoords.y)
{
eventObject->directionSequenceIndex = 3;
@@ -3878,7 +3981,7 @@ movement_type_def(MovementType_WalkSequenceLeftUpRightDown, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceLeftUpRightDown_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gLeftUpRightDownDirections, 4);
+ memcpy(directions, gLeftUpRightDownDirections, sizeof gLeftUpRightDownDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
@@ -3891,17 +3994,17 @@ movement_type_def(MovementType_WalkSequenceRightDownLeftUp, gMovementTypeFuncs_W
u8 MovementType_WalkSequenceRightDownLeftUp_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 directions[4];
- memcpy(directions, gRightDownLeftUpDirections, 4);
+ memcpy(directions, gRightDownLeftUpDirections, sizeof gRightDownLeftUpDirections);
if (eventObject->directionSequenceIndex == 2 && eventObject->initialCoords.x == eventObject->currentCoords.x)
{
eventObject->directionSequenceIndex = 3;
}
return MoveNextDirectionInSequence(eventObject, sprite, directions);
-};
+}
movement_type_def(MovementType_CopyPlayer, gMovementTypeFuncs_CopyPlayer);
-u8 MovementType_CopyPlayer_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_CopyPlayer_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
if (eventObject->directionSequenceIndex == 0)
@@ -3909,31 +4012,31 @@ u8 MovementType_CopyPlayer_Step0(struct EventObject *eventObject, struct Sprite
eventObject->directionSequenceIndex = GetPlayerFacingDirection();
}
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_CopyPlayer_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_CopyPlayer_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (gEventObjects[gPlayerAvatar.eventObjectId].movementActionId == 0xFF || gPlayerAvatar.tileTransitionState == T_TILE_CENTER)
{
- return 0;
+ return FALSE;
}
return gCopyPlayerMovementFuncs[PlayerGetCopyableMovement()](eventObject, sprite, GetPlayerMovementDirection(), NULL);
}
-u8 MovementType_CopyPlayer_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_CopyPlayer_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
eventObject->singleMovementActive = 0;
sprite->data[1] = 1;
}
- return 0;
+ return FALSE;
}
bool8 CopyablePlayerMovement_None(struct EventObject *eventObject, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8))
{
- return 0;
+ return FALSE;
}
bool8 CopyablePlayerMovement_FaceDirection(struct EventObject *eventObject, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8))
@@ -3941,7 +4044,7 @@ bool8 CopyablePlayerMovement_FaceDirection(struct EventObject *eventObject, stru
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(state_to_direction(gInitialMovementTypeFacingDirections[eventObject->movementType], eventObject->directionSequenceIndex, playerDirection)));
eventObject->singleMovementActive = 1;
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
bool8 CopyablePlayerMovement_GoSpeed0(struct EventObject *eventObject, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8))
@@ -3960,7 +4063,7 @@ bool8 CopyablePlayerMovement_GoSpeed0(struct EventObject *eventObject, struct Sp
}
eventObject->singleMovementActive = 1;
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
bool8 CopyablePlayerMovement_GoSpeed1(struct EventObject *eventObject, struct Sprite *sprite, u8 playerDirection, bool8 tileCallback(u8))
@@ -4074,11 +4177,11 @@ bool8 CopyablePlayerMovement_Jump(struct EventObject *eventObject, struct Sprite
movement_type_def(MovementType_CopyPlayerInGrass, gMovementTypeFuncs_CopyPlayerInGrass);
-u8 MovementType_CopyPlayerInGrass_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_CopyPlayerInGrass_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (gEventObjects[gPlayerAvatar.eventObjectId].movementActionId == 0xFF || gPlayerAvatar.tileTransitionState == T_TILE_CENTER)
{
- return 0;
+ return FALSE;
}
return gCopyPlayerMovementFuncs[PlayerGetCopyableMovement()](eventObject, sprite, GetPlayerMovementDirection(), MetatileBehavior_IsPokeGrass);
}
@@ -4087,7 +4190,7 @@ void MovementType_TreeDisguise(struct Sprite *sprite)
{
struct EventObject *eventObject;
eventObject = &gEventObjects[sprite->data[0]];
- if (eventObject->directionSequenceIndex == 0 || (eventObject->directionSequenceIndex == 1 && sprite->data[7] == 0))
+ if (eventObject->directionSequenceIndex == 0 || (eventObject->directionSequenceIndex == 1 && !sprite->data[7]))
{
EventObjectGetLocalIdAndMap(eventObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
eventObject->fieldEffectSpriteId = FieldEffectStart(FLDEFF_TREE_DISGUISE);
@@ -4097,17 +4200,17 @@ void MovementType_TreeDisguise(struct Sprite *sprite)
UpdateEventObjectCurrentMovement(&gEventObjects[sprite->data[0]], sprite, MovementType_Disguise_Callback);
}
-static u8 MovementType_Disguise_Callback(struct EventObject *eventObject, struct Sprite *sprite)
+static bool8 MovementType_Disguise_Callback(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
- return 0;
+ return FALSE;
}
void MovementType_MountainDisguise(struct Sprite *sprite)
{
struct EventObject *eventObject;
eventObject = &gEventObjects[sprite->data[0]];
- if (eventObject->directionSequenceIndex == 0 || (eventObject->directionSequenceIndex == 1 && sprite->data[7] == 0))
+ if (eventObject->directionSequenceIndex == 0 || (eventObject->directionSequenceIndex == 1 && !sprite->data[7]))
{
EventObjectGetLocalIdAndMap(eventObject, &gFieldEffectArguments[0], &gFieldEffectArguments[1], &gFieldEffectArguments[2]);
eventObject->fieldEffectSpriteId = FieldEffectStart(FLDEFF_MOUNTAIN_DISGUISE);
@@ -4119,9 +4222,9 @@ void MovementType_MountainDisguise(struct Sprite *sprite)
void MovementType_Hidden(struct Sprite *sprite)
{
- if (sprite->data[7] == 0)
+ if (!sprite->data[7])
{
- gEventObjects[sprite->data[0]].fixedPriority = 1;
+ gEventObjects[sprite->data[0]].fixedPriority = TRUE;
sprite->subspriteMode = 2;
sprite->oam.priority = 3;
sprite->data[7]++;
@@ -4129,89 +4232,89 @@ void MovementType_Hidden(struct Sprite *sprite)
UpdateEventObjectCurrentMovement(&gEventObjects[sprite->data[0]], sprite, MovementType_Hidden_Callback);
}
-static u8 MovementType_Hidden_Callback(struct EventObject *eventObject, struct Sprite *sprite)
+static bool8 MovementType_Hidden_Callback(struct EventObject *eventObject, struct Sprite *sprite)
{
return gMovementTypeFuncs_Hidden[sprite->data[1]](eventObject, sprite);
}
-u8 MovementType_Hidden_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_Hidden_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
- return 0;
+ return FALSE;
}
-u8 MovementType_MoveInPlace_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_MoveInPlace_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
sprite->data[1] = 0;
}
- return 0;
+ return FALSE;
}
movement_type_def(MovementType_WalkInPlace, gMovementTypeFuncs_WalkInPlace);
-u8 MovementType_WalkInPlace_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_WalkInPlace_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, GetWalkInPlaceNormalMovementAction(eventObject->facingDirection));
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_JogInPlace, gMovementTypeFuncs_JogInPlace);
-u8 MovementType_JogInPlace_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_JogInPlace_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, GetWalkInPlaceFastMovementAction(eventObject->facingDirection));
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_RunInPlace, gMovementTypeFuncs_RunInPlace);
-u8 MovementType_RunInPlace_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_RunInPlace_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, GetWalkInPlaceFastestMovementAction(eventObject->facingDirection));
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
movement_type_def(MovementType_Invisible, gMovementTypeFuncs_Invisible);
-u8 MovementType_Invisible_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_Invisible_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
ClearEventObjectMovement(eventObject, sprite);
EventObjectSetSingleMovement(eventObject, sprite, GetFaceDirectionMovementAction(eventObject->facingDirection));
- eventObject->invisible = 1;
+ eventObject->invisible = TRUE;
sprite->data[1] = 1;
- return 1;
+ return TRUE;
}
-u8 MovementType_Invisible_Step1(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_Invisible_Step1(struct EventObject *eventObject, struct Sprite *sprite)
{
if (EventObjectExecSingleMovementAction(eventObject, sprite))
{
sprite->data[1] = 2;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
-u8 MovementType_Invisible_Step2(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementType_Invisible_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
eventObject->singleMovementActive = 0;
- return 0;
+ return FALSE;
}
static void ClearEventObjectMovement(struct EventObject *eventObject, struct Sprite *sprite)
{
eventObject->singleMovementActive = 0;
- eventObject->heldMovementActive = 0;
- eventObject->heldMovementFinished = 0;
- eventObject->movementActionId = 0xff;
+ eventObject->heldMovementActive = FALSE;
+ eventObject->heldMovementFinished = FALSE;
+ eventObject->movementActionId = 0xFF;
sprite->data[1] = 0;
}
@@ -4415,16 +4518,16 @@ static bool8 IsMetatileDirectionallyImpassable(struct EventObject *eventObject,
if (gOppositeDirectionBlockedMetatileFuncs[direction - 1](eventObject->currentMetatileBehavior)
|| gDirectionBlockedMetatileFuncs[direction - 1](MapGridGetMetatileBehaviorAt(x, y)))
{
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
static bool8 DoesObjectCollideWithObjectAt(struct EventObject *eventObject, s16 x, s16 y)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
{
struct EventObject *eventObject2 = &gEventObjects[i];
@@ -4435,7 +4538,7 @@ static bool8 DoesObjectCollideWithObjectAt(struct EventObject *eventObject, s16
return TRUE;
}
}
- return 0;
+ return FALSE;
}
bool8 IsBerryTreeSparkling(u8 localId, u8 mapNum, u8 mapGroup)
@@ -4526,7 +4629,7 @@ void sub_8060470(s16 *x, s16 *y, s16 dx, s16 dy)
*y += dy;
}
-void GetEventObjectMovingCameraOffset(s16 *x, s16 *y)
+static void GetEventObjectMovingCameraOffset(s16 *x, s16 *y)
{
*x = 0;
*y = 0;
@@ -4566,7 +4669,7 @@ bool8 EventObjectIsMovementOverridden(struct EventObject *eventObject)
bool8 EventObjectIsHeldMovementActive(struct EventObject *eventObject)
{
- if (eventObject->heldMovementActive && eventObject->movementActionId != 0xff)
+ if (eventObject->heldMovementActive && eventObject->movementActionId != 0xFF)
return TRUE;
return FALSE;
@@ -4579,8 +4682,8 @@ bool8 EventObjectSetHeldMovement(struct EventObject *eventObject, u8 movementAct
UnfreezeEventObject(eventObject);
eventObject->movementActionId = movementActionId;
- eventObject->heldMovementActive = 1;
- eventObject->heldMovementFinished = 0;
+ eventObject->heldMovementActive = TRUE;
+ eventObject->heldMovementFinished = FALSE;
gSprites[eventObject->spriteId].data[2] = 0;
return FALSE;
}
@@ -4600,8 +4703,8 @@ void EventObjectClearHeldMovementIfActive(struct EventObject *eventObject)
void EventObjectClearHeldMovement(struct EventObject *eventObject)
{
eventObject->movementActionId = 0xFF;
- eventObject->heldMovementActive = 0;
- eventObject->heldMovementFinished = 0;
+ eventObject->heldMovementActive = FALSE;
+ eventObject->heldMovementFinished = FALSE;
gSprites[eventObject->spriteId].data[1] = 0;
gSprites[eventObject->spriteId].data[2] = 0;
}
@@ -4828,7 +4931,7 @@ static void EventObjectExecHeldMovementAction(struct EventObject *eventObject, s
{
if (gMovementActionFuncs[eventObject->movementActionId][sprite->data[2]](eventObject, sprite))
{
- eventObject->heldMovementFinished = 1;
+ eventObject->heldMovementFinished = TRUE;
}
}
@@ -4838,10 +4941,10 @@ static bool8 EventObjectExecSingleMovementAction(struct EventObject *eventObject
{
eventObject->movementActionId = 0xFF;
sprite->data[2] = 0;
- return 1;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
static void EventObjectSetSingleMovement(struct EventObject *eventObject, struct Sprite *sprite, u8 movementActionId)
@@ -4850,67 +4953,68 @@ static void EventObjectSetSingleMovement(struct EventObject *eventObject, struct
sprite->data[2] = 0;
}
-void FaceDirection(struct EventObject *eventObject, struct Sprite *sprite, u8 direction)
+static void FaceDirection(struct EventObject *eventObject, struct Sprite *sprite, u8 direction)
{
SetEventObjectDirection(eventObject, direction);
ShiftStillEventObjectCoords(eventObject);
sub_805FE64(eventObject, sprite, GetMoveDirectionAnimNum(eventObject->facingDirection));
- sprite->animPaused = 1;
+ sprite->animPaused = TRUE;
sprite->data[2] = 1;
}
-u8 MovementAction_FaceDown_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementAction_FaceDown_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
FaceDirection(eventObject, sprite, DIR_SOUTH);
- return 1;
+ return TRUE;
}
-u8 MovementAction_FaceUp_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementAction_FaceUp_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
FaceDirection(eventObject, sprite, DIR_NORTH);
- return 1;
+ return TRUE;
}
-u8 MovementAction_FaceLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementAction_FaceLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
FaceDirection(eventObject, sprite, DIR_WEST);
- return 1;
+ return TRUE;
}
-u8 MovementAction_FaceRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
+bool8 MovementAction_FaceRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
FaceDirection(eventObject, sprite, DIR_EAST);
- return 1;
+ return TRUE;
}
-void sub_8060D20(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 a3)
+void npc_apply_direction(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 speed)
{
s16 x;
s16 y;
+
x = eventObject->currentCoords.x;
y = eventObject->currentCoords.y;
SetEventObjectDirection(eventObject, direction);
MoveCoords(direction, &x, &y);
ShiftEventObjectCoords(eventObject, x, y);
- oamt_npc_ministep_reset(sprite, direction, a3);
- sprite->animPaused = 0;
- eventObject->triggerGroundEffectsOnMove = 1;
+ oamt_npc_ministep_reset(sprite, direction, speed);
+ sprite->animPaused = FALSE;
+ eventObject->triggerGroundEffectsOnMove = TRUE;
sprite->data[2] = 1;
}
extern u8 (*const gUnknown_083759C0[5])(u8);
-void do_go_anim(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 a3)
+void do_go_anim(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 speed)
{
u8 (*const functions[5])(u8);
memcpy((void *)functions, gUnknown_083759C0, sizeof(gUnknown_083759C0));
- sub_8060D20(eventObject, sprite, direction, a3);
- sub_805FE28(eventObject, sprite, functions[a3](eventObject->facingDirection));
+ npc_apply_direction(eventObject, sprite, direction, speed);
+ sub_805FE28(eventObject, sprite, functions[speed](eventObject->facingDirection));
}
void StartRunningAnim(struct EventObject *eventObject, struct Sprite *sprite, u8 direction)
{
- sub_8060D20(eventObject, sprite, direction, 1);
+ npc_apply_direction(eventObject, sprite, direction, 1);
sub_805FE28(eventObject, sprite, GetRunningDirectionAnimNum(eventObject->facingDirection));
}
@@ -4921,11 +5025,11 @@ bool8 npc_obj_ministep_stop_on_arrival(struct EventObject *eventObject, struct S
if (obj_npc_ministep(sprite))
{
ShiftStillEventObjectCoords(eventObject);
- eventObject->triggerGroundEffectsOnStop = 1;
- sprite->animPaused = 1;
- return 1;
+ eventObject->triggerGroundEffectsOnStop = TRUE;
+ sprite->animPaused = TRUE;
+ return TRUE;
}
- return 0;
+ return FALSE;
}
void sub_8060E68(struct EventObject *eventObject, struct Sprite *sprite, u8 direction)
@@ -4938,8 +5042,8 @@ void sub_8060E68(struct EventObject *eventObject, struct Sprite *sprite, u8 dire
MoveCoords(direction, &x, &y);
ShiftEventObjectCoords(eventObject, x, y);
sub_806467C(sprite, direction);
- sprite->animPaused = 0;
- eventObject->triggerGroundEffectsOnMove = 1;
+ sprite->animPaused = FALSE;
+ eventObject->triggerGroundEffectsOnMove = TRUE;
sprite->data[2] = 1;
}
@@ -4954,8 +5058,8 @@ bool8 an_walk_any_2(struct EventObject *eventObject, struct Sprite *sprite)
if (sub_806468C(sprite))
{
ShiftStillEventObjectCoords(eventObject);
- eventObject->triggerGroundEffectsOnStop = 1;
- sprite->animPaused = 1;
+ eventObject->triggerGroundEffectsOnStop = TRUE;
+ sprite->animPaused = TRUE;
return TRUE;
}
return FALSE;
@@ -5144,14 +5248,15 @@ u8 sub_806123C(struct EventObject *eventObject, struct Sprite *sprite, u8 (*cons
y = 0;
MoveCoordsInDirection(eventObject->movementDirection, &x, &y, vSPp4[sprite->data[4]], vSPp4[sprite->data[4]]);
ShiftEventObjectCoords(eventObject, eventObject->currentCoords.x + x, eventObject->currentCoords.y + y);
- eventObject->triggerGroundEffectsOnMove = 1;
- eventObject->disableCoveringGroundEffects = 1;
- } else if (retval == 0xff)
+ eventObject->triggerGroundEffectsOnMove = TRUE;
+ eventObject->disableCoveringGroundEffects = TRUE;
+ }
+ else if (retval == 0xFF)
{
ShiftStillEventObjectCoords(eventObject);
- eventObject->triggerGroundEffectsOnStop = 1;
- eventObject->landingJump = 1;
- sprite->animPaused = 1;
+ eventObject->triggerGroundEffectsOnStop = TRUE;
+ eventObject->landingJump = TRUE;
+ sprite->animPaused = TRUE;
}
return retval;
}
@@ -5217,7 +5322,7 @@ bool8 MovementAction_Jump2Down_Step1(struct EventObject *eventObject, struct Spr
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -5234,7 +5339,7 @@ bool8 MovementAction_Jump2Up_Step1(struct EventObject *eventObject, struct Sprit
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -5251,7 +5356,7 @@ bool8 MovementAction_Jump2Left_Step1(struct EventObject *eventObject, struct Spr
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -5268,7 +5373,7 @@ bool8 MovementAction_Jump2Right_Step1(struct EventObject *eventObject, struct Sp
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -5342,6 +5447,7 @@ bool8 MovementAction_WalkFastDown_Step1(struct EventObject *eventObject, struct
}
return FALSE;
}
+
bool8 MovementAction_WalkFastUp_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
do_go_anim(eventObject, sprite, DIR_NORTH, 1);
@@ -5357,6 +5463,7 @@ bool8 MovementAction_WalkFastUp_Step1(struct EventObject *eventObject, struct Sp
}
return FALSE;
}
+
bool8 MovementAction_WalkFastLeft_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
do_go_anim(eventObject, sprite, DIR_WEST, 1);
@@ -5372,6 +5479,7 @@ bool8 MovementAction_WalkFastLeft_Step1(struct EventObject *eventObject, struct
}
return FALSE;
}
+
bool8 MovementAction_WalkFastRight_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
do_go_anim(eventObject, sprite, DIR_EAST, 1);
@@ -5392,7 +5500,7 @@ void sub_80616CC(struct EventObject *eventObject, struct Sprite *sprite, u8 dire
{
SetEventObjectDirection(eventObject, direction);
sub_805FE28(eventObject, sprite, animNum);
- sprite->animPaused = 0;
+ sprite->animPaused = FALSE;
sprite->data[2] = 1;
sprite->data[3] = duration;
}
@@ -5403,7 +5511,7 @@ bool8 MovementAction_WalkInPlace_Step1(struct EventObject *eventObject, struct S
if (sprite->data[3] == 0)
{
sprite->data[2] = 2;
- sprite->animPaused = 1;
+ sprite->animPaused = TRUE;
return TRUE;
}
return FALSE;
@@ -5853,7 +5961,7 @@ bool8 MovementAction_JumpSpecialDown_Step1(struct EventObject *eventObject, stru
if (sub_8061340(eventObject, sprite))
{
sprite->data[2] = 2;
- eventObject->landingJump = 0;
+ eventObject->landingJump = FALSE;
return TRUE;
}
return FALSE;
@@ -5872,7 +5980,7 @@ bool8 MovementAction_JumpSpecialUp_Step1(struct EventObject *eventObject, struct
if (sub_8061340(eventObject, sprite))
{
sprite->data[2] = 2;
- eventObject->landingJump = 0;
+ eventObject->landingJump = FALSE;
return TRUE;
}
return FALSE;
@@ -5891,7 +5999,7 @@ bool8 MovementAction_JumpSpecialLeft_Step1(struct EventObject *eventObject, stru
if (sub_8061340(eventObject, sprite))
{
sprite->data[2] = 2;
- eventObject->landingJump = 0;
+ eventObject->landingJump = FALSE;
return TRUE;
}
return FALSE;
@@ -5919,6 +6027,7 @@ bool8 MovementAction_JumpSpecialRight_Step1(struct EventObject *eventObject, str
bool8 MovementAction_FacePlayer_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 playerObjectId;
+
if (!TryGetEventObjectIdByLocalIdAndMap(0xFF, 0, 0, &playerObjectId))
{
FaceDirection(eventObject, sprite, GetDirectionToFace(eventObject->currentCoords.x, eventObject->currentCoords.y, gEventObjects[playerObjectId].currentCoords.x, gEventObjects[playerObjectId].currentCoords.y));
@@ -5930,6 +6039,7 @@ bool8 MovementAction_FacePlayer_Step0(struct EventObject *eventObject, struct Sp
bool8 MovementAction_FaceAwayPlayer_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
u8 playerObjectId;
+
if (!TryGetEventObjectIdByLocalIdAndMap(0xFF, 0, 0, &playerObjectId))
{
FaceDirection(eventObject, sprite, GetOppositeDirection(GetDirectionToFace(eventObject->currentCoords.x, eventObject->currentCoords.y, gEventObjects[playerObjectId].currentCoords.x, gEventObjects[playerObjectId].currentCoords.y)));
@@ -5940,14 +6050,14 @@ bool8 MovementAction_FaceAwayPlayer_Step0(struct EventObject *eventObject, struc
bool8 MovementAction_LockFacingDirection_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->facingDirectionLocked = 1;
+ eventObject->facingDirectionLocked = TRUE;
sprite->data[2] = 1;
return TRUE;
}
bool8 MovementAction_UnlockFacingDirection_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->facingDirectionLocked = 0;
+ eventObject->facingDirectionLocked = FALSE;
sprite->data[2] = 1;
return TRUE;
}
@@ -6194,21 +6304,21 @@ bool8 MovementAction_NurseJoyBowDown_Step0(struct EventObject *eventObject, stru
bool8 MovementAction_EnableJumpLandingGroundEffect_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->disableJumpLandingGroundEffect = 0;
+ eventObject->disableJumpLandingGroundEffect = FALSE;
sprite->data[2] = 1;
return TRUE;
}
bool8 MovementAction_DisableJumpLandingGroundEffect_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->disableJumpLandingGroundEffect = 1;
+ eventObject->disableJumpLandingGroundEffect = TRUE;
sprite->data[2] = 1;
return TRUE;
}
bool8 MovementAction_DisableAnimation_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->inanimate = 1;
+ eventObject->inanimate = TRUE;
sprite->data[2] = 1;
return TRUE;
}
@@ -6222,14 +6332,14 @@ bool8 MovementAction_RestoreAnimation_Step0(struct EventObject *eventObject, str
bool8 MovementAction_SetInvisible_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->invisible = 1;
+ eventObject->invisible = TRUE;
sprite->data[2] = 1;
return TRUE;
}
bool8 MovementAction_SetVisible_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->invisible = 0;
+ eventObject->invisible = FALSE;
sprite->data[2] = 1;
return TRUE;
}
@@ -6309,10 +6419,10 @@ bool8 MovementAction_RockSmashBreak_Step1(struct EventObject *eventObject, struc
bool8 MovementAction_RockSmashBreak_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->invisible ^= 1;
+ eventObject->invisible ^= TRUE;
if (WaitForMovementDelay(sprite))
{
- eventObject->invisible = 1;
+ eventObject->invisible = TRUE;
sprite->data[2] = 3;
}
return FALSE;
@@ -6337,10 +6447,10 @@ bool8 MovementAction_CutTree_Step1(struct EventObject *eventObject, struct Sprit
bool8 MovementAction_CutTree_Step2(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->invisible ^= 1;
+ eventObject->invisible ^= TRUE;
if (WaitForMovementDelay(sprite))
{
- eventObject->invisible = 1;
+ eventObject->invisible = TRUE;
sprite->data[2] = 3;
}
return FALSE;
@@ -6348,14 +6458,14 @@ bool8 MovementAction_CutTree_Step2(struct EventObject *eventObject, struct Sprit
bool8 MovementAction_SetFixedPriority_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->fixedPriority = 1;
+ eventObject->fixedPriority = TRUE;
sprite->data[2] = 1;
return TRUE;
}
bool8 MovementAction_ClearFixedPriority_Step0(struct EventObject *eventObject, struct Sprite *sprite)
{
- eventObject->fixedPriority = 0;
+ eventObject->fixedPriority = FALSE;
sprite->data[2] = 1;
return TRUE;
}
@@ -6364,7 +6474,7 @@ bool8 MovementAction_InitAffineAnim_Step0(struct EventObject *eventObject, struc
{
sprite->oam.affineMode = ST_OAM_AFFINE_DOUBLE;
InitSpriteAffineAnim(sprite);
- sprite->affineAnimPaused = 1;
+ sprite->affineAnimPaused = TRUE;
sprite->subspriteMode = 0;
return TRUE;
}
@@ -6391,7 +6501,7 @@ bool8 MovementAction_WalkDownStartAffine_Step1(struct EventObject *eventObject,
{
if (an_walk_any_2(eventObject, sprite))
{
- sprite->affineAnimPaused = 1;
+ sprite->affineAnimPaused = TRUE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6412,7 +6522,7 @@ bool8 MovementAction_WalkDownAffine_Step1(struct EventObject *eventObject, struc
{
if (an_walk_any_2(eventObject, sprite))
{
- sprite->affineAnimPaused = 1;
+ sprite->affineAnimPaused = TRUE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6543,7 +6653,7 @@ bool8 MovementAction_AcroWheelieHopFaceDown_Step1(struct EventObject *eventObjec
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6562,7 +6672,7 @@ bool8 MovementAction_AcroWheelieHopFaceUp_Step1(struct EventObject *eventObject,
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6581,7 +6691,7 @@ bool8 MovementAction_AcroWheelieHopFaceLeft_Step1(struct EventObject *eventObjec
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6600,7 +6710,7 @@ bool8 MovementAction_AcroWheelieHopFaceRight_Step1(struct EventObject *eventObje
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6619,7 +6729,7 @@ bool8 MovementAction_AcroWheelieHopDown_Step1(struct EventObject *eventObject, s
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6638,7 +6748,7 @@ bool8 MovementAction_AcroWheelieHopUp_Step1(struct EventObject *eventObject, str
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6657,7 +6767,7 @@ bool8 MovementAction_AcroWheelieHopLeft_Step1(struct EventObject *eventObject, s
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6676,7 +6786,7 @@ bool8 MovementAction_AcroWheelieHopRight_Step1(struct EventObject *eventObject,
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6695,7 +6805,7 @@ bool8 MovementAction_AcroWheelieJumpDown_Step1(struct EventObject *eventObject,
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6714,7 +6824,7 @@ bool8 MovementAction_AcroWheelieJumpUp_Step1(struct EventObject *eventObject, st
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6733,7 +6843,7 @@ bool8 MovementAction_AcroWheelieJumpLeft_Step1(struct EventObject *eventObject,
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6752,7 +6862,7 @@ bool8 MovementAction_AcroWheelieJumpRight_Step1(struct EventObject *eventObject,
{
if (sub_8061328(eventObject, sprite))
{
- eventObject->hasShadow = 0;
+ eventObject->hasShadow = FALSE;
sprite->data[2] = 2;
return TRUE;
}
@@ -6783,9 +6893,9 @@ bool8 MovementAction_AcroWheelieInPlaceRight_Step0(struct EventObject *eventObje
return MovementAction_WalkInPlace_Step1(eventObject, sprite);
}
-void sub_80630D0(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 a3)
+void sub_80630D0(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 speed)
{
- sub_8060D20(eventObject, sprite, direction, a3);
+ npc_apply_direction(eventObject, sprite, direction, speed);
StartSpriteAnim(sprite, GetAcroWheelieDirectionAnimNum(eventObject->facingDirection));
SeekSpriteAnim(sprite, 0);
}
@@ -6862,9 +6972,9 @@ bool8 MovementAction_AcroPopWheelieMoveRight_Step1(struct EventObject *eventObje
return FALSE;
}
-void sub_8063208(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 a3)
+void sub_8063208(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 speed)
{
- sub_8060D20(eventObject, sprite, direction, a3);
+ npc_apply_direction(eventObject, sprite, direction, speed);
sub_805FE28(eventObject, sprite, GetAcroWheeliePedalDirectionAnimNum(eventObject->facingDirection));
}
@@ -6940,9 +7050,9 @@ bool8 MovementAction_AcroWheelieMoveRight_Step1(struct EventObject *eventObject,
return FALSE;
}
-void sub_8063338(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 a3)
+void sub_8063338(struct EventObject *eventObject, struct Sprite *sprite, u8 direction, u8 speed)
{
- sub_8060D20(eventObject, sprite, direction, a3);
+ npc_apply_direction(eventObject, sprite, direction, speed);
StartSpriteAnim(sprite, GetAcroEndWheelieDirectionAnimNum(eventObject->facingDirection));
SeekSpriteAnim(sprite, 0);
}
@@ -7026,23 +7136,23 @@ bool8 MovementAction_Finish(struct EventObject *eventObject, struct Sprite *spri
bool8 MovementAction_PauseSpriteAnim(struct EventObject *eventObject, struct Sprite *sprite)
{
- sprite->animPaused = 1;
+ sprite->animPaused = TRUE;
return TRUE;
}
static void UpdateEventObjectSpriteAnimPause(struct EventObject *eventObject, struct Sprite *sprite)
{
if (eventObject->disableAnim)
- sprite->animPaused = 1;
+ sprite->animPaused = TRUE;
}
static void TryEnableEventObjectAnim(struct EventObject *eventObject, struct Sprite *sprite)
{
if (eventObject->enableAnim)
{
- sprite->animPaused = 0;
- eventObject->disableAnim = 0;
- eventObject->enableAnim = 0;
+ sprite->animPaused = FALSE;
+ eventObject->disableAnim = FALSE;
+ eventObject->enableAnim = FALSE;
}
}
@@ -7057,7 +7167,7 @@ static void UpdateEventObjectIsOffscreen(struct EventObject *eventObject, struct
u16 x, y;
s16 x2, y2;
const struct EventObjectGraphicsInfo *graphicsInfo;
- eventObject->offScreen = 0;
+ eventObject->offScreen = FALSE;
graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
if (sprite->coordOffsetEnabled)
{
@@ -7074,20 +7184,20 @@ static void UpdateEventObjectIsOffscreen(struct EventObject *eventObject, struct
y2 = graphicsInfo->height + (s16)y;
if ((s16)x >= 0x100 || x2 < -0x10)
{
- eventObject->offScreen = 1;
+ eventObject->offScreen = TRUE;
}
if ((s16)y >= 0xB0 || y2 < -0x10)
{
- eventObject->offScreen = 1;
+ eventObject->offScreen = TRUE;
}
}
static void UpdateEventObjSpriteVisibility(struct EventObject *eventObject, struct Sprite *sprite)
{
- sprite->invisible = 0;
+ sprite->invisible = FALSE;
if (eventObject->invisible || eventObject->offScreen)
{
- sprite->invisible = 1;
+ sprite->invisible = TRUE;
}
}
@@ -7130,13 +7240,13 @@ static void GetAllGroundEffectFlags_OnFinishStep(struct EventObject *eventObj, u
GetGroundEffectFlags_JumpLanding(eventObj, flags);
}
-void EventObjectUpdateMetatileBehaviors(struct EventObject *eventObj)
+static void EventObjectUpdateMetatileBehaviors(struct EventObject *eventObj)
{
eventObj->previousMetatileBehavior = MapGridGetMetatileBehaviorAt(eventObj->previousCoords.x, eventObj->previousCoords.y);
eventObj->currentMetatileBehavior = MapGridGetMetatileBehaviorAt(eventObj->currentCoords.x, eventObj->currentCoords.y);
}
-void GetGroundEffectFlags_Reflection(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_Reflection(struct EventObject *eventObj, u32 *flags)
{
u32 reflectionFlags[2] = { GROUND_EFFECT_FLAG_REFLECTION, GROUND_EFFECT_FLAG_ICE_REFLECTION };
u8 type = EventObjectCheckForReflectiveSurface(eventObj);
@@ -7156,31 +7266,31 @@ void GetGroundEffectFlags_Reflection(struct EventObject *eventObj, u32 *flags)
}
}
-void GetGroundEffectFlags_TallGrassOnSpawn(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_TallGrassOnSpawn(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsTallGrass(eventObj->currentMetatileBehavior))
*flags |= GROUND_EFFECT_FLAG_TALL_GRASS_ON_SPAWN;
}
-void GetGroundEffectFlags_TallGrassOnBeginStep(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_TallGrassOnBeginStep(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsTallGrass(eventObj->currentMetatileBehavior))
*flags |= GROUND_EFFECT_FLAG_TALL_GRASS_ON_MOVE;
}
-void GetGroundEffectFlags_LongGrassOnSpawn(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_LongGrassOnSpawn(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsLongGrass(eventObj->currentMetatileBehavior))
*flags |= GROUND_EFFECT_FLAG_LONG_GRASS_ON_SPAWN;
}
-void GetGroundEffectFlags_LongGrassOnBeginStep(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_LongGrassOnBeginStep(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsLongGrass(eventObj->currentMetatileBehavior))
*flags |= GROUND_EFFECT_FLAG_LONG_GRASS_ON_MOVE;
}
-void GetGroundEffectFlags_Tracks(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_Tracks(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsDeepSand(eventObj->previousMetatileBehavior))
{
@@ -7193,7 +7303,7 @@ void GetGroundEffectFlags_Tracks(struct EventObject *eventObj, u32 *flags)
}
}
-void GetGroundEffectFlags_SandPile(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_SandPile(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsDeepSand(eventObj->currentMetatileBehavior)
&& MetatileBehavior_IsDeepSand(eventObj->previousMetatileBehavior))
@@ -7211,7 +7321,7 @@ void GetGroundEffectFlags_SandPile(struct EventObject *eventObj, u32 *flags)
}
}
-void GetGroundEffectFlags_ShallowFlowingWater(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_ShallowFlowingWater(struct EventObject *eventObj, u32 *flags)
{
if ((MetatileBehavior_IsShallowFlowingWater(eventObj->currentMetatileBehavior)
&& MetatileBehavior_IsShallowFlowingWater(eventObj->previousMetatileBehavior))
@@ -7231,7 +7341,7 @@ void GetGroundEffectFlags_ShallowFlowingWater(struct EventObject *eventObj, u32
}
}
-void GetGroundEffectFlags_Puddle(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_Puddle(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsPuddle(eventObj->currentMetatileBehavior)
&& MetatileBehavior_IsPuddle(eventObj->previousMetatileBehavior))
@@ -7240,13 +7350,13 @@ void GetGroundEffectFlags_Puddle(struct EventObject *eventObj, u32 *flags)
}
}
-void GetGroundEffectFlags_Ripple(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_Ripple(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_HasRipples(eventObj->currentMetatileBehavior))
*flags |= GROUND_EFFECT_FLAG_RIPPLES;
}
-void GetGroundEffectFlags_ShortGrass(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_ShortGrass(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsShortGrass(eventObj->currentMetatileBehavior)
&& MetatileBehavior_IsShortGrass(eventObj->previousMetatileBehavior))
@@ -7264,7 +7374,7 @@ void GetGroundEffectFlags_ShortGrass(struct EventObject *eventObj, u32 *flags)
}
}
-void GetGroundEffectFlags_HotSprings(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_HotSprings(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsHotSprings(eventObj->currentMetatileBehavior)
&& MetatileBehavior_IsHotSprings(eventObj->previousMetatileBehavior))
@@ -7282,13 +7392,13 @@ void GetGroundEffectFlags_HotSprings(struct EventObject *eventObj, u32 *flags)
}
}
-void GetGroundEffectFlags_Seaweed(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_Seaweed(struct EventObject *eventObj, u32 *flags)
{
if (MetatileBehavior_IsSeaweed(eventObj->currentMetatileBehavior))
*flags |= GROUND_EFFECT_FLAG_SEAWEED;
}
-void GetGroundEffectFlags_JumpLanding(struct EventObject *eventObj, u32 *flags)
+static void GetGroundEffectFlags_JumpLanding(struct EventObject *eventObj, u32 *flags)
{
typedef bool8 (*MetatileFunc)(u8);
@@ -7325,7 +7435,7 @@ void GetGroundEffectFlags_JumpLanding(struct EventObject *eventObj, u32 *flags)
}
}
-u8 EventObjectCheckForReflectiveSurface(struct EventObject *eventObj)
+static u8 EventObjectCheckForReflectiveSurface(struct EventObject *eventObj)
{
const struct EventObjectGraphicsInfo *info = GetEventObjectGraphicsInfo(eventObj->graphicsId);
@@ -7397,7 +7507,7 @@ u8 GetLedgeJumpDirection(s16 x, s16 y, u8 z)
return 0;
}
-void SetEventObjectSpriteOamTableForLongGrass(struct EventObject *eventObj, struct Sprite *sprite)
+static void SetEventObjectSpriteOamTableForLongGrass(struct EventObject *eventObj, struct Sprite *sprite)
{
if (eventObj->disableCoveringGroundEffects)
return;
@@ -7857,7 +7967,7 @@ bool8 FreezeEventObject(struct EventObject *eventObject)
void FreezeEventObjects(void)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
if (gEventObjects[i].active && i != gPlayerAvatar.eventObjectId)
FreezeEventObject(&gEventObjects[i]);
}
@@ -7865,7 +7975,7 @@ void FreezeEventObjects(void)
void FreezeEventObjectsExceptOne(u8 eventObjectId)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
if (i != eventObjectId && gEventObjects[i].active && i != gPlayerAvatar.eventObjectId)
FreezeEventObject(&gEventObjects[i]);
}
@@ -7883,7 +7993,7 @@ void UnfreezeEventObject(struct EventObject *eventObject)
void UnfreezeEventObjects(void)
{
u8 i;
- for (i = 0; i < 16; i++)
+ for (i = 0; i < EVENT_OBJECTS_COUNT; i++)
if (gEventObjects[i].active)
UnfreezeEventObject(&gEventObjects[i]);
}
@@ -8127,7 +8237,7 @@ static bool8 WaitForMovementDelay(struct Sprite *sprite)
void SetAndStartSpriteAnim(struct Sprite *sprite, u8 animNum, u8 animCmdIndex)
{
sprite->animNum = animNum;
- sprite->animPaused = 0;
+ sprite->animPaused = FALSE;
SeekSpriteAnim(sprite, animCmdIndex);
}
@@ -8161,9 +8271,9 @@ void UpdateEventObjectSpriteVisibility(struct Sprite *sprite, bool8 invisible)
y2 = y - (sprite->centerToCornerVecY >> 1);
if ((s16)x > 255 || x2 < -16)
- sprite->invisible = 1;
+ sprite->invisible = TRUE;
if ((s16)y > 175 || y2 < -16)
- sprite->invisible = 1;
+ sprite->invisible = TRUE;
}
static void UpdateEventObjectSpriteSubpriorityAndVisibility(struct Sprite *sprite)
@@ -8202,11 +8312,11 @@ void DoShadowFieldEffect(struct EventObject *eventObject)
}
}
-void DoRippleFieldEffect(struct EventObject *eventObject, struct Sprite *sprite)
+static void DoRippleFieldEffect(struct EventObject *eventObject, struct Sprite *sprite)
{
- const struct EventObjectGraphicsInfo *gfxInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
+ const struct EventObjectGraphicsInfo *graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
gFieldEffectArguments[0] = sprite->pos1.x;
- gFieldEffectArguments[1] = sprite->pos1.y + (gfxInfo->height >> 1) - 2;
+ gFieldEffectArguments[1] = sprite->pos1.y + (graphicsInfo->height >> 1) - 2;
gFieldEffectArguments[2] = 151;
gFieldEffectArguments[3] = 3;
FieldEffectStart(FLDEFF_RIPPLE);
diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c
index 7a438e100..426e65f06 100644
--- a/src/field_control_avatar.c
+++ b/src/field_control_avatar.c
@@ -88,8 +88,8 @@ static void GetPlayerPosition(struct MapPosition *);
static void GetInFrontOfPlayerPosition(struct MapPosition *);
static u16 GetPlayerCurMetatileBehavior(int);
static bool8 TryStartInteractionScript(struct MapPosition*, u16, u8);
-static u8 *GetInteractionScript(struct MapPosition*, u8, u8);
-static u8 *GetInteractedEventObjectScript(struct MapPosition *, u8, u8);
+static const u8 *GetInteractionScript(struct MapPosition*, u8, u8);
+static const u8 *GetInteractedEventObjectScript(struct MapPosition *, u8, u8);
static u8 *GetInteractedBackgroundEventScript(struct MapPosition *, u8, u8);
static u8 *GetInteractedMetatileScript(struct MapPosition *, u8, u8);
static u8 *GetInteractedWaterScript(struct MapPosition *, u8, u8);
@@ -313,7 +313,7 @@ static u16 GetPlayerCurMetatileBehavior(int runningState)
static bool8 TryStartInteractionScript(struct MapPosition *position, u16 metatileBehavior, u8 direction)
{
- u8 *script = GetInteractionScript(position, metatileBehavior, direction);
+ const u8 *script = GetInteractionScript(position, metatileBehavior, direction);
if (script == NULL)
return FALSE;
@@ -329,9 +329,9 @@ static bool8 TryStartInteractionScript(struct MapPosition *position, u16 metatil
return TRUE;
}
-static u8 *GetInteractionScript(struct MapPosition *position, u8 metatileBehavior, u8 direction)
+static const u8 *GetInteractionScript(struct MapPosition *position, u8 metatileBehavior, u8 direction)
{
- u8 *script = GetInteractedEventObjectScript(position, metatileBehavior, direction);
+ const u8 *script = GetInteractedEventObjectScript(position, metatileBehavior, direction);
if (script != NULL)
return script;
@@ -350,7 +350,7 @@ static u8 *GetInteractionScript(struct MapPosition *position, u8 metatileBehavio
return NULL;
}
-u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatileBehavior, u8 direction)
+const u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatileBehavior, u8 direction)
{
u8 eventObjectId;
s32 i;
@@ -375,10 +375,10 @@ u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatileBehav
return GetEventObjectScriptPointerByEventObjectId(eventObjectId);
}
-static u8 *GetInteractedEventObjectScript(struct MapPosition *position, u8 metatileBehavior, u8 direction)
+static const u8 *GetInteractedEventObjectScript(struct MapPosition *position, u8 metatileBehavior, u8 direction)
{
u8 eventObjectId;
- u8 *script;
+ const u8 *script;
eventObjectId = GetEventObjectIdByXYZ(position->x, position->y, position->height);
if (eventObjectId == 16 || gEventObjects[eventObjectId].localId == 0xFF)
@@ -935,7 +935,7 @@ u8 TrySetDiveWarp(void)
return 0;
}
-u8 *GetEventObjectScriptPointerPlayerFacing(void)
+const u8 *GetEventObjectScriptPointerPlayerFacing(void)
{
u8 direction;
struct MapPosition position;
diff --git a/src/field_effect.c b/src/field_effect.c
index cc5f9252a..5ce8028ca 100644
--- a/src/field_effect.c
+++ b/src/field_effect.c
@@ -1,29 +1,29 @@
#include "global.h"
#include "data2.h"
-#include "script.h"
-#include "trig.h"
-#include "main.h"
-#include "field_effect_helpers.h"
-#include "field_weather.h"
#include "decompress.h"
-#include "sprite.h"
-#include "menu.h"
-#include "palette.h"
-#include "text.h"
-#include "overworld.h"
-#include "task.h"
-#include "sound.h"
#include "decoration.h"
-#include "field_player_avatar.h"
#include "event_object_movement.h"
-#include "metatile_behavior.h"
#include "field_camera.h"
#include "field_control_avatar.h"
#include "field_effect.h"
+#include "field_effect_helpers.h"
#include "field_fadetransition.h"
+#include "field_player_avatar.h"
+#include "field_weather.h"
#include "fieldmap.h"
-#include "util.h"
+#include "main.h"
+#include "menu.h"
+#include "metatile_behavior.h"
+#include "overworld.h"
+#include "palette.h"
#include "pokemon_storage_system.h"
+#include "script.h"
+#include "sound.h"
+#include "sprite.h"
+#include "task.h"
+#include "text.h"
+#include "trig.h"
+#include "util.h"
#include "constants/event_object_movement_constants.h"
#include "constants/field_effects.h"
#include "constants/songs.h"
@@ -1076,7 +1076,7 @@ void c3_080843F8(u8);
void sub_80865BC(void)
{
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
gFieldCallback = mapldr_080842E8;
}
@@ -2064,7 +2064,7 @@ void sub_8087AA4(struct Task *task)
void sub_8087AC8(struct Task *task)
{
- u8 unknown_0839F380[5] = {1, 3, 4, 2, 1};
+ u8 spinDirections[5] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH};
struct EventObject *eventObject = &gEventObjects[gPlayerAvatar.eventObjectId];
if (task->data[1] == 0 || (--task->data[1]) == 0)
{
@@ -2080,7 +2080,7 @@ void sub_8087AC8(struct Task *task)
DestroyTask(FindTaskIdByFunc(sub_8087A74));
return;
}
- EventObjectSetHeldMovement(eventObject, GetFaceDirectionMovementAction(unknown_0839F380[eventObject->facingDirection]));
+ EventObjectSetHeldMovement(eventObject, GetFaceDirectionMovementAction(spinDirections[eventObject->facingDirection]));
if (task->data[2] < 32)
{
task->data[2]++;
@@ -2229,7 +2229,7 @@ void sub_8087E4C(struct Task *task)
void sub_8087ED8(struct Task *task)
{
- u8 unknown_0839F380[5] = {1, 3, 4, 2, 1};
+ u8 spinDirections[5] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH};
struct EventObject *eventObject = &gEventObjects[gPlayerAvatar.eventObjectId];
struct Sprite *sprite = &gSprites[gPlayerAvatar.spriteId];
if ((sprite->pos2.y += task->data[1]) >= -8)
@@ -2255,7 +2255,7 @@ void sub_8087ED8(struct Task *task)
if ((--task->data[2]) == 0)
{
task->data[2] = 4;
- EventObjectTurn(eventObject, unknown_0839F380[eventObject->facingDirection]);
+ EventObjectTurn(eventObject, spinDirections[eventObject->facingDirection]);
}
if (sprite->pos2.y >= 0)
{
@@ -2268,11 +2268,11 @@ void sub_8087ED8(struct Task *task)
void sub_8087FDC(struct Task *task)
{
- u8 unknown_0839F380[5] = {1, 3, 4, 2, 1};
+ u8 spinDirections[5] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH};
struct EventObject *eventObject = &gEventObjects[gPlayerAvatar.eventObjectId];
if ((--task->data[1]) == 0)
{
- EventObjectTurn(eventObject, unknown_0839F380[eventObject->facingDirection]);
+ EventObjectTurn(eventObject, spinDirections[eventObject->facingDirection]);
task->data[1] = 8;
if ((++task->data[2]) > 4 && task->data[14] == eventObject->facingDirection)
{
@@ -2474,7 +2474,7 @@ void sub_808843C(u16 offs)
u16 i;
u16 *dest;
dest = (u16 *)(VRAM + 0x140 + offs);
- for (i=0; i<0x140; i++, dest++)
+ for (i = 0; i < 0x140; i++, dest++)
{
*dest = gFieldMoveStreaksTilemap[i] | 0xf000;
}
@@ -2810,7 +2810,7 @@ u8 FldEff_UseSurf(void)
taskId = CreateTask(sub_8088954, 0xff);
gTasks[taskId].data[15] = gFieldEffectArguments[0];
Overworld_ClearSavedMusic();
- Overworld_ChangeMusicTo(0x016d);
+ Overworld_ChangeMusicTo(MUS_NAMINORI);
return FALSE;
}
@@ -2868,7 +2868,7 @@ void sub_8088A78(struct Task *task)
if (!FieldEffectActiveListContains(FLDEFF_FIELD_MOVE_SHOW_MON))
{
eventObject = &gEventObjects[gPlayerAvatar.eventObjectId];
- sub_805B980(eventObject, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
+ EventObjectSetGraphicsId(eventObject, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
EventObjectClearHeldMovementIfFinished(eventObject);
EventObjectSetHeldMovement(eventObject, GetJumpSpecialMovementAction(eventObject->movementDirection));
gFieldEffectArguments[0] = task->data[1];
@@ -3039,7 +3039,7 @@ void sub_8088E2C(struct Task *task)
if ((++task->data[2]) >= 8)
{
eventObject = &gEventObjects[gPlayerAvatar.eventObjectId];
- sub_805B980(eventObject, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
+ EventObjectSetGraphicsId(eventObject, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
StartSpriteAnim(&gSprites[eventObject->spriteId], 0x16);
eventObject->inanimate = 1;
EventObjectSetHeldMovement(eventObject, MOVEMENT_ACTION_JUMP_IN_PLACE_LEFT);
@@ -3279,7 +3279,7 @@ void sub_80892A0(struct Task *task)
{
sub_8127ED0(eventObject->fieldEffectSpriteId, 0);
}
- sub_805B980(eventObject, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
+ EventObjectSetGraphicsId(eventObject, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
CameraObjectReset2();
EventObjectTurn(eventObject, DIR_WEST);
StartSpriteAnim(&gSprites[eventObject->spriteId], 0x16);
@@ -3389,7 +3389,7 @@ void fishE(struct Task *task)
state = PLAYER_AVATAR_STATE_SURFING;
sub_8127ED0(eventObject->fieldEffectSpriteId, 1);
}
- sub_805B980(eventObject, GetPlayerAvatarGraphicsIdByStateId(state));
+ EventObjectSetGraphicsId(eventObject, GetPlayerAvatarGraphicsIdByStateId(state));
EventObjectTurn(eventObject, DIR_SOUTH);
gPlayerAvatar.flags = task->data[15];
gPlayerAvatar.preventStep = FALSE;
diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c
index 84f340b35..641cbad8f 100644
--- a/src/field_effect_helpers.c
+++ b/src/field_effect_helpers.c
@@ -1,13 +1,13 @@
#include "global.h"
-#include "sprite.h"
-#include "fieldmap.h"
-#include "metatile_behavior.h"
-#include "sound.h"
#include "event_object_movement.h"
#include "field_camera.h"
-#include "field_weather.h"
#include "field_effect.h"
#include "field_effect_helpers.h"
+#include "field_weather.h"
+#include "fieldmap.h"
+#include "metatile_behavior.h"
+#include "sound.h"
+#include "sprite.h"
#include "constants/field_effects.h"
#include "constants/songs.h"
@@ -297,7 +297,7 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite)
mapNum = sprite->data[5] >> 8;
mapGroup = sprite->data[5];
- if (gCamera.field_0 && (gSaveBlock1.location.mapNum != mapNum || gSaveBlock1.location.mapGroup != mapGroup))
+ if (gCamera.active && (gSaveBlock1.location.mapNum != mapNum || gSaveBlock1.location.mapGroup != mapGroup))
{
sprite->data[1] -= gCamera.x;
sprite->data[2] -= gCamera.y;
@@ -403,7 +403,7 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite)
mapNum = sprite->data[5] >> 8;
mapGroup = sprite->data[5];
- if (gCamera.field_0 && (gSaveBlock1.location.mapNum != mapNum || gSaveBlock1.location.mapGroup != mapGroup))
+ if (gCamera.active && (gSaveBlock1.location.mapNum != mapNum || gSaveBlock1.location.mapGroup != mapGroup))
{
sprite->data[1] -= gCamera.x;
sprite->data[2] -= gCamera.y;
diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c
index 47f43858b..5ce6a6339 100644
--- a/src/field_player_avatar.c
+++ b/src/field_player_avatar.c
@@ -648,14 +648,14 @@ void nullsub_49(struct EventObject *eventObj)
void PlayerAvatarTransition_Normal(struct EventObject *eventObj)
{
- sub_805B980(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_NORMAL));
+ EventObjectSetGraphicsId(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_NORMAL));
EventObjectTurn(eventObj, eventObj->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_ON_FOOT);
}
void PlayerAvatarTransition_MachBike(struct EventObject *eventObj)
{
- sub_805B980(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_MACH_BIKE));
+ EventObjectSetGraphicsId(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_MACH_BIKE));
EventObjectTurn(eventObj, eventObj->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_MACH_BIKE);
BikeClearState(0, 0);
@@ -663,7 +663,7 @@ void PlayerAvatarTransition_MachBike(struct EventObject *eventObj)
void PlayerAvatarTransition_AcroBike(struct EventObject *eventObj)
{
- sub_805B980(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_ACRO_BIKE));
+ EventObjectSetGraphicsId(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_ACRO_BIKE));
EventObjectTurn(eventObj, eventObj->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_ACRO_BIKE);
BikeClearState(0, 0);
@@ -674,7 +674,7 @@ void PlayerAvatarTransition_Surfing(struct EventObject *eventObj)
{
u8 unk;
- sub_805B980(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
+ EventObjectSetGraphicsId(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_SURFING));
EventObjectTurn(eventObj, eventObj->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_SURFING);
gFieldEffectArguments[0] = eventObj->currentCoords.x;
@@ -687,7 +687,7 @@ void PlayerAvatarTransition_Surfing(struct EventObject *eventObj)
void PlayerAvatarTransition_Underwater(struct EventObject *eventObj)
{
- sub_805B980(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_UNDERWATER));
+ EventObjectSetGraphicsId(eventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_UNDERWATER));
EventObjectTurn(eventObj, eventObj->movementDirection);
SetPlayerAvatarStateMask(PLAYER_AVATAR_FLAG_UNDERWATER);
eventObj->fieldEffectSpriteId = sub_8128124(eventObj->spriteId);
@@ -1163,26 +1163,26 @@ void sub_8059B88(u8 a)
void sub_8059BF4(void)
{
- sub_805B980(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_FIELD_MOVE));
+ EventObjectSetGraphicsId(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_FIELD_MOVE));
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], 0);
}
void sub_8059C3C(u8 direction)
{
- sub_805B980(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_FISHING));
+ EventObjectSetGraphicsId(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_FISHING));
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFishingDirectionAnimNum(direction));
}
void sub_8059C94(u8 direction)
{
- sub_805B980(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_ACRO_BIKE));
+ EventObjectSetGraphicsId(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_ACRO_BIKE));
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetAcroWheelieDirectionAnimNum(direction));
SeekSpriteAnim(&gSprites[gPlayerAvatar.spriteId], 1);
}
void sub_8059D08(u8 direction)
{
- sub_805B980(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_WATERING));
+ EventObjectSetGraphicsId(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_WATERING));
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], GetFaceDirectionAnimNum(direction));
}
@@ -1419,7 +1419,7 @@ static void sub_805A2D0(u8 taskId)
if (EventObjectClearHeldMovementIfFinished(playerEventObj))
{
- sub_805B980(playerEventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_NORMAL));
+ EventObjectSetGraphicsId(playerEventObj, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_STATE_NORMAL));
EventObjectSetHeldMovement(playerEventObj, GetFaceDirectionMovementAction(playerEventObj->facingDirection));
gPlayerAvatar.preventStep = FALSE;
ScriptContext2_Disable();
@@ -1657,7 +1657,7 @@ u8 Fishing11(struct Task *task)
{
struct EventObject *playerEventObj = &gEventObjects[gPlayerAvatar.eventObjectId];
- sub_805B980(playerEventObj, task->tPlayerGfxId);
+ EventObjectSetGraphicsId(playerEventObj, task->tPlayerGfxId);
EventObjectTurn(playerEventObj, playerEventObj->movementDirection);
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
sub_8127F28(gEventObjects[gPlayerAvatar.eventObjectId].fieldEffectSpriteId, 0, 0);
@@ -1716,7 +1716,7 @@ u8 Fishing15(struct Task *task)
{
struct EventObject *playerEventObj = &gEventObjects[gPlayerAvatar.eventObjectId];
- sub_805B980(playerEventObj, task->tPlayerGfxId);
+ EventObjectSetGraphicsId(playerEventObj, task->tPlayerGfxId);
EventObjectTurn(playerEventObj, playerEventObj->movementDirection);
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
sub_8127F28(gEventObjects[gPlayerAvatar.eventObjectId].fieldEffectSpriteId, 0, 0);
diff --git a/src/field_poison.c b/src/field_poison.c
index dd7500d22..596bc6e89 100644
--- a/src/field_poison.c
+++ b/src/field_poison.c
@@ -138,10 +138,16 @@ s32 DoPoisonFieldEffect(void)
mon++;
}
if (numFainting != 0 || numPoisoned != 0)
+ {
FldeffPoison_Start();
+ }
if (numFainting != 0)
+ {
return 2;
+ }
if (numPoisoned != 0)
+ {
return 1;
+ }
return 0;
}
diff --git a/src/field_specials.c b/src/field_specials.c
index f9ae911c8..0e8fe06d9 100644
--- a/src/field_specials.c
+++ b/src/field_specials.c
@@ -73,7 +73,7 @@ void ScrSpecial_ShowDiploma(void)
void ScrSpecial_ViewWallClock(void)
{
- gMain.savedCallback = c2_exit_to_overworld_2_switch;
+ gMain.savedCallback = CB2_ReturnToField;
SetMainCallback2(CB2_ViewWallClock);
ScriptContext2_Enable();
}
diff --git a/src/field_tasks.c b/src/field_tasks.c
index 8b736c949..12167eb85 100644
--- a/src/field_tasks.c
+++ b/src/field_tasks.c
@@ -847,7 +847,7 @@ void Task_MuddySlope(u8 taskId)
break;
}
- if (gCamera.field_0 && mapIndices != data[0])
+ if (gCamera.active && mapIndices != data[0])
{
data[0] = mapIndices;
x2 = gCamera.x;
diff --git a/src/fieldmap.c b/src/fieldmap.c
index abb46fd35..4b5149878 100644
--- a/src/fieldmap.c
+++ b/src/fieldmap.c
@@ -715,7 +715,7 @@ bool8 CameraMove(int x, int y)
unsigned int direction;
struct MapConnection *connection;
int old_x, old_y;
- gCamera.field_0 = FALSE;
+ gCamera.active = FALSE;
direction = GetPostCameraMoveMapBorderId(x, y);
if (direction + 1 <= 1)
{
@@ -730,14 +730,14 @@ bool8 CameraMove(int x, int y)
connection = sub_8056A64(direction, gSaveBlock1.pos.x, gSaveBlock1.pos.y);
sub_8056918(connection, direction, x, y);
sub_80538F0(connection->mapGroup, connection->mapNum);
- gCamera.field_0 = TRUE;
+ gCamera.active = TRUE;
gCamera.x = old_x - gSaveBlock1.pos.x;
gCamera.y = old_y - gSaveBlock1.pos.y;
gSaveBlock1.pos.x += x;
gSaveBlock1.pos.y += y;
sub_80566F0(direction);
}
- return gCamera.field_0;
+ return gCamera.active;
}
struct MapConnection *sub_8056A64(u8 direction, int x, int y)
diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c
index 14c4ea018..0a8c252e0 100644
--- a/src/fldeff_cut.c
+++ b/src/fldeff_cut.c
@@ -1,4 +1,3 @@
-
#include "global.h"
#include "field_camera.h"
#include "field_effect.h"
@@ -27,7 +26,18 @@ extern u8 gLastFieldPokeMenuOpened;
extern const u8 DoCutFieldEffectScript[];
-const struct OamData gOamData_CutGrass =
+// this file's functions
+static void FieldCallback_CutTree(void);
+static void FieldCallback_CutGrass(void);
+static void StartCutTreeFieldEffect(void);
+static void StartCutGrassFieldEffect(void);
+static void SetCutGrassMetatile(s16, s16);
+static void SetCutGrassMetatiles(s16, s16);
+static void CutGrassSpriteCallback1(struct Sprite *);
+static void CutGrassSpriteCallback2(struct Sprite *);
+static void CutGrassSpriteCallbackEnd(struct Sprite *);
+
+static const struct OamData gOamData_CutGrass =
{
.y = 0,
.affineMode = 0,
@@ -44,15 +54,15 @@ const struct OamData gOamData_CutGrass =
.affineParam = 0,
};
-const union AnimCmd gSpriteAnim_CutGrass[] =
+static const union AnimCmd sSpriteAnim_CutGrass[] =
{
ANIMCMD_FRAME(0, 30),
ANIMCMD_JUMP(0),
};
-const union AnimCmd *const gSpriteAnimTable_CutGrass[] =
+static const union AnimCmd *const sSpriteAnimTable_CutGrass[] =
{
- gSpriteAnim_CutGrass,
+ sSpriteAnim_CutGrass,
};
const struct SpriteFrameImage gSpriteImageTable_CutGrass[] =
@@ -62,23 +72,12 @@ const struct SpriteFrameImage gSpriteImageTable_CutGrass[] =
const struct SpritePalette gFieldEffectObjectPaletteInfo6 = {gFieldEffectObjectPalette6, 0x1000};
-static void FieldCallback_CutTree(void);
-static void FieldCallback_CutGrass(void);
-static void StartCutTreeFieldEffect(void);
-static void StartCutGrassFieldEffect(void);
-static void SetCutGrassMetatile(s16, s16);
-static void SetCutGrassMetatiles(s16, s16);
-static void CutGrassSpriteCallback1(struct Sprite *);
-static void CutGrassSpriteCallback2(struct Sprite *);
-static void CutGrassSpriteCallbackEnd(struct Sprite *);
-
-
-static const struct SpriteTemplate gSpriteTemplate_CutGrass =
+static const struct SpriteTemplate sSpriteTemplate_CutGrass =
{
.tileTag = 0xFFFF,
.paletteTag = 0x1000,
.oam = &gOamData_CutGrass,
- .anims = gSpriteAnimTable_CutGrass,
+ .anims = sSpriteAnimTable_CutGrass,
.images = gSpriteImageTable_CutGrass,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = CutGrassSpriteCallback1,
@@ -92,7 +91,7 @@ void Debug_SetUpFieldMove_Cut(void)
u8 i, j;
u8 metatileBehavior;
- if (SetLastTalkedObjectInFrontOfPlayer(EVENT_OBJ_GFX_CUTTABLE_TREE) == TRUE)
+ if (CheckObjectGraphicsInFrontOfPlayer(EVENT_OBJ_GFX_CUTTABLE_TREE) == TRUE)
{
gLastFieldPokeMenuOpened = 0;
FieldCallback_CutTree();
@@ -131,7 +130,7 @@ bool8 SetUpFieldMove_Cut(void)
u8 i, j;
u8 tileBehavior;
- if (SetLastTalkedObjectInFrontOfPlayer(EVENT_OBJ_GFX_CUTTABLE_TREE) == TRUE)
+ if (CheckObjectGraphicsInFrontOfPlayer(EVENT_OBJ_GFX_CUTTABLE_TREE) == TRUE)
{
// Standing in front of cuttable tree.
gFieldCallback = FieldCallback_PrepareFadeInFromMenu;
@@ -147,7 +146,7 @@ bool8 SetUpFieldMove_Cut(void)
for (j = 0; j < 3; j++)
{
x = j - 1 + gPlayerFacingPosition.x;
- if(MapGridGetZCoordAt(x, y) == gPlayerFacingPosition.height)
+ if (MapGridGetZCoordAt(x, y) == gPlayerFacingPosition.height)
{
tileBehavior = MapGridGetMetatileBehaviorAt(x, y);
if(MetatileBehavior_IsPokeGrass(tileBehavior) == TRUE
@@ -209,9 +208,11 @@ bool8 FldEff_CutGrass(void)
{
s16 x, y;
u8 tileBehavior;
- u8 i, j;
+ u8 i = 0, j;
- for (i = 0, PlaySE(SE_W015), PlayerGetDestCoords(&gPlayerFacingPosition.x, &gPlayerFacingPosition.y); i < 3; i++)
+ PlaySE(SE_W015);
+ PlayerGetDestCoords(&gPlayerFacingPosition.x, &gPlayerFacingPosition.y);
+ for (i = 0; i < 3; i++)
{
y = i - 1 + gPlayerFacingPosition.y;
for (j = 0; j < 3; j++)
@@ -235,7 +236,7 @@ bool8 FldEff_CutGrass(void)
// populate sprite ID array
for (i = 0; i < 8; i++)
{
- eCutGrassSpriteArray[i] = CreateSprite((struct SpriteTemplate *)&gSpriteTemplate_CutGrass,
+ eCutGrassSpriteArray[i] = CreateSprite(&sSpriteTemplate_CutGrass,
gSprites[gPlayerAvatar.spriteId].oam.x + 8, gSprites[gPlayerAvatar.spriteId].oam.y + 20, 0);
gSprites[eCutGrassSpriteArray[i]].data[2] = 32 * i;
}
diff --git a/src/fldeff_strength.c b/src/fldeff_strength.c
index 0b66ed0d2..e10e18cc1 100644
--- a/src/fldeff_strength.c
+++ b/src/fldeff_strength.c
@@ -31,7 +31,7 @@ void debug_sub_8130318(void)
gSpecialVar_Result = 0;
sub_811AA38();
}
- else if (SetLastTalkedObjectInFrontOfPlayer(EVENT_OBJ_GFX_PUSHABLE_BOULDER) == TRUE)
+ else if (CheckObjectGraphicsInFrontOfPlayer(EVENT_OBJ_GFX_PUSHABLE_BOULDER) == TRUE)
{
gLastFieldPokeMenuOpened = 0;
gSpecialVar_Result = 0;
@@ -54,7 +54,7 @@ bool8 SetUpFieldMove_Strength(void)
}
else
{
- if (SetLastTalkedObjectInFrontOfPlayer(EVENT_OBJ_GFX_PUSHABLE_BOULDER) != TRUE)
+ if (CheckObjectGraphicsInFrontOfPlayer(EVENT_OBJ_GFX_PUSHABLE_BOULDER) != TRUE)
return 0;
gSpecialVar_Result = gLastFieldPokeMenuOpened;
gFieldCallback = FieldCallback_PrepareFadeInFromMenu;
diff --git a/src/hof_pc.c b/src/hof_pc.c
index b9407bace..ba64b5f4f 100644
--- a/src/hof_pc.c
+++ b/src/hof_pc.c
@@ -20,7 +20,7 @@ void AccessHallOfFamePC(void)
void ReturnFromHallOfFamePC(void)
{
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
gFieldCallback = ReshowPCMenuAfterHallOfFamePC;
}
diff --git a/src/item_menu.c b/src/item_menu.c
index 95a84b1fb..b69866453 100644
--- a/src/item_menu.c
+++ b/src/item_menu.c
@@ -2791,8 +2791,8 @@ void ItemMenu_LoadSellMenu(void)
static void OnBagClose_Shop(u8 taskId)
{
gFieldCallback = Shop_FadeReturnToMartMenu;
- gTasks[taskId].data[8] = (u32)c2_exit_to_overworld_2_switch >> 16;
- gTasks[taskId].data[9] = (u32)c2_exit_to_overworld_2_switch;
+ gTasks[taskId].data[8] = (u32)CB2_ReturnToField >> 16;
+ gTasks[taskId].data[9] = (u32)CB2_ReturnToField;
sub_80A5AE4(taskId);
}
@@ -2958,7 +2958,7 @@ static void sub_80A68A4(void)
gUnknown_02038563 = CreateTask(sub_80A50C8, 0);
}
-void sub_80A68CC(void)
+void CB2_ChooseBerry(void)
{
sCurrentBagPocket = BAG_POCKET_BERRIES;
sReturnLocation = RETURN_TO_FIELD_4;
@@ -3036,8 +3036,8 @@ void sub_80A6A30(void)
static void OnBagClose_PC(u8 taskId)
{
gFieldCallback = ItemStorage_ReturnToMenuAfterDeposit;
- gTasks[taskId].data[8] = (u32)c2_exit_to_overworld_2_switch >> 16;
- gTasks[taskId].data[9] = (u32)c2_exit_to_overworld_2_switch;
+ gTasks[taskId].data[8] = (u32)CB2_ReturnToField >> 16;
+ gTasks[taskId].data[9] = (u32)CB2_ReturnToField;
sub_80A5AE4(taskId);
}
diff --git a/src/item_use.c b/src/item_use.c
index 1f33144b2..d927b5937 100644
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -73,7 +73,7 @@ static const u8 *const sSSTidalBetaStrings[] =
static const MainCallback gExitToOverworldFuncList[] =
{
sub_808B020,
- c2_exit_to_overworld_2_switch,
+ CB2_ReturnToField,
sub_810B96C,
};
@@ -793,8 +793,8 @@ void ItemUseOutOfBattle_Berry(u8 taskId)
{
gFieldItemUseCallback = ItemUseOnFieldCB_Berry;
gFieldCallback = ExecuteItemUseFromBlackPalette;
- gTasks[taskId].data[8] = (u32)c2_exit_to_overworld_2_switch >> 16;
- gTasks[taskId].data[9] = (u32)c2_exit_to_overworld_2_switch;
+ gTasks[taskId].data[8] = (u32)CB2_ReturnToField >> 16;
+ gTasks[taskId].data[9] = (u32)CB2_ReturnToField;
gTasks[taskId].func = HandleItemMenuPaletteFade;
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB(0, 0, 0));
}
diff --git a/src/mail.c b/src/mail.c
index 9833b1c2d..8b4647532 100644
--- a/src/mail.c
+++ b/src/mail.c
@@ -829,7 +829,7 @@ void debug_sub_810CDF0(void)
gMain.watchedKeysPressed = 0;
gMain.watchedKeysMask = 0;
gFieldCallback = mapldr_default;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
}
void debug_sub_810CE1C(u8 taskId)
diff --git a/src/move_tutor_menu.c b/src/move_tutor_menu.c
index 0ecc82a72..666eec0da 100644
--- a/src/move_tutor_menu.c
+++ b/src/move_tutor_menu.c
@@ -556,7 +556,7 @@ static void MoveTutorMain(void)
break;
case 15:
if (!gPaletteFade.active)
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
break;
case 28:
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB(0, 0, 0));
diff --git a/src/overworld.c b/src/overworld.c
index a7a203ca2..17ecfaf8d 100644
--- a/src/overworld.c
+++ b/src/overworld.c
@@ -103,11 +103,26 @@ extern void (*gFieldCallback)(void);
u8 gUnknown_03004860;
u8 gFieldLinkPlayerCount;
+static void CB2_Overworld(void);
static u8 GetAdjustedInitialTransitionFlags(struct InitialPlayerAvatarState*, u16, u8);
static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState*, u8, u16, u8);
static bool32 sub_805483C(u8*);
static void c2_80567AC(void);
+static void Overworld_ResetStateAfterWhiteOut(void);
static void InitOverworldGraphicsRegisters(void);
+static void ChooseAmbientCrySpecies(void);
+static void SetFieldVBlankCallback(void);
+static void VBlankCB_Field(void);
+static void SpawnLinkPlayerEventObject(u8, s16, s16, u8);
+static void InitLinkPlayerEventObjectPos(struct EventObject *, s16, s16);
+static u8 GetLinkPlayerIdAt(s16, s16);
+static u8 npc_something3(u8, u8);
+static u8 LinkPlayerDetectCollision(u8, u8, s16, s16);
+static void CreateLinkPlayerSprite(u8);
+static void SpriteCB_LinkPlayer(struct Sprite *);
+static u16 sub_8055758(const u8 *);
+static void sub_8055808(const u8 *);
+static void sub_8055840(const u8 *);
static const struct WarpData sDummyWarpData =
{
@@ -232,7 +247,7 @@ void Overworld_ResetStateAfterDigEscRope(void)
FlagClear(FLAG_SYS_USE_FLASH);
}
-void Overworld_ResetStateAfterWhiteOut(void)
+static void Overworld_ResetStateAfterWhiteOut(void)
{
ResetInitialPlayerAvatarState();
FlagClear(FLAG_SYS_CYCLING_ROAD);
@@ -541,11 +556,11 @@ void gpu_sync_bg_hide()
gSaveBlock1.warp1 = gSaveBlock1.warp2;
}
-struct MapConnection *GetMapConnection(u8 dir)
+const struct MapConnection *GetMapConnection(u8 dir)
{
s32 i;
s32 count = gMapHeader.connections->count;
- struct MapConnection *connection = gMapHeader.connections->connections;
+ const struct MapConnection *connection = gMapHeader.connections->connections;
if (connection == NULL)
return NULL;
@@ -559,7 +574,8 @@ struct MapConnection *GetMapConnection(u8 dir)
static bool8 SetDiveWarp(u8 direction, u16 x, u16 y)
{
- struct MapConnection *connection = GetMapConnection(direction);
+ const struct MapConnection *connection = GetMapConnection(direction);
+
if (connection != NULL)
{
Overworld_SetWarpDestination(connection->mapGroup, connection->mapNum, -1, x, y);
@@ -947,7 +963,7 @@ void Overworld_ChangeMusicTo(u16 newMusic)
u8 GetMapMusicFadeoutSpeed(void)
{
- struct MapHeader *mapHeader = GetDestinationWarpMapHeader();
+ const struct MapHeader *mapHeader = GetDestinationWarpMapHeader();
if (Overworld_MapTypeIsIndoors(mapHeader->mapType) == TRUE)
return 2;
else
@@ -1020,7 +1036,7 @@ void UpdateAmbientCry(s16 *state, u16 *delayCounter)
}
}
-void ChooseAmbientCrySpecies(void)
+static void ChooseAmbientCrySpecies(void)
{
if ((gSaveBlock1.location.mapGroup == MAP_GROUP(ROUTE130)
&& gSaveBlock1.location.mapNum == MAP_NUM(ROUTE130))
@@ -1179,7 +1195,7 @@ bool32 is_c1_link_related_active(void)
return FALSE;
}
-void c1_overworld_normal(u16 newKeys, u16 heldKeys)
+static void DoCB1_Overworld(u16 newKeys, u16 heldKeys)
{
struct FieldInput fieldInput;
@@ -1200,13 +1216,13 @@ void c1_overworld_normal(u16 newKeys, u16 heldKeys)
}
}
-void c1_overworld(void)
+static void CB1_Overworld(void)
{
- if (gMain.callback2 == c2_overworld)
- c1_overworld_normal(gMain.newKeys, gMain.heldKeys);
+ if (gMain.callback2 == CB2_Overworld)
+ DoCB1_Overworld(gMain.newKeys, gMain.heldKeys);
}
-void OverworldBasic(void)
+static void OverworldBasic(void)
{
ScriptContext2_RunScript();
RunTasks();
@@ -1224,7 +1240,7 @@ void CB2_OverworldBasic(void)
OverworldBasic();
}
-void c2_overworld(void)
+static void CB2_Overworld(void)
{
int fading = (gPaletteFade.active != 0);
if (fading)
@@ -1234,7 +1250,7 @@ void c2_overworld(void)
SetFieldVBlankCallback();
}
-void set_callback1(MainCallback cb)
+void SetMainCallback1(MainCallback cb)
{
gMain.callback1 = cb;
}
@@ -1266,8 +1282,8 @@ void CB2_NewGame(void)
gFieldCallback = ExecuteTruckSequence;
do_load_map_stuff_loop(&gMain.state);
SetFieldVBlankCallback();
- set_callback1(c1_overworld);
- SetMainCallback2(c2_overworld);
+ SetMainCallback1(CB1_Overworld);
+ SetMainCallback2(CB2_Overworld);
}
#if DEBUG
@@ -1289,8 +1305,8 @@ void debug_sub_8058C00(void)
do_load_map_stuff_loop(&gMain.state);
SetFieldVBlankCallback();
- set_callback1(c1_overworld);
- SetMainCallback2(c2_overworld);
+ SetMainCallback1(CB1_Overworld);
+ SetMainCallback2(CB2_Overworld);
}
#endif
@@ -1312,8 +1328,8 @@ void CB2_WhiteOut(void)
val = 0;
do_load_map_stuff_loop(&val);
SetFieldVBlankCallback();
- set_callback1(c1_overworld);
- SetMainCallback2(c2_overworld);
+ SetMainCallback1(CB1_Overworld);
+ SetMainCallback2(CB2_Overworld);
}
}
@@ -1322,7 +1338,7 @@ void CB2_LoadMap(void)
FieldClearVBlankHBlankCallbacks();
ScriptContext1_Init();
ScriptContext2_Disable();
- set_callback1(NULL);
+ SetMainCallback1(NULL);
SetMainCallback2(sub_810CC80);
gMain.savedCallback = CB2_LoadMap2;
}
@@ -1331,8 +1347,8 @@ void CB2_LoadMap2(void)
{
do_load_map_stuff_loop(&gMain.state);
SetFieldVBlankCallback();
- set_callback1(c1_overworld);
- SetMainCallback2(c2_overworld);
+ SetMainCallback1(CB1_Overworld);
+ SetMainCallback2(CB2_Overworld);
}
void sub_8054534(void)
@@ -1342,13 +1358,13 @@ void sub_8054534(void)
FieldClearVBlankHBlankCallbacks();
ScriptContext1_Init();
ScriptContext2_Disable();
- set_callback1(NULL);
+ SetMainCallback1(NULL);
}
if (sub_805493C(&gMain.state, 1))
{
SetFieldVBlankCallback();
- set_callback1(c1_overworld);
- SetMainCallback2(c2_overworld);
+ SetMainCallback1(CB1_Overworld);
+ SetMainCallback2(CB2_Overworld);
}
}
@@ -1364,38 +1380,38 @@ static void c2_80567AC(void)
if (sub_805483C(&gMain.state))
{
SetFieldVBlankCallback();
- set_callback1(sub_8055354);
+ SetMainCallback1(sub_8055354);
sub_80543DC(sub_8055390);
- SetMainCallback2(c2_overworld);
+ SetMainCallback2(CB2_Overworld);
}
}
-void c2_exit_to_overworld_2_switch(void)
+void CB2_ReturnToField(void)
{
if (is_c1_link_related_active() == TRUE)
{
- SetMainCallback2(c2_exit_to_overworld_2_link);
+ SetMainCallback2(CB2_ReturnToFieldLink);
}
else
{
FieldClearVBlankHBlankCallbacks();
- SetMainCallback2(c2_exit_to_overworld_2_local);
+ SetMainCallback2(CB2_ReturnToFieldLocal);
}
}
-void c2_exit_to_overworld_2_local(void)
+void CB2_ReturnToFieldLocal(void)
{
if (sub_8054A4C(&gMain.state))
{
SetFieldVBlankCallback();
- SetMainCallback2(c2_overworld);
+ SetMainCallback2(CB2_Overworld);
}
}
-void c2_exit_to_overworld_2_link(void)
+void CB2_ReturnToFieldLink(void)
{
if (!sub_8055870() && sub_8054A9C(&gMain.state))
- SetMainCallback2(c2_overworld);
+ SetMainCallback2(CB2_Overworld);
}
void sub_805465C(void)
@@ -1403,40 +1419,40 @@ void sub_805465C(void)
FieldClearVBlankHBlankCallbacks();
StopMapMusic();
sub_8054F70();
- set_callback1(sub_8055354);
+ SetMainCallback1(sub_8055354);
sub_80543DC(sub_8055390);
gFieldCallback = sub_8080A3C;
ScriptContext1_Init();
ScriptContext2_Disable();
- c2_exit_to_overworld_2_switch();
+ CB2_ReturnToField();
}
void c2_exit_to_overworld_1_sub_8080DEC(void)
{
FieldClearVBlankHBlankCallbacks();
gFieldCallback = sub_8080DEC;
- c2_exit_to_overworld_2_switch();
+ CB2_ReturnToField();
}
void sub_80546B8(void)
{
FieldClearVBlankHBlankCallbacks();
gFieldCallback = sub_80809B0;
- c2_exit_to_overworld_2_switch();
+ CB2_ReturnToField();
}
void c2_exit_to_overworld_1_continue_scripts_restart_music(void)
{
FieldClearVBlankHBlankCallbacks();
gFieldCallback = sub_8080990;
- c2_exit_to_overworld_2_switch();
+ CB2_ReturnToField();
}
void sub_80546F0(void)
{
FieldClearVBlankHBlankCallbacks();
gFieldCallback = sub_8080B60;
- c2_exit_to_overworld_2_switch();
+ CB2_ReturnToField();
}
void sub_805470C(void)
@@ -1474,8 +1490,8 @@ void CB2_ContinueSavedGame(void)
else
{
gFieldCallback = sub_805470C;
- set_callback1(c1_overworld);
- c2_exit_to_overworld_2_switch();
+ SetMainCallback1(CB1_Overworld);
+ CB2_ReturnToField();
}
}
@@ -1490,12 +1506,12 @@ void FieldClearVBlankHBlankCallbacks(void)
SetHBlankCallback(NULL);
}
-void SetFieldVBlankCallback(void)
+static void SetFieldVBlankCallback(void)
{
SetVBlankCallback(VBlankCB_Field);
}
-void VBlankCB_Field(void)
+static void VBlankCB_Field(void)
{
LoadOam();
ProcessSpriteCopyRequests();
@@ -1926,7 +1942,7 @@ bool32 sub_8054FC0(u16 a1)
void sub_8054FF8(u32 a1, u16 a2, struct UnkStruct_8054FF8 *a3, u16 *a4)
{
- u8 *script;
+ const u8 *script;
if (gUnknown_03000580[a1] == 0x80)
{
@@ -2314,7 +2330,7 @@ bool32 sub_8055660(struct UnkStruct_8054FF8 *a1)
return TRUE;
}
-u8 *sub_805568C(struct UnkStruct_8054FF8 *a1)
+const u8 *sub_805568C(struct UnkStruct_8054FF8 *a1)
{
struct MapPosition unkStruct;
u8 linkPlayerId;
@@ -2343,7 +2359,7 @@ u8 *sub_805568C(struct UnkStruct_8054FF8 *a1)
return GetInteractedLinkPlayerScript(&unkStruct, a1->field_C, a1->d);
}
-u16 sub_8055758(u8 *script)
+static u16 sub_8055758(const u8 *script)
{
if (script == DoubleBattleColosseum_EventScript_1A4383)
return 10;
@@ -2384,7 +2400,7 @@ void sub_80557F4(void)
ScriptContext2_Enable();
}
-void sub_8055808(u8 *script)
+static void sub_8055808(const u8 *script)
{
PlaySE(SE_SELECT);
ScriptContext1_SetupScript(script);
@@ -2398,7 +2414,7 @@ void sub_8055824(void)
ScriptContext2_Enable();
}
-void sub_8055840(u8 *script)
+static void sub_8055840(const u8 *script)
{
PlaySE(SE_SELECT);
ScriptContext1_SetupScript(script);
@@ -2486,7 +2502,7 @@ static void ClearEventObject(struct EventObject *eventObj)
memset(eventObj, 0, sizeof(struct EventObject));
}
-void SpawnLinkPlayerEventObject(u8 linkPlayerId, s16 x, s16 y, u8 a4)
+static void SpawnLinkPlayerEventObject(u8 linkPlayerId, s16 x, s16 y, u8 a4)
{
u8 eventObjId = GetFirstInactiveEventObjectId();
struct LinkPlayerEventObject *linkPlayerEventObj = &gLinkPlayerEventObjects[linkPlayerId];
@@ -2508,7 +2524,7 @@ void SpawnLinkPlayerEventObject(u8 linkPlayerId, s16 x, s16 y, u8 a4)
InitLinkPlayerEventObjectPos(eventObj, x, y);
}
-void InitLinkPlayerEventObjectPos(struct EventObject *eventObj, s16 x, s16 y)
+static void InitLinkPlayerEventObjectPos(struct EventObject *eventObj, s16 x, s16 y)
{
eventObj->currentCoords.x = x;
eventObj->currentCoords.y = y;
@@ -2576,7 +2592,7 @@ s32 unref_sub_8055B74(u8 linkPlayerId)
return 16 - (s8)eventObj->directionSequenceIndex;
}
-u8 GetLinkPlayerIdAt(s16 x, s16 y)
+static u8 GetLinkPlayerIdAt(s16 x, s16 y)
{
u8 i;
for (i = 0; i < 4; i++)
@@ -2670,7 +2686,7 @@ static void sub_8055D38(struct LinkPlayerEventObject *linkPlayerEventObj, struct
}
}
-u8 npc_something3(u8 a1, u8 a2)
+static u8 npc_something3(u8 a1, u8 a2)
{
switch (a1 - 1)
{
@@ -2690,7 +2706,7 @@ u8 npc_something3(u8 a1, u8 a2)
return a2;
}
-u8 LinkPlayerDetectCollision(u8 selfEventObjId, u8 a2, s16 x, s16 y)
+static u8 LinkPlayerDetectCollision(u8 selfEventObjId, u8 a2, s16 x, s16 y)
{
u8 i;
for (i = 0; i < 16; i++)
@@ -2707,7 +2723,7 @@ u8 LinkPlayerDetectCollision(u8 selfEventObjId, u8 a2, s16 x, s16 y)
return MapGridIsImpassableAt(x, y);
}
-void CreateLinkPlayerSprite(u8 linkPlayerId)
+static void CreateLinkPlayerSprite(u8 linkPlayerId)
{
struct LinkPlayerEventObject *linkPlayerEventObj = &gLinkPlayerEventObjects[linkPlayerId];
u8 eventObjId = linkPlayerEventObj->eventObjId;
@@ -2725,7 +2741,7 @@ void CreateLinkPlayerSprite(u8 linkPlayerId)
}
}
-void SpriteCB_LinkPlayer(struct Sprite *sprite)
+static void SpriteCB_LinkPlayer(struct Sprite *sprite)
{
struct LinkPlayerEventObject *linkPlayerEventObj = &gLinkPlayerEventObjects[sprite->data[0]];
struct EventObject *eventObj = &gEventObjects[linkPlayerEventObj->eventObjId];
diff --git a/src/player_pc.c b/src/player_pc.c
index ce3dda3c7..f7c2379cd 100644
--- a/src/player_pc.c
+++ b/src/player_pc.c
@@ -1224,7 +1224,7 @@ static void Mailbox_DoRedrawMailboxMenuAfterReturn(void)
static void Mailbox_ReturnToFieldFromReadMail(void)
{
gFieldCallback = Mailbox_DoRedrawMailboxMenuAfterReturn;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
}
static const u8 gHighlightedMoveToBagFormatText[] = _("{COLOR RED}{STR_VAR_1}");
@@ -1314,7 +1314,7 @@ static void Mailbox_UpdateMailListAfterDeposit(void)
void Mailbox_ReturnToMailListAfterDeposit(void)
{
gFieldCallback = Mailbox_UpdateMailListAfterDeposit;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
}
// you always have at least 1 POKeMON and you cannot receive mail before you leave Littleroot: therefore this function cannot be reached normally.
diff --git a/src/pokeblock.c b/src/pokeblock.c
index 03939556c..6e3f5d9e1 100644
--- a/src/pokeblock.c
+++ b/src/pokeblock.c
@@ -124,9 +124,9 @@ const s8 gPokeblockFlavorCompatibilityTable[] =
void (*const gUnknown_083F7EA8[])(void) =
{
sub_80A5B40,
- c2_exit_to_overworld_2_switch,
+ CB2_ReturnToField,
sub_802E424,
- c2_exit_to_overworld_2_switch
+ CB2_ReturnToField
};
const u8 *const gPokeblockNames[] =
diff --git a/src/pokemon_menu.c b/src/pokemon_menu.c
index 23020383d..8f22586a2 100644
--- a/src/pokemon_menu.c
+++ b/src/pokemon_menu.c
@@ -772,7 +772,7 @@ static void sub_808AB34(u8 taskID)
if (!gPaletteFade.active)
{
if (!IS_FLY(gTasks[taskID].tFieldMoveId) || ShouldDoBrailleFlyEffect())
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
else
SetMainCallback2(CB2_InitFlyRegionMap);
DestroyTask(taskID);
diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c
index 971d7daf7..c1143495d 100644
--- a/src/pokemon_storage_system.c
+++ b/src/pokemon_storage_system.c
@@ -377,7 +377,7 @@ void sub_80961A8(void)
{
gUnknown_02038474 = gPokemonStorageSystemPtr->unk_0005;
gFieldCallback = FieldCB_ReturnToOverworld;
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
}
void ResetPokemonStorageSystem(void)
diff --git a/src/rom6.c b/src/rom6.c
index 6efb1802e..f28216529 100644
--- a/src/rom6.c
+++ b/src/rom6.c
@@ -1,21 +1,21 @@
#include "global.h"
-#include "constants/event_objects.h"
-#include "constants/songs.h"
-#include "rom6.h"
#include "braille_puzzles.h"
-#include "field_effect.h"
#include "event_object_movement.h"
+#include "field_effect.h"
#include "field_player_avatar.h"
#include "item_use.h"
-#include "pokemon_menu.h"
#include "overworld.h"
+#include "pokemon_menu.h"
+#include "rom6.h"
#include "script.h"
#include "sound.h"
#include "sprite.h"
#include "task.h"
#include "constants/event_object_movement_constants.h"
+#include "constants/event_objects.h"
#include "constants/field_effects.h"
#include "constants/map_types.h"
+#include "constants/songs.h"
extern u16 gSpecialVar_LastTalked;
extern void (*gFieldCallback)(void);
@@ -34,7 +34,7 @@ static void sub_810B58C(void);
static void sub_810B5D8(void);
static void sub_810B634(void);
-bool8 SetLastTalkedObjectInFrontOfPlayer(u8 graphicsId)
+bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId)
{
u8 eventObjId;
@@ -104,7 +104,7 @@ static void sub_810B428(u8 taskId)
gFieldEffectArguments[2] = 2;
if (gFieldEffectArguments[1] == 4)
gFieldEffectArguments[2] = 3;
- sub_805B980(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByCurrentState());
+ EventObjectSetGraphicsId(&gEventObjects[gPlayerAvatar.eventObjectId], GetPlayerAvatarGraphicsIdByCurrentState());
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], gFieldEffectArguments[2]);
FieldEffectActiveListRemove(6);
gTasks[taskId].func = sub_810B4CC;
@@ -123,7 +123,7 @@ static void sub_810B4CC(u8 taskId)
#if DEBUG
void debug_sub_8120968(void)
{
- if (SetLastTalkedObjectInFrontOfPlayer(EVENT_OBJ_GFX_BREAKABLE_ROCK) == TRUE)
+ if (CheckObjectGraphicsInFrontOfPlayer(EVENT_OBJ_GFX_BREAKABLE_ROCK) == TRUE)
{
gLastFieldPokeMenuOpened = 0;
sub_810B53C();
@@ -137,7 +137,7 @@ void debug_sub_8120968(void)
bool8 SetUpFieldMove_RockSmash(void)
{
- if (SetLastTalkedObjectInFrontOfPlayer(EVENT_OBJ_GFX_BREAKABLE_ROCK) == TRUE)
+ if (CheckObjectGraphicsInFrontOfPlayer(EVENT_OBJ_GFX_BREAKABLE_ROCK) == TRUE)
{
gFieldCallback = FieldCallback_PrepareFadeInFromMenu;
gPostMenuFieldCallback = sub_810B53C;
diff --git a/src/roulette.c b/src/roulette.c
index c8804a543..288de36fd 100644
--- a/src/roulette.c
+++ b/src/roulette.c
@@ -1219,7 +1219,7 @@ void sub_8116B40(u8 taskId) // end roulette ?
REG_BLDALPHA = 0x0;
REG_BLDY = 0x0;
gFieldCallback = &sub_8080990;
- SetMainCallback2(&c2_exit_to_overworld_2_switch);
+ SetMainCallback2(&CB2_ReturnToField);
DestroyTask(taskId);
#if DEBUG
unk_203955C[0] = 0;
diff --git a/src/safari_zone.c b/src/safari_zone.c
index 9272da902..7aa05c7dc 100644
--- a/src/safari_zone.c
+++ b/src/safari_zone.c
@@ -97,7 +97,7 @@ void sub_80C824C(void)
{
if (gNumSafariBalls != 0)
{
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
}
else if (gBattleOutcome == 8)
{
diff --git a/src/script.c b/src/script.c
index 8625cfdc2..2c6495552 100644
--- a/src/script.c
+++ b/src/script.c
@@ -12,7 +12,7 @@ enum
SCRIPT_MODE_NATIVE,
};
-EWRAM_DATA u8 *gUnknown_0202E8AC = NULL;
+EWRAM_DATA const u8 *gUnknown_0202E8AC = NULL;
static u8 sScriptContext1Status;
static struct ScriptContext sScriptContext1;
@@ -356,7 +356,7 @@ bool8 InitRamScript(u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objec
return TRUE;
}
-u8 *GetRamScript(u8 objectId, u8 *script)
+const u8 *GetRamScript(u8 objectId, const u8 *script)
{
struct RamScriptData *scriptData = &gSaveBlock1.ramScript.data;
gUnknown_0202E8AC = 0;
diff --git a/src/script_pokemon_util_80F99CC.c b/src/script_pokemon_util_80F99CC.c
index 87ef2517b..e7bf74a7f 100644
--- a/src/script_pokemon_util_80F99CC.c
+++ b/src/script_pokemon_util_80F99CC.c
@@ -274,7 +274,7 @@ void HandleMoveTutorPartyMenu(u8 var)
void SelectMove(void)
{
- ShowSelectMovePokemonSummaryScreen(&gPlayerParty[0], gSpecialVar_0x8004, gPlayerPartyCount - 1, c2_exit_to_overworld_2_switch, 0);
+ ShowSelectMovePokemonSummaryScreen(&gPlayerParty[0], gSpecialVar_0x8004, gPlayerPartyCount - 1, CB2_ReturnToField, 0);
UNK_2018000_STRUCT.unk8 = 3;
gFieldCallback = sub_8080990;
}
diff --git a/src/shop.c b/src/shop.c
index 8a5da1117..e2b796a75 100644
--- a/src/shop.c
+++ b/src/shop.c
@@ -1178,7 +1178,7 @@ static void Task_ExitBuyMenuDoFade(u8 taskId)
{
CloseMoneyWindow(0, 0);
BuyMenuFreeMemory();
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
DestroyTask(taskId);
}
}
diff --git a/src/trade.c b/src/trade.c
index d20f4efec..bd298b58e 100644
--- a/src/trade.c
+++ b/src/trade.c
@@ -4885,7 +4885,7 @@ static bool8 sub_804C29C(void)
if (!gPaletteFade.active)
{
PlayBGM(gUnknown_03004828->unk_0124);
- SetMainCallback2(c2_exit_to_overworld_2_switch);
+ SetMainCallback2(CB2_ReturnToField);
sub_804D8E4();
}
break;
diff --git a/src/trainer_see.c b/src/trainer_see.c
index ee4cb6e0f..edb178c4e 100644
--- a/src/trainer_see.c
+++ b/src/trainer_see.c
@@ -52,7 +52,7 @@ bool8 CheckTrainers(void)
static bool8 CheckTrainer(u8 eventObjId)
{
- u8 *scriptPtr = GetEventObjectScriptPointerByEventObjectId(eventObjId);
+ const u8 *scriptPtr = GetEventObjectScriptPointerByEventObjectId(eventObjId);
if (GetTrainerFlagFromScriptPointer(scriptPtr))
{