Continue documenting generic arguments
This commit is contained in:
+75
-71
@@ -79,13 +79,13 @@ static bool8 TryPushBoulder(s16, s16, u8);
|
||||
static void CheckAcroBikeCollision(s16, s16, u8, u8 *);
|
||||
|
||||
static void DoPlayerAvatarTransition(void);
|
||||
static void PlayerAvatarTransition_Dummy(struct ObjectEvent *a);
|
||||
static void PlayerAvatarTransition_Normal(struct ObjectEvent *a);
|
||||
static void PlayerAvatarTransition_MachBike(struct ObjectEvent *a);
|
||||
static void PlayerAvatarTransition_AcroBike(struct ObjectEvent *a);
|
||||
static void PlayerAvatarTransition_Surfing(struct ObjectEvent *a);
|
||||
static void PlayerAvatarTransition_Underwater(struct ObjectEvent *a);
|
||||
static void PlayerAvatarTransition_ReturnToField(struct ObjectEvent *a);
|
||||
static void PlayerAvatarTransition_Dummy(struct ObjectEvent *);
|
||||
static void PlayerAvatarTransition_Normal(struct ObjectEvent *);
|
||||
static void PlayerAvatarTransition_MachBike(struct ObjectEvent *);
|
||||
static void PlayerAvatarTransition_AcroBike(struct ObjectEvent *);
|
||||
static void PlayerAvatarTransition_Surfing(struct ObjectEvent *);
|
||||
static void PlayerAvatarTransition_Underwater(struct ObjectEvent *);
|
||||
static void PlayerAvatarTransition_ReturnToField(struct ObjectEvent *);
|
||||
|
||||
static bool8 PlayerAnimIsMultiFrameStationary(void);
|
||||
static bool8 PlayerAnimIsMultiFrameStationaryAndStateNotTurning(void);
|
||||
@@ -96,51 +96,51 @@ static void PlayerRun(u8);
|
||||
static void PlayerNotOnBikeCollide(u8);
|
||||
static void PlayerNotOnBikeCollideWithFarawayIslandMew(u8);
|
||||
|
||||
static void PlayCollisionSoundIfNotFacingWarp(u8 a);
|
||||
static void PlayCollisionSoundIfNotFacingWarp(u8);
|
||||
|
||||
static void HideShowWarpArrow(struct ObjectEvent *);
|
||||
|
||||
static void StartStrengthAnim(u8, u8);
|
||||
static void Task_PushBoulder(u8 taskId);
|
||||
static bool8 PushBoulder_Start(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject);
|
||||
static bool8 PushBoulder_Move(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject);
|
||||
static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject);
|
||||
static void Task_PushBoulder(u8);
|
||||
static bool8 PushBoulder_Start(struct Task *, struct ObjectEvent *, struct ObjectEvent *);
|
||||
static bool8 PushBoulder_Move(struct Task *, struct ObjectEvent *, struct ObjectEvent *);
|
||||
static bool8 PushBoulder_End(struct Task *, struct ObjectEvent *, struct ObjectEvent *);
|
||||
|
||||
static void DoPlayerMatJump(void);
|
||||
static void DoPlayerAvatarSecretBaseMatJump(u8 taskId);
|
||||
static u8 PlayerAvatar_DoSecretBaseMatJump(struct Task *task, struct ObjectEvent *objectEvent);
|
||||
static void DoPlayerAvatarSecretBaseMatJump(u8);
|
||||
static u8 PlayerAvatar_DoSecretBaseMatJump(struct Task *, struct ObjectEvent *);
|
||||
|
||||
static void DoPlayerMatSpin(void);
|
||||
static void PlayerAvatar_DoSecretBaseMatSpin(u8 taskId);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep0(struct Task *task, struct ObjectEvent *objectEvent);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep1(struct Task *task, struct ObjectEvent *objectEvent);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep2(struct Task *task, struct ObjectEvent *objectEvent);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep3(struct Task *task, struct ObjectEvent *objectEvent);
|
||||
static void PlayerAvatar_DoSecretBaseMatSpin(u8);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep0(struct Task *, struct ObjectEvent *);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep1(struct Task *, struct ObjectEvent *);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep2(struct Task *, struct ObjectEvent *);
|
||||
static bool8 PlayerAvatar_SecretBaseMatSpinStep3(struct Task *, struct ObjectEvent *);
|
||||
|
||||
static void CreateStopSurfingTask(u8);
|
||||
static void Task_StopSurfingInit(u8 taskId);
|
||||
static void Task_WaitStopSurfing(u8 taskId);
|
||||
static void Task_StopSurfingInit(u8);
|
||||
static void Task_WaitStopSurfing(u8);
|
||||
|
||||
static void Task_Fishing(u8 taskId);
|
||||
static u8 Fishing_Init(struct Task *task);
|
||||
static u8 Fishing_GetRodOut(struct Task *task);
|
||||
static u8 Fishing_WaitBeforeDots(struct Task *task);
|
||||
static u8 Fishing_InitDots(struct Task *task);
|
||||
static u8 Fishing_ShowDots(struct Task *task);
|
||||
static u8 Fishing_CheckForBite(struct Task *task);
|
||||
static u8 Fishing_GotBite(struct Task *task);
|
||||
static u8 Fishing_WaitForA(struct Task *task);
|
||||
static u8 Fishing_CheckMoreDots(struct Task *task);
|
||||
static u8 Fishing_MonOnHook(struct Task *task);
|
||||
static u8 Fishing_StartEncounter(struct Task *task);
|
||||
static u8 Fishing_NotEvenNibble(struct Task *task);
|
||||
static u8 Fishing_GotAway(struct Task *task);
|
||||
static u8 Fishing_NoMon(struct Task *task);
|
||||
static u8 Fishing_PutRodAway(struct Task *task);
|
||||
static u8 Fishing_EndNoMon(struct Task *task);
|
||||
static void Task_Fishing(u8);
|
||||
static u8 Fishing_Init(struct Task *);
|
||||
static u8 Fishing_GetRodOut(struct Task *);
|
||||
static u8 Fishing_WaitBeforeDots(struct Task *);
|
||||
static u8 Fishing_InitDots(struct Task *);
|
||||
static u8 Fishing_ShowDots(struct Task *);
|
||||
static u8 Fishing_CheckForBite(struct Task *);
|
||||
static u8 Fishing_GotBite(struct Task *);
|
||||
static u8 Fishing_WaitForA(struct Task *);
|
||||
static u8 Fishing_CheckMoreDots(struct Task *);
|
||||
static u8 Fishing_MonOnHook(struct Task *);
|
||||
static u8 Fishing_StartEncounter(struct Task *);
|
||||
static u8 Fishing_NotEvenNibble(struct Task *);
|
||||
static u8 Fishing_GotAway(struct Task *);
|
||||
static u8 Fishing_NoMon(struct Task *);
|
||||
static u8 Fishing_PutRodAway(struct Task *);
|
||||
static u8 Fishing_EndNoMon(struct Task *);
|
||||
static void AlignFishingAnimationFrames(void);
|
||||
|
||||
static u8 TrySpinPlayerForWarp(struct ObjectEvent *object, s16 *a1);
|
||||
static u8 TrySpinPlayerForWarp(struct ObjectEvent *, s16 *);
|
||||
|
||||
static bool8 (*const sForcedMovementTestFuncs[NUM_FORCED_MOVEMENTS])(u8) =
|
||||
{
|
||||
@@ -1445,68 +1445,68 @@ static void HideShowWarpArrow(struct ObjectEvent *objectEvent)
|
||||
|
||||
/* Strength */
|
||||
|
||||
static void StartStrengthAnim(u8 a, u8 b)
|
||||
#define tState data[0]
|
||||
#define tBoulderObjId data[1]
|
||||
#define tDirection data[2]
|
||||
|
||||
static void StartStrengthAnim(u8 objectEventId, u8 direction)
|
||||
{
|
||||
u8 taskId = CreateTask(Task_PushBoulder, 0xFF);
|
||||
|
||||
gTasks[taskId].data[1] = a;
|
||||
gTasks[taskId].data[2] = b;
|
||||
gTasks[taskId].tBoulderObjId = objectEventId;
|
||||
gTasks[taskId].tDirection = direction;
|
||||
Task_PushBoulder(taskId);
|
||||
}
|
||||
|
||||
static void Task_PushBoulder(u8 taskId)
|
||||
{
|
||||
while (sPushBoulderFuncs[gTasks[taskId].data[0]](&gTasks[taskId],
|
||||
while (sPushBoulderFuncs[gTasks[taskId].tState](&gTasks[taskId],
|
||||
&gObjectEvents[gPlayerAvatar.objectEventId],
|
||||
&gObjectEvents[gTasks[taskId].data[1]]))
|
||||
&gObjectEvents[gTasks[taskId].tBoulderObjId]))
|
||||
;
|
||||
}
|
||||
|
||||
static bool8 PushBoulder_Start(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject)
|
||||
static bool8 PushBoulder_Start(struct Task *task, struct ObjectEvent *player, struct ObjectEvent *boulder)
|
||||
{
|
||||
ScriptContext2_Enable();
|
||||
gPlayerAvatar.preventStep = TRUE;
|
||||
task->data[0]++;
|
||||
task->tState++;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static bool8 PushBoulder_Move(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject)
|
||||
static bool8 PushBoulder_Move(struct Task *task, struct ObjectEvent *player, struct ObjectEvent *boulder)
|
||||
{
|
||||
if (ObjectEventIsHeldMovementActive(playerObject))
|
||||
{
|
||||
ObjectEventClearHeldMovementIfFinished(playerObject);
|
||||
}
|
||||
if (ObjectEventIsHeldMovementActive(player))
|
||||
ObjectEventClearHeldMovementIfFinished(player);
|
||||
|
||||
if (ObjectEventIsHeldMovementActive(strengthObject))
|
||||
{
|
||||
ObjectEventClearHeldMovementIfFinished(strengthObject);
|
||||
}
|
||||
if (ObjectEventIsHeldMovementActive(boulder))
|
||||
ObjectEventClearHeldMovementIfFinished(boulder);
|
||||
|
||||
if (!ObjectEventIsMovementOverridden(playerObject)
|
||||
&& !ObjectEventIsMovementOverridden(strengthObject))
|
||||
if (!ObjectEventIsMovementOverridden(player)
|
||||
&& !ObjectEventIsMovementOverridden(boulder))
|
||||
{
|
||||
ObjectEventClearHeldMovementIfFinished(playerObject);
|
||||
ObjectEventClearHeldMovementIfFinished(strengthObject);
|
||||
ObjectEventSetHeldMovement(playerObject, GetWalkInPlaceNormalMovementAction((u8)task->data[2]));
|
||||
ObjectEventSetHeldMovement(strengthObject, GetWalkSlowMovementAction((u8)task->data[2]));
|
||||
gFieldEffectArguments[0] = strengthObject->currentCoords.x;
|
||||
gFieldEffectArguments[1] = strengthObject->currentCoords.y;
|
||||
gFieldEffectArguments[2] = strengthObject->previousElevation;
|
||||
gFieldEffectArguments[3] = gSprites[strengthObject->spriteId].oam.priority;
|
||||
ObjectEventClearHeldMovementIfFinished(player);
|
||||
ObjectEventClearHeldMovementIfFinished(boulder);
|
||||
ObjectEventSetHeldMovement(player, GetWalkInPlaceNormalMovementAction((u8)task->tDirection));
|
||||
ObjectEventSetHeldMovement(boulder, GetWalkSlowMovementAction((u8)task->tDirection));
|
||||
gFieldEffectArguments[0] = boulder->currentCoords.x;
|
||||
gFieldEffectArguments[1] = boulder->currentCoords.y;
|
||||
gFieldEffectArguments[2] = boulder->previousElevation;
|
||||
gFieldEffectArguments[3] = gSprites[boulder->spriteId].oam.priority;
|
||||
FieldEffectStart(FLDEFF_DUST);
|
||||
PlaySE(SE_M_STRENGTH);
|
||||
task->data[0]++;
|
||||
task->tState++;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *playerObject, struct ObjectEvent *strengthObject)
|
||||
static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *player, struct ObjectEvent *boulder)
|
||||
{
|
||||
if (ObjectEventCheckHeldMovementStatus(playerObject)
|
||||
&& ObjectEventCheckHeldMovementStatus(strengthObject))
|
||||
if (ObjectEventCheckHeldMovementStatus(player)
|
||||
&& ObjectEventCheckHeldMovementStatus(boulder))
|
||||
{
|
||||
ObjectEventClearHeldMovementIfFinished(playerObject);
|
||||
ObjectEventClearHeldMovementIfFinished(strengthObject);
|
||||
ObjectEventClearHeldMovementIfFinished(player);
|
||||
ObjectEventClearHeldMovementIfFinished(boulder);
|
||||
gPlayerAvatar.preventStep = FALSE;
|
||||
ScriptContext2_Disable();
|
||||
DestroyTask(FindTaskIdByFunc(Task_PushBoulder));
|
||||
@@ -1514,6 +1514,10 @@ static bool8 PushBoulder_End(struct Task *task, struct ObjectEvent *playerObject
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
#undef tState
|
||||
#undef tBoulderObjId
|
||||
#undef tDirection
|
||||
|
||||
/* Some field effect */
|
||||
|
||||
static void DoPlayerMatJump(void)
|
||||
|
||||
Reference in New Issue
Block a user