Standard names for struct fields (#1103)

* position -> pos

* rotation -> rot

* velocity -> vel

* distance -> dist

* current -> cur

* current -> cur
This commit is contained in:
Ethan Roseman 2023-07-30 14:08:07 +09:00 committed by GitHub
parent ae66312d8c
commit b9cc73472b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
556 changed files with 7524 additions and 7529 deletions

View File

@ -219,7 +219,7 @@ typedef struct Npc {
/* 0x010 */ f32 planarFlyDist; /* also used for speech, temp0? */
/* 0x014 */ f32 jumpScale; /* also used for speech, temp1? */
/* 0x018 */ f32 moveSpeed;
/* 0x01C */ f32 jumpVelocity;
/* 0x01C */ f32 jumpVel;
/* 0x020 */ union {
void* any;
NpcMotionBlur* motion; ///< Null unless flag 0x100000 is set.
@ -230,21 +230,21 @@ typedef struct Npc {
s32* keepAwayStarted;
} blur;
/* 0x024 */ s32 spriteInstanceID;
/* 0x028 */ AnimID currentAnim;
/* 0x028 */ AnimID curAnim;
/* 0x02C */ s32 animNotifyValue;
/* 0x030 */ f32 animationSpeed;
/* 0x034 */ f32 renderYaw;
/* 0x038 */ Vec3f pos;
/* 0x044 */ Vec3f rotation;
/* 0x050 */ f32 rotationPivotOffsetY;
/* 0x044 */ Vec3f rot;
/* 0x050 */ f32 rotPivotOffsetY;
/* 0x054 */ Vec3f scale;
/* 0x060 */ Vec3f moveToPos;
/* 0x06C */ Vec3f colliderPos; /* used during collision with player */
/* 0x078 */ s32 shadowIndex;
/* 0x07C */ f32 shadowScale;
/* 0x080 */ s32 collisionChannel; /* flags used with collision tracing */
/* 0x084 */ s16 currentFloor; /* colliderID */
/* 0x086 */ s16 currentWall; /* colliderID */
/* 0x084 */ s16 curFloor; /* colliderID */
/* 0x086 */ s16 curWall; /* colliderID */
/* 0x088 */ s16 isFacingAway;
/* 0x08A */ s16 yawCamOffset;
/* 0x08C */ s16 turnAroundYawAdjustment;
@ -318,7 +318,7 @@ typedef struct PlayerData {
/* 0x00F */ u8 starPieces;
/* 0x010 */ s8 starPoints;
/* 0x011 */ char unk_11;
/* 0x012 */ s8 currentPartner;
/* 0x012 */ s8 curPartner;
/* 0x013 */ char unk_13;
/* 0x014 */ struct PartnerData partners[12];
/* 0x074 */ s16 keyItems[32];
@ -326,7 +326,7 @@ typedef struct PlayerData {
/* 0x1B4 */ s16 invItems[10];
/* 0x1C8 */ s16 storedItems[32];
/* 0x208 */ s16 equippedBadges[64];
/* 0x288 */ char unk_288;
/* 0x288 */ s8 unk_288;
/* 0x289 */ s8 merleeSpellType;
/* 0x28A */ s8 merleeCastsLeft;
/* 0x28B */ char unk_28B;
@ -418,15 +418,10 @@ typedef struct TriggerBlueprint {
/* 0x1C */ s32* itemList;
} TriggerBlueprint; // size = 0x20
typedef union X32 {
s32 s;
f32 f;
} X32;
typedef struct Evt {
/* 0x000 */ u8 stateFlags;
/* 0x001 */ u8 currentArgc;
/* 0x002 */ u8 currentOpcode;
/* 0x001 */ u8 curArgc;
/* 0x002 */ u8 curOpcode;
/* 0x003 */ u8 priority;
/* 0x004 */ u8 groupFlags;
/* 0x005 */ s8 blocked; /* 1 = blocking */
@ -477,7 +472,7 @@ typedef struct Evt {
/* 0x158 */ s32 unk_158;
/* 0x15C */ Bytecode* ptrFirstLine;
/* 0x160 */ Bytecode* ptrSavedPos;
/* 0x164 */ Bytecode* ptrCurrentLine;
/* 0x164 */ Bytecode* ptrCurLine;
} Evt; // size = 0x168
typedef Evt* ScriptList[MAX_SCRIPTS];
@ -581,9 +576,9 @@ typedef struct Entity {
/* 0x3C */ void (*renderSetupFunc)(s32);
/* 0x40 */ EntityData dataBuf;
/* 0x44 */ void* gfxBaseAddr;
/* 0x48 */ Vec3f position;
/* 0x48 */ Vec3f pos;
/* 0x54 */ Vec3f scale;
/* 0x60 */ Vec3f rotation;
/* 0x60 */ Vec3f rot;
/* 0x6C */ f32 shadowPosY;
/* 0x70 */ Matrix4f inverseTransformMatrix; /* world-to-local */
/* 0xB0 */ f32 effectiveSize;
@ -618,9 +613,9 @@ typedef struct Shadow {
/* 0x08 */ s16 entityModelID;
/* 0x0A */ s16 vertexSegment;
/* 0x0C */ Vec3s* vertexArray;
/* 0x10 */ Vec3f position;
/* 0x10 */ Vec3f pos;
/* 0x1C */ Vec3f scale;
/* 0x28 */ Vec3f rotation;
/* 0x28 */ Vec3f rot;
/* 0x34 */ char unk_34[0x4];
/* 0x38 */ Mtx transformMatrix;
} Shadow; // size = 0x78
@ -790,15 +785,15 @@ typedef struct Camera {
/* 0x048 */ Vec3f lookAt_obj;
/* 0x054 */ Vec3f lookAt_obj_target;
/* 0x060 */ Vec3f targetPos;
/* 0x06C */ f32 currentYaw;
/* 0x06C */ f32 curYaw;
/* 0x070 */ f32 unk_70;
/* 0x074 */ f32 currentBoomYaw;
/* 0x078 */ f32 currentBoomLength;
/* 0x07C */ f32 currentYOffset;
/* 0x074 */ f32 curBoomYaw;
/* 0x078 */ f32 curBoomLength;
/* 0x07C */ f32 curYOffset;
/* 0x080 */ char unk_80[4];
/* 0x084 */ Vec3f trueRotation;
/* 0x090 */ f32 currentBlendedYawNegated;
/* 0x094 */ f32 currentPitch;
/* 0x084 */ Vec3f trueRot;
/* 0x090 */ f32 curBlendedYawNegated;
/* 0x094 */ f32 curPitch;
/* 0x098 */ f32 unk_98;
/* 0x09C */ f32 unk_9C;
/* 0x0A0 */ Vp vp;
@ -820,7 +815,7 @@ typedef struct Camera {
/* 0x212 */ s16 unk_212;
/* 0x214 */ CameraUnk unk_214[4];
/* 0x444 */ CameraControlSettings* prevController;
/* 0x448 */ CameraControlSettings* currentController;
/* 0x448 */ CameraControlSettings* curController;
/* 0x44C */ CamConfiguration prevConfiguration;
/* 0x468 */ CamConfiguration goalConfiguration;
/* 0x484 */ f32 interpAlpha;
@ -866,7 +861,7 @@ typedef struct BattleStatus {
/* */ f32 varTableF[16];
/* */ void* varTablePtr[16];
/* */ };
/* 0x048 */ s8 currentSubmenu;
/* 0x048 */ s8 curSubmenu;
/* 0x049 */ s8 unk_49;
/* 0x04A */ s8 unk_4A;
/* 0x04B */ s8 unk_4B;
@ -938,31 +933,31 @@ typedef struct BattleStatus {
/* 0x170 */ s8 nextEnemyIndex; /* (during enemy turn) who should go next */
/* 0x171 */ s8 numEnemyActors;
/* 0x172 */ s16 activeEnemyActorID; /* (during enemy turn) enemy currently using their move */
/* 0x174 */ struct Actor* currentTurnEnemy;
/* 0x174 */ struct Actor* curTurnEnemy;
/* 0x178 */ s8 moveCategory; ///< 0 = jump, 1 = hammer, 5 = partner, ...
/* 0x179 */ char unk_179;
/* 0x17A */ s16 moveArgument; // argument provided for move; can be hammer/boots level, itemID, etc
/* 0x17C */ s16 selectedMoveID;
/* 0x17E */ s16 currentAttackDamage;
/* 0x17E */ s16 curAttackDamage;
/* 0x180 */ s16 lastAttackDamage;
/* 0x182 */ char unk_182[2];
/* 0x184 */ s32 currentTargetListFlags; /* set when creating a target list, also obtain from the flags field of moves */
/* 0x188 */ s32 currentAttackElement;
/* 0x18C */ s32 currentAttackEventSuppression;
/* 0x190 */ s32 currentAttackStatus;
/* 0x184 */ s32 curTargetListFlags; /* set when creating a target list, also obtain from the flags field of moves */
/* 0x188 */ s32 curAttackElement;
/* 0x18C */ s32 curAttackEventSuppression;
/* 0x190 */ s32 curAttackStatus;
/* 0x194 */ u8 statusChance;
/* 0x195 */ s8 statusDuration;
/* 0x196 */ char unk_196;
/* 0x197 */ s8 targetHomeIndex; /* some sort of home index used for target list construction */
/* 0x198 */ s8 powerBounceCounter;
/* 0x199 */ s8 wasStatusInflicted; /* during last attack */
/* 0x19A */ u8 currentDamageSource;
/* 0x19A */ u8 curDamageSource;
/* 0x19B */ char unk_19B[5];
/* 0x1A0 */ s16 currentTargetID; /* selected? */
/* 0x1A2 */ s8 currentTargetPart; /* selected? */
/* 0x1A0 */ s16 curTargetID; /* selected? */
/* 0x1A2 */ s8 curTargetPart; /* selected? */
/* 0x1A3 */ char unk_1A3;
/* 0x1A4 */ s16 currentTargetID2;
/* 0x1A6 */ s8 currentTargetPart2;
/* 0x1A4 */ s16 curTargetID2;
/* 0x1A6 */ s8 curTargetPart2;
/* 0x1A7 */ s8 battlePhase;
/* 0x1A8 */ s16 attackerActorID;
/* 0x1AA */ s16 unk_1AA;
@ -973,9 +968,9 @@ typedef struct BattleStatus {
/* 0x1F6 */ s8 submenuStatus[24]; ///< @see enum BattleSubmenuStatus
/* 0x20E */ u8 submenuMoveCount;
/* 0x20F */ char unk_20F;
/* 0x210 */ s32 currentButtonsDown;
/* 0x214 */ s32 currentButtonsPressed;
/* 0x218 */ s32 currentButtonsHeld;
/* 0x210 */ s32 curButtonsDown;
/* 0x214 */ s32 curButtonsPressed;
/* 0x218 */ s32 curButtonsHeld;
/* 0x21C */ s32 stickX;
/* 0x220 */ s32 stickY;
/* 0x224 */ s32 inputBitmask;
@ -988,7 +983,7 @@ typedef struct BattleStatus {
/* 0x432 */ s8 darknessMode;
/* 0x433 */ u8 unk_433;
/* 0x434 */ s32* actionCmdDifficultyTable;
/* 0x438 */ struct Stage* currentStage;
/* 0x438 */ struct Stage* curStage;
/* 0x43C */ struct EffectInstance* buffEffect;
/* 0x440 */ u8 tattleFlags[28];
/* 0x45C */ char unk_45C[4];
@ -1071,7 +1066,7 @@ typedef struct AnimatorNode {
/* 0x04 */ struct AnimatorNode* children[32];
/* 0x84 */ Vec3f basePos; // ?
/* 0x90 */ Vec3f pos;
/* 0x9C */ Vec3f rotation;
/* 0x9C */ Vec3f rot;
/* 0xA8 */ Vec3f scale;
/* 0xB4 */ Matrix4f mtx;
/* 0xF4 */ s16 flags;
@ -1087,7 +1082,7 @@ typedef struct AnimatorNode {
typedef struct AnimatorNodeBlueprint {
/* 0x00 */ void* displayList;
/* 0x04 */ Vec3f basePos;
/* 0x10 */ Vec3f rotation;
/* 0x10 */ Vec3f rot;
/* 0x1C */ char unk_1C[0x4];
} AnimatorNodeBlueprint; // size = 0x20
@ -1157,7 +1152,7 @@ typedef struct ItemEntity {
/* 0x00 */ s32 flags;
/* 0x04 */ s16 boundVar;
/* 0x06 */ s16 pickupMsgFlags;
/* 0x08 */ Vec3f position;
/* 0x08 */ Vec3f pos;
/* 0x14 */ struct ItemEntityPhysicsData* physicsData;
/* 0x18 */ s16 itemID;
/* 0x1A */ s8 state;
@ -1192,7 +1187,7 @@ typedef struct MessagePrintState {
/* 0x006 */ char unk_06[2];
/* 0x008 */ s32 msgID;
/* 0x00C */ u16 srcBufferPos;
/* 0x00E */ u16 currentPrintDelay;
/* 0x00E */ u16 curPrintDelay;
/* 0x010 */ u8 printBuffer[1088]; // slightly larger than source buffer
/* 0x450 */ s16 printBufferSize;
/* 0x452 */ u16 effectFrameCounter;
@ -1209,14 +1204,14 @@ typedef struct MessagePrintState {
/* 0x468 */ u8 lineCount;
/* 0x469 */ char unk_469[0x3];
/* 0x46C */ s32 unk_46C;
/* 0x470 */ u8 currentAnimFrame[4];
/* 0x470 */ u8 curAnimFrame[4];
/* 0x474 */ s16 animTimers[4];
/* 0x47C */ u8 rewindArrowAnimState;
/* 0x47D */ char unk_47D[0x1];
/* 0x47E */ s16 rewindArrowCounter;
/* 0x480 */ s16 rewindArrowSwingPhase;
/* 0x482 */ Vec2su rewindArrowPos;
/* 0x486 */ u8 currentLine;
/* 0x486 */ u8 curLine;
/* 0x487 */ u8 unkArraySize;
/* 0x488 */ u16 lineEndPos[4];
/* 0x490 */ char unk_490[0x38];
@ -1227,7 +1222,7 @@ typedef struct MessagePrintState {
/* 0x4CF */ char unk_4CF[0x1];
/* 0x4D0 */ u16 cursorPosX[6];
/* 0x4DC */ u16 cursorPosY[6];
/* 0x4E8 */ u8 currentOption;
/* 0x4E8 */ u8 curOption;
/* 0x4E9 */ s8 madeChoice;
/* 0x4EA */ u8 cancelOption;
/* 0x4EB */ char unk_4EB[0x1];
@ -1258,7 +1253,7 @@ typedef struct MessagePrintState {
/* 0x524 */ s32 speedSoundIDB;
/* 0x528 */ u16 varBufferReadPos;
/* 0x52A */ s8 unk_52A;
/* 0x52B */ u8 currentImageIndex;
/* 0x52B */ u8 curImageIndex;
/* 0x52C */ Vec2su varImageScreenPos; // in addition, posX=0 is taken as 'dont draw'
/* 0x530 */ u8 varImgHasBorder;
/* 0x531 */ u8 varImgFinalAlpha;
@ -1300,7 +1295,7 @@ typedef struct MessageDrawState {
/* 0x38 */ u32 effectFlags;
/* 0x3C */ u16 font; // 0 or 1
/* 0x3E */ u16 fontVariant;
/* 0x40 */ u8 currentPosX;
/* 0x40 */ u8 curPosX;
/* 0x41 */ char unk_41;
/* 0x42 */ u16 nextPos[2];
/* 0x46 */ s16 textStartPos[2]; // relative to textbox
@ -1387,7 +1382,7 @@ typedef struct ShopSellPriceData {
} ShopSellPriceData; // size = 0xC
typedef struct GameStatus {
/* 0x000 */ u32 currentButtons[4];
/* 0x000 */ u32 curButtons[4];
/* 0x010 */ u32 pressedButtons[4]; /* bits = 1 for frame of button press */
/* 0x020 */ u32 heldButtons[4]; /* bits = 1 every 4th frame during hold */
/* 0x030 */ u32 prevButtons[4]; /* from previous frame */
@ -1503,12 +1498,12 @@ typedef struct PushBlockGrid {
} PushBlockGrid; // size = 0x1C
typedef struct ItemEntityPhysicsData {
/* 0x00 */ f32 verticalVelocity;
/* 0x00 */ f32 verticalVel;
/* 0x04 */ f32 gravity; /* 2 = normal, 1 = low gravity, higher values never 'settle' */
/* 0x08 */ f32 collisionRadius;
/* 0x0C */ f32 constVelocity;
/* 0x10 */ f32 velx;
/* 0x14 */ f32 velz;
/* 0x0C */ f32 constVel;
/* 0x10 */ f32 velX;
/* 0x14 */ f32 velZ;
/* 0x18 */ f32 moveAngle;
/* 0x1C */ s32 timeLeft;
/* 0x20 */ b32 useSimplePhysics;
@ -1516,7 +1511,7 @@ typedef struct ItemEntityPhysicsData {
typedef struct RenderTask {
/* 0x00 */ s32 renderMode;
/* 0x04 */ s32 distance; /* value between 0 and -10k */
/* 0x04 */ s32 dist; /* value between 0 and -10k */
/* 0x08 */ void* appendGfxArg;
/* 0x0C */ void (*appendGfx)(void*);
} RenderTask; // size = 0x10
@ -1533,14 +1528,14 @@ typedef struct SelectableTarget {
} SelectableTarget; // size = 0x14
typedef struct ActorPartMovement {
/* 0x00 */ Vec3f absolutePosition;
/* 0x00 */ Vec3f absolutePos;
/* 0x0C */ Vec3f goalPos;
/* 0x18 */ Vec3f unk_18;
/* 0x24 */ f32 jumpScale;
/* 0x28 */ f32 moveSpeed;
/* 0x2C */ f32 unk_2C;
/* 0x30 */ f32 angle;
/* 0x34 */ f32 distance;
/* 0x34 */ f32 dist;
/* 0x38 */ s16 moveTime;
/* 0x3A */ s16 unk_3A;
/* 0x3C */ s32 unk_3C;
@ -1577,12 +1572,12 @@ typedef struct ActorPart {
/* 0x14 */ Vec3s partOffset;
/* 0x1A */ Vec3s visualOffset;
/* 0x20 */ Vec3f partOffsetFloat;
/* 0x2C */ Vec3f absolutePosition;
/* 0x38 */ Vec3f rotation;
/* 0x44 */ Vec3s rotationPivotOffset;
/* 0x2C */ Vec3f absolutePos;
/* 0x38 */ Vec3f rot;
/* 0x44 */ Vec3s rotPivotOffset;
/* 0x4A */ char unk_4A[2];
/* 0x4C */ Vec3f scale;
/* 0x58 */ Vec3f currentPos;
/* 0x58 */ Vec3f curPos;
/* 0x64 */ f32 yaw;
/* 0x68 */ s16 palAnimPosOffset[2]; // used by some palette animations to slightly adjust the screen position
/* 0x6C */ Vec2s targetOffset;
@ -1595,7 +1590,7 @@ typedef struct ActorPart {
/* 0x7C */ s32 eventFlags;
/* 0x80 */ s32 elementalImmunities; // bits from Elements, i.e., ELEMENT_FIRE | ELEMENT_QUAKE
/* 0x84 */ s32 spriteInstanceID;
/* 0x88 */ u32 currentAnimation;
/* 0x88 */ u32 curAnimation;
/* 0x8C */ s32 animNotifyValue;
/* 0x90 */ f32 animationRate;
/* 0x94 */ u32* idleAnimations;
@ -1628,15 +1623,15 @@ typedef struct FontRasterSet {
typedef struct CollisionStatus {
/* 0x00 */ s16 pushingAgainstWall; /* FFFF = none for all below VVV */
/* 0x02 */ s16 currentFloor; /* valid on touch */
/* 0x02 */ s16 curFloor; /* valid on touch */
/* 0x04 */ s16 lastTouchedFloor; /* valid after jump */
/* 0x06 */ s16 floorBelow;
/* 0x08 */ s16 currentCeiling; /* valid on touching with head */
/* 0x0A */ s16 currentInspect; /* associated with TRIGGER_WALL_PRESS_A */
/* 0x08 */ s16 curCeiling; /* valid on touching with head */
/* 0x0A */ s16 curInspect; /* associated with TRIGGER_WALL_PRESS_A */
/* 0x0C */ s16 unk_0C; /* associated with TRIGGER_FLAG_2000 */
/* 0x0E */ s16 unk_0E; /* associated with TRIGGER_FLAG_4000 */
/* 0x10 */ s16 unk_10; /* associated with TRIGGER_FLAG_8000 */
/* 0x12 */ s16 currentWall;
/* 0x12 */ s16 curWall;
/* 0x14 */ s16 lastWallHammered; /* valid when smashing */
/* 0x16 */ s16 touchingWallTrigger; /* 0/1 */
/* 0x18 */ s16 bombetteExploded; /* 0 = yes, FFFF = no */
@ -1703,8 +1698,8 @@ typedef struct DecorationTable {
/* 0x7FC */ s16 posX[16];
/* 0x81C */ s16 posY[16];
/* 0x83C */ s16 posZ[16];
/* 0x85C */ s8 rotationPivotOffsetX[16];
/* 0x86C */ s8 rotationPivotOffsetY[16];
/* 0x85C */ s8 rotPivotOffsetX[16];
/* 0x86C */ s8 rotPivotOffsetY[16];
/* 0x87C */ u8 rotX[16];
/* 0x88C */ u8 rotY[16];
/* 0x89C */ u8 rotZ[16];
@ -1748,7 +1743,7 @@ typedef struct AnimatedModel {
/* 0x10 */ Vec3f rot;
/* 0x1C */ Vec3f scale;
/* 0x28 */ Mtx mtx;
/* 0x68 */ s16* currentAnimData;
/* 0x68 */ s16* curAnimData;
/* 0x6C */ char unk_6C[4];
} AnimatedModel; // size = 0x70
@ -1768,15 +1763,15 @@ typedef struct CollisionHeader {
} CollisionHeader; // size = 0x20
typedef struct ActorMovement {
/* 0x00 */ Vec3f currentPos;
/* 0x00 */ Vec3f curPos;
/* 0x0C */ Vec3f goalPos;
/* 0x18 */ Vec3f unk_18;
/* 0x24 */ char unk_24[0x18];
/* 0x3C */ f32 acceleration;
/* 0x40 */ f32 speed;
/* 0x44 */ f32 velocity;
/* 0x44 */ f32 vel;
/* 0x48 */ f32 angle;
/* 0x4C */ f32 distance;
/* 0x4C */ f32 dist;
/* 0x50 */ f32 flyElapsed;
/* 0x54 */ char unk_11C[4];
/* 0x58 */ s16 flyTime;
@ -1785,7 +1780,7 @@ typedef struct ActorMovement {
// a single link of a chain chomp's chain
typedef struct ChompChain {
/* 0x00 */ Vec3f currentPos;
/* 0x00 */ Vec3f curPos;
/* 0x0C */ f32 unk_0C;
/* 0x10 */ f32 unk_10;
/* 0x14 */ f32 gravAccel;
@ -1798,7 +1793,7 @@ typedef struct ChompChain {
} ChompChain; // size = 0x30
typedef struct ActorState { // TODO: Make the first field of this an ActorMovement
/* 0x00 */ Vec3f currentPos;
/* 0x00 */ Vec3f curPos;
/* 0x0C */ Vec3f goalPos;
/* 0x18 */ Vec3f unk_18;
/* 0x24 */ f32 unk_24;
@ -1807,9 +1802,9 @@ typedef struct ActorState { // TODO: Make the first field of this an ActorMoveme
/* 0x30 */ Vec3f unk_30;
/* 0x3C */ f32 acceleration;
/* 0x40 */ f32 speed;
/* 0x44 */ f32 velocity;
/* 0x44 */ f32 vel;
/* 0x48 */ f32 angle;
/* 0x4C */ f32 distance;
/* 0x4C */ f32 dist;
/* 0x50 */ f32 bounceDivisor;
/* 0x54 */ char unk_54[0x4];
/* 0x58 */ s32 animJumpRise;
@ -1843,11 +1838,11 @@ typedef struct Actor {
/* 0x136 */ u8 actorType;
/* 0x137 */ char unk_137;
/* 0x138 */ Vec3f homePos;
/* 0x144 */ Vec3f currentPos;
/* 0x144 */ Vec3f curPos;
/* 0x150 */ Vec3s headOffset;
/* 0x156 */ Vec3s healthBarPos;
/* 0x15C */ Vec3f rotation;
/* 0x168 */ Vec3s rotationPivotOffset;
/* 0x15C */ Vec3f rot;
/* 0x168 */ Vec3s rotPivotOffset;
/* 0x16E */ char unk_16E[2];
/* 0x170 */ Vec3f scale;
/* 0x17C */ Vec3f scaleModifier; /* multiplies normal scale factors componentwise */
@ -1862,7 +1857,7 @@ typedef struct Actor {
/* 0x19B */ char unk_19B[1];
/* 0x19C */ s32 actorTypeData1[6]; /* 4 = jump sound, 5 = attack sound */ // TODO: struct
/* 0x1B4 */ s16 actorTypeData1b[2];
/* 0x1B8 */ s8 currentHP;
/* 0x1B8 */ s8 curHP;
/* 0x1B9 */ s8 maxHP;
/* 0x1BA */ char unk_1BA[2];
/* 0x1BC */ s8 healthFraction; /* used to render HP bar */
@ -1950,17 +1945,17 @@ typedef struct FontData {
} FontData; // size = 0x18
typedef struct SlideParams {
f32 heading;
f32 maxDescendAccel;
f32 launchVelocity;
f32 maxDescendVelocity;
f32 integrator[4];
} SlideParams;
/* 0x00 */ f32 heading;
/* 0x04 */ f32 maxDescendAccel;
/* 0x08 */ f32 launchVel;
/* 0x0C */ f32 maxDescendVel;
/* 0x10 */ f32 integrator[4];
} SlideParams; // size = 0x14
typedef struct PlayerStatus {
/* 0x000 */ s32 flags; // PlayerStatusFlags
/* 0x004 */ u32 animFlags;
/* 0x008 */ s16 currentStateTime;
/* 0x008 */ s16 curStateTime;
/* 0x00A */ s8 shiverTime;
/* 0x00B */ char unk_0B;
/* 0x00C */ s8 peachDisguise;
@ -1971,15 +1966,15 @@ typedef struct PlayerStatus {
/* 0x012 */ s16 moveFrames;
/* 0x014 */ s8 enableCollisionOverlapsCheck;
/* 0x015 */ s8 inputDisabledCount; /* whether the C-up menu can appear */
/* 0x016 */ Vec3s lastGoodPosition;
/* 0x01C */ Vec3f pushVelocity;
/* 0x028 */ Vec3f position;
/* 0x016 */ Vec3s lastGoodPos;
/* 0x01C */ Vec3f pushVel;
/* 0x028 */ Vec3f pos;
/* 0x034 */ Vec2f groundAnglesXZ; /* angles along X/Z axes of ground beneath player */
/* 0x03C */ VecXZf jumpFromPos;
/* 0x044 */ VecXZf landPos;
/* 0x04C */ f32 jumpFromHeight;
/* 0x050 */ f32 jumpApexHeight;
/* 0x054 */ f32 currentSpeed;
/* 0x054 */ f32 curSpeed;
/* 0x058 */ f32 walkSpeed;
/* 0x05C */ f32 runSpeed;
/* 0x060 */ s32 unk_60;
@ -1988,7 +1983,7 @@ typedef struct PlayerStatus {
/* 0x06C */ f32 maxJumpSpeed;
/* 0x070 */ f32 gravityIntegrator[4];
/* 0x080 */ f32 targetYaw;
/* 0x084 */ f32 currentYaw;
/* 0x084 */ f32 curYaw;
/* 0x088 */ f32 overlapPushYaw;
/* 0x08C */ f32 pitch;
/* 0x090 */ f32 flipYaw[4];
@ -2016,11 +2011,11 @@ typedef struct PlayerStatus {
/* 0x0D0 */ SlideParams* slideParams;
/* 0x0D4 */ f32 spinRate;
/* 0x0D8 */ struct EffectInstance* specialDecorationEffect;
/* 0x0DC */ s32 currentButtons;
/* 0x0DC */ s32 curButtons;
/* 0x0E0 */ s32 pressedButtons;
/* 0x0E4 */ s32 heldButtons;
/* 0x0E8 */ s32 stickAxis[2];
/* 0x0F0 */ s32 currentButtonsBuffer[10];
/* 0x0F0 */ s32 curButtonsBuffer[10];
/* 0x118 */ s32 pressedButtonsBuffer[10];
/* 0x140 */ s32 heldButtonsBuffer[10];
/* 0x168 */ s32 stickXBuffer[10];
@ -2244,8 +2239,8 @@ typedef struct TweesterPhysics {
/* 0x08 */ s32 prevFlags; ///< Partner npc flags before contact with Tweester
/* 0x0C */ f32 radius;
/* 0x10 */ f32 angle;
/* 0x14 */ f32 angularVelocity;
/* 0x18 */ f32 liftoffVelocityPhase;
/* 0x14 */ f32 angularVel;
/* 0x18 */ f32 liftoffVelPhase;
} TweesterPhysics; // size = 0x1C
typedef struct PartnerStatus {
@ -2255,7 +2250,7 @@ typedef struct PartnerStatus {
/* 0x003 */ s8 actingPartner;
/* 0x004 */ s16 stickX;
/* 0x006 */ s16 stickY;
/* 0x008 */ s32 currentButtons;
/* 0x008 */ s32 curButtons;
/* 0x00C */ s32 pressedButtons;
/* 0x010 */ s32 heldButtons;
/* 0x014 */ s8 inputDisabledCount;
@ -2294,7 +2289,7 @@ typedef struct VirtualEntity {
/* 0x38 */ f32 moveAngle;
/* 0x3C */ f32 moveSpeed;
/* 0x40 */ f32 jumpGravity;
/* 0x44 */ f32 jumpVelocity;
/* 0x44 */ f32 jumpVel;
/* 0x48 */ f32 moveTime;
} VirtualEntity; // size = 0x4C

View File

@ -70,12 +70,12 @@ typedef struct FlowerFXData {
/* 0x18 */ Vec3f scale;
/* 0x24 */ Vec3f rot;
/* 0x30 */ Mtx transformMtx;
/* 0x70 */ f32 velocityScaleA;
/* 0x74 */ f32 velocityScaleB;
/* 0x70 */ f32 velScaleA;
/* 0x74 */ f32 velScaleB;
/* 0x78 */ f32 visibilityAmt; // when this is zero, the flower can vanish. may have once controlled alpha.
/* 0x7C */ f32 unk_7C;
/* 0x80 */ f32 integrator[4];
/* 0x90 */ VecXZf velocity;
/* 0x90 */ VecXZf vel;
} FlowerFXData; // size = 0x98
typedef struct CloudPuffFXData {
@ -833,7 +833,7 @@ typedef struct LightRaysFXData {
/* 0x50 */ f32 unk_50;
/* 0x54 */ f32 unk_54;
/* 0x58 */ f32 unk_58;
/* 0x5C */ Vec3f rotation;
/* 0x5C */ Vec3f rot;
/* 0x68 */ f32 unk_68;
/* 0x6C */ f32 unk_6C;
/* 0x70 */ Vec3f initialRot;
@ -1746,7 +1746,7 @@ typedef struct ThrowSpinyFXData {
/* 0x48 */ f32 gravity;
/* 0x4C */ f32 unk_4C;
/* 0x50 */ f32 yaw;
/* 0x54 */ f32 rotationSpeed;
/* 0x54 */ f32 rotSpeed;
/* 0x58 */ f32 xScale;
/* 0x5C */ f32 yScale;
/* 0x60 */ u32 state;
@ -2065,7 +2065,7 @@ typedef struct StaticStatusFXData {
/* 0x18 */ f32 unk_18;
/* 0x1C */ f32 unk_1C;
/* 0x20 */ s32 frame; // not visible when negative
/* 0x24 */ f32 rotation;
/* 0x24 */ f32 rot;
/* 0x28 */ s32 timeLeft;
/* 0x2C */ s32 lifetime;
/* 0x30 */ s32 alpha;
@ -2125,7 +2125,7 @@ typedef struct Effect75FXData {
typedef struct FireworkRocketFXData {
/* 0x00 */ s32 variation;
/* 0x04 */ Vec3f pos;
/* 0x10 */ Vec3f velocity;
/* 0x10 */ Vec3f vel;
/* 0x1C */ s32 timeLeft;
/* 0x20 */ s32 lifeTime;
/* 0x24 */ s32 r;
@ -2142,9 +2142,9 @@ typedef struct FireworkRocketFXData {
/* 0x50 */ f32 rocketX[4];
/* 0x60 */ f32 rocketY[4];
/* 0x70 */ f32 rocketZ[4];
/* 0x80 */ f32 rocketVelocityX[4];
/* 0x90 */ f32 rocketVelocityY[4];
/* 0xA0 */ f32 rocketVelocityZ[4];
/* 0x80 */ f32 rocketVelX[4];
/* 0x90 */ f32 rocketVelY[4];
/* 0xA0 */ f32 rocketVelZ[4];
} FireworkRocketFXData; // size = 0xB0
typedef struct PeachStarBeamSpirit {
@ -2168,8 +2168,8 @@ typedef struct PeachStarBeamFXData {
/* 0x34 */ s32 envA;
/* 0x38 */ f32 beamScale;
/* 0x3C */ s32 unk_3C;
/* 0x40 */ f32 rotationSpeed;
/* 0x44 */ f32 rotationAngle;
/* 0x40 */ f32 rotSpeed;
/* 0x44 */ f32 rotAngle;
/* 0x48 */ f32 circleRadius;
/* 0x4C */ Vec3f circleCenter;
/* 0x58 */ f32 twinkYOffset;
@ -2207,7 +2207,7 @@ typedef struct IceShardFXData {
/* 0x18 */ Color4i primCol;
/* 0x28 */ Color4i envCol;
/* 0x38 */ f32 scale;
/* 0x3C */ f32 rotation;
/* 0x3C */ f32 rot;
/* 0x40 */ f32 angularVel;
/* 0x44 */ f32 animFrame;
/* 0x48 */ f32 animRate;
@ -2332,7 +2332,7 @@ typedef struct PartnerBuffFXData {
typedef struct QuizmoAssistantFXData {
/* 0x00 */ s32 unk_00;
/* 0x04 */ Vec3f position;
/* 0x04 */ Vec3f pos;
/* 0x10 */ s32 vanishTimer;
/* 0x14 */ s32 lifetime;
/* 0x18 */ s32 fadeInAmt; // 0 = all-black, FF = fully-visible

View File

@ -74,7 +74,7 @@ typedef struct SaveBlockData {
} SaveBlockData; // size = 0x20
typedef struct SwitchData {
/* 0x000 */ f32 fallVelocity;
/* 0x000 */ f32 fallVel;
/* 0x004 */ f32 deltaScaleX;
/* 0x008 */ f32 deltaScaleY;
/* 0x00C */ char unk_0C[4];
@ -155,7 +155,7 @@ typedef struct HeartBlockContentData {
/* 0x00B */ char unk_0B; // padding?
/* 0x00C */ s32 unk_0C;
/* 0x010 */ s32 unk_10;
/* 0x014 */ f32 riseVelocity;
/* 0x014 */ f32 riseVel;
/* 0x018 */ f32 sparkleTrailAngle;
/* 0x01C */ f32 sparkleTrailRadius;
/* 0x020 */ f32 bouncePhase;
@ -163,7 +163,7 @@ typedef struct HeartBlockContentData {
/* 0x026 */ s16 unk_26;
/* 0x028 */ f32 yawBuffer[10];
/* 0x050 */ f32 unk_50;
/* 0x054 */ f32 rotationRate;
/* 0x054 */ f32 rotRate;
/* 0x058 */ Mtx unk_58;
/* 0x098 */ Mtx unk_98;
} HeartBlockContentData; // size = 0xD8
@ -171,7 +171,7 @@ typedef struct HeartBlockContentData {
typedef struct WoodenCrateData {
/* 0x000 */ s32 itemID;
/* 0x004 */ u16 globalFlagIndex;
/* 0x006 */ u8 unk_06[2];
/* 0x006 */ u8 unk_06[2];
/* 0x008 */ Gfx** fragmentsGfx;
/* 0x00C */ f32 basePosY;
/* 0x010 */ s8 fragmentRebounds[36];
@ -179,7 +179,7 @@ typedef struct WoodenCrateData {
/* 0x058 */ u8 fragmentRotX[36]; // scaled to map [0,255] -> [0,360]
/* 0x07C */ u8 fragmentRotY[36]; // scaled to map [0,255] -> [0,360]
/* 0x0A0 */ u8 fragmentLateralSpeed[36]; // scaled to map [0,255] -> [0,25.5]
/* 0x0C4 */ f32 fragmentRotationSpeed[36];
/* 0x0C4 */ f32 fragmentRotSpeed[36];
/* 0x154 */ f32 fragmentPosX[36];
/* 0x1E4 */ f32 fragmentPosY[36];
/* 0x274 */ f32 fragmentPosZ[36];
@ -218,7 +218,7 @@ typedef struct BlueWarpPipeData {
} BlueWarpPipeData; // size = 0x1C
typedef struct SimpleSpringData {
/* 0x00 */ s32 launchVelocity;
/* 0x00 */ s32 launchVel;
} SimpleSpringData; // size = 0x04
typedef struct HiddenPanelData {
@ -235,9 +235,9 @@ typedef struct HiddenPanelData {
/* 0x14 */ s32 spawnedItemIndex;
/* 0x18 */ Vec3i spawnedItemPos;
/* 0x24 */ f32 initialY;
/* 0x28 */ f32 riseVelocity;
/* 0x28 */ f32 riseVel;
/* 0x2C */ f32 riseInterpPhase;
/* 0x30 */ f32 rotationSpeed;
/* 0x30 */ f32 rotSpeed;
/* 0x34 */ Matrix4f entityMatrix;
/* 0x74 */ u16 modelID;
/* 0x76 */ char unk_76[0x2];
@ -252,7 +252,7 @@ typedef struct PadlockData {
/* 0x00 */ f32 pushSpeed;
/* 0x04 */ f32 shacklePos;
/* 0x08 */ f32 fallSpeed;
/* 0x0C */ f32 rotationSpeed;
/* 0x0C */ f32 rotSpeed;
/* 0x10 */ u8 blinkCounter;
/* 0x11 */ s8 timer;
/* 0x12 */ s8 state;
@ -269,7 +269,7 @@ typedef struct BoardedFloorData {
/* 0x022 */ u8 fragmentRotX[13];
/* 0x02F */ u8 fragmentRotY[13];
/* 0x03C */ u8 fragmentLateralSpeed[13];
/* 0x04C */ f32 fragmentRotationSpeed[13];
/* 0x04C */ f32 fragmentRotSpeed[13];
/* 0x080 */ f32 fragmentPosX[13];
/* 0x0B4 */ f32 fragmentPosY[13];
/* 0x0E8 */ f32 fragmentPosZ[13];
@ -284,7 +284,7 @@ typedef struct BombableRockData {
/* 0x14 */ u8 fragmentRotX[6];
/* 0x1A */ u8 fragmentRotY[6];
/* 0x20 */ u8 fragmentLateralSpeed[6];
/* 0x28 */ f32 fragmentRotationSpeed[6];
/* 0x28 */ f32 fragmentRotSpeed[6];
/* 0x40 */ f32 fragmentPosX[6];
/* 0x58 */ f32 fragmentPosY[6];
/* 0x70 */ f32 fragmentPosZ[6];
@ -298,7 +298,7 @@ typedef struct TweesterData {
/* 0x01 */ s8 faceAnimState;
/* 0x02 */ s8 faceAnimTimer;
/* 0x03 */ s8 faceAnimTexOffset;
/* 0x04 */ f32 rotationSpeed;
/* 0x04 */ f32 rotSpeed;
/* 0x08 */ f32 innerWhirlRotY;
/* 0x0C */ f32 outerWhirlRotY;
/* 0x10 */ Mtx mtxInnerWhirl;
@ -308,7 +308,7 @@ typedef struct TweesterData {
/* 0x94 */ s16 outerWhirlTexOffsetX;
/* 0x96 */ s16 outerWhirlTexOffsetY;
/* 0x98 */ s16 frameCounter;
/* 0x9C */ s32* currentPath;
/* 0x9C */ s32* curPath;
/* 0xA0 */ s32** paths;
/* 0xA4 */ s16 targetX;
/* 0xA6 */ s16 targetY;
@ -330,9 +330,9 @@ typedef struct StarBoxLauncherData {
/* 0x0C */ f32 basePosZ;
/* 0x10 */ f32 basePosY;
/* 0x14 */ f32 riseSpeedPhase;
/* 0x18 */ f32 riseVelocity;
/* 0x1C */ f32 rotationZPhase;
/* 0x20 */ f32 maxRotationZ;
/* 0x18 */ f32 riseVel;
/* 0x1C */ f32 rotZPhase;
/* 0x20 */ f32 maxRotZ;
} StarBoxLauncherData; // size = 0x24
typedef struct CymbalPlantData {
@ -353,7 +353,7 @@ typedef struct PinkFlowerData {
typedef struct SpinningFlowerData {
/* 0x00 */ s16 unk_00;
/* 0x02 */ s8 state;
/* 0x04 */ Vec3f rotation;
/* 0x04 */ Vec3f rot;
/* 0x10 */ s32 unk_10;
/* 0x14 */ f32 spinSpeed;
/* 0x18 */ s32 unk_18;

View File

@ -117,7 +117,7 @@ typedef void (*FireBarCallback)(struct FireBarData*, s32);
typedef struct FireBarAISettings {
/* 0x00 */ Vec3i centerPos;
/* 0x0C */ s32 rotationRate;
/* 0x0C */ s32 rotRate;
/* 0x10 */ s32 firstNpc;
/* 0x14 */ s32 npcCount;
/* 0x18 */ FireBarCallback callback;
@ -126,7 +126,7 @@ typedef struct FireBarAISettings {
typedef struct FireBarData {
/* 0x00 */ s32 flags;
/* 0x04 */ Vec3f centerPos;
/* 0x10 */ f32 rotationRate;
/* 0x10 */ f32 rotRate;
/* 0x14 */ s32 firstNpc;
/* 0x18 */ s32 npcCount;
/* 0x1C */ FireBarCallback callback;
@ -391,16 +391,16 @@ typedef struct EncounterStatus {
/* 0x014 */ s32 songID;
/* 0x018 */ s32 unk_18;
/* 0x01C */ s8 numEncounters; /* number of encounters for current map (in list) */
/* 0x01D */ s8 currentAreaIndex;
/* 0x01E */ u8 currentMapIndex;
/* 0x01F */ u8 currentEntryIndex;
/* 0x01D */ s8 curAreaIndex;
/* 0x01E */ u8 curMapIndex;
/* 0x01F */ u8 curEntryIndex;
/* 0x020 */ s8 mapID;
/* 0x021 */ s8 resetMapEncounterFlags;
/* 0x021 */ char unk_22[2];
/* 0x024 */ s32* npcGroupList;
/* 0x028 */ Encounter* encounterList[24];
/* 0x088 */ Encounter* currentEncounter;
/* 0x08C */ Enemy* currentEnemy;
/* 0x088 */ Encounter* curEncounter;
/* 0x08C */ Enemy* curEnemy;
/* 0x090 */ s32 fadeOutAmount;
/* 0x094 */ s32 unk_94;
/* 0x098 */ s32 fadeOutAccel;

View File

@ -45,8 +45,8 @@ void btl_merlee_on_start_turn(void) {
if (playerData->merleeTurnCount <= 0) {
s32 temp = rand_int(100);
if (currentEncounter->currentEnemy != NULL) {
if (currentEncounter->currentEnemy->flags & ACTOR_FLAG_NO_HEALTH_BAR) {
if (currentEncounter->curEnemy != NULL) {
if (currentEncounter->curEnemy->flags & ACTOR_FLAG_NO_HEALTH_BAR) {
// 46/101 ≈ 45.5%
if (temp <= 45) {
playerData->merleeSpellType = MERLEE_SPELL_1;
@ -103,8 +103,8 @@ void btl_merlee_on_first_strike(void) {
if (playerData->merleeTurnCount <= 0) {
s32 temp = rand_int(100);
if (currentEncounter->currentEnemy != NULL) {
if (currentEncounter->currentEnemy->flags & ACTOR_FLAG_NO_HEALTH_BAR) {
if (currentEncounter->curEnemy != NULL) {
if (currentEncounter->curEnemy->flags & ACTOR_FLAG_NO_HEALTH_BAR) {
// 46/101 ≈ 45.5%
if (temp <= 45) {
playerData->merleeSpellType = MERLEE_SPELL_1;
@ -215,7 +215,7 @@ void btl_state_update_normal_start(void) {
stage = gCurrentStagePtr->stage;
}
battleStatus->currentStage = stage;
battleStatus->curStage = stage;
switch (gBattleSubState) {
case BTL_SUBSTATE_NORMAL_START_INIT:
BattleEnemiesCreated = battle->formationSize;
@ -247,7 +247,7 @@ void btl_state_update_normal_start(void) {
battleStatus->unk_90 = 0;
battleStatus->preUpdateCallback = NULL;
battleStatus->initBattleCallback = NULL;
battleStatus->currentSubmenu = 0;
battleStatus->curSubmenu = 0;
battleStatus->unk_49 = 0;
battleStatus->unk_4A = 0;
battleStatus->unk_4B = 0;
@ -458,8 +458,8 @@ void btl_state_update_normal_start(void) {
script->owner1.actorID = ACTOR_PLAYER;
}
if (currentEncounter->currentEnemy != NULL
&& currentEncounter->currentEnemy->encountered == ENCOUNTER_TRIGGER_SPIN
if (currentEncounter->curEnemy != NULL
&& currentEncounter->curEnemy->encountered == ENCOUNTER_TRIGGER_SPIN
&& is_ability_active(ABILITY_DIZZY_ATTACK)
) {
actor = battleStatus->enemyActors[0];
@ -766,10 +766,10 @@ void btl_state_update_begin_player_turn(void) {
battleStatus->buffEffect->data.partnerBuff->unk_0C[FX_BUFF_DATA_WATER_BLOCK].turnsLeft = battleStatus->waterBlockTurnsLeft;
if (battleStatus->waterBlockTurnsLeft <= 0) {
battleStatus->waterBlockEffect->flags |= FX_INSTANCE_FLAG_DISMISS;
fx_water_block(1, player->currentPos.x, player->currentPos.y + 18.0f, player->currentPos.z + 5.0f, 1.5f, 10);
fx_water_splash(0, player->currentPos.x - 10.0f, player->currentPos.y + 5.0f, player->currentPos.z + 5.0f, 1.0f, 24);
fx_water_splash(0, player->currentPos.x - 15.0f, player->currentPos.y + 32.0f, player->currentPos.z + 5.0f, 1.0f, 24);
fx_water_splash(1, player->currentPos.x + 15.0f, player->currentPos.y + 22.0f, player->currentPos.z + 5.0f, 1.0f, 24);
fx_water_block(1, player->curPos.x, player->curPos.y + 18.0f, player->curPos.z + 5.0f, 1.5f, 10);
fx_water_splash(0, player->curPos.x - 10.0f, player->curPos.y + 5.0f, player->curPos.z + 5.0f, 1.0f, 24);
fx_water_splash(0, player->curPos.x - 15.0f, player->curPos.y + 32.0f, player->curPos.z + 5.0f, 1.0f, 24);
fx_water_splash(1, player->curPos.x + 15.0f, player->curPos.y + 22.0f, player->curPos.z + 5.0f, 1.0f, 24);
battleStatus->waterBlockEffect = NULL;
sfx_play_sound(SOUND_299);
btl_show_battle_message(BTL_MSG_WATER_BLOCK_END, 60);
@ -1400,13 +1400,13 @@ void btl_state_update_9(void) {
partner->flags |= ACTOR_FLAG_4000000;
state = &partner->state;
if (!battleStatus->outtaSightActive) {
partner->state.currentPos.x = partner->homePos.x;
partner->state.currentPos.z = partner->homePos.z;
partner->state.curPos.x = partner->homePos.x;
partner->state.curPos.z = partner->homePos.z;
partner->state.goalPos.x = player->homePos.x;
partner->state.goalPos.z = player->homePos.z;
} else {
partner->state.currentPos.x = partner->homePos.x;
partner->state.currentPos.z = partner->homePos.z;
partner->state.curPos.x = partner->homePos.x;
partner->state.curPos.z = partner->homePos.z;
partner->state.goalPos.x = partner->homePos.x;
partner->state.goalPos.z = partner->homePos.z + 5.0f;
partner->homePos.x = player->homePos.x;
@ -1423,32 +1423,32 @@ void btl_state_update_9(void) {
if (gBattleSubState == BTL_SUBSTATE_9_3) {
if (partner->state.moveTime != 0) {
partner->currentPos.x += (partner->state.goalPos.x - partner->currentPos.x) / partner->state.moveTime;
partner->currentPos.z += (partner->state.goalPos.z - partner->currentPos.z) / partner->state.moveTime;
player->currentPos.x += (partner->state.currentPos.x - player->currentPos.x) / partner->state.moveTime;
player->currentPos.z += (partner->state.currentPos.z - player->currentPos.z) / partner->state.moveTime;
partner->curPos.x += (partner->state.goalPos.x - partner->curPos.x) / partner->state.moveTime;
partner->curPos.z += (partner->state.goalPos.z - partner->curPos.z) / partner->state.moveTime;
player->curPos.x += (partner->state.curPos.x - player->curPos.x) / partner->state.moveTime;
player->curPos.z += (partner->state.curPos.z - player->curPos.z) / partner->state.moveTime;
}
partner->currentPos.z -= sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
partner->curPos.z -= sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
partner->yaw = clamp_angle(partner->state.angle);
player->currentPos.z += sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
player->curPos.z += sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
player->yaw = clamp_angle(partner->state.angle);
partner->state.angle += 90.0f;
if (partner->state.moveTime != 0) {
partner->state.moveTime--;
} else {
partner->currentPos.x = partner->state.goalPos.x;
partner->currentPos.z = partner->state.goalPos.z;
player->currentPos.x = partner->state.currentPos.x;
player->currentPos.z = partner->state.currentPos.z;
partner->curPos.x = partner->state.goalPos.x;
partner->curPos.z = partner->state.goalPos.z;
player->curPos.x = partner->state.curPos.x;
player->curPos.z = partner->state.curPos.z;
if (!battleStatus->outtaSightActive) {
partner->homePos.x = partner->currentPos.x;
partner->homePos.z = partner->currentPos.z;
player->homePos.x = player->currentPos.x;
player->homePos.z = player->currentPos.z;
partner->homePos.x = partner->curPos.x;
partner->homePos.z = partner->curPos.z;
player->homePos.x = player->curPos.x;
player->homePos.z = player->curPos.z;
} else {
player->homePos.x = player->currentPos.x;
player->homePos.z = player->currentPos.z;
player->homePos.x = player->curPos.x;
player->homePos.z = player->curPos.z;
}
gBattleSubState = BTL_SUBSTATE_9_4;
gBattleStatus.flags1 &= ~ACTOR_FLAG_100000;
@ -1605,8 +1605,8 @@ void btl_state_update_end_turn(void) {
partner->flags &= ~ACTOR_FLAG_8000000;
player->flags |= ACTOR_FLAG_4000000;
partner->flags |= ACTOR_FLAG_4000000;
partner->state.currentPos.x = partner->homePos.x;
partner->state.currentPos.z = partner->homePos.z;
partner->state.curPos.x = partner->homePos.x;
partner->state.curPos.z = partner->homePos.z;
partner->state.goalPos.x = player->homePos.x;
partner->state.goalPos.z = player->homePos.z;
partner->state.moveTime = 4;
@ -1617,27 +1617,27 @@ void btl_state_update_end_turn(void) {
if (gBattleSubState == BTL_SUBSTATE_END_TURN_PERFORM_SWAP) {
if (partner->state.moveTime != 0) {
partner->currentPos.x += (partner->state.goalPos.x - partner->currentPos.x) / partner->state.moveTime;
partner->currentPos.z += (partner->state.goalPos.z - partner->currentPos.z) / partner->state.moveTime;
player->currentPos.x += (partner->state.currentPos.x - player->currentPos.x) / partner->state.moveTime;
player->currentPos.z += (partner->state.currentPos.z - player->currentPos.z) / partner->state.moveTime;
partner->curPos.x += (partner->state.goalPos.x - partner->curPos.x) / partner->state.moveTime;
partner->curPos.z += (partner->state.goalPos.z - partner->curPos.z) / partner->state.moveTime;
player->curPos.x += (partner->state.curPos.x - player->curPos.x) / partner->state.moveTime;
player->curPos.z += (partner->state.curPos.z - player->curPos.z) / partner->state.moveTime;
}
partner->currentPos.z -= sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
partner->curPos.z -= sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
partner->yaw = clamp_angle(partner->state.angle);
player->currentPos.z += sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
player->curPos.z += sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
player->yaw = clamp_angle(partner->state.angle);
partner->state.angle += 90.0f;
if (partner->state.moveTime != 0) {
partner->state.moveTime--;
} else {
partner->currentPos.x = partner->state.goalPos.x;
partner->currentPos.z = partner->state.goalPos.z;
player->currentPos.x = partner->state.currentPos.x;
player->currentPos.z = partner->state.currentPos.z;
partner->homePos.x = partner->currentPos.x;
partner->homePos.z = partner->currentPos.z;
player->homePos.x = player->currentPos.x;
player->homePos.z = player->currentPos.z;
partner->curPos.x = partner->state.goalPos.x;
partner->curPos.z = partner->state.goalPos.z;
player->curPos.x = partner->state.curPos.x;
player->curPos.z = partner->state.curPos.z;
partner->homePos.x = partner->curPos.x;
partner->homePos.z = partner->curPos.z;
player->homePos.x = player->curPos.x;
player->homePos.z = player->curPos.z;
player->flags |= ACTOR_FLAG_8000000;
partner->flags |= ACTOR_FLAG_8000000;
if (gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) {
@ -1825,10 +1825,10 @@ void btl_state_update_victory(void) {
if (partner == NULL || !(gBattleStatus.flags1 & BS_FLAGS1_PLAYER_IN_BACK)) {
gBattleSubState = BTL_SUBSTATE_VICTORY_CHECK_MERLEE;
} else {
partner->state.currentPos.x = partner->currentPos.x;
partner->state.currentPos.z = partner->currentPos.z;
partner->state.goalPos.x = player->currentPos.x;
partner->state.goalPos.z = player->currentPos.z;
partner->state.curPos.x = partner->curPos.x;
partner->state.curPos.z = partner->curPos.z;
partner->state.goalPos.x = player->curPos.x;
partner->state.goalPos.z = player->curPos.z;
partner->state.moveTime = 4;
partner->state.angle = 0.0f;
gBattleSubState = BTL_SUBSTATE_VICTORY_AWAIT_SWAP;
@ -1837,28 +1837,28 @@ void btl_state_update_victory(void) {
if (gBattleSubState == BTL_SUBSTATE_VICTORY_AWAIT_SWAP) {
if (partner->state.moveTime != 0) {
partner->currentPos.x += (partner->state.goalPos.x - partner->currentPos.x) / partner->state.moveTime;
partner->currentPos.z += (partner->state.goalPos.z - partner->currentPos.z) / partner->state.moveTime;
player->currentPos.x += (partner->state.currentPos.x - player->currentPos.x) / partner->state.moveTime;
player->currentPos.z += (partner->state.currentPos.z - player->currentPos.z) / partner->state.moveTime;
partner->curPos.x += (partner->state.goalPos.x - partner->curPos.x) / partner->state.moveTime;
partner->curPos.z += (partner->state.goalPos.z - partner->curPos.z) / partner->state.moveTime;
player->curPos.x += (partner->state.curPos.x - player->curPos.x) / partner->state.moveTime;
player->curPos.z += (partner->state.curPos.z - player->curPos.z) / partner->state.moveTime;
}
partner->currentPos.z += sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
partner->curPos.z += sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
partner->yaw = clamp_angle(-partner->state.angle);
player->currentPos.z -= sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
player->curPos.z -= sin_rad(DEG_TO_RAD(partner->state.angle)) * 16.0f;
player->yaw = clamp_angle(-partner->state.angle);
partner->state.angle += 90.0f;
if (partner->state.moveTime != 0) {
partner->state.moveTime--;
} else {
partner->currentPos.x = partner->state.goalPos.x;
partner->currentPos.z = partner->state.goalPos.z;
player->currentPos.x = partner->state.currentPos.x;
player->currentPos.z = partner->state.currentPos.z;
partner->homePos.x = partner->currentPos.x;
partner->homePos.z = partner->currentPos.z;
player->homePos.x = player->currentPos.x;
player->homePos.z = player->currentPos.z;
partner->curPos.x = partner->state.goalPos.x;
partner->curPos.z = partner->state.goalPos.z;
player->curPos.x = partner->state.curPos.x;
player->curPos.z = partner->state.curPos.z;
partner->homePos.x = partner->curPos.x;
partner->homePos.z = partner->curPos.z;
player->homePos.x = player->curPos.x;
player->homePos.z = player->curPos.z;
gBattleSubState = BTL_SUBSTATE_VICTORY_CHECK_MERLEE;
gBattleStatus.flags1 &= ~BS_FLAGS1_PLAYER_IN_BACK;
}
@ -2494,9 +2494,9 @@ void btl_state_update_change_partner(void) {
battleStatus->controlScript = script;
battleStatus->controlScriptID = script->id;
script->owner1.actorID = ACTOR_PARTNER;
state->unk_18.x = partner->currentPos.x;
state->unk_18.x = partner->curPos.x;
state->unk_18.y = 0.0f;
state->unk_18.z = partner->currentPos.z;
state->unk_18.z = partner->curPos.z;
gBattleSubState = BTL_SUBSTATE_CHANGE_PARTNER_LOAD_NEW_PARTNER;
break;
case BTL_SUBSTATE_CHANGE_PARTNER_LOAD_NEW_PARTNER:
@ -2504,18 +2504,18 @@ void btl_state_update_change_partner(void) {
break;
}
btl_delete_actor(partner);
playerData->currentPartner = battleStatus->unk_1AC;
playerData->curPartner = battleStatus->unk_1AC;
load_partner_actor();
partner = battleStatus->partnerActor;
partner->scale.x = 0.1f;
partner->scale.y = 0.1f;
partner->scale.z = 0.1f;
partner->state.goalPos.x = state->unk_18.x;
partner->state.goalPos.y = partner->currentPos.y;
partner->state.goalPos.y = partner->curPos.y;
partner->state.goalPos.z = state->unk_18.z;
partner->currentPos.x = player->currentPos.x;
partner->currentPos.y = player->currentPos.y + 25.0f;
partner->currentPos.z = player->currentPos.z;
partner->curPos.x = player->curPos.x;
partner->curPos.y = player->curPos.y + 25.0f;
partner->curPos.z = player->curPos.z;
gBattleSubState = BTL_SUBSTATE_CHANGE_PARTNER_EXEC_BRING_OUT;
break;
case BTL_SUBSTATE_CHANGE_PARTNER_EXEC_BRING_OUT:
@ -2600,7 +2600,7 @@ void btl_state_update_player_move(void) {
battleStatus->unk_86 = 127;
battleStatus->blockResult = 127;
battleStatus->lastAttackDamage = 0;
battleStatus->currentDamageSource = DMG_SRC_DEFAULT;
battleStatus->curDamageSource = DMG_SRC_DEFAULT;
gBattleStatus.flags1 &= ~BS_FLAGS1_AUTO_SUCCEED_ACTION;
gBattleStatus.flags1 &= ~BS_FLAGS1_MENU_OPEN;
reset_actor_turn_info();
@ -3029,8 +3029,8 @@ void btl_state_update_end_player_turn(void) {
if (!(gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) || (gBattleStatus.flags1 & BS_FLAGS1_PLAYER_IN_BACK)) {
gBattleSubState = BTL_SUBSTATE_END_PLAYER_TURN_DONE;
} else {
player->state.currentPos.x = player->homePos.x;
player->state.currentPos.z = player->homePos.z;
player->state.curPos.x = player->homePos.x;
player->state.curPos.z = player->homePos.z;
player->state.goalPos.x = partner->homePos.x;
player->state.goalPos.z = partner->homePos.z;
player->state.moveTime = 4;
@ -3042,28 +3042,28 @@ void btl_state_update_end_player_turn(void) {
if (gBattleSubState == BTL_SUBSTATE_END_PLAYER_TURN_AWAIT_SWAP) {
if (player->state.moveTime != 0) {
player->currentPos.x += (player->state.goalPos.x - player->currentPos.x) / player->state.moveTime;
player->currentPos.z += (player->state.goalPos.z - player->currentPos.z) / player->state.moveTime;
partner->currentPos.x += (player->state.currentPos.x - partner->currentPos.x) / player->state.moveTime;
partner->currentPos.z += (player->state.currentPos.z - partner->currentPos.z) / player->state.moveTime;
player->curPos.x += (player->state.goalPos.x - player->curPos.x) / player->state.moveTime;
player->curPos.z += (player->state.goalPos.z - player->curPos.z) / player->state.moveTime;
partner->curPos.x += (player->state.curPos.x - partner->curPos.x) / player->state.moveTime;
partner->curPos.z += (player->state.curPos.z - partner->curPos.z) / player->state.moveTime;
}
player->currentPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
player->curPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
player->yaw = clamp_angle(-player->state.angle);
partner->currentPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
partner->curPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
partner->yaw = clamp_angle(-player->state.angle);
player->state.angle += 90.0f;
if (player->state.moveTime != 0) {
player->state.moveTime--;
} else {
player->currentPos.x = player->state.goalPos.x;
player->currentPos.z = player->state.goalPos.z;
partner->currentPos.x = player->state.currentPos.x;
partner->currentPos.z = player->state.currentPos.z;
player->homePos.x = player->currentPos.x;
player->homePos.z = player->currentPos.z;
partner->homePos.x = partner->currentPos.x;
partner->homePos.z = partner->currentPos.z;
player->curPos.x = player->state.goalPos.x;
player->curPos.z = player->state.goalPos.z;
partner->curPos.x = player->state.curPos.x;
partner->curPos.z = player->state.curPos.z;
player->homePos.x = player->curPos.x;
player->homePos.z = player->curPos.z;
partner->homePos.x = partner->curPos.x;
partner->homePos.z = partner->curPos.z;
gBattleStatus.flags1 |= BS_FLAGS1_PLAYER_IN_BACK;
gBattleSubState = BTL_SUBSTATE_END_PLAYER_TURN_DONE;
}
@ -3157,7 +3157,7 @@ void btl_state_update_partner_move(void) {
battleStatus->stateFreezeCount = 0;
battleStatus->unk_86 = 127;
battleStatus->blockResult = 127;
battleStatus->currentDamageSource = DMG_SRC_DEFAULT;
battleStatus->curDamageSource = DMG_SRC_DEFAULT;
gBattleStatus.flags1 &= ~BS_FLAGS1_AUTO_SUCCEED_ACTION;
gBattleStatus.flags1 &= ~BS_FLAGS1_MENU_OPEN;
reset_actor_turn_info();
@ -3263,7 +3263,7 @@ void btl_state_update_partner_move(void) {
break;
}
decrement_status_bar_disabled();
if (playerData->currentPartner == PARTNER_GOOMBARIO
if (playerData->curPartner == PARTNER_GOOMBARIO
&& battleStatus->moveCategory == BTL_MENU_TYPE_CHANGE_PARTNER
&& battleStatus->selectedMoveID != MOVE_CHARGE) {
partner->isGlowing = 0;
@ -3469,7 +3469,7 @@ void btl_state_update_next_enemy(void) {
}
battleStatus->activeEnemyActorID = battleStatus->enemyIDs[i++];
battleStatus->currentTurnEnemy = enemy;
battleStatus->curTurnEnemy = enemy;
battleStatus->nextEnemyIndex = i;
skipEnemy = FALSE;
@ -3584,7 +3584,7 @@ void btl_state_update_enemy_move(void) {
battleStatus->actionSuccess = 0;
battleStatus->unk_86 = 127;
battleStatus->blockResult = 127;
battleStatus->currentDamageSource = DMG_SRC_DEFAULT;
battleStatus->curDamageSource = DMG_SRC_DEFAULT;
reset_actor_turn_info();
gBattleStatus.flags1 |= BS_FLAGS1_100;
player->statusAfflicted = 0;
@ -3609,7 +3609,7 @@ void btl_state_update_enemy_move(void) {
}
}
enemy = battleStatus->currentTurnEnemy;
enemy = battleStatus->curTurnEnemy;
if (!(enemy->flags & ACTOR_FLAG_NO_ATTACK)) {
reset_all_actor_sounds(enemy);
battleStatus->battlePhase = PHASE_EXECUTE_ACTION;
@ -3827,13 +3827,13 @@ void btl_state_update_first_strike(void) {
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
battleStatus->selectedMoveID = MOVE_UNUSED_JUMP4;
battleStatus->moveArgument = encounterStatus->hitTier;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_JUMP4].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_UNUSED_JUMP4].flags;
break;
case ENCOUNTER_TRIGGER_HAMMER:
battleStatus->moveCategory = BTL_MENU_TYPE_SMASH;
battleStatus->selectedMoveID = MOVE_UNUSED_HAMMER4;
battleStatus->moveArgument = encounterStatus->hitTier;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_HAMMER4].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_UNUSED_HAMMER4].flags;
break;
case ENCOUNTER_TRIGGER_PARTNER:
btl_set_state(BATTLE_STATE_PARTNER_FIRST_STRIKE);
@ -3863,7 +3863,7 @@ void btl_state_update_first_strike(void) {
func_80263230(player, enemy);
battleStatus->stateFreezeCount = 0;
battleStatus->lastAttackDamage = 0;
battleStatus->currentDamageSource = DMG_SRC_DEFAULT;
battleStatus->curDamageSource = DMG_SRC_DEFAULT;
gBattleStatus.flags1 &= ~BS_FLAGS1_MENU_OPEN;
gBattleStatus.flags2 |= BS_FLAGS2_1000000;
gBattleStatus.flags1 &= ~BS_FLAGS1_PARTNER_ACTING;
@ -4034,18 +4034,18 @@ void btl_state_update_partner_striking_first(void) {
D_8029F254 = 0;
// setup dummy 'menu selection' for partner move
level = partner->actorBlueprint->level;
switch (playerData->currentPartner) {
switch (playerData->curPartner) {
case PARTNER_KOOPER:
battleStatus->moveCategory = BTL_MENU_TYPE_CHANGE_PARTNER;
battleStatus->moveArgument = 0;
battleStatus->selectedMoveID = level + MOVE_SHELL_TOSS1;
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
break;
case PARTNER_BOMBETTE:
battleStatus->moveCategory = BTL_MENU_TYPE_CHANGE_PARTNER;
battleStatus->moveArgument = 0;
battleStatus->selectedMoveID = level + MOVE_BODY_SLAM1;
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
break;
}
// let the enemy know a first strike is coming
@ -4066,7 +4066,7 @@ void btl_state_update_partner_striking_first(void) {
partner->targetPartIndex = target->partID;
battleStatus->stateFreezeCount = 0;
battleStatus->lastAttackDamage = 0;
battleStatus->currentDamageSource = DMG_SRC_DEFAULT;
battleStatus->curDamageSource = DMG_SRC_DEFAULT;
gBattleStatus.flags1 &= ~BS_FLAGS1_MENU_OPEN;
gBattleStatus.flags2 |= BS_FLAGS2_1000000;
gBattleStatus.flags1 |= BS_FLAGS1_PARTNER_ACTING;
@ -4217,7 +4217,7 @@ void btl_state_update_enemy_striking_first(void) {
case BTL_SUBSTATE_ENEMY_FIRST_STRIKE_INIT:
battleStatus->stateFreezeCount = 0;
battleStatus->lastAttackDamage = 0;
battleStatus->currentDamageSource = DMG_SRC_DEFAULT;
battleStatus->curDamageSource = DMG_SRC_DEFAULT;
playerData->enemyFirstStrikes++;
battleStatus->flags1 &= ~BS_FLAGS1_MENU_OPEN;
D_8029F254 = 0;
@ -4272,14 +4272,14 @@ void btl_state_update_enemy_striking_first(void) {
activeEnemyActorID = battleStatus->enemyIDs[nextEnemyIdx];
nextEnemyIdx++;
battleStatus->currentTurnEnemy = actor;
battleStatus->curTurnEnemy = actor;
battleStatus->activeEnemyActorID = activeEnemyActorID;
if (nextEnemyIdx >= battleStatus->numEnemyActors) {
nextEnemyIdx = 0;
}
battleStatus->nextEnemyIndex = nextEnemyIdx;
btl_cam_target_actor(battleStatus->activeEnemyActorID);
actor = battleStatus->currentTurnEnemy;
actor = battleStatus->curTurnEnemy;
reset_actor_turn_info();
battleStatus->battlePhase = PHASE_FIRST_STRIKE;
script = start_script(actor->takeTurnSource, EVT_PRIORITY_A, 0);
@ -4296,7 +4296,7 @@ void btl_state_update_enemy_striking_first(void) {
D_8029F254 = 1;
}
actor = battleStatus->currentTurnEnemy;
actor = battleStatus->curTurnEnemy;
if (actor->takeTurnScript == NULL || !does_script_exist(actor->takeTurnScriptID)) {
actor->takeTurnScript = NULL;

View File

@ -112,7 +112,7 @@ void get_dpad_input_radial(f32* angle, f32* magnitude) {
f32 maxMagnitude = 60.0f;
f32 stickX = battleStatus->stickX;
f32 stickY = battleStatus->stickY;
u16 currentButtonsDown = battleStatus->currentButtonsDown;
u16 currentButtonsDown = battleStatus->curButtonsDown;
f32 mag;
if (currentButtonsDown & (BUTTON_D_UP | BUTTON_D_DOWN | BUTTON_D_LEFT | BUTTON_D_RIGHT)) {
@ -229,9 +229,9 @@ void initialize_battle(void) {
playerData->battlesCount++;
}
bSavedPartner = playerData->currentPartner;
bSavedPartner = playerData->curPartner;
if (gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) {
playerData->currentPartner = PARTNER_TWINK;
playerData->curPartner = PARTNER_TWINK;
}
}
@ -257,17 +257,17 @@ void btl_update(void) {
if ((battleStatus->flags1 & BS_FLAGS1_PARTNER_ACTING) && gGameStatusPtr->multiplayerEnabled != 0) {
s32 inputBitmask = battleStatus->inputBitmask;
battleStatus->currentButtonsDown = gGameStatusPtr->currentButtons[1] & inputBitmask;
battleStatus->currentButtonsPressed = gGameStatusPtr->pressedButtons[1] & inputBitmask;
battleStatus->currentButtonsHeld = gGameStatusPtr->heldButtons[1] & inputBitmask;
battleStatus->curButtonsDown = gGameStatusPtr->curButtons[1] & inputBitmask;
battleStatus->curButtonsPressed = gGameStatusPtr->pressedButtons[1] & inputBitmask;
battleStatus->curButtonsHeld = gGameStatusPtr->heldButtons[1] & inputBitmask;
battleStatus->stickX = gGameStatusPtr->stickX[1];
battleStatus->stickY = gGameStatusPtr->stickY[1];
} else {
s32 inputBitmask2 = battleStatus->inputBitmask;
battleStatus->currentButtonsDown = gGameStatusPtr->currentButtons[0] & inputBitmask2;
battleStatus->currentButtonsPressed = gGameStatusPtr->pressedButtons[0] & inputBitmask2;
battleStatus->currentButtonsHeld = gGameStatusPtr->heldButtons[0] & inputBitmask2;
battleStatus->curButtonsDown = gGameStatusPtr->curButtons[0] & inputBitmask2;
battleStatus->curButtonsPressed = gGameStatusPtr->pressedButtons[0] & inputBitmask2;
battleStatus->curButtonsHeld = gGameStatusPtr->heldButtons[0] & inputBitmask2;
battleStatus->stickX = gGameStatusPtr->stickX[0];
battleStatus->stickY = gGameStatusPtr->stickY[0];
}
@ -276,8 +276,8 @@ void btl_update(void) {
get_dpad_input_radial(&dpadAngle, &dpadMagnitude);
battleStatus->dpadX = dpadAngle;
battleStatus->dpadY = dpadMagnitude;
battleStatus->pushInputBuffer[battleStatus->inputBufferPos] = battleStatus->currentButtonsPressed;
battleStatus->holdInputBuffer[battleStatus->inputBufferPos] = battleStatus->currentButtonsDown;
battleStatus->pushInputBuffer[battleStatus->inputBufferPos] = battleStatus->curButtonsPressed;
battleStatus->holdInputBuffer[battleStatus->inputBufferPos] = battleStatus->curButtonsDown;
battleStatus->inputBufferPos++;
if (battleStatus->inputBufferPos >= ARRAY_COUNT(battleStatus->pushInputBuffer)) {
@ -422,7 +422,7 @@ void btl_update(void) {
set_screen_overlay_color(SCREEN_LAYER_BACK, 0, 0, 0);
if (partner == NULL) {
set_screen_overlay_params_back(OVERLAY_SCREEN_COLOR, 215.0f);
} else if (playerData->currentPartner == PARTNER_WATT) {
} else if (playerData->curPartner == PARTNER_WATT) {
paramAmount -= 10.0f;
if (paramAmount < 0.0f) {
paramAmount = 0.0f;
@ -636,14 +636,14 @@ void btl_render_actors(void) {
if (actor != NULL && !(actor->flags & ACTOR_FLAG_DISABLED)) {
renderTaskPtr->appendGfxArg = (void*)i;
renderTaskPtr->appendGfx = appendGfx_enemy_actor;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = actor->renderMode;
queue_render_task(renderTaskPtr);
if (actor->flags & ACTOR_FLAG_BLUR_ENABLED) {
renderTaskPtr->appendGfxArg = actor;
renderTaskPtr->appendGfx = appendGfx_enemy_actor_blur;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = RENDER_MODE_SURFACE_XLU_LAYER3;
queue_render_task(renderTaskPtr);
}
@ -651,7 +651,7 @@ void btl_render_actors(void) {
if (battleStatus->reflectFlags & BS_REFLECT_FLOOR) {
renderTaskPtr->appendGfxArg = actor;
renderTaskPtr->appendGfx = appendGfx_enemy_actor_reflection;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = actor->renderMode;
queue_render_task(renderTaskPtr);
}
@ -662,14 +662,14 @@ void btl_render_actors(void) {
if (actor != NULL && !(actor->flags & ACTOR_FLAG_DISABLED)) {
renderTaskPtr->appendGfxArg = NULL;
renderTaskPtr->appendGfx = appendGfx_partner_actor;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = actor->renderMode;
queue_render_task(renderTaskPtr);
if (actor->flags & ACTOR_FLAG_BLUR_ENABLED) {
renderTaskPtr->appendGfxArg = actor;
renderTaskPtr->appendGfx = appendGfx_partner_actor_blur;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = RENDER_MODE_SURFACE_XLU_LAYER3;
queue_render_task(renderTaskPtr);
}
@ -677,7 +677,7 @@ void btl_render_actors(void) {
if (battleStatus->reflectFlags & BS_REFLECT_FLOOR) {
renderTaskPtr->appendGfxArg = NULL;
renderTaskPtr->appendGfx = appendGfx_partner_actor_reflection;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = actor->renderMode;
queue_render_task(renderTaskPtr);
}
@ -687,14 +687,14 @@ void btl_render_actors(void) {
if (actor != NULL && !(actor->flags & ACTOR_FLAG_DISABLED)) {
renderTaskPtr->appendGfxArg = NULL;
renderTaskPtr->appendGfx = appendGfx_player_actor;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = actor->renderMode;
queue_render_task(renderTaskPtr);
if (actor->flags & ACTOR_FLAG_BLUR_ENABLED) {
renderTaskPtr->appendGfxArg = actor;
renderTaskPtr->appendGfx = (void (*) (void*)) appendGfx_player_actor_blur;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = RENDER_MODE_SURFACE_XLU_LAYER3;
queue_render_task(renderTaskPtr);
}
@ -702,7 +702,7 @@ void btl_render_actors(void) {
if (battleStatus->reflectFlags & BS_REFLECT_FLOOR) {
renderTaskPtr->appendGfxArg = NULL;
renderTaskPtr->appendGfx = appendGfx_player_actor_reflection;
renderTaskPtr->distance = actor->currentPos.z;
renderTaskPtr->dist = actor->curPos.z;
renderTaskPtr->renderMode = actor->renderMode;
queue_render_task(renderTaskPtr);
}
@ -868,7 +868,7 @@ void btl_draw_enemy_health_bars(void) {
s32 temp;
s32 ones;
currentHP = enemy->currentHP;
currentHP = enemy->curHP;
temp = (currentHP * 25) / enemy->maxHP;
if (temp < enemy->healthFraction) {
@ -1070,12 +1070,12 @@ void btl_save_world_cameras(void) {
D_8029DA50[i] = gCameras[i];
}
D_8029EFB0 = playerStatus->position.x;
D_8029EFB4 = playerStatus->position.y;
D_8029EFB8 = playerStatus->position.z;
playerStatus->position.x = NPC_DISPOSE_POS_X;
playerStatus->position.y = NPC_DISPOSE_POS_Y;
playerStatus->position.z = NPC_DISPOSE_POS_Z;
D_8029EFB0 = playerStatus->pos.x;
D_8029EFB4 = playerStatus->pos.y;
D_8029EFB8 = playerStatus->pos.z;
playerStatus->pos.x = NPC_DISPOSE_POS_X;
playerStatus->pos.y = NPC_DISPOSE_POS_Y;
playerStatus->pos.z = NPC_DISPOSE_POS_Z;
}
void btl_restore_world_cameras(void) {
@ -1088,9 +1088,9 @@ void btl_restore_world_cameras(void) {
}
gCurrentCameraID = CAM_DEFAULT;
playerStatus->position.x = D_8029EFB0;
playerStatus->position.y = D_8029EFB4;
playerStatus->position.z = D_8029EFB8;
playerStatus->pos.x = D_8029EFB0;
playerStatus->pos.y = D_8029EFB4;
playerStatus->pos.z = D_8029EFB8;
if (bSavedOverrideFlags & GLOBAL_OVERRIDES_ENABLE_FLOOR_REFLECTION) {
gOverrideFlags |= GLOBAL_OVERRIDES_ENABLE_FLOOR_REFLECTION;
@ -1099,7 +1099,7 @@ void btl_restore_world_cameras(void) {
}
if (gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) {
playerData->currentPartner = bSavedPartner;
playerData->curPartner = bSavedPartner;
}
}

View File

@ -2872,7 +2872,7 @@ void show_immune_bonk(f32 x, f32 y, f32 z, s32 numStars, s32 arg4, s32 arg5) {
message->scale = D_80283690[iMod8].x * baseScale;
message->rotZ = 0;
message->rotVelZ = sign * 107;
message->rotY = clamp_angle(180.0f - gCameras[CAM_BATTLE].currentYaw);
message->rotY = clamp_angle(180.0f - gCameras[CAM_BATTLE].curYaw);
message->appearTime = 14;
message->unk_24 = arg4;
message->deleteTime = 240;
@ -2910,7 +2910,7 @@ void btl_bonk_update(void* data) {
message->pos.y += message->vel.y;
message->pos.z += message->vel.z;
}
message->rotY = clamp_angle(180.0f - gCameras[CAM_BATTLE].currentYaw);
message->rotY = clamp_angle(180.0f - gCameras[CAM_BATTLE].curYaw);
message->rotZ += message->rotVelZ;
message->rotZ = clamp_angle(message->rotZ);
message->rotVelZ *= 0.8;
@ -3170,7 +3170,7 @@ void btl_update_message_popup(void* data) {
popup->showMsgState = 2;
break;
case 2:
if (battleStatus->currentButtonsPressed & (BUTTON_A | BUTTON_B)) {
if (battleStatus->curButtonsPressed & (BUTTON_A | BUTTON_B)) {
popup->duration = 0;
}
@ -3523,7 +3523,7 @@ void btl_update_message_popup(void* data) {
popup->showMsgState = 2;
break;
case 2:
if (battleStatus->currentButtonsPressed & (BUTTON_A | BUTTON_B)) {
if (battleStatus->curButtonsPressed & (BUTTON_A | BUTTON_B)) {
popup->duration = 0;
}
@ -4105,9 +4105,9 @@ void apply_shock_effect(Actor* actor) {
&& part->idleAnimations != NULL
&& !(part->flags & ACTOR_PART_FLAG_40000000)
) {
f32 x = part->currentPos.x;
f32 y = part->currentPos.y + (actor->size.y / 10);
f32 z = part->currentPos.z;
f32 x = part->curPos.x;
f32 y = part->curPos.y + (actor->size.y / 10);
f32 z = part->curPos.z;
s32 f1 = (part->size.x + (part->size.x / 4)) * actor->scalingFactor;
s32 f2 = (part->size.y - 2) * actor->scalingFactor;

View File

@ -5,15 +5,15 @@
HitResult calc_item_check_hit(void) {
BattleStatus* battleStatus = &gBattleStatus;
ActorState* state = &battleStatus->playerActor->state;
s32 actorID = battleStatus->currentTargetID;
s32 actorID = battleStatus->curTargetID;
s8 currentTargetPartS8;
u32 currentTargetPart;
Actor* actor;
ActorPart* actorPart;
battleStatus->currentTargetID2 = battleStatus->currentTargetID;
currentTargetPart = currentTargetPartS8 = battleStatus->currentTargetPart;
battleStatus->currentTargetPart2 = currentTargetPartS8;
battleStatus->curTargetID2 = battleStatus->curTargetID;
currentTargetPart = currentTargetPartS8 = battleStatus->curTargetPart;
battleStatus->curTargetPart2 = currentTargetPartS8;
actor = get_actor(actorID);
if (actor == NULL) {
@ -36,7 +36,7 @@ HitResult calc_item_check_hit(void) {
return HIT_RESULT_IMMUNE;
}
if ((battleStatus->currentAttackElement & DAMAGE_TYPE_JUMP)
if ((battleStatus->curAttackElement & DAMAGE_TYPE_JUMP)
&& (actorPart->eventFlags & ACTOR_EVENT_FLAG_SPIKY_TOP))
{
sfx_play_sound_at_position(SOUND_HIT_NORMAL, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
@ -49,9 +49,9 @@ HitResult calc_item_check_hit(void) {
HitResult calc_item_damage_enemy(void) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* player = battleStatus->playerActor;
s32 currentTargetID = battleStatus->currentTargetID;
s32 currentTargetID = battleStatus->curTargetID;
Actor* partner = battleStatus->partnerActor;
s32 currentTargetPartID = battleStatus->currentTargetPart;
s32 currentTargetPartID = battleStatus->curTargetPart;
s32 partImmuneToElement;
s32 sp1C = FALSE;
s32 actorClass;
@ -73,8 +73,8 @@ HitResult calc_item_damage_enemy(void) {
battleStatus->wasStatusInflicted = FALSE;
battleStatus->lastAttackDamage = 0;
battleStatus->attackerActorID = player->actorID;
battleStatus->currentTargetID2 = battleStatus->currentTargetID;
battleStatus->currentTargetPart2 = battleStatus->currentTargetPart;
battleStatus->curTargetID2 = battleStatus->curTargetID;
battleStatus->curTargetPart2 = battleStatus->curTargetPart;
target = get_actor(currentTargetID);
wasStatusInflicted = FALSE;
@ -95,28 +95,28 @@ HitResult calc_item_damage_enemy(void) {
state = &partner->state;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_FIRE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_FIRE) {
fx_ring_blast(0, state->goalPos.x, state->goalPos.y, state->goalPos.z + 5.0f, 1.0f, 24);
isFireDamage = TRUE;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_SHOCK) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_SHOCK) {
apply_shock_effect(target);
isShockDamage = TRUE;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_WATER) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_WATER) {
fx_water_splash(0, state->goalPos.x, state->goalPos.y, state->goalPos.z + 5.0f, 1.0f, 24);
isWaterDamage = TRUE;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_ICE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_ICE) {
fx_big_snowflakes(0, state->goalPos.x, state->goalPos.y, state->goalPos.z + 5.0f);
isIceDamage = TRUE;
}
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_REMOVE_BUFFS)) {
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_REMOVE_BUFFS)) {
if ((targetPart->eventFlags & ACTOR_EVENT_FLAG_ILLUSORY)
|| (target->transparentStatus == STATUS_KEY_TRANSPARENT)
|| (targetPart->eventFlags & ACTOR_EVENT_FLAG_800)
&& !(battleStatus->currentAttackElement & DAMAGE_TYPE_QUAKE)
&& !(battleStatus->curAttackElement & DAMAGE_TYPE_QUAKE)
) {
return HIT_RESULT_MISS;
}
@ -132,22 +132,22 @@ HitResult calc_item_damage_enemy(void) {
return HIT_RESULT_HIT;
}
if (targetPart->elementalImmunities & battleStatus->currentAttackElement) {
if (targetPart->elementalImmunities & battleStatus->curAttackElement) {
partImmuneToElement = TRUE;
} else {
partImmuneToElement = FALSE;
}
if (targetPart->eventFlags & (ACTOR_EVENT_FLAG_ENCHANTED | ACTOR_EVENT_FLAG_STAR_ROD_ENCHANTED)) {
battleStatus->currentAttackElement &= ~DAMAGE_TYPE_IGNORE_DEFENSE;
battleStatus->curAttackElement &= ~DAMAGE_TYPE_IGNORE_DEFENSE;
}
temp = get_defense(target, targetPart->defenseTable, battleStatus->currentAttackElement);
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_IGNORE_DEFENSE)) {
temp = get_defense(target, targetPart->defenseTable, battleStatus->curAttackElement);
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_IGNORE_DEFENSE)) {
temp += target->defenseBoost;
}
attackDamage = battleStatus->currentAttackDamage;
attackDamage = battleStatus->curAttackDamage;
if (attackDamage > 99) {
attackDamage = 99;
}
@ -162,7 +162,7 @@ HitResult calc_item_damage_enemy(void) {
target->hpChangeCounter = 0;
hitResult = HIT_RESULT_NO_DAMAGE;
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS)) {
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS)) {
dispatchEvent = EVENT_ZERO_DAMAGE;
sfx_play_sound_at_position(SOUND_IMMUNE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
battleStatus->lastAttackDamage = 0;
@ -181,9 +181,9 @@ HitResult calc_item_damage_enemy(void) {
&& !partImmuneToElement
&& !(targetPart->targetFlags & ACTOR_PART_TARGET_FLAG_4)
) {
target->currentHP -= attackDamage;
if (target->currentHP <= 0) {
target->currentHP = 0;
target->curHP -= attackDamage;
if (target->curHP <= 0) {
target->curHP = 0;
dispatchEvent = EVENT_DEATH;
}
}
@ -199,7 +199,7 @@ HitResult calc_item_damage_enemy(void) {
return HIT_RESULT_NO_DAMAGE;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_DEATH) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_DEATH) {
battleStatus->lastAttackDamage = 0;
dispatchEvent = EVENT_DEATH;
hitResult = HIT_RESULT_HIT;
@ -212,7 +212,7 @@ HitResult calc_item_damage_enemy(void) {
if (dispatchEvent == EVENT_ZERO_DAMAGE) {
dispatchEvent = EVENT_IMMUNE;
}
if (target->currentHP <= 0 && dispatchEvent == EVENT_IMMUNE) {
if (target->curHP <= 0 && dispatchEvent == EVENT_IMMUNE) {
dispatchEvent = EVENT_DEATH;
}
} else if (dispatchEvent == EVENT_DEATH) {
@ -220,7 +220,7 @@ HitResult calc_item_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_REMOVE_BUFFS) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_REMOVE_BUFFS) {
dispatchEvent = EVENT_IMMUNE;
if (targetPart->eventFlags & ACTOR_EVENT_FLAG_ENCHANTED) {
dispatchEvent = EVENT_STAR_BEAM;
@ -237,7 +237,7 @@ HitResult calc_item_damage_enemy(void) {
}
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_REMOVE_BUFFS) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_REMOVE_BUFFS) {
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if ((target->attackBoost > 0 || target->defenseBoost > 0) ||
((target->staticStatus == 0 && target->transparentStatus != 0) || target->staticStatus != 0))
@ -263,7 +263,7 @@ HitResult calc_item_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_PEACH_BEAM) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_PEACH_BEAM) {
dispatchEvent = EVENT_IMMUNE;
if (targetPart->eventFlags & ACTOR_EVENT_FLAG_ENCHANTED) {
dispatchEvent = EVENT_PEACH_BEAM;
@ -277,7 +277,7 @@ HitResult calc_item_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_SPIN_SMASH) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_SPIN_SMASH) {
if (dispatchEvent == EVENT_HIT) {
dispatchEvent = EVENT_SPIN_SMASH_HIT;
}
@ -288,7 +288,7 @@ HitResult calc_item_damage_enemy(void) {
}
if ((gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE)
&& (battleStatus->currentAttackElement & (DAMAGE_TYPE_JUMP | DAMAGE_TYPE_POW))
&& (battleStatus->curAttackElement & (DAMAGE_TYPE_JUMP | DAMAGE_TYPE_POW))
&& (targetPart->eventFlags & ACTOR_EVENT_FLAG_GROUNDABLE)
) {
if (dispatchEvent == EVENT_HIT) {
@ -300,7 +300,7 @@ HitResult calc_item_damage_enemy(void) {
}
if ((gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE)
&& (battleStatus->currentAttackElement & DAMAGE_TYPE_POW)
&& (battleStatus->curAttackElement & DAMAGE_TYPE_POW)
&& (targetPart->eventFlags & ACTOR_EVENT_FLAG_RIDING_BROOMSTICK)
) {
if (dispatchEvent == EVENT_HIT) {
@ -312,7 +312,7 @@ HitResult calc_item_damage_enemy(void) {
}
if ((gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE)
&& (battleStatus->currentAttackElement & (DAMAGE_TYPE_JUMP | DAMAGE_TYPE_POW | DAMAGE_TYPE_QUAKE))
&& (battleStatus->curAttackElement & (DAMAGE_TYPE_JUMP | DAMAGE_TYPE_POW | DAMAGE_TYPE_QUAKE))
&& (targetPart->eventFlags & ACTOR_EVENT_FLAG_FLIPABLE)
) {
if (dispatchEvent == EVENT_HIT) {
@ -324,7 +324,7 @@ HitResult calc_item_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_FIRE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_FIRE) {
if (dispatchEvent == EVENT_HIT) {
dispatchEvent = EVENT_BURN_HIT;
}
@ -345,7 +345,7 @@ HitResult calc_item_damage_enemy(void) {
// do-while-0 OR to wrap each one individually. It's more likely that it's a macro instead, and much cleaner
#define INFLICT_STATUS(STATUS_TYPE) \
do { \
if ((battleStatus->currentAttackStatus & STATUS_FLAG_##STATUS_TYPE) && \
if ((battleStatus->curAttackStatus & STATUS_FLAG_##STATUS_TYPE) && \
try_inflict_status(target, STATUS_KEY_##STATUS_TYPE, STATUS_TURN_MOD_##STATUS_TYPE)) { \
wasStatusInflicted = TRUE; \
} \
@ -377,7 +377,7 @@ HitResult calc_item_damage_enemy(void) {
temp = target->actorBlueprint->spookChance;
temp = (battleStatus->statusChance * temp) / 100;
if ((gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) && (battleStatus->currentAttackElement & DAMAGE_TYPE_FEAR)) {
if ((gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) && (battleStatus->curAttackElement & DAMAGE_TYPE_FEAR)) {
if (rand_int(99) < temp
&& (target->debuff != STATUS_KEY_FEAR
&& target->debuff != STATUS_KEY_DIZZY
@ -410,7 +410,7 @@ HitResult calc_item_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_231, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->lastAttackDamage > 0 || (battleStatus->currentAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS) && sp1C) {
if (battleStatus->lastAttackDamage > 0 || (battleStatus->curAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS) && sp1C) {
if (gBattleStatus.flags1 & BS_FLAGS1_40) {
show_action_rating(ACTION_RATING_NICE, target, state->goalPos.x, state->goalPos.y, state->goalPos.z);
} else {
@ -437,7 +437,7 @@ HitResult calc_item_damage_enemy(void) {
show_immune_bonk(state->goalPos.x, state->goalPos.y, state->goalPos.z, 0, 1, 3);
}
} else if (!partImmuneToElement) {
if (battleStatus->currentAttackElement & (DAMAGE_TYPE_MULTIPLE_POPUPS | DAMAGE_TYPE_SMASH)) {
if (battleStatus->curAttackElement & (DAMAGE_TYPE_MULTIPLE_POPUPS | DAMAGE_TYPE_SMASH)) {
show_next_damage_popup(state->goalPos.x, state->goalPos.y, state->goalPos.z, battleStatus->lastAttackDamage, 0);
} else {
show_primary_damage_popup(state->goalPos.x, state->goalPos.y, state->goalPos.z, battleStatus->lastAttackDamage, 0);
@ -465,42 +465,42 @@ HitResult calc_item_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_IMMUNE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackStatus & STATUS_FLAG_SLEEP) && wasStatusInflicted) {
if ((battleStatus->curAttackStatus & STATUS_FLAG_SLEEP) && wasStatusInflicted) {
script = start_script(&EVS_PlaySleepHitFX, EVT_PRIORITY_A, 0);
script->varTable[0] = state->goalPos.x;
script->varTable[1] = state->goalPos.y;
script->varTable[2] = state->goalPos.z;
sfx_play_sound_at_position(SOUND_INFLICT_SLEEP, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackStatus & STATUS_FLAG_DIZZY) && wasStatusInflicted) {
if ((battleStatus->curAttackStatus & STATUS_FLAG_DIZZY) && wasStatusInflicted) {
script = start_script(&EVS_PlayDizzyHitFX, EVT_PRIORITY_A, 0);
script->varTable[0] = state->goalPos.x;
script->varTable[1] = state->goalPos.y;
script->varTable[2] = state->goalPos.z;
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackStatus & STATUS_FLAG_PARALYZE) && wasStatusInflicted) {
if ((battleStatus->curAttackStatus & STATUS_FLAG_PARALYZE) && wasStatusInflicted) {
script = start_script(&EVS_PlayParalyzeHitFX, EVT_PRIORITY_A, 0);
script->varTable[0] = state->goalPos.x;
script->varTable[1] = state->goalPos.y;
script->varTable[2] = state->goalPos.z;
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackStatus & STATUS_FLAG_POISON) && wasStatusInflicted) {
if ((battleStatus->curAttackStatus & STATUS_FLAG_POISON) && wasStatusInflicted) {
script = start_script(&EVS_PlayPoisonHitFX, EVT_PRIORITY_A, 0);
script->varTable[0] = state->goalPos.x;
script->varTable[1] = state->goalPos.y;
script->varTable[2] = state->goalPos.z;
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackStatus & STATUS_FLAG_STOP) && wasStatusInflicted) {
if ((battleStatus->curAttackStatus & STATUS_FLAG_STOP) && wasStatusInflicted) {
script = start_script(&EVS_PlayStopHitFX, EVT_PRIORITY_A, 0);
script->varTable[0] = state->goalPos.x;
script->varTable[1] = state->goalPos.y;
script->varTable[2] = state->goalPos.z;
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackStatus & STATUS_FLAG_FROZEN) && wasStatusInflicted) {
if ((battleStatus->curAttackStatus & STATUS_FLAG_FROZEN) && wasStatusInflicted) {
script = start_script(&EVS_PlayFreezeHitFX, EVT_PRIORITY_A, 0);
script->varTable[0] = state->goalPos.x;
script->varTable[1] = state->goalPos.y;
@ -508,7 +508,7 @@ HitResult calc_item_damage_enemy(void) {
script->varTablePtr[3] = target;
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackStatus & STATUS_FLAG_SHRINK) && wasStatusInflicted) {
if ((battleStatus->curAttackStatus & STATUS_FLAG_SHRINK) && wasStatusInflicted) {
script = start_script(&EVS_PlayShrinkHitFX, EVT_PRIORITY_A, 0);
script->varTable[0] = state->goalPos.x;
script->varTable[1] = state->goalPos.y;
@ -516,7 +516,7 @@ HitResult calc_item_damage_enemy(void) {
script->varTablePtr[3] = target;
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if ((battleStatus->currentAttackElement & DAMAGE_TYPE_SMASH) && (target->actorType == ACTOR_TYPE_GOOMNUT_TREE)) {
if ((battleStatus->curAttackElement & DAMAGE_TYPE_SMASH) && (target->actorType == ACTOR_TYPE_GOOMNUT_TREE)) {
sfx_play_sound_at_position(SOUND_SMASH_GOOMNUT_TREE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
@ -542,10 +542,10 @@ ApiStatus ItemDamageEnemy(Evt* script, s32 isInitialCall) {
Actor* actor;
HitResult hitResult;
battleStatus->currentAttackElement = *args++;
battleStatus->currentAttackEventSuppression = 0;
battleStatus->currentAttackStatus = *args++;
battleStatus->currentAttackDamage = evt_get_variable(script, *args++);
battleStatus->curAttackElement = *args++;
battleStatus->curAttackEventSuppression = 0;
battleStatus->curAttackStatus = *args++;
battleStatus->curAttackDamage = evt_get_variable(script, *args++);
flags = *args++;
if ((flags & (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) == (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) {
@ -581,15 +581,15 @@ ApiStatus ItemDamageEnemy(Evt* script, s32 isInitialCall) {
}
actor = get_actor(script->owner1.actorID);
battleStatus->currentTargetID = actor->targetActorID;
battleStatus->currentTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->currentAttackStatus;
battleStatus->curTargetID = actor->targetActorID;
battleStatus->curTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->curAttackStatus;
if (battleStatus->statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
hitResult = calc_item_damage_enemy();
if (hitResult < 0) {
@ -612,11 +612,11 @@ ApiStatus ItemSpookEnemy(Evt* script, s32 isInitialCall) {
HitResult hitResult;
s32 flags;
battleStatus->currentAttackElement = *args++;
battleStatus->currentAttackEventSuppression = 0;
battleStatus->currentAttackStatus = *args++;
battleStatus->currentAttackStatus |= evt_get_variable(script, *args++);
battleStatus->currentAttackDamage = evt_get_variable(script, *args++);
battleStatus->curAttackElement = *args++;
battleStatus->curAttackEventSuppression = 0;
battleStatus->curAttackStatus = *args++;
battleStatus->curAttackStatus |= evt_get_variable(script, *args++);
battleStatus->curAttackDamage = evt_get_variable(script, *args++);
flags = *args++;
if ((flags & (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) == (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) {
@ -651,15 +651,15 @@ ApiStatus ItemSpookEnemy(Evt* script, s32 isInitialCall) {
}
actor = get_actor(script->owner1.actorID);
battleStatus->currentTargetID = actor->targetActorID;
battleStatus->currentTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->currentAttackStatus;
battleStatus->curTargetID = actor->targetActorID;
battleStatus->curTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->curAttackStatus;
if (battleStatus->statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
hitResult = calc_item_damage_enemy();
if (hitResult < 0) {
@ -682,10 +682,10 @@ ApiStatus ItemAfflictEnemy(Evt* script, s32 isInitialCall) {
Actor* actor;
HitResult hitResult;
battleStatus->currentAttackElement = *args++;
battleStatus->currentAttackEventSuppression = 0;
battleStatus->currentAttackStatus = evt_get_variable(script, *args++);
battleStatus->currentAttackDamage = evt_get_variable(script, *args++);
battleStatus->curAttackElement = *args++;
battleStatus->curAttackEventSuppression = 0;
battleStatus->curAttackStatus = evt_get_variable(script, *args++);
battleStatus->curAttackDamage = evt_get_variable(script, *args++);
flags = *args++;
if ((flags & (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) == (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) {
@ -720,15 +720,15 @@ ApiStatus ItemAfflictEnemy(Evt* script, s32 isInitialCall) {
}
actor = get_actor(script->owner1.actorID);
battleStatus->currentTargetID = actor->targetActorID;
battleStatus->currentTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->currentAttackStatus;
battleStatus->curTargetID = actor->targetActorID;
battleStatus->curTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->curAttackStatus;
if (battleStatus->statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
hitResult = calc_item_damage_enemy();
if (hitResult < 0) {
@ -751,10 +751,10 @@ ApiStatus ItemCheckHit(Evt* script, s32 isInitialCall) {
Actor* actor;
HitResult hitResult;
battleStatus->currentAttackElement = *args++;
battleStatus->currentAttackEventSuppression = 0;
battleStatus->currentAttackStatus = *args++;
battleStatus->currentAttackDamage = evt_get_variable(script, *args++);
battleStatus->curAttackElement = *args++;
battleStatus->curAttackEventSuppression = 0;
battleStatus->curAttackStatus = *args++;
battleStatus->curAttackDamage = evt_get_variable(script, *args++);
flags = *args++;
if ((flags & (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) == (BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE)) {
@ -789,15 +789,15 @@ ApiStatus ItemCheckHit(Evt* script, s32 isInitialCall) {
}
actor = get_actor(script->owner1.actorID);
battleStatus->currentTargetID = actor->targetActorID;
battleStatus->currentTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->currentAttackStatus;
battleStatus->curTargetID = actor->targetActorID;
battleStatus->curTargetPart = actor->targetPartIndex;
battleStatus->statusChance = battleStatus->curAttackStatus;
if (battleStatus->statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
hitResult = calc_item_check_hit();
if (hitResult < 0) {

View File

@ -141,14 +141,14 @@ ApiStatus ActorSpeak(Evt* script, s32 isInitialCall) {
gSpeakingActor = actor;
gSpeakingActorPart = part;
headX = actor->currentPos.x + actor->headOffset.x;
headX = actor->curPos.x + actor->headOffset.x;
if (!(actor->flags & ACTOR_FLAG_8000)) {
headY = actor->size.y + (actor->currentPos.y + actor->headOffset.y);
headY = actor->size.y + (actor->curPos.y + actor->headOffset.y);
} else {
headY = actor->currentPos.y + actor->headOffset.y + (actor->size.y / 2);
headY = actor->curPos.y + actor->headOffset.y + (actor->size.y / 2);
}
headZ = actor->currentPos.z + actor->headOffset.z;
headZ = actor->curPos.z + actor->headOffset.z;
get_screen_coords(CAM_BATTLE, headX, headY, headZ, &screenX, &screenY, &screenZ);
gSpeakingActorPrintIsDone = FALSE;
@ -167,15 +167,15 @@ ApiStatus ActorSpeak(Evt* script, s32 isInitialCall) {
actor = gSpeakingActor;
part = gSpeakingActorPart;
headX = actor->currentPos.x + actor->headOffset.x;
headX = actor->curPos.x + actor->headOffset.x;
if (!(actor->flags & ACTOR_FLAG_8000)) {
headY = actor->size.y + (actor->currentPos.y + actor->headOffset.y);
headY = actor->size.y + (actor->curPos.y + actor->headOffset.y);
} else {
headY = actor->headOffset.y;
headY = actor->currentPos.y + actor->headOffset.y + (actor->size.y / 2);
headY = actor->curPos.y + actor->headOffset.y + (actor->size.y / 2);
}
headZ = actor->currentPos.z + actor->headOffset.z;
headZ = actor->curPos.z + actor->headOffset.z;
get_screen_coords(CAM_BATTLE, headX, headY, headZ, &screenX, &screenY, &screenZ);
msg_printer_set_origin_pos(gSpeakingActorPrintCtx, screenX, screenY);
@ -235,13 +235,13 @@ ApiStatus EndActorSpeech(Evt* script, s32 isInitialCall) {
Actor* actor = gSpeakingActor;
ActorPart* actorPart = gSpeakingActorPart;
x = actor->currentPos.x + actor->headOffset.x;
x = actor->curPos.x + actor->headOffset.x;
if (!(gSpeakingActor->flags & ACTOR_FLAG_8000)) {
y = actor->currentPos.y + actor->headOffset.y + actor->size.y ;
y = actor->curPos.y + actor->headOffset.y + actor->size.y ;
} else {
y = actor->currentPos.y + actor->headOffset.y + actor->size.y / 2;
y = actor->curPos.y + actor->headOffset.y + actor->size.y / 2;
}
z = actor->currentPos.z + actor->headOffset.z;
z = actor->curPos.z + actor->headOffset.z;
get_screen_coords(CAM_BATTLE, x, y, z, &screenX, &screenY, &screenZ);
msg_printer_set_origin_pos(gSpeakingActorPrintCtx, screenX, screenY);
@ -282,9 +282,9 @@ ApiStatus ShowBattleChoice(Evt* script, s32 isInitialCall) {
}
if (script->functionTemp[1] == 1) {
u8 currentOption = D_8029FA64->currentOption;
u8 currentOption = D_8029FA64->curOption;
gSpeakingActorPrintCtx->currentOption = D_8029FA64->currentOption;
gSpeakingActorPrintCtx->curOption = D_8029FA64->curOption;
script->varTable[0] = currentOption;
return ApiStatus_DONE1;
@ -401,7 +401,7 @@ ApiStatus PlaySoundAtActor(Evt* script, s32 isInitialCall) {
}
actor = get_actor(actorID);
sfx_play_sound_at_position(soundID, SOUND_SPACE_MODE_0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z);
sfx_play_sound_at_position(soundID, SOUND_SPACE_MODE_0, actor->curPos.x, actor->curPos.y, actor->curPos.z);
return ApiStatus_DONE2;
}
@ -418,7 +418,7 @@ ApiStatus PlaySoundAtPart(Evt* script, s32 isInitialCall) {
}
part = get_actor_part(get_actor(actorID), partID);
sfx_play_sound_at_position(soundID, SOUND_SPACE_MODE_0, part->currentPos.x, part->currentPos.y, part->currentPos.z);
sfx_play_sound_at_position(soundID, SOUND_SPACE_MODE_0, part->curPos.x, part->curPos.y, part->curPos.z);
return ApiStatus_DONE2;
}
@ -436,7 +436,7 @@ ApiStatus PlayLoopingSoundAtActor(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID);
actor->loopingSoundID[idx] = soundID;
sfx_play_sound_at_position(soundID, SOUND_SPACE_MODE_0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z);
sfx_play_sound_at_position(soundID, SOUND_SPACE_MODE_0, actor->curPos.x, actor->curPos.y, actor->curPos.z);
return ApiStatus_DONE2;
}

File diff suppressed because it is too large Load Diff

View File

@ -633,13 +633,13 @@ void btl_state_update_celebration(void) {
if (CelebrateSubstateTime == 18) {
playerData->curHP = playerData->curMaxHP;
playerData->curFP = playerData->curMaxFP;
x = player->currentPos.x + 0.0f;
y = player->currentPos.y + 35.0f;
z = player->currentPos.z;
x = player->curPos.x + 0.0f;
y = player->curPos.y + 35.0f;
z = player->curPos.z;
fx_recover(0, x, y, z, playerData->curHP);
x = player->currentPos.x + 20.0f;
y = player->currentPos.y + 25.0f;
z = player->currentPos.z;
x = player->curPos.x + 20.0f;
y = player->curPos.y + 25.0f;
z = player->curPos.z;
fx_recover(1, x, y, z, playerData->curFP);
playerData->specialBarsFilled = playerData->maxStarPower * 256;
}
@ -919,7 +919,7 @@ void btl_state_update_celebration(void) {
id = LevelUpSelectTextID = hud_element_create(&HES_level_up_select_one_to_upgrade);
hud_element_set_render_pos(id, 0, 0);
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
battleStatus->currentSubmenu = 1;
battleStatus->curSubmenu = 1;
CelebrateSubstateTime = 10;
gBattleSubState = BTL_SUBSTATE_CELEBRATE_LEVEL_UP_SHOW_HUD;
@ -978,8 +978,8 @@ void btl_state_update_celebration(void) {
}
break;
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_CHOOSE:
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (!CantLevelUpStat[battleStatus->currentSubmenu]) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
if (!CantLevelUpStat[battleStatus->curSubmenu]) {
sfx_play_sound(SOUND_MENU_NEXT);
sfx_play_sound(SOUND_349 | SOUND_ID_TRIGGER_CHANGE_SOUND);
gBattleSubState = BTL_SUBSTATE_CELEBRATE_LEVEL_UP_UPGRADE;
@ -990,11 +990,11 @@ void btl_state_update_celebration(void) {
break;
}
newSubmenu = currentSubmenu = battleStatus->currentSubmenu;
if (battleStatus->currentButtonsHeld & BUTTON_STICK_LEFT) {
newSubmenu = currentSubmenu = battleStatus->curSubmenu;
if (battleStatus->curButtonsHeld & BUTTON_STICK_LEFT) {
newSubmenu--;
}
if (battleStatus->currentButtonsHeld & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsHeld & BUTTON_STICK_RIGHT) {
newSubmenu++;
}
if (newSubmenu < 0) {
@ -1005,7 +1005,7 @@ void btl_state_update_celebration(void) {
}
if (newSubmenu != currentSubmenu) {
sfx_play_sound(SOUND_MENU_CHANGE_SELECTION);
battleStatus->currentSubmenu = newSubmenu;
battleStatus->curSubmenu = newSubmenu;
}
CelebrateStateTime++;
@ -1018,7 +1018,7 @@ void btl_state_update_celebration(void) {
hud_element_free(LevelUpSpotlightID);
set_window_update(WINDOW_ID_8, WINDOW_UPDATE_HIDE);
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case 0:
playerData->hardMaxHP += 5;
playerData->curMaxHP += 5;
@ -1030,7 +1030,7 @@ void btl_state_update_celebration(void) {
playerData->curHP = playerData->curMaxHP;
}
player->maxHP = playerData->curMaxHP;
player->currentHP = playerData->curHP;
player->curHP = playerData->curHP;
break;
case 1:
playerData->hardMaxFP += 5;
@ -1067,7 +1067,7 @@ void btl_state_update_celebration(void) {
break;
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_FADE_OUT:
if ((gGameStatusPtr->frameCounter % 2) != 0) {
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case 0:
hud_element_set_flags(LevelUpStatEmblemIDs[0], HUD_ELEMENT_FLAG_DISABLED);
break;
@ -1080,7 +1080,7 @@ void btl_state_update_celebration(void) {
break;
}
} else {
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case 0:
hud_element_clear_flags(LevelUpStatEmblemIDs[0], HUD_ELEMENT_FLAG_DISABLED);
break;
@ -1140,7 +1140,7 @@ void btl_state_update_celebration(void) {
gBattleSubState = BTL_SUBSTATE_CELEBRATE_LEVEL_UP_CHOOSE;
break;
case BTL_SUBSTATE_CELEBRATE_SKIPPABLE_END_DELAY:
if (battleStatus->currentButtonsPressed & (BUTTON_A | BUTTON_B)) {
if (battleStatus->curButtonsPressed & (BUTTON_A | BUTTON_B)) {
CelebrateStateTime = 99;
}
if (CelebrateStateTime >= 99) {
@ -1151,7 +1151,7 @@ void btl_state_update_celebration(void) {
btl_cam_set_params(1, 270, 100, 8, 0, 0x2400, 0, 100);
set_animation(0, 0, ANIM_MarioB1_AdjustCap);
if (partner != NULL) {
set_animation(ACTOR_PARTNER, 0, D_80284154[playerData->currentPartner]);
set_animation(ACTOR_PARTNER, 0, D_80284154[playerData->curPartner]);
}
CelebrateSubstateTime = 6;
gBattleSubState = BTL_SUBSTATE_CELEBRATE_WALK_AWAY;
@ -1170,9 +1170,9 @@ void btl_state_update_celebration(void) {
partner->yaw = 0.0f;
}
player->currentPos.x += 4.0f;
player->curPos.x += 4.0f;
if (partner != NULL) {
partner->currentPos.x += 4.0f;
partner->curPos.x += 4.0f;
}
}
if (bFadeToBlackAmt == 255) {
@ -1213,7 +1213,7 @@ void btl_draw_upgrade_windows(s32 phase) {
d3 = 100;
break;
case 1: // choosing
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case MENU_HP:
d1 = 0;
d2 = 100;
@ -1284,7 +1284,7 @@ void btl_state_draw_celebration(void) {
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_CHOOSE:
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_INVALID:
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_INVALID_DELAY:
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case 0:
rotZ = 152;
hud_element_set_tint(LevelUpStatEmblemIDs[0], 255, 255, 255);
@ -1459,7 +1459,7 @@ void draw_content_level_up_textbox(void* data, s32 posX, s32 posY) {
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_CHOOSE:
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_INVALID:
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_INVALID_DELAY:
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case MENU_HP:
if (!CantLevelUpStat[MENU_HP]) {
msgID = MSG_Menus_LevelUp_HP;

View File

@ -74,7 +74,7 @@ API_CALLABLE(ActivateDefend) {
API_CALLABLE(DoesMarioStatusPreventHappyAnimation) {
Actor* player = gBattleStatus.playerActor;
show_action_rating(ACTION_RATING_LUCKY, player, player->currentPos.x, player->currentPos.y + 20.0f, player->currentPos.z);
show_action_rating(ACTION_RATING_LUCKY, player, player->curPos.x, player->curPos.y + 20.0f, player->curPos.z);
sfx_play_sound(SOUND_3FC);
script->varTable[0] = FALSE;
if (player->debuff == STATUS_KEY_FEAR || player->debuff == STATUS_KEY_DIZZY || player->debuff == STATUS_KEY_PARALYZE ||
@ -176,7 +176,7 @@ API_CALLABLE(GiveRefund) {
f32 angle = 0.0f;
s32 delayTime = 0;
f32 posX, posY, posZ;
posY = player->currentPos.y + player->size.y;
posY = player->curPos.y + player->size.y;
if (player_team_is_ability_active(player, ABILITY_REFUND) && sellValue > 0) {
s32 i;
@ -186,8 +186,8 @@ API_CALLABLE(GiveRefund) {
sellValue = (sellValue * 75 + 99) / 100;
for (i = 0; i < sellValue; i++) {
posX = player->currentPos.x;
posZ = player->currentPos.z;
posX = player->curPos.x;
posZ = player->curPos.z;
make_item_entity(ITEM_COIN, posX, posY, posZ, ITEM_SPAWN_MODE_TOSS_FADE1, (i * 3) + 1, angle, 0);
add_coins(1);
@ -196,9 +196,9 @@ API_CALLABLE(GiveRefund) {
delayTime = (i * 3) + 30;
posX = player->currentPos.x;
posY = player->currentPos.y;
posZ = player->currentPos.z;
posX = player->curPos.x;
posY = player->curPos.y;
posZ = player->curPos.z;
get_screen_coords(gCurrentCameraID, posX, posY, posZ, &iconPosX, &iconPosY, &iconPosZ);
RefundHudElem = hud_element_create(&HES_Refund);
hud_element_set_render_pos(RefundHudElem, iconPosX + 36, iconPosY - 63);
@ -568,29 +568,29 @@ API_CALLABLE(func_80261DF4) {
switch (script->functionTemp[1]) {
case 0:
script->functionTemp[0]--;
item->position.y += script->functionTemp[0];
if (item->position.y < 0.0f) {
item->position.y = 0.0f;
item->pos.y += script->functionTemp[0];
if (item->pos.y < 0.0f) {
item->pos.y = 0.0f;
script->functionTemp[0] = 8;
script->functionTemp[1] = 1;
}
break;
case 1:
script->functionTemp[0]--;
item->position.y += script->functionTemp[0];
item->position.x += 1.5;
if (item->position.y < 0.0f) {
item->position.y = 0.0f;
item->pos.y += script->functionTemp[0];
item->pos.x += 1.5;
if (item->pos.y < 0.0f) {
item->pos.y = 0.0f;
script->functionTemp[0] = 4;
script->functionTemp[1] = 2;
}
break;
case 2:
script->functionTemp[0]--;
item->position.y += script->functionTemp[0];
item->position.x += 1.2;
if (item->position.y < 0.0f) {
item->position.y = 0.0f;
item->pos.y += script->functionTemp[0];
item->pos.x += 1.2;
if (item->pos.y < 0.0f) {
item->pos.y = 0.0f;
script->functionTemp[1] = 3;
}
break;
@ -619,16 +619,16 @@ API_CALLABLE(func_80261FB4) {
switch (script->functionTemp[0]) {
case 0:
ft1 = script->functionTemp[1];
deltaX = player->currentPos.x - item->position.x;
deltaY = player->currentPos.y + 12.0f - item->position.y;
deltaZ = player->currentPos.z - 5.0f - item->position.z;
deltaX = player->curPos.x - item->pos.x;
deltaY = player->curPos.y + 12.0f - item->pos.y;
deltaZ = player->curPos.z - 5.0f - item->pos.z;
item->position.x += deltaX / ft1;
item->position.y += deltaY / ft1;
item->position.z += deltaZ / ft1;
item->pos.x += deltaX / ft1;
item->pos.y += deltaY / ft1;
item->pos.z += deltaZ / ft1;
item->position.y += dist2D(item->position.x, item->position.y, player->currentPos.x,
player->currentPos.y + 12.0f) / 5.0f;
item->pos.y += dist2D(item->pos.x, item->pos.y, player->curPos.x,
player->curPos.y + 12.0f) / 5.0f;
if (script->functionTemp[1] == 1) {
script->functionTemp[0] = script->functionTemp[1];

View File

@ -88,18 +88,18 @@ void create_target_list(Actor* actor, s32 arg1) {
s32 row;
s32 skip;
if (battleStatus->currentTargetListFlags & TARGET_FLAG_80000000) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_80000000) {
actor->targetListLength = -1;
return;
}
if (battleStatus->currentTargetListFlags & TARGET_FLAG_PLAYER) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_PLAYER) {
targetDataList->actorID = ACTOR_PLAYER;
targetDataList->partID = 1;
if (!arg1) {
targetDataList->posA.x = playerActor->currentPos.x + playerActor->size.x * 0.3 * playerActor->scalingFactor;
targetDataList->posA.y = playerActor->currentPos.y + playerActor->size.y * 0.9 * playerActor->scalingFactor;
targetDataList->posA.z = playerActor->currentPos.z;
targetDataList->posA.x = playerActor->curPos.x + playerActor->size.x * 0.3 * playerActor->scalingFactor;
targetDataList->posA.y = playerActor->curPos.y + playerActor->size.y * 0.9 * playerActor->scalingFactor;
targetDataList->posA.z = playerActor->curPos.z;
} else {
targetDataList->posA.x = playerActor->homePos.x + playerActor->size.x * 0.3 * playerActor->scalingFactor;
targetDataList->posA.y = playerActor->homePos.y + playerActor->size.y * 0.9 * playerActor->scalingFactor;
@ -110,13 +110,13 @@ void create_target_list(Actor* actor, s32 arg1) {
targetDataList++;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_100) && partnerActor != NULL) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_100) && partnerActor != NULL) {
targetDataList->actorID = ACTOR_PARTNER;
targetDataList->partID = 1;
if (!arg1) {
targetDataList->posA.x = partnerActor->currentPos.x + partnerActor->size.x * 0.1 * partnerActor->scalingFactor;
targetDataList->posA.y = partnerActor->currentPos.y + partnerActor->size.y * 0.8 * partnerActor->scalingFactor;
targetDataList->posA.z = partnerActor->currentPos.z;
targetDataList->posA.x = partnerActor->curPos.x + partnerActor->size.x * 0.1 * partnerActor->scalingFactor;
targetDataList->posA.y = partnerActor->curPos.y + partnerActor->size.y * 0.8 * partnerActor->scalingFactor;
targetDataList->posA.z = partnerActor->curPos.z;
} else {
targetDataList->posA.x = partnerActor->homePos.x + partnerActor->size.x * 0.1 * partnerActor->scalingFactor;
targetDataList->posA.y = partnerActor->homePos.y + partnerActor->size.y * 0.8 * partnerActor->scalingFactor;
@ -132,7 +132,7 @@ void create_target_list(Actor* actor, s32 arg1) {
if (targetActor == NULL) {
continue;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_100) || (battleStatus->currentTargetListFlags & TARGET_FLAG_PLAYER)) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_100) || (battleStatus->curTargetListFlags & TARGET_FLAG_PLAYER)) {
break;
}
targetPart = targetActor->partsTable;
@ -144,9 +144,9 @@ void create_target_list(Actor* actor, s32 arg1) {
if (!(targetPart->flags & ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION)) {
row = !arg1; // required to match
if (row) {
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y;
targetZ = targetActor->curPos.z;
} else {
targetX = targetActor->homePos.x;
targetY = targetActor->homePos.y;
@ -166,9 +166,9 @@ void create_target_list(Actor* actor, s32 arg1) {
targetY = f2 + targetPart->targetOffset.y * targetActor->scalingFactor;
}
} else {
targetY = targetPart->absolutePosition.y;
targetZ = targetPart->absolutePosition.z;
f12 = targetPart->absolutePosition.x;
targetY = targetPart->absolutePos.y;
targetZ = targetPart->absolutePos.z;
f12 = targetPart->absolutePos.x;
f2 = targetY;
f14 = targetZ + 5.0f;
targetX = f12 + targetPart->targetOffset.x;
@ -248,7 +248,7 @@ void create_target_list(Actor* actor, s32 arg1) {
if (targetData->actorID == ACTOR_PLAYER || targetData->actorID == ACTOR_PARTNER) {
continue;
}
if (battleStatus->currentTargetListFlags & TARGET_FLAG_80000000) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_80000000) {
skip = TRUE;
goto END2;
}
@ -260,7 +260,7 @@ void create_target_list(Actor* actor, s32 arg1) {
goto END2;
}
}
if (battleStatus->currentTargetListFlags & TARGET_FLAG_8000) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_8000) {
if (!(targetPart->flags & ACTOR_PART_FLAG_MULTI_TARGET) ||
(targetActor->flags & ACTOR_FLAG_40) ||
(targetPart->flags & ACTOR_PART_FLAG_40))
@ -288,48 +288,48 @@ END2:
continue;
}
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_800) && (targetPart->targetFlags & ACTOR_PART_TARGET_FLAG_1)) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_800) && (targetPart->targetFlags & ACTOR_PART_TARGET_FLAG_1)) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_1000) && (targetPart->targetFlags & ACTOR_PART_TARGET_FLAG_2)) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_1000) && (targetPart->targetFlags & ACTOR_PART_TARGET_FLAG_2)) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_20000) && ((targetActor->flags & ACTOR_FLAG_80) || (targetPart->flags & ACTOR_PART_FLAG_80))) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_20000) && ((targetActor->flags & ACTOR_FLAG_80) || (targetPart->flags & ACTOR_PART_FLAG_80))) {
skip = TRUE;
goto END;
}
} while (0);
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_400) && (targetActor->flags & ACTOR_FLAG_UPSIDE_DOWN)) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_400) && (targetActor->flags & ACTOR_FLAG_UPSIDE_DOWN)) {
skip = TRUE;
goto END;
}
if (!(battleStatus->currentTargetListFlags & TARGET_FLAG_10000) && (targetActor->flags & ACTOR_FLAG_TARGET_ONLY)) {
if (!(battleStatus->curTargetListFlags & TARGET_FLAG_10000) && (targetActor->flags & ACTOR_FLAG_TARGET_ONLY)) {
skip = TRUE;
goto END;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_40000) && (targetActor->flags & ACTOR_FLAG_UPSIDE_DOWN)) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_40000) && (targetActor->flags & ACTOR_FLAG_UPSIDE_DOWN)) {
skip = TRUE;
goto END;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_4) && targetData->homeRow != 0) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_4) && targetData->homeRow != 0) {
skip = TRUE;
goto END;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_10) && targetData->homeRow >= 2) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_10) && targetData->homeRow >= 2) {
skip = TRUE;
goto END;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_40) && targetData->homeRow <= 0) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_40) && targetData->homeRow <= 0) {
skip = TRUE;
goto END;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_4000) && !(targetPart->flags & ACTOR_PART_FLAG_20)) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_4000) && !(targetPart->flags & ACTOR_PART_FLAG_20)) {
s32 cond = FALSE;
do {
for (j = 0; j < numTargets; j++) {
@ -349,7 +349,7 @@ END2:
goto END;
}
}
if (battleStatus->currentTargetListFlags & TARGET_FLAG_2000) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_2000) {
s32 cond = FALSE;
for (j = 0; j < numTargets; j++) {
@ -370,55 +370,55 @@ END2:
}
}
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_20) && (targetActor->flags & ACTOR_FLAG_FLYING)) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_20) && (targetActor->flags & ACTOR_FLAG_FLYING)) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_100000) && targetData->homeRow == row + 1) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_100000) && targetData->homeRow == row + 1) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_200000) && targetData->homeRow == row - 1) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_200000) && targetData->homeRow == row - 1) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_400000) && targetData->homeCol == col - 1) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_400000) && targetData->homeCol == col - 1) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_800000) && targetData->homeCol == col + 1) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_800000) && targetData->homeCol == col + 1) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_100000) && targetData->homeRow < row) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_100000) && targetData->homeRow < row) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_200000) && targetData->homeRow > row) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_200000) && targetData->homeRow > row) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_400000) && targetData->homeCol > col) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_400000) && targetData->homeCol > col) {
skip = TRUE;
goto END;
}
} while (0);
do {
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_800000) && targetData->homeCol < col) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_800000) && targetData->homeCol < col) {
skip = TRUE;
goto END;
}
@ -495,9 +495,9 @@ s32 func_80263064(Actor* actor0, Actor* actor1, s32 unused) {
f32 x, y, z;
if (!(part->flags & ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION)) {
x = actor1->currentPos.x;
y = actor1->currentPos.y;
z = actor1->currentPos.z;
x = actor1->curPos.x;
y = actor1->curPos.y;
z = actor1->curPos.z;
x += part->partOffset.x;
if (!(actor1->flags & ACTOR_FLAG_UPSIDE_DOWN)) {
@ -514,9 +514,9 @@ s32 func_80263064(Actor* actor0, Actor* actor1, s32 unused) {
y -= part->targetOffset.y;
}
} else {
x = part->absolutePosition.x;
y = part->absolutePosition.y;
z = part->absolutePosition.z;
x = part->absolutePos.x;
y = part->absolutePos.y;
z = part->absolutePos.z;
x += part->targetOffset.x;
if (!(actor1->flags & ACTOR_FLAG_UPSIDE_DOWN)) {
@ -574,7 +574,7 @@ void func_80263268(void) {
battleStatus->changePartnerAllowed = 0;
} else if (partner->debuff == STATUS_KEY_FROZEN) {
battleStatus->changePartnerAllowed = 0;
} else if (playerData->currentPartner == PARTNER_GOOMPA) {
} else if (playerData->curPartner == PARTNER_GOOMPA) {
battleStatus->changePartnerAllowed = -1;
}
} else {
@ -604,7 +604,7 @@ void func_80263300(void) {
if (itemData->typeFlags & ITEM_TYPE_FLAG_BATTLE_USABLE) {
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = playerData->invItems[i];
battleStatus->currentTargetListFlags = itemData->targetFlags;
battleStatus->curTargetListFlags = itemData->targetFlags;
player_create_target_list(player);
if (player->targetListLength != 0) {
@ -718,7 +718,7 @@ void btl_init_menu_boots(void) {
// See if there are any targets for this move
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
battleStatus->moveArgument = playerData->bootsLevel;
battleStatus->currentTargetListFlags = move->flags; // Controls target filters
battleStatus->curTargetListFlags = move->flags; // Controls target filters
player_create_target_list(player);
// If there are targets, enable the move
@ -812,7 +812,7 @@ void btl_init_menu_hammer(void) {
// See if there are any targets for this move
battleStatus->moveCategory = BTL_MENU_TYPE_SMASH;
battleStatus->moveArgument = playerData->hammerLevel;
battleStatus->currentTargetListFlags = move->flags;
battleStatus->curTargetListFlags = move->flags;
player_create_target_list(player);
// If there are targets, enable the move
@ -873,14 +873,14 @@ void btl_init_menu_partner(void) {
// Offsets 0,1,2
battleStatus->submenuMoves[0] =
playerData->currentPartner * 6
playerData->curPartner * 6
+ (MOVE_HEADBONK1 - 6)
+ partner->actorBlueprint->level;
// Offsets 3,4,5
for (i = 1; i < battleStatus->submenuMoveCount; i++) {
battleStatus->submenuMoves[i] =
playerData->currentPartner * 6
playerData->curPartner * 6
+ (MOVE_TATTLE - 6)
+ (i - 1);
}
@ -900,7 +900,7 @@ void btl_init_menu_partner(void) {
battleStatus->moveCategory = BTL_MENU_TYPE_CHANGE_PARTNER;
battleStatus->moveArgument = partner->actorBlueprint->level;
battleStatus->currentTargetListFlags = move->flags;
battleStatus->curTargetListFlags = move->flags;
player_create_target_list(partner);
if (partner->targetListLength != 0){
@ -1005,8 +1005,8 @@ void set_animation(s32 actorID, s32 partID, AnimID animID) {
switch (actorID & ACTOR_CLASS_MASK) {
case ACTOR_CLASS_PLAYER:
part = &actor->partsTable[0];
if (part->currentAnimation != animID) {
part->currentAnimation = animID;
if (part->curAnimation != animID) {
part->curAnimation = animID;
spr_update_player_sprite(PLAYER_SPRITE_MAIN, animID, part->animationRate);
}
break;
@ -1021,16 +1021,16 @@ void set_animation(s32 actorID, s32 partID, AnimID animID) {
part = &actor->partsTable[0];
}
if (part->currentAnimation != animID) {
part->currentAnimation = animID;
if (part->curAnimation != animID) {
part->curAnimation = animID;
spr_update_sprite(part->spriteInstanceID, animID, part->animationRate);
part->animNotifyValue = spr_get_notify_value(part->spriteInstanceID);
}
break;
case ACTOR_CLASS_ENEMY:
part = get_actor_part(actor, partID);
if (part->currentAnimation != animID) {
part->currentAnimation = animID;
if (part->curAnimation != animID) {
part->curAnimation = animID;
spr_update_sprite(part->spriteInstanceID, animID, part->animationRate);
part->animNotifyValue = spr_get_notify_value(part->spriteInstanceID);
}
@ -1043,15 +1043,15 @@ void func_80263E08(Actor* actor, ActorPart* part, AnimID anim) {
if ((s32) anim >= 0) {
switch (actor->actorID & ACTOR_CLASS_MASK) {
case ACTOR_CLASS_PLAYER:
if (part->currentAnimation != anim) {
part->currentAnimation = anim;
if (part->curAnimation != anim) {
part->curAnimation = anim;
spr_update_player_sprite(PLAYER_SPRITE_MAIN, anim, part->animationRate);
}
break;
case ACTOR_CLASS_PARTNER:
case ACTOR_CLASS_ENEMY:
if (part->currentAnimation != anim) {
part->currentAnimation = anim;
if (part->curAnimation != anim) {
part->curAnimation = anim;
spr_update_sprite(part->spriteInstanceID, anim, part->animationRate);
part->animNotifyValue = spr_get_notify_value(part->spriteInstanceID);
}
@ -1220,24 +1220,24 @@ void load_player_actor(void) {
player->actorType = bPlayerActorBlueprint.type;
if ((gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) || (gGameStatusPtr->demoFlags & 2)) {
player->homePos.x = player->currentPos.x = -130.0f;
player->homePos.y = player->currentPos.y = 0.0f;
player->homePos.z = player->currentPos.z = -10.0f;
player->homePos.x = player->curPos.x = -130.0f;
player->homePos.y = player->curPos.y = 0.0f;
player->homePos.z = player->curPos.z = -10.0f;
} else {
player->homePos.x = player->currentPos.x = -95.0f;
player->homePos.y = player->currentPos.y = 0.0f;
player->homePos.z = player->currentPos.z = 0.0f;
player->homePos.x = player->curPos.x = -95.0f;
player->homePos.y = player->curPos.y = 0.0f;
player->homePos.z = player->curPos.z = 0.0f;
}
player->headOffset.x = 0;
player->headOffset.y = 0;
player->headOffset.z = 0;
player->rotation.x = 0.0f;
player->rotation.y = 0.0f;
player->rotation.z = 0.0f;
player->rotationPivotOffset.x = 0;
player->rotationPivotOffset.y = 0;
player->rotationPivotOffset.z = 0;
player->rot.x = 0.0f;
player->rot.y = 0.0f;
player->rot.z = 0.0f;
player->rotPivotOffset.x = 0;
player->rotPivotOffset.y = 0;
player->rotPivotOffset.z = 0;
player->verticalRenderOffset = 0;
player->yaw = 0.0f;
player->renderMode = RENDER_MODE_ALPHATEST;
@ -1250,9 +1250,9 @@ void load_player_actor(void) {
player->size.x = player->actorBlueprint->size.x;
player->size.y = player->actorBlueprint->size.y;
player->actorID = 0;
player->healthBarPos.x = player->currentPos.x;
player->healthBarPos.y = player->currentPos.y;
player->healthBarPos.z = player->currentPos.z;
player->healthBarPos.x = player->curPos.x;
player->healthBarPos.y = player->curPos.y;
player->healthBarPos.z = player->curPos.z;
player->scalingFactor = 1.0f;
player->attackResultEffect = NULL;
player->actionRatingCombo = 0;
@ -1321,15 +1321,15 @@ void load_player_actor(void) {
part->partOffsetFloat.x = 0.0f;
part->partOffsetFloat.y = 0.0f;
part->partOffsetFloat.z = 0.0f;
part->rotationPivotOffset.x = 0;
part->rotationPivotOffset.y = 0;
part->rotationPivotOffset.z = 0;
part->rotPivotOffset.x = 0;
part->rotPivotOffset.y = 0;
part->rotPivotOffset.z = 0;
part->visualOffset.x = 0;
part->visualOffset.y = 0;
part->visualOffset.z = 0;
part->absolutePosition.x = 0.0f;
part->absolutePosition.y = 0.0f;
part->absolutePosition.z = 0.0f;
part->absolutePos.x = 0.0f;
part->absolutePos.y = 0.0f;
part->absolutePos.z = 0.0f;
part->defenseTable = bMarioDefenseTable;
if (gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) {
@ -1347,9 +1347,9 @@ void load_player_actor(void) {
part->targetOffset.x = 0;
part->targetOffset.y = 0;
part->unk_70 = 0;
part->rotation.x = 0.0f;
part->rotation.y = 0.0f;
part->rotation.z = 0.0f;
part->rot.x = 0.0f;
part->rot.y = 0.0f;
part->rot.z = 0.0f;
part->scale.x = 1.0f;
part->scale.y = 1.0f;
part->scale.z = 1.0f;
@ -1357,7 +1357,7 @@ void load_player_actor(void) {
part->palAnimPosOffset[0] = 0;
part->palAnimPosOffset[1] = 0;
part->animationRate = 1.0f;
part->currentAnimation = get_npc_anim_for_status(part->idleAnimations, 1U);
part->curAnimation = get_npc_anim_for_status(part->idleAnimations, 1U);
part->nextPart = NULL;
part->partTypeData[0] = bActorSoundTable[player->actorType].walk[0];
part->partTypeData[1] = bActorSoundTable[player->actorType].walk[1];
@ -1384,9 +1384,9 @@ void load_player_actor(void) {
decorationTable->unk_7D9 = 0;
for (j = 0; j < ARRAY_COUNT(decorationTable->posX); j++) {
decorationTable->posX[j] = player->currentPos.x;
decorationTable->posY[j] = player->currentPos.y;
decorationTable->posZ[j] = player->currentPos.z;
decorationTable->posX[j] = player->curPos.x;
decorationTable->posY[j] = player->curPos.y;
decorationTable->posZ[j] = player->curPos.z;
}
decorationTable->unk_7DA = 3;
@ -1402,7 +1402,7 @@ void load_player_actor(void) {
partMovement = part->movement = heap_malloc(sizeof(*partMovement));
ASSERT(partMovement != NULL);
player->shadow.id = create_shadow_type(0, player->currentPos.x, player->currentPos.y, player->currentPos.z);
player->shadow.id = create_shadow_type(0, player->curPos.x, player->curPos.y, player->curPos.z);
player->shadowScale = player->size.x / 24.0;
player->hudElementDataIndex = create_status_icon_set();
player->disableEffect = fx_disable_x(0, -142.0f, 34.0f, 1.0f, 0);
@ -1430,7 +1430,7 @@ void load_partner_actor(void) {
s32 i;
s32 i2;
currentPartner = playerData->currentPartner;
currentPartner = playerData->curPartner;
battleStatus->partnerActor = NULL;
if (currentPartner != PARTNER_NONE) {
@ -1456,19 +1456,19 @@ void load_partner_actor(void) {
ASSERT(partnerActor != NULL);
actorBP->level = playerData->partners[playerData->currentPartner].level;
actorBP->level = playerData->partners[playerData->curPartner].level;
partnerActor->unk_134 = battleStatus->unk_93++;
partnerActor->footStepCounter = 0;
partnerActor->actorBlueprint = actorBP;
partnerActor->actorType = actorBP->type;
partnerActor->flags = actorBP->flags;
partnerActor->homePos.x = partnerActor->currentPos.x = x;
partnerActor->homePos.y = partnerActor->currentPos.y = y;
partnerActor->homePos.z = partnerActor->currentPos.z = z;
partnerActor->homePos.x = partnerActor->curPos.x = x;
partnerActor->homePos.y = partnerActor->curPos.y = y;
partnerActor->homePos.z = partnerActor->curPos.z = z;
partnerActor->headOffset.x = 0;
partnerActor->headOffset.y = 0;
partnerActor->headOffset.z = 0;
partnerActor->currentHP = actorBP->maxHP;
partnerActor->curHP = actorBP->maxHP;
partnerActor->numParts = partCount;
partnerActor->idleSource = NULL;
partnerActor->takeTurnSource = actorBP->initScript;
@ -1481,12 +1481,12 @@ void load_partner_actor(void) {
partnerActor->turnPriority = 0;
partnerActor->enemyIndex = 0;
partnerActor->yaw = 0.0f;
partnerActor->rotation.x = 0.0f;
partnerActor->rotation.y = 0.0f;
partnerActor->rotation.z = 0.0f;
partnerActor->rotationPivotOffset.x = 0;
partnerActor->rotationPivotOffset.y = 0;
partnerActor->rotationPivotOffset.z = 0;
partnerActor->rot.x = 0.0f;
partnerActor->rot.y = 0.0f;
partnerActor->rot.z = 0.0f;
partnerActor->rotPivotOffset.x = 0;
partnerActor->rotPivotOffset.y = 0;
partnerActor->rotPivotOffset.z = 0;
partnerActor->scale.x = 1.0f;
partnerActor->scale.y = 1.0f;
partnerActor->scale.z = 1.0f;
@ -1561,9 +1561,9 @@ void load_partner_actor(void) {
part->visualOffset.x = 0;
part->visualOffset.y = 0;
part->visualOffset.z = 0;
part->absolutePosition.x = 0.0f;
part->absolutePosition.y = 0.0f;
part->absolutePosition.z = 0.0f;
part->absolutePos.x = 0.0f;
part->absolutePos.y = 0.0f;
part->absolutePos.z = 0.0f;
part->defenseTable = ActorPartBlueprint->defenseTable;
part->idleAnimations = ActorPartBlueprint->idleAnimations;
part->eventFlags = ActorPartBlueprint->eventFlags;
@ -1575,12 +1575,12 @@ void load_partner_actor(void) {
part->targetOffset.x = ActorPartBlueprint->targetOffset.x;
part->targetOffset.y = ActorPartBlueprint->targetOffset.y;
part->unk_70 = 0;
part->rotationPivotOffset.x = 0;
part->rotationPivotOffset.y = 0;
part->rotationPivotOffset.z = 0;
part->rotation.x = 0.0f;
part->rotation.y = 0.0f;
part->rotation.z = 0.0f;
part->rotPivotOffset.x = 0;
part->rotPivotOffset.y = 0;
part->rotPivotOffset.z = 0;
part->rot.x = 0.0f;
part->rot.y = 0.0f;
part->rot.z = 0.0f;
part->scale.x = 1.0f;
part->scale.y = 1.0f;
part->scale.z = 1.0f;
@ -1613,9 +1613,9 @@ void load_partner_actor(void) {
decorationTable->unk_7D9 = 0;
for (j = 0; j < ARRAY_COUNT(decorationTable->posX); j++) {
decorationTable->posX[j] = partnerActor->currentPos.x;
decorationTable->posY[j] = partnerActor->currentPos.y;
decorationTable->posZ[j] = partnerActor->currentPos.z;
decorationTable->posX[j] = partnerActor->curPos.x;
decorationTable->posY[j] = partnerActor->curPos.y;
decorationTable->posZ[j] = partnerActor->curPos.z;
}
decorationTable->unk_7DA = 3;
@ -1634,12 +1634,12 @@ void load_partner_actor(void) {
}
part->animationRate = 1.0f;
part->currentAnimation = 0;
part->curAnimation = 0;
part->spriteInstanceID = -1;
if (part->idleAnimations != NULL) {
part->currentAnimation = get_npc_anim_for_status(part->idleAnimations, 1);
part->spriteInstanceID = spr_load_npc_sprite(part->currentAnimation | SPRITE_ID_TAIL_ALLOCATE, NULL);
part->curAnimation = get_npc_anim_for_status(part->idleAnimations, 1);
part->spriteInstanceID = spr_load_npc_sprite(part->curAnimation | SPRITE_ID_TAIL_ALLOCATE, NULL);
}
if (i + 1 >= partCount) {
@ -1656,7 +1656,7 @@ void load_partner_actor(void) {
part->nextPart = NULL;
}
partnerActor->shadow.id = create_shadow_type(0, partnerActor->currentPos.x, partnerActor->currentPos.y, partnerActor->currentPos.z);
partnerActor->shadow.id = create_shadow_type(0, partnerActor->curPos.x, partnerActor->curPos.y, partnerActor->curPos.z);
partnerActor->shadowScale = partnerActor->size.x / 24.0;
partnerActor->hudElementDataIndex = create_status_icon_set();
partnerActor->disableEffect = fx_disable_x(0, -142.0f, 34.0f, 1.0f, 0);
@ -1708,13 +1708,13 @@ Actor* create_actor(Formation formation) {
actor->actorBlueprint = formationActor;
actor->actorType = formationActor->type;
actor->flags = formationActor->flags;
actor->homePos.x = actor->currentPos.x = x;
actor->homePos.y = actor->currentPos.y = y;
actor->homePos.z = actor->currentPos.z = z;
actor->homePos.x = actor->curPos.x = x;
actor->homePos.y = actor->curPos.y = y;
actor->homePos.z = actor->curPos.z = z;
actor->headOffset.x = 0;
actor->headOffset.y = 0;
actor->headOffset.z = 0;
actor->maxHP = actor->currentHP = formationActor->maxHP;
actor->maxHP = actor->curHP = formationActor->maxHP;
actor->numParts = partCount;
actor->idleSource = NULL;
actor->takeTurnSource = formationActor->initScript;
@ -1726,12 +1726,12 @@ Actor* create_actor(Formation formation) {
actor->turnPriority = formation->priority;
actor->enemyIndex = i;
actor->yaw = 0.0f;
actor->rotation.x = 0.0f;
actor->rotation.y = 0.0f;
actor->rotation.z = 0.0f;
actor->rotationPivotOffset.x = 0;
actor->rotationPivotOffset.y = 0;
actor->rotationPivotOffset.z = 0;
actor->rot.x = 0.0f;
actor->rot.y = 0.0f;
actor->rot.z = 0.0f;
actor->rotPivotOffset.x = 0;
actor->rotPivotOffset.y = 0;
actor->rotPivotOffset.z = 0;
actor->scale.x = 1.0f;
actor->scale.y = 1.0f;
actor->scale.z = 1.0f;
@ -1754,11 +1754,11 @@ Actor* create_actor(Formation formation) {
actor->actionRatingCombo = 0;
actor->actionRatingTime = 0;
actor->healthBarPos.x = actor->currentPos.x + formationActor->healthBarOffset.x;
actor->healthBarPos.y = actor->currentPos.y + formationActor->healthBarOffset.y;
actor->healthBarPos.z = actor->currentPos.z;
actor->healthBarPos.x = actor->curPos.x + formationActor->healthBarOffset.x;
actor->healthBarPos.y = actor->curPos.y + formationActor->healthBarOffset.y;
actor->healthBarPos.z = actor->curPos.z;
if (actor->flags & ACTOR_FLAG_UPSIDE_DOWN) {
actor->healthBarPos.y = actor->currentPos.y - actor->size.y - formationActor->healthBarOffset.y;
actor->healthBarPos.y = actor->curPos.y - actor->size.y - formationActor->healthBarOffset.y;
}
actor->statusTable = formationActor->statusTable;
@ -1819,12 +1819,12 @@ Actor* create_actor(Formation formation) {
part->visualOffset.y = 0;
part->visualOffset.z = 0;
part->absolutePosition.x = actor->currentPos.x;
part->absolutePosition.y = actor->currentPos.y;
part->absolutePosition.z = actor->currentPos.z;
part->currentPos.x = actor->currentPos.x;
part->currentPos.y = actor->currentPos.y;
part->currentPos.z = actor->currentPos.z;
part->absolutePos.x = actor->curPos.x;
part->absolutePos.y = actor->curPos.y;
part->absolutePos.z = actor->curPos.z;
part->curPos.x = actor->curPos.x;
part->curPos.y = actor->curPos.y;
part->curPos.z = actor->curPos.z;
part->defenseTable = actorPartBP->defenseTable;
part->idleAnimations = actorPartBP->idleAnimations;
part->eventFlags = actorPartBP->eventFlags;
@ -1841,12 +1841,12 @@ Actor* create_actor(Formation formation) {
part->unk_70 = 0;
part->projectileTargetOffset.x = actorPartBP->projectileTargetOffset.x;
part->projectileTargetOffset.y = actorPartBP->projectileTargetOffset.y;
part->rotation.x = 0.0f;
part->rotation.y = 0.0f;
part->rotation.z = 0.0f;
part->rotationPivotOffset.x = 0;
part->rotationPivotOffset.y = 0;
part->rotationPivotOffset.z = 0;
part->rot.x = 0.0f;
part->rot.y = 0.0f;
part->rot.z = 0.0f;
part->rotPivotOffset.x = 0;
part->rotPivotOffset.y = 0;
part->rotPivotOffset.z = 0;
part->scale.x = 1.0f;
part->scale.y = 1.0f;
part->scale.z = 1.0f;
@ -1875,9 +1875,9 @@ Actor* create_actor(Formation formation) {
decorationTable->unk_7D9 = 0;
for (k = 0; k < ARRAY_COUNT(decorationTable->posX); k++) {
decorationTable->posX[k] = actor->currentPos.x;
decorationTable->posY[k] = actor->currentPos.y;
decorationTable->posZ[k] = actor->currentPos.z;
decorationTable->posX[k] = actor->curPos.x;
decorationTable->posY[k] = actor->curPos.y;
decorationTable->posZ[k] = actor->curPos.z;
}
decorationTable->unk_7DA = 3;
@ -1901,12 +1901,12 @@ Actor* create_actor(Formation formation) {
}
part->animationRate = 1.0f;
part->currentAnimation = 0;
part->curAnimation = 0;
part->spriteInstanceID = -1;
if (part->idleAnimations != NULL) {
part->currentAnimation = get_npc_anim_for_status(part->idleAnimations, 1) & ~SPRITE_ID_TAIL_ALLOCATE;
part->spriteInstanceID = spr_load_npc_sprite(part->currentAnimation, NULL);
part->curAnimation = get_npc_anim_for_status(part->idleAnimations, 1) & ~SPRITE_ID_TAIL_ALLOCATE;
part->spriteInstanceID = spr_load_npc_sprite(part->curAnimation, NULL);
}
if (j + 1 >= partCount) {
@ -1928,7 +1928,7 @@ Actor* create_actor(Formation formation) {
takeTurnScript = start_script(actor->takeTurnSource, EVT_PRIORITY_A, 0);
actor->takeTurnScriptID = takeTurnScript->id;
takeTurnScript->owner1.enemyID = actor->enemyIndex | ACTOR_CLASS_ENEMY;
actor->shadow.id = create_shadow_type(0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z);
actor->shadow.id = create_shadow_type(0, actor->curPos.x, actor->curPos.y, actor->curPos.z);
actor->shadowScale = actor->size.x / 24.0;
actor->disableEffect = fx_disable_x(0, -142.0f, 34.0f, 1.0f, 0);
actor->icePillarEffect = NULL;
@ -2110,8 +2110,8 @@ s32 inflict_status(Actor* target, s32 statusTypeKey, s32 duration) {
if (effect != NULL) {
effect->flags |= FX_INSTANCE_FLAG_DISMISS;
}
target->icePillarEffect = fx_ice_pillar(0, target->currentPos.x, target->currentPos.y,
target->currentPos.z, 1.0f, 0);
target->icePillarEffect = fx_ice_pillar(0, target->curPos.x, target->curPos.y,
target->curPos.z, 1.0f, 0);
create_status_debuff(target->hudElementDataIndex, STATUS_KEY_FROZEN);
}
return TRUE;
@ -2341,11 +2341,11 @@ void show_damage_fx(Actor* actor, f32 x, f32 y, f32 z, s32 damage) {
}
do {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_FIRE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_FIRE) {
fx_ring_blast(0, x, y, z, 1.0f, 24);
} else if (battleStatus->currentAttackElement & DAMAGE_TYPE_SHOCK) {
} else if (battleStatus->curAttackElement & DAMAGE_TYPE_SHOCK) {
apply_shock_effect(actor);
} else if (battleStatus->currentAttackElement & DAMAGE_TYPE_WATER) {
} else if (battleStatus->curAttackElement & DAMAGE_TYPE_WATER) {
fx_water_splash(0, x, y, z, 1.0f, 24);
} else {
fx_firework(0, x, y, z, 1.0, intensity);
@ -2541,7 +2541,7 @@ s32 try_inflict_status(Actor* actor, s32 statusTypeKey, s32 statusKey) {
duration = 0;
if (actor->statusTable != NULL) {
if (!(battleStatus->currentAttackStatus & STATUS_FLAG_RIGHT_ON)) {
if (!(battleStatus->curAttackStatus & STATUS_FLAG_RIGHT_ON)) {
chance = lookup_status_chance(actor->statusTable, statusTypeKey);
} else {
if (lookup_status_chance(actor->statusTable, statusTypeKey) != 0) {
@ -2564,7 +2564,7 @@ s32 try_inflict_status(Actor* actor, s32 statusTypeKey, s32 statusKey) {
meow:
if (duration > 0) {
if (battleStatus->currentAttackStatus < 0) {
if (battleStatus->curAttackStatus < 0) {
duration = battleStatus->statusDuration;
duration += lookup_status_duration_mod(actor->statusTable, statusKey);
inflict_status(actor, statusTypeKey, duration);
@ -2814,7 +2814,7 @@ void create_part_shadow(s32 actorID, s32 partID) {
ActorPart* part = get_actor_part(get_actor(actorID), partID);
part->flags &= ~ACTOR_PART_FLAG_4;
part->shadowIndex = create_shadow_type(0, part->currentPos.x, part->currentPos.y, part->currentPos.z);
part->shadowIndex = create_shadow_type(0, part->curPos.x, part->curPos.y, part->curPos.z);
part->shadowScale = part->size.x / 24.0;
}
@ -2827,7 +2827,7 @@ void remove_part_shadow(s32 actorID, s32 partID) {
void create_part_shadow_by_ref(UNK_TYPE arg0, ActorPart* part) {
part->flags &= ~ACTOR_PART_FLAG_4;
part->shadowIndex = create_shadow_type(0, part->currentPos.x, part->currentPos.y, part->currentPos.z);
part->shadowIndex = create_shadow_type(0, part->curPos.x, part->curPos.y, part->curPos.z);
part->shadowScale = part->size.x / 24.0;
}
@ -2869,10 +2869,10 @@ void remove_player_buffs(s32 buffs) {
battleStatus->buffEffect->data.partnerBuff->unk_0C[FX_BUFF_DATA_WATER_BLOCK].turnsLeft = 0;
battleStatus->waterBlockEffect->flags |= FX_INSTANCE_FLAG_DISMISS;
fx_water_block(1, player->currentPos.x, player->currentPos.y + 18.0f, player->currentPos.z + 5.0f, 1.5f, 0xA);
fx_water_splash(0, player->currentPos.x - 10.0f, player->currentPos.y + 5.0f, player->currentPos.z + 5.0f, 1.0f, 0x18);
fx_water_splash(0, player->currentPos.x - 15.0f, player->currentPos.y + 32.0f, player->currentPos.z + 5.0f, 1.0f, 0x18);
fx_water_splash(1, player->currentPos.x + 15.0f, player->currentPos.y + 22.0f, player->currentPos.z + 5.0f, 1.0f, 0x18);
fx_water_block(1, player->curPos.x, player->curPos.y + 18.0f, player->curPos.z + 5.0f, 1.5f, 0xA);
fx_water_splash(0, player->curPos.x - 10.0f, player->curPos.y + 5.0f, player->curPos.z + 5.0f, 1.0f, 0x18);
fx_water_splash(0, player->curPos.x - 15.0f, player->curPos.y + 32.0f, player->curPos.z + 5.0f, 1.0f, 0x18);
fx_water_splash(1, player->curPos.x + 15.0f, player->curPos.y + 22.0f, player->curPos.z + 5.0f, 1.0f, 0x18);
battleStatus->waterBlockEffect = NULL;
sfx_play_sound(SOUND_299);
@ -2989,7 +2989,7 @@ void reset_all_actor_sounds(Actor* actor) {
}
void hide_foreground_models_unchecked(void) {
Stage* stage = gBattleStatus.currentStage;
Stage* stage = gBattleStatus.curStage;
if (stage != NULL && stage->foregroundModelList != NULL) {
s32* idList = stage->foregroundModelList;
@ -3004,7 +3004,7 @@ void hide_foreground_models_unchecked(void) {
}
void show_foreground_models_unchecked(void) {
Stage* stage = gBattleStatus.currentStage;
Stage* stage = gBattleStatus.curStage;
if (stage != NULL && stage->foregroundModelList != NULL) {
s32* idList = stage->foregroundModelList;
@ -3019,7 +3019,7 @@ void show_foreground_models_unchecked(void) {
}
void hide_foreground_models(void) {
Stage* stage = gBattleStatus.currentStage;
Stage* stage = gBattleStatus.curStage;
if (stage != NULL && stage->foregroundModelList != NULL) {
s32* idList = stage->foregroundModelList;
@ -3037,7 +3037,7 @@ void hide_foreground_models(void) {
}
void show_foreground_models(void) {
Stage* stage = gBattleStatus.currentStage;
Stage* stage = gBattleStatus.curStage;
if (stage != NULL && stage->foregroundModelList != NULL) {
s32* idList = stage->foregroundModelList;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -48,14 +48,14 @@ void dispatch_event_partner_continue_turn(s8 lastEventType) {
HitResult calc_partner_test_enemy(void) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* partner = battleStatus->partnerActor;
s32 currentTargetID = battleStatus->currentTargetID;
s32 currentTargetPart = battleStatus->currentTargetPart;
s32 currentTargetID = battleStatus->curTargetID;
s32 currentTargetPart = battleStatus->curTargetPart;
Actor* target;
ActorState* state;
ActorPart* part;
battleStatus->currentTargetID2 = battleStatus->currentTargetID;
battleStatus->currentTargetPart2 = battleStatus->currentTargetPart;
battleStatus->curTargetID2 = battleStatus->curTargetID;
battleStatus->curTargetPart2 = battleStatus->curTargetPart;
target = get_actor(currentTargetID);
state = &partner->state;
@ -75,7 +75,7 @@ HitResult calc_partner_test_enemy(void) {
}
// check partner jumping on top-spiky enemy (cannot be suppressed)
if ((battleStatus->currentAttackElement & DAMAGE_TYPE_JUMP)
if ((battleStatus->curAttackElement & DAMAGE_TYPE_JUMP)
&& (part->eventFlags & ACTOR_EVENT_FLAG_SPIKY_TOP)
&& !(target->flags2 & ACTOR_FLAG_UPSIDE_DOWN)
) {
@ -84,9 +84,9 @@ HitResult calc_partner_test_enemy(void) {
}
// check partner contacting front-spiky enemy
if (!(battleStatus->currentAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_JUMP))
if (!(battleStatus->curAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_JUMP))
&& (part->eventFlags & ACTOR_EVENT_FLAG_SPIKY_FRONT)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SPIKY_FRONT)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SPIKY_FRONT)
&& !player_team_is_ability_active(partner, ABILITY_SPIKE_SHIELD)
) {
sfx_play_sound_at_position(SOUND_108, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
@ -96,9 +96,9 @@ HitResult calc_partner_test_enemy(void) {
}
// check partner contacting fiery enemy
if (!(battleStatus->currentAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SMASH))
if (!(battleStatus->curAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SMASH))
&& (part->eventFlags & ACTOR_EVENT_FLAG_FIREY)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_BURN_CONTACT)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_BURN_CONTACT)
) {
sfx_play_sound_at_position(SOUND_HIT_FIRE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_BURN_CONTACT);
@ -107,12 +107,12 @@ HitResult calc_partner_test_enemy(void) {
}
// specifal handling for air lift
if (battleStatus->currentAttackElement & DAMAGE_TYPE_AIR_LIFT) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_AIR_LIFT) {
// check partner airlifting top-spiky enemy
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT)) {
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT)) {
if ((part->eventFlags & ACTOR_EVENT_FLAG_SPIKY_TOP)
&& !(target->flags & ACTOR_FLAG_UPSIDE_DOWN)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SPIKY_TOP)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SPIKY_TOP)
) {
sfx_play_sound_at_position(SOUND_108, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_SPIKE_CONTACT);
@ -120,10 +120,10 @@ HitResult calc_partner_test_enemy(void) {
return HIT_RESULT_BACKFIRE;
}
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT)
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& (part->eventFlags & ACTOR_EVENT_FLAG_200000)
&& !(target->flags & ACTOR_FLAG_UPSIDE_DOWN)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_FLAG_80)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_FLAG_80)
) {
sfx_play_sound_at_position(SOUND_108, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_SPIKE_CONTACT);
@ -135,8 +135,8 @@ HitResult calc_partner_test_enemy(void) {
// check partner airlifting electrified enemy
if (partner->staticStatus != STATUS_KEY_STATIC
&& (target->staticStatus == STATUS_KEY_STATIC || (part->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED))
&& !(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT))
&& !(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT))
{
sfx_play_sound_at_position(SOUND_HIT_SHOCK, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
apply_shock_effect(partner);
@ -145,9 +145,9 @@ HitResult calc_partner_test_enemy(void) {
}
// check partner airlifting fiery enemy
if (!(battleStatus->currentAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SMASH))
if (!(battleStatus->curAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SMASH))
&& (part->eventFlags & ACTOR_EVENT_FLAG_FIREY)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_BURN_CONTACT))
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_BURN_CONTACT))
{
sfx_play_sound_at_position(SOUND_HIT_FIRE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_BURN_CONTACT);
@ -162,8 +162,8 @@ HitResult calc_partner_test_enemy(void) {
HitResult calc_partner_damage_enemy(void) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* partner = battleStatus->partnerActor;
s32 currentTargetID = battleStatus->currentTargetID;
s32 currentTargetPartID = battleStatus->currentTargetPart;
s32 currentTargetID = battleStatus->curTargetID;
s32 currentTargetPartID = battleStatus->curTargetPart;
s32 retVal;
s32 partImmuneToElement = FALSE;
s32 isFireDamage = FALSE;
@ -183,8 +183,8 @@ HitResult calc_partner_damage_enemy(void) {
battleStatus->wasStatusInflicted = FALSE;
battleStatus->lastAttackDamage = 0;
battleStatus->attackerActorID = partner->actorID;
battleStatus->currentTargetID2 = battleStatus->currentTargetID;
battleStatus->currentTargetPart2 = battleStatus->currentTargetPart;
battleStatus->curTargetID2 = battleStatus->curTargetID;
battleStatus->curTargetPart2 = battleStatus->curTargetPart;
target = get_actor(currentTargetID);
state = &partner->state;
@ -205,7 +205,7 @@ HitResult calc_partner_damage_enemy(void) {
} else {
if (targetPart->eventFlags & ACTOR_EVENT_FLAG_ILLUSORY
|| target->transparentStatus == STATUS_KEY_TRANSPARENT
|| (targetPart->eventFlags & ACTOR_EVENT_FLAG_800 && !(battleStatus->currentAttackElement & DAMAGE_TYPE_QUAKE))
|| (targetPart->eventFlags & ACTOR_EVENT_FLAG_800 && !(battleStatus->curAttackElement & DAMAGE_TYPE_QUAKE))
) {
return HIT_RESULT_MISS;
}
@ -220,12 +220,12 @@ HitResult calc_partner_damage_enemy(void) {
return HIT_RESULT_HIT;
}
if (targetPart->elementalImmunities & battleStatus->currentAttackElement) {
if (targetPart->elementalImmunities & battleStatus->curAttackElement) {
partImmuneToElement = TRUE;
}
// check jumping on spiky enemy
if (battleStatus->currentAttackElement & DAMAGE_TYPE_JUMP
if (battleStatus->curAttackElement & DAMAGE_TYPE_JUMP
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_SPIKY_TOP
) {
sfx_play_sound_at_position(SOUND_108, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
@ -235,12 +235,12 @@ HitResult calc_partner_damage_enemy(void) {
}
// check explode on contact
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT)
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_EXPLODE_ON_CONTACT
) {
dispatch_event_actor(target, EVENT_EXPLODE_TRIGGER);
if (!(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_EXPLODE_CONTACT)) {
if (!(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_EXPLODE_CONTACT)) {
sfx_play_sound_at_position(SOUND_HIT_FIRE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_BURN_CONTACT);
return HIT_RESULT_BACKFIRE;
@ -254,9 +254,9 @@ HitResult calc_partner_damage_enemy(void) {
}
// check touching fiery enemy
if (!(battleStatus->currentAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SMASH))
if (!(battleStatus->curAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SMASH))
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_FIREY
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_BURN_CONTACT)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_BURN_CONTACT)
) {
sfx_play_sound_at_position(SOUND_HIT_FIRE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_BURN_CONTACT);
@ -265,9 +265,9 @@ HitResult calc_partner_damage_enemy(void) {
}
// check touching spiky-front enemy
if (!(battleStatus->currentAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_JUMP))
if (!(battleStatus->curAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_JUMP))
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_SPIKY_FRONT
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SPIKY_FRONT)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SPIKY_FRONT)
) {
sfx_play_sound_at_position(SOUND_108, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_SPIKE_CONTACT);
@ -277,7 +277,7 @@ HitResult calc_partner_damage_enemy(void) {
// check explode on ignition
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE
&& battleStatus->currentAttackElement & DAMAGE_TYPE_FIRE
&& battleStatus->curAttackElement & DAMAGE_TYPE_FIRE
&& targetPart->eventFlags & (ACTOR_EVENT_FLAG_FIRE_EXPLODE | ACTOR_EVENT_FLAG_EXPLODE_ON_IGNITION)
) {
sfx_play_sound_at_position(SOUND_HIT_FIRE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
@ -289,10 +289,10 @@ HitResult calc_partner_damage_enemy(void) {
}
// unknown alternate spiky #1
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT)
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_200000
&& !(target->flags & ACTOR_FLAG_UPSIDE_DOWN)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_FLAG_80)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_FLAG_80)
) {
sfx_play_sound_at_position(SOUND_108, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_SPIKE_CONTACT);
@ -301,10 +301,10 @@ HitResult calc_partner_damage_enemy(void) {
}
// unknown alternate spiky top
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT)
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_SPIKY_TOP
&& !(target->flags & ACTOR_FLAG_UPSIDE_DOWN)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SPIKY_TOP)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SPIKY_TOP)
) {
sfx_play_sound_at_position(SOUND_108, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
dispatch_damage_event_partner_1(1, EVENT_SPIKE_CONTACT);
@ -314,7 +314,7 @@ HitResult calc_partner_damage_enemy(void) {
// check explode on ignition (duplicate of previous check)
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE
&& battleStatus->currentAttackElement & DAMAGE_TYPE_FIRE
&& battleStatus->curAttackElement & DAMAGE_TYPE_FIRE
&& targetPart->eventFlags & (ACTOR_EVENT_FLAG_FIRE_EXPLODE | ACTOR_EVENT_FLAG_EXPLODE_ON_IGNITION)
) {
sfx_play_sound_at_position(SOUND_HIT_FIRE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
@ -326,11 +326,11 @@ HitResult calc_partner_damage_enemy(void) {
}
// check shock contact for airlift
if (battleStatus->currentAttackElement & DAMAGE_TYPE_AIR_LIFT) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_AIR_LIFT) {
if (partner->staticStatus != STATUS_KEY_STATIC
&& (target->staticStatus == STATUS_KEY_STATIC || targetPart->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED)
&& !(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT)
&& !(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT)
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT)
) {
sfx_play_sound_at_position(SOUND_HIT_SHOCK, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
apply_shock_effect(partner);
@ -340,56 +340,56 @@ HitResult calc_partner_damage_enemy(void) {
return HIT_RESULT_HIT;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_FIRE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_FIRE) {
fx_ring_blast(0, state->goalPos.x, state->goalPos.y, state->goalPos.z + 5.0f, 1.0f, 24);
isFireDamage = TRUE;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_SHOCK) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_SHOCK) {
apply_shock_effect(target);
isShockDamage = TRUE;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_WATER) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_WATER) {
fx_water_splash(0, state->goalPos.x, state->goalPos.y, state->goalPos.z + 5.0f, 1.0f, 24);
isWaterDamage = TRUE;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_ICE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_ICE) {
fx_big_snowflakes(0, state->goalPos.x, state->goalPos.y, state->goalPos.z + 5.0f);
isIceDamage = TRUE;
}
if (partner->staticStatus != STATUS_KEY_STATIC
&& (target->staticStatus == STATUS_KEY_STATIC || targetPart->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED)
&& !(battleStatus->currentAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SHOCK))
&& !(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT)
&& !(battleStatus->curAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_SHOCK))
&& !(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT)
) {
gBattleStatus.flags1 |= BS_FLAGS1_SP_EVT_ACTIVE;
}
if (targetPart->eventFlags & (ACTOR_EVENT_FLAG_STAR_ROD_ENCHANTED | ACTOR_EVENT_FLAG_ENCHANTED)) {
battleStatus->currentAttackElement &= ~DAMAGE_TYPE_IGNORE_DEFENSE;
battleStatus->curAttackElement &= ~DAMAGE_TYPE_IGNORE_DEFENSE;
}
statusChanceOrDefense = get_defense(target, targetPart->defenseTable, battleStatus->currentAttackElement);
statusChanceOrDefense = get_defense(target, targetPart->defenseTable, battleStatus->curAttackElement);
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_IGNORE_DEFENSE)) {
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_IGNORE_DEFENSE)) {
statusChanceOrDefense += target->defenseBoost;
}
damageDealt = battleStatus->currentAttackDamage + partner->attackBoost;
damageDealt = battleStatus->curAttackDamage + partner->attackBoost;
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_BLAST
if (battleStatus->curAttackElement & DAMAGE_TYPE_BLAST
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_EXPLODE_ON_IGNITION
) {
statusChanceOrDefense = 0;
damageDealt = target->currentHP;
damageDealt = target->curHP;
}
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS) {
statusChanceOrDefense = 0;
damageDealt = 0;
}
@ -419,7 +419,7 @@ HitResult calc_partner_damage_enemy(void) {
damageDealt = 0;
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_POWER_BOUNCE && damageDealt > 0) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_POWER_BOUNCE && damageDealt > 0) {
damageDealt += battleStatus->powerBounceCounter;
if (damageDealt < 1) {
@ -432,13 +432,13 @@ HitResult calc_partner_damage_enemy(void) {
if (damageDealt < 1) {
target->hpChangeCounter = 0;
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS)) {
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS)) {
retVal = 2;
dispatchEvent = EVENT_ZERO_DAMAGE;
sfx_play_sound_at_position(SOUND_IMMUNE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
} else {
retVal = 2;
if (target->currentHP < 1) {
if (target->curHP < 1) {
dispatchEvent = EVENT_DEATH;
} else {
dispatchEvent = EVENT_ZERO_DAMAGE;
@ -458,10 +458,10 @@ HitResult calc_partner_damage_enemy(void) {
&& !partImmuneToElement
&& !(targetPart->targetFlags & ACTOR_PART_TARGET_FLAG_4)
) {
target->currentHP -= damageDealt;
target->curHP -= damageDealt;
if (target->currentHP < 1) {
target->currentHP = 0;
if (target->curHP < 1) {
target->curHP = 0;
dispatchEvent = EVENT_DEATH;
}
}
@ -474,8 +474,8 @@ HitResult calc_partner_damage_enemy(void) {
if (targetPart->flags & ACTOR_PART_FLAG_2000) {
if (partner->staticStatus == STATUS_KEY_STATIC
|| !(target->staticStatus == STATUS_KEY_STATIC || (targetPart->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED))
|| battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT
|| battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT
|| battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT
|| battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT
) {
dispatchEvent = (!(gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE)) ? EVENT_ZERO_DAMAGE : EVENT_IMMUNE;
sfx_play_sound_at_position(SOUND_IMMUNE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
@ -503,7 +503,7 @@ HitResult calc_partner_damage_enemy(void) {
dispatchEvent = EVENT_IMMUNE;
}
if (target->currentHP < 1) {
if (target->curHP < 1) {
if (dispatchEvent == EVENT_IMMUNE) {
dispatchEvent = EVENT_DEATH;
}
@ -517,7 +517,7 @@ HitResult calc_partner_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_SPIN_SMASH) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_SPIN_SMASH) {
if (dispatchEvent == EVENT_HIT) {
dispatchEvent = EVENT_SPIN_SMASH_HIT;
}
@ -530,7 +530,7 @@ HitResult calc_partner_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (!(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT) && targetPart->eventFlags & ACTOR_EVENT_FLAG_POWER_BOUNCE) {
if (!(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT) && targetPart->eventFlags & ACTOR_EVENT_FLAG_POWER_BOUNCE) {
if (dispatchEvent == EVENT_HIT_COMBO) {
dispatchEvent = EVENT_POWER_BOUNCE_HIT;
}
@ -553,7 +553,7 @@ HitResult calc_partner_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_JUMP && targetPart->eventFlags & ACTOR_EVENT_FLAG_GROUNDABLE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_JUMP && targetPart->eventFlags & ACTOR_EVENT_FLAG_GROUNDABLE) {
if (dispatchEvent == EVENT_HIT) {
dispatchEvent = EVENT_FALL_TRIGGER;
}
@ -566,7 +566,7 @@ HitResult calc_partner_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_JUMP && targetPart->eventFlags & ACTOR_EVENT_FLAG_FLIPABLE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_JUMP && targetPart->eventFlags & ACTOR_EVENT_FLAG_FLIPABLE) {
if (dispatchEvent == EVENT_HIT) {
dispatchEvent = EVENT_FLIP_TRIGGER;
}
@ -585,7 +585,7 @@ HitResult calc_partner_damage_enemy(void) {
}
if (!(gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE)
&& battleStatus->currentAttackElement & DAMAGE_TYPE_JUMP
&& battleStatus->curAttackElement & DAMAGE_TYPE_JUMP
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_FLIPABLE
) {
if (dispatchEvent == EVENT_HIT_COMBO) {
@ -602,7 +602,7 @@ HitResult calc_partner_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE
&& battleStatus->currentAttackElement & DAMAGE_TYPE_BLAST
&& battleStatus->curAttackElement & DAMAGE_TYPE_BLAST
&& targetPart->eventFlags & ACTOR_EVENT_FLAG_EXPLODE_ON_IGNITION
) {
if (dispatchEvent == EVENT_DEATH) {
@ -622,7 +622,7 @@ HitResult calc_partner_damage_enemy(void) {
}
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & (DAMAGE_TYPE_BLAST | DAMAGE_TYPE_FIRE)) {
if (battleStatus->curAttackElement & (DAMAGE_TYPE_BLAST | DAMAGE_TYPE_FIRE)) {
if (dispatchEvent == EVENT_HIT) {
dispatchEvent = EVENT_BURN_HIT;
}
@ -643,7 +643,7 @@ HitResult calc_partner_damage_enemy(void) {
&& !(targetPart->targetFlags & ACTOR_PART_TARGET_FLAG_4)
) {
#define INFLICT_STATUS(STATUS_TYPE) \
if ((battleStatus->currentAttackStatus & STATUS_FLAG_##STATUS_TYPE) && \
if ((battleStatus->curAttackStatus & STATUS_FLAG_##STATUS_TYPE) && \
try_inflict_status(target, STATUS_KEY_##STATUS_TYPE, STATUS_TURN_MOD_##STATUS_TYPE)) { \
tempBinary = TRUE; \
wasStatusInflicted = TRUE; \
@ -669,7 +669,7 @@ HitResult calc_partner_damage_enemy(void) {
statusChanceOrDefense = (battleStatus->statusChance * statusChanceOrDefense) / 100;
if (battleStatus->currentAttackStatus & STATUS_FLAG_400000) {
if (battleStatus->curAttackStatus & STATUS_FLAG_400000) {
if (rand_int(99) < statusChanceOrDefense) {
if (!(target->debuff == STATUS_KEY_FEAR
|| target->debuff == STATUS_KEY_DIZZY
@ -712,7 +712,7 @@ HitResult calc_partner_damage_enemy(void) {
statusChanceOrDefense = (battleStatus->statusChance * statusChanceOrDefense) / 100;
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (battleStatus->currentAttackElement & DAMAGE_TYPE_FEAR) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_FEAR) {
if (rand_int(99) < statusChanceOrDefense) {
if (!(target->debuff == STATUS_KEY_FEAR ||
target->debuff == STATUS_KEY_DIZZY ||
@ -746,7 +746,7 @@ HitResult calc_partner_damage_enemy(void) {
show_immune_bonk(state->goalPos.x, state->goalPos.y, state->goalPos.z, 0, 1, 3);
}
} else if (!partImmuneToElement) {
if (battleStatus->currentAttackElement & (DAMAGE_TYPE_MULTIPLE_POPUPS | DAMAGE_TYPE_SMASH)) {
if (battleStatus->curAttackElement & (DAMAGE_TYPE_MULTIPLE_POPUPS | DAMAGE_TYPE_SMASH)) {
show_next_damage_popup(state->goalPos.x, state->goalPos.y, state->goalPos.z, battleStatus->lastAttackDamage, 0);
} else {
show_primary_damage_popup(state->goalPos.x, state->goalPos.y, state->goalPos.z, battleStatus->lastAttackDamage, 0);
@ -767,7 +767,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_231, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->lastAttackDamage > 0 || (battleStatus->currentAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS && tempBinary)) {
if (battleStatus->lastAttackDamage > 0 || (battleStatus->curAttackElement & DAMAGE_TYPE_STATUS_ALWAYS_HITS && tempBinary)) {
if (gBattleStatus.flags1 & BS_FLAGS1_40) {
show_action_rating(ACTION_RATING_NICE, target, state->goalPos.x, state->goalPos.y, state->goalPos.z);
} else {
@ -807,7 +807,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_IMMUNE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackStatus & STATUS_FLAG_SLEEP && wasStatusInflicted) {
if (battleStatus->curAttackStatus & STATUS_FLAG_SLEEP && wasStatusInflicted) {
evt = start_script((EvtScript*) EVS_PlaySleepHitFX, EVT_PRIORITY_A, 0);
evt->varTable[0] = state->goalPos.x;
evt->varTable[1] = state->goalPos.y;
@ -815,7 +815,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_INFLICT_SLEEP, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackStatus & STATUS_FLAG_DIZZY && wasStatusInflicted) {
if (battleStatus->curAttackStatus & STATUS_FLAG_DIZZY && wasStatusInflicted) {
evt = start_script((EvtScript*) EVS_PlayDizzyHitFX, EVT_PRIORITY_A, 0);
evt->varTable[0] = state->goalPos.x;
evt->varTable[1] = state->goalPos.y;
@ -823,7 +823,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackStatus & STATUS_FLAG_PARALYZE && wasStatusInflicted) {
if (battleStatus->curAttackStatus & STATUS_FLAG_PARALYZE && wasStatusInflicted) {
evt = start_script((EvtScript*) EVS_PlayParalyzeHitFX, EVT_PRIORITY_A, 0);
evt->varTable[0] = state->goalPos.x;
evt->varTable[1] = state->goalPos.y;
@ -831,7 +831,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackStatus & STATUS_FLAG_POISON && wasStatusInflicted) {
if (battleStatus->curAttackStatus & STATUS_FLAG_POISON && wasStatusInflicted) {
evt = start_script((EvtScript*) EVS_PlayPoisonHitFX, EVT_PRIORITY_A, 0);
evt->varTable[0] = state->goalPos.x;
evt->varTable[1] = state->goalPos.y;
@ -839,7 +839,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackStatus & STATUS_FLAG_STOP && wasStatusInflicted) {
if (battleStatus->curAttackStatus & STATUS_FLAG_STOP && wasStatusInflicted) {
evt = start_script((EvtScript*) EVS_PlayStopHitFX, EVT_PRIORITY_A, 0);
evt->varTable[0] = state->goalPos.x;
evt->varTable[1] = state->goalPos.y;
@ -847,7 +847,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackStatus & STATUS_FLAG_FROZEN && wasStatusInflicted) {
if (battleStatus->curAttackStatus & STATUS_FLAG_FROZEN && wasStatusInflicted) {
evt = start_script((EvtScript*) EVS_PlayFreezeHitFX, EVT_PRIORITY_A, 0);
evt->varTable[0] = state->goalPos.x;
evt->varTable[1] = state->goalPos.y;
@ -856,7 +856,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_HIT_ICE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackStatus & STATUS_FLAG_SHRINK && wasStatusInflicted) {
if (battleStatus->curAttackStatus & STATUS_FLAG_SHRINK && wasStatusInflicted) {
evt = start_script((EvtScript*) EVS_PlayShrinkHitFX, EVT_PRIORITY_A, 0);
evt->varTable[0] = state->goalPos.x;
evt->varTable[1] = state->goalPos.y;
@ -865,7 +865,7 @@ HitResult calc_partner_damage_enemy(void) {
sfx_play_sound_at_position(SOUND_INFLICT_STATUS, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
if (battleStatus->currentAttackElement & DAMAGE_TYPE_SMASH && target->actorType == ACTOR_TYPE_GOOMNUT_TREE) {
if (battleStatus->curAttackElement & DAMAGE_TYPE_SMASH && target->actorType == ACTOR_TYPE_GOOMNUT_TREE) {
sfx_play_sound_at_position(SOUND_SMASH_GOOMNUT_TREE, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
}
@ -882,8 +882,8 @@ HitResult calc_partner_damage_enemy(void) {
}
if (partner->staticStatus != STATUS_KEY_STATIC && (target->staticStatus == STATUS_KEY_STATIC ||
targetPart->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED) && !(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT) &&
!(battleStatus->currentAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT)) {
targetPart->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED) && !(battleStatus->curAttackElement & DAMAGE_TYPE_NO_CONTACT) &&
!(battleStatus->curAttackEventSuppression & SUPPRESS_EVENT_SHOCK_CONTACT)) {
sfx_play_sound_at_position(SOUND_HIT_SHOCK, SOUND_SPACE_MODE_0, state->goalPos.x, state->goalPos.y, state->goalPos.z);
apply_shock_effect(partner);
dispatch_damage_event_partner_1(1, EVENT_SHOCK_HIT);
@ -900,27 +900,27 @@ s32 dispatch_damage_event_partner(s32 damageAmount, s32 event, s32 stopMotion) {
s32 hpChange;
s32 flagCheck;
battleStatus->currentAttackDamage = damageAmount;
battleStatus->curAttackDamage = damageAmount;
hpChange = (s16)damageAmount;
partner->hpChangeCounter += hpChange;
hpChange = partner->hpChangeCounter;
partner->currentHP = 127;
partner->curHP = 127;
partner->damageCounter += hpChange;
partner->hpChangeCounter -= hpChange;
battleStatus->lastAttackDamage = 0;
partner->currentHP -= hpChange;
partner->curHP -= hpChange;
if (partner->currentHP <= 0) {
if (partner->curHP <= 0) {
event = EVENT_DEATH;
battleStatus->lastAttackDamage += partner->currentHP;
partner->currentHP = 0;
battleStatus->lastAttackDamage += partner->curHP;
partner->curHP = 0;
}
battleStatus->lastAttackDamage += hpChange;
partner->lastDamageTaken = battleStatus->lastAttackDamage;
battleStatus->currentDamageSource = DMG_SRC_DEFAULT;
battleStatus->curDamageSource = DMG_SRC_DEFAULT;
if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) {
if (event == EVENT_HIT_COMBO) {
event = EVENT_HIT;
@ -1043,10 +1043,10 @@ ApiStatus PartnerDamageEnemy(Evt* script, s32 isInitialCall) {
s32 damageResult;
u8 statusChance;
gBattleStatus.currentAttackElement = *args++;
gBattleStatus.currentAttackEventSuppression = *args++;
gBattleStatus.currentAttackStatus = *args++;
gBattleStatus.currentAttackDamage = evt_get_variable(script, *args++);
gBattleStatus.curAttackElement = *args++;
gBattleStatus.curAttackEventSuppression = *args++;
gBattleStatus.curAttackStatus = *args++;
gBattleStatus.curAttackDamage = evt_get_variable(script, *args++);
gBattleStatus.powerBounceCounter = 0;
flags = *args++;
@ -1088,16 +1088,16 @@ ApiStatus PartnerDamageEnemy(Evt* script, s32 isInitialCall) {
gBattleStatus.flags1 &= ~BS_FLAGS1_FORCE_HIT_IMMUNE;
}
statusChance = battleStatus->currentAttackStatus;
battleStatus->currentTargetID = enemy->targetActorID;
battleStatus->currentTargetPart = enemy->targetPartIndex;
statusChance = battleStatus->curAttackStatus;
battleStatus->curTargetID = enemy->targetActorID;
battleStatus->curTargetPart = enemy->targetPartIndex;
battleStatus->statusChance = statusChance;
if (statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
damageResult = calc_partner_damage_enemy();
if (damageResult < 0) {
@ -1122,11 +1122,11 @@ ApiStatus PartnerAfflictEnemy(Evt* script, s32 isInitialCall) {
u8 statusChance;
s32 damageResult;
battleStatus->currentAttackElement = *args++;
battleStatus->currentAttackEventSuppression = *args++;
battleStatus->currentAttackStatus = *args++;
battleStatus->currentAttackStatus |= evt_get_variable(script, *args++);
battleStatus->currentAttackDamage = evt_get_variable(script, *args++);
battleStatus->curAttackElement = *args++;
battleStatus->curAttackEventSuppression = *args++;
battleStatus->curAttackStatus = *args++;
battleStatus->curAttackStatus |= evt_get_variable(script, *args++);
battleStatus->curAttackDamage = evt_get_variable(script, *args++);
battleStatus->powerBounceCounter = 0;
flags = *args++;
@ -1165,16 +1165,16 @@ ApiStatus PartnerAfflictEnemy(Evt* script, s32 isInitialCall) {
gBattleStatus.flags1 &= ~BS_FLAGS1_FORCE_HIT_IMMUNE;
}
statusChance = battleStatus->currentAttackStatus;
battleStatus->currentTargetID = actor->targetActorID;
battleStatus->currentTargetPart = actor->targetPartIndex;
statusChance = battleStatus->curAttackStatus;
battleStatus->curTargetID = actor->targetActorID;
battleStatus->curTargetPart = actor->targetPartIndex;
battleStatus->statusChance = statusChance;
if (statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
damageResult = calc_partner_damage_enemy();
if (damageResult < 0) {
@ -1199,10 +1199,10 @@ ApiStatus PartnerPowerBounceEnemy(Evt* script, s32 isInitialCall) {
u8 statusChance;
s32 damageResult;
battleStatus->currentAttackElement = *args++;
battleStatus->currentAttackEventSuppression = *args++;
battleStatus->currentAttackStatus = *args++;
battleStatus->currentAttackDamage = evt_get_variable(script, *args++);
battleStatus->curAttackElement = *args++;
battleStatus->curAttackEventSuppression = *args++;
battleStatus->curAttackStatus = *args++;
battleStatus->curAttackDamage = evt_get_variable(script, *args++);
battleStatus->powerBounceCounter = evt_get_variable(script, *args++);
flags = *args++;
@ -1241,16 +1241,16 @@ ApiStatus PartnerPowerBounceEnemy(Evt* script, s32 isInitialCall) {
gBattleStatus.flags1 &= ~BS_FLAGS1_FORCE_HIT_IMMUNE;
}
statusChance = battleStatus->currentAttackStatus;
battleStatus->currentTargetID = actor->targetActorID;
battleStatus->currentTargetPart = actor->targetPartIndex;
statusChance = battleStatus->curAttackStatus;
battleStatus->curTargetID = actor->targetActorID;
battleStatus->curTargetPart = actor->targetPartIndex;
battleStatus->statusChance = statusChance;
if (statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
damageResult = calc_partner_damage_enemy();
if (damageResult < 0) {
@ -1277,10 +1277,10 @@ ApiStatus PartnerTestEnemy(Evt* script, s32 isInitialCall) {
u8 statusChance;
temp_s4 = *args++;
gBattleStatus.currentAttackElement = *args++;
gBattleStatus.currentAttackEventSuppression = *args++;
gBattleStatus.currentAttackStatus = *args++;
gBattleStatus.currentAttackDamage = evt_get_variable(script, *args++);
gBattleStatus.curAttackElement = *args++;
gBattleStatus.curAttackEventSuppression = *args++;
gBattleStatus.curAttackStatus = *args++;
gBattleStatus.curAttackDamage = evt_get_variable(script, *args++);
gBattleStatus.powerBounceCounter = 0;
flags = *args++;
@ -1322,16 +1322,16 @@ ApiStatus PartnerTestEnemy(Evt* script, s32 isInitialCall) {
gBattleStatus.flags1 &= ~BS_FLAGS1_FORCE_HIT_IMMUNE;
}
statusChance = battleStatus->currentAttackStatus;
battleStatus->currentTargetID = enemy->targetActorID;
battleStatus->currentTargetPart = enemy->targetPartIndex;
statusChance = battleStatus->curAttackStatus;
battleStatus->curTargetID = enemy->targetActorID;
battleStatus->curTargetPart = enemy->targetPartIndex;
battleStatus->statusChance = statusChance;
if (statusChance == STATUS_KEY_NEVER) {
battleStatus->statusChance = 0;
}
battleStatus->statusDuration = (battleStatus->currentAttackStatus & 0xF00) >> 8;
battleStatus->statusDuration = (battleStatus->curAttackStatus & 0xF00) >> 8;
damageResult = calc_partner_test_enemy();
if (damageResult < 0) {
@ -1350,8 +1350,8 @@ ApiStatus func_8028070C(Evt* script, s32 isInitialCall) {
s32 damageAmount = evt_get_variable(script, *args++);
s32 event = evt_get_variable(script, *args++);
battleStatus->currentTargetID = actor->targetActorID;
battleStatus->currentTargetPart = actor->targetPartIndex;
battleStatus->curTargetID = actor->targetActorID;
battleStatus->curTargetPart = actor->targetPartIndex;
if (dispatch_damage_event_partner_0(damageAmount, event, (s32) battleStatus) >= 0) {
return does_script_exist_by_ref(script) ? ApiStatus_DONE2 : ApiStatus_BLOCK;

View File

@ -39,7 +39,7 @@ void spawn_drops(Enemy* enemy) {
spawnCounter = 0;
availableRenderTasks = 256 - 10 - gLastRenderTaskCount;
angle = clamp_angle(camera->currentYaw + 90.0f);
angle = clamp_angle(camera->curYaw + 90.0f);
x = npc->pos.x;
y = npc->pos.y + (npc->collisionHeight / 2);
z = npc->pos.z;
@ -436,14 +436,14 @@ s32 basic_ai_check_player_dist(EnemyDetectVolume* territory, Enemy* enemy, f32 r
return FALSE;
}
if (territory->halfHeight <= fabsf(npc->pos.y - playerStatus->position.y)
if (territory->halfHeight <= fabsf(npc->pos.y - playerStatus->pos.y)
&& !(territory->detectFlags & AI_TERRITORY_IGNORE_ELEVATION)) {
return FALSE;
}
if (territory->sizeX | territory->sizeZ && is_point_within_region(territory->shape,
territory->pointX, territory->pointZ,
playerStatus->position.x, playerStatus->position.z,
playerStatus->pos.x, playerStatus->pos.z,
territory->sizeX, territory->sizeZ)) {
return FALSE;
}
@ -457,10 +457,10 @@ s32 basic_ai_check_player_dist(EnemyDetectVolume* territory, Enemy* enemy, f32 r
x = npc->pos.x;
y = npc->pos.y + npc->collisionHeight * 0.5;
z = npc->pos.z;
dist = dist2D(npc->pos.x, npc->pos.z, playerStatus->position.x, playerStatus->position.z);
dist = dist2D(npc->pos.x, npc->pos.z, playerStatus->pos.x, playerStatus->pos.z);
if (npc_test_move_simple_with_slipping(COLLISION_CHANNEL_10000 | COLLISION_IGNORE_ENTITIES,
&x, &y, &z,
dist, atan2(npc->pos.x, npc->pos.z, playerStatus->position.x, playerStatus->position.z),
dist, atan2(npc->pos.x, npc->pos.z, playerStatus->pos.x, playerStatus->pos.z),
0.1f, 0.1f)) {
return FALSE;
}
@ -487,7 +487,7 @@ s32 basic_ai_check_player_dist(EnemyDetectVolume* territory, Enemy* enemy, f32 r
} else {
add_vec2D_polar(&x, &z, fwdPosOffset, 270.0f - npc->renderYaw);
}
if (dist2D(x, z, playerStatus->position.x, playerStatus->position.z) <= radius) {
if (dist2D(x, z, playerStatus->pos.x, playerStatus->pos.z) <= radius) {
return TRUE;
}
}
@ -514,7 +514,7 @@ s32 ai_check_player_dist(Enemy* enemy, s32 chance, f32 radius, f32 moveSpeed) {
posZ = npc->pos.z;
add_vec2D_polar(&posX, &posZ, moveSpeed, 270.0f - npc->renderYaw);
if (dist2D(posX, posZ, playerStatus->position.x, playerStatus->position.z) <= radius) {
if (dist2D(posX, posZ, playerStatus->pos.x, playerStatus->pos.z) <= radius) {
return TRUE;
}
}
@ -554,7 +554,7 @@ void basic_ai_wander_init(Evt* script, MobileAISettings* npcAISettings, EnemyDet
// chose a random direction and move time
npc->duration = (npcAISettings->moveTime / 2) + rand_int((npcAISettings->moveTime / 2) + 1);
npc->yaw = clamp_angle(npc->yaw + rand_int(60) - 30.0f);
npc->currentAnim = enemy->animList[ENEMY_ANIM_INDEX_WALK];
npc->curAnim = enemy->animList[ENEMY_ANIM_INDEX_WALK];
script->functionTemp[1] = 0;
if (enemy->territory->wander.moveSpeedOverride < 0) {
@ -583,7 +583,7 @@ void basic_ai_wander(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolum
x = npc->pos.x;
y = npc->pos.y;
z = npc->pos.z;
yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->pos.x, gPlayerStatusPtr->pos.z);
if (!npc_test_move_simple_with_slipping(npc->collisionChannel, &x, &y, &z, aiSettings->chaseSpeed, yaw, npc->collisionHeight, npc->collisionDiameter)) {
npc->yaw = yaw;
ai_enemy_play_sound(npc, SOUND_2F4, SOUND_PARAM_MORE_QUIET);
@ -664,7 +664,7 @@ void basic_ai_loiter_init(Evt* script, MobileAISettings* aiSettings, EnemyDetect
npc->duration = (aiSettings->waitTime / 2) + rand_int((aiSettings->waitTime / 2) + 1);
npc->yaw = clamp_angle(npc->yaw + rand_int(180) - 90.0f);
npc->currentAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
npc->curAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
script->AI_TEMP_STATE = AI_STATE_LOITER;
}
@ -680,7 +680,7 @@ void basic_ai_loiter(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolum
x = npc->pos.x;
y = npc->pos.y;
z = npc->pos.z;
yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
yaw = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->pos.x, gPlayerStatusPtr->pos.z);
if (!npc_test_move_simple_with_slipping(npc->collisionChannel, &x, &y, &z, aiSettings->chaseSpeed, yaw, npc->collisionHeight, npc->collisionDiameter)) {
npc->yaw = yaw;
ai_enemy_play_sound(npc, SOUND_2F4, SOUND_PARAM_MORE_QUIET);
@ -717,8 +717,8 @@ void basic_ai_found_player_jump_init(Evt* script, MobileAISettings* npcAISetting
Npc* npc = get_npc_unsafe(enemy->npcID);
ai_enemy_play_sound(npc, SOUND_3E1, 0);
npc->currentAnim = enemy->animList[ENEMY_ANIM_INDEX_JUMP];
npc->jumpVelocity = 10.0f;
npc->curAnim = enemy->animList[ENEMY_ANIM_INDEX_JUMP];
npc->jumpVel = 10.0f;
npc->jumpScale = 2.5f;
npc->moveToPos.y = npc->pos.y;
npc->flags |= NPC_FLAG_JUMPING;
@ -729,7 +729,7 @@ void basic_ai_found_player_jump(Evt* script, MobileAISettings* npcAISettings, En
Npc* npc = get_npc_unsafe(script->owner1.enemy->npcID);
s32 done = FALSE;
if (npc->jumpVelocity <= 0.0) {
if (npc->jumpVel <= 0.0) {
if (npc->pos.y <= npc->moveToPos.y) {
npc->pos.y = npc->moveToPos.y;
done = TRUE;
@ -737,10 +737,10 @@ void basic_ai_found_player_jump(Evt* script, MobileAISettings* npcAISettings, En
}
if (!done) {
npc->pos.y += npc->jumpVelocity;
npc->jumpVelocity -= npc->jumpScale;
npc->pos.y += npc->jumpVel;
npc->jumpVel -= npc->jumpScale;
} else {
npc->jumpVelocity = 0.0f;
npc->jumpVel = 0.0f;
npc->flags &= ~NPC_FLAG_JUMPING;
script->AI_TEMP_STATE = AI_STATE_CHASE_INIT;
}
@ -753,13 +753,13 @@ void basic_ai_chase_init(Evt* script, MobileAISettings* npcAISettings, EnemyDete
if ((gPlayerStatusPtr->actionState == ACTION_STATE_JUMP || gPlayerStatusPtr->actionState == ACTION_STATE_BOUNCE ||
gPlayerStatusPtr->actionState == ACTION_STATE_HOP || gPlayerStatusPtr->actionState == ACTION_STATE_FALLING) &&
(f64)dist2D(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z) < npc->collisionDiameter)
(f64)dist2D(npc->pos.x, npc->pos.z, gPlayerStatusPtr->pos.x, gPlayerStatusPtr->pos.z) < npc->collisionDiameter)
{
skipTurnAround = TRUE;
}
if (!skipTurnAround) {
f32 angle = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z);
f32 angle = atan2(npc->pos.x, npc->pos.z, gPlayerStatusPtr->pos.x, gPlayerStatusPtr->pos.z);
f32 deltaAngleToPlayer = get_clamped_angle_diff(npc->yaw, angle);
if (npcAISettings->chaseTurnRate < fabsf(deltaAngleToPlayer)) {
@ -776,7 +776,7 @@ void basic_ai_chase_init(Evt* script, MobileAISettings* npcAISettings, EnemyDete
npc->duration = 0;
}
npc->currentAnim = enemy->animList[ENEMY_ANIM_INDEX_CHASE];
npc->curAnim = enemy->animList[ENEMY_ANIM_INDEX_CHASE];
npc->moveSpeed = npcAISettings->chaseSpeed;
script->AI_TEMP_STATE = AI_STATE_CHASE;
}
@ -789,20 +789,20 @@ void basic_ai_chase(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolume
if (!basic_ai_check_player_dist(territory, enemy, aiSettings->chaseRadius, aiSettings->chaseOffsetDist, 1)) {
fx_emote(EMOTE_QUESTION, npc, 0, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 15, &sp28);
npc->currentAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
npc->curAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
npc->duration = 20;
script->AI_TEMP_STATE = AI_STATE_LOSE_PLAYER;
return;
}
if (enemy->npcSettings->actionFlags & AI_ACTION_04) {
if (dist2D(npc->pos.x, npc->pos.z, gPlayerStatusPtr->position.x, gPlayerStatusPtr->position.z) > (npc->moveSpeed * 5.0)) {
if (dist2D(npc->pos.x, npc->pos.z, gPlayerStatusPtr->pos.x, gPlayerStatusPtr->pos.z) > (npc->moveSpeed * 5.0)) {
x = npc->pos.x;
y = npc->pos.y;
z = npc->pos.z;
if (npc_test_move_simple_with_slipping(npc->collisionChannel, &x, &y, &z, 1.0f, npc->yaw, npc->collisionHeight, npc->collisionDiameter)) {
fx_emote(EMOTE_QUESTION, npc, 0, npc->collisionHeight, 1.0f, 2.0f, -20.0f, 0xC, &sp28);
npc->currentAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
npc->curAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
npc->duration = 15;
script->AI_TEMP_STATE = AI_STATE_LOSE_PLAYER;
return;
@ -857,7 +857,7 @@ ApiStatus BasicAI_Main(Evt* script, s32 isInitialCall) {
script->AI_TEMP_STATE = AI_STATE_WANDER_INIT;
npc->duration = 0;
npc->currentAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
npc->curAnim = enemy->animList[ENEMY_ANIM_INDEX_IDLE];
npc->flags &= ~NPC_FLAG_JUMPING;
if (!enemy->territory->wander.isFlying) {

View File

@ -105,7 +105,7 @@ ApiStatus func_8005DB00(Evt* script, s32 isInitialCall) {
npc->duration = evt_get_variable(script, LVar1);
script->functionTemp[1] = evt_get_variable(script, LVar2);
script->functionTemp[2] = evt_get_variable(script, LVar3) / 2;
npc->currentAnim = script->varTable[10];
npc->curAnim = script->varTable[10];
script->functionTemp[0] = 1;
break;
case 1:
@ -115,10 +115,10 @@ ApiStatus func_8005DB00(Evt* script, s32 isInitialCall) {
}
if (npc->duration == 0) {
if (sqrtf(SQ((playerStatus->position.x - npc->pos.x)) +
SQ((playerStatus->position.y - npc->pos.y)) +
SQ((playerStatus->position.z - npc->pos.z))) <= npc->planarFlyDist) {
targetDir = atan2(npc->pos.x, npc->pos.z, playerStatus->position.x, playerStatus->position.z);
if (sqrtf(SQ((playerStatus->pos.x - npc->pos.x)) +
SQ((playerStatus->pos.y - npc->pos.y)) +
SQ((playerStatus->pos.z - npc->pos.z))) <= npc->planarFlyDist) {
targetDir = atan2(npc->pos.x, npc->pos.z, playerStatus->pos.x, playerStatus->pos.z);
npcYaw = script->functionTemp[1] == -1 ? npc->yaw : script->functionTemp[1];
if (fabsf(get_clamped_angle_diff(npcYaw, targetDir)) < script->functionTemp[2]) {
@ -127,8 +127,8 @@ ApiStatus func_8005DB00(Evt* script, s32 isInitialCall) {
}
}
} else {
if (dist2D(npc->pos.x, npc->pos.z, playerStatus->position.x, playerStatus->position.z) <= npc->planarFlyDist) {
targetDir = atan2(npc->pos.x, npc->pos.z, playerStatus->position.x, playerStatus->position.z);
if (dist2D(npc->pos.x, npc->pos.z, playerStatus->pos.x, playerStatus->pos.z) <= npc->planarFlyDist) {
targetDir = atan2(npc->pos.x, npc->pos.z, playerStatus->pos.x, playerStatus->pos.z);
npcYaw = script->functionTemp[1] == -1 ? npc->yaw : script->functionTemp[1];
if (fabsf(get_clamped_angle_diff(npcYaw, targetDir)) < script->functionTemp[2]) {

View File

@ -17,9 +17,9 @@ void get_npc_pos(s32 npcID, f32* outX, f32* outY, f32* outZ, s32* outAirborne) {
*outAirborne = FALSE;
if (npcID == NPC_SELF) {
*outX = playerStatus->position.x;
*outY = playerStatus->position.y;
*outZ = playerStatus->position.z;
*outX = playerStatus->pos.x;
*outY = playerStatus->pos.y;
*outZ = playerStatus->pos.z;
if (playerStatus->flags & (PS_FLAG_FALLING | PS_FLAG_JUMPING)) {
*outAirborne = TRUE;
}
@ -44,9 +44,9 @@ void npc_follow_init(Npc* npc, s32 targetNpcID, FollowAnims* anims, f32 walkSpee
ASSERT(followData != NULL);
for (i = 0; i < ARRAY_COUNT(followData->moveHistory); i++) {
followData->moveHistory[i].pos.x = playerStatus->position.x;
followData->moveHistory[i].pos.y = playerStatus->position.y;
followData->moveHistory[i].pos.z = playerStatus->position.z;
followData->moveHistory[i].pos.x = playerStatus->pos.x;
followData->moveHistory[i].pos.y = playerStatus->pos.y;
followData->moveHistory[i].pos.z = playerStatus->pos.z;
followData->moveHistory[i].isAirborne = FALSE;
}
followData->lastPointIdx = 0;
@ -58,8 +58,8 @@ void npc_follow_init(Npc* npc, s32 targetNpcID, FollowAnims* anims, f32 walkSpee
followData->runSpeed = runSpeed;
followData->idleRadius = idleRadius;
followData->walkRadius = walkRadius;
npc->currentAnim = followData->anims->idle;
npc->jumpVelocity = 0.0f;
npc->curAnim = followData->anims->idle;
npc->jumpVel = 0.0f;
npc->flags |= NPC_FLAG_GRAVITY;
npc->flags &= ~NPC_FLAG_IGNORE_PLAYER_COLLISION;
npc->collisionChannel = COLLISION_CHANNEL_10000;
@ -129,9 +129,9 @@ void npc_follow_npc(Npc* npc) {
npc->moveSpeed = followData->runSpeed;
}
npc->currentAnim = followData->anims->run;
npc->curAnim = followData->anims->run;
if (!(npc->flags & NPC_FLAG_GROUNDED)) {
npc->currentAnim = followData->anims->fall;
npc->curAnim = followData->anims->fall;
}
while (TRUE) {
@ -157,7 +157,7 @@ void npc_follow_npc(Npc* npc) {
if (followData->targetPointIdx == followData->lastPointIdx) {
npc->moveSpeed = 0.0f;
yaw = npc->yaw;
npc->currentAnim = followData->anims->idle;
npc->curAnim = followData->anims->idle;
break;
}
@ -165,7 +165,7 @@ void npc_follow_npc(Npc* npc) {
if (dist <= followData->idleRadius) {
npc->moveSpeed = 0.0f;
yaw = npc->yaw;
npc->currentAnim = followData->anims->idle;
npc->curAnim = followData->anims->idle;
followData->followState = NPC_FOLLOW_STATE_IDLE;
break;
}
@ -218,7 +218,7 @@ void npc_follow_npc(Npc* npc) {
dist = currentY;
}
if (dist < followData->idleRadius) {
npc->jumpVelocity = 0.0f;
npc->jumpVel = 0.0f;
npc->flags |= NPC_FLAG_GRAVITY;
npc->yaw = atan2(npc->pos.x, npc->pos.z, x, z);
followData->followState = NPC_FOLLOW_STATE_RUN;
@ -229,29 +229,29 @@ void npc_follow_npc(Npc* npc) {
npc->duration = 10;
}
npc->moveSpeed = npc->planarFlyDist / npc->duration;
npc->jumpVelocity = (currentY + (npc->jumpScale * npc->duration * npc->duration * 0.5f)) / npc->duration;
npc->currentAnim = followData->anims->jump;
npc->jumpVel = (currentY + (npc->jumpScale * npc->duration * npc->duration * 0.5f)) / npc->duration;
npc->curAnim = followData->anims->jump;
npc->flags &= ~NPC_FLAG_GRAVITY;
followData->followState = NPC_FOLLOW_STATE_FALL;
}
break;
case NPC_FOLLOW_STATE_FALL:
npc->jumpVelocity -= npc->jumpScale;
npc->pos.y += npc->jumpVelocity;
if (npc->jumpVelocity <= 0.0f) {
npc->currentAnim = followData->anims->fall;
npc->jumpVel -= npc->jumpScale;
npc->pos.y += npc->jumpVel;
if (npc->jumpVel <= 0.0f) {
npc->curAnim = followData->anims->fall;
}
npc_move_heading(npc, npc->moveSpeed, npc->yaw);
if (npc->jumpVelocity <= 0.0f) {
if (npc->jumpVel <= 0.0f) {
currentX = npc->pos.x;
dist = fabsf(npc->jumpVelocity) + 8.0;
dist = fabsf(npc->jumpVel) + 8.0;
currentY = npc->pos.y + dist;
currentZ = npc->pos.z;
if (npc_raycast_down_sides(npc->collisionChannel, &currentX, &currentY, &currentZ, &dist) != 0 &&
dist <= fabsf(npc->jumpVelocity) + 8.0)
dist <= fabsf(npc->jumpVel) + 8.0)
{
npc->currentAnim = followData->anims->land;
npc->jumpVelocity = 0.0f;
npc->curAnim = followData->anims->land;
npc->jumpVel = 0.0f;
npc->pos.y = currentY;
npc->flags |= NPC_FLAG_GRAVITY;
npc->yaw = atan2(currentX, currentZ, x, z);

View File

@ -646,7 +646,7 @@ s32 btl_main_menu_update(void) {
}
break;
case BTL_MENU_STATE_ACCEPT_INPUT:
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
if (BattleMenu_OptionEnabled[BattleMenu_CurPos + BattleMenu_HomePos] == TRUE) {
sfx_play_sound(SOUND_MENU_NEXT);
BattleMenuState = BTL_MENU_STATE_OPENED_SUBMENU;
@ -658,12 +658,12 @@ s32 btl_main_menu_update(void) {
} else {
BattleMenu_PrevPos = BattleMenu_CurPos;
if (D_802AD004 == 0) {
if ((battleStatus->currentButtonsHeld & (BUTTON_STICK_LEFT | BUTTON_STICK_UP)) &&
if ((battleStatus->curButtonsHeld & (BUTTON_STICK_LEFT | BUTTON_STICK_UP)) &&
BattleMenu_MinIdx < BattleMenu_CurPos)
{
BattleMenu_CurPos--;
}
if ((battleStatus->currentButtonsHeld & (BUTTON_STICK_RIGHT | BUTTON_STICK_DOWN)) &&
if ((battleStatus->curButtonsHeld & (BUTTON_STICK_RIGHT | BUTTON_STICK_DOWN)) &&
BattleMenu_CurPos < BattleMenu_MaxIdx)
{
BattleMenu_CurPos++;
@ -1213,18 +1213,18 @@ s32 btl_submenu_moves_update(void) {
break;
case BTL_SUBMENU_MOVES_STATE_UNK_1:
D_802AD10A = battle_menu_moveCursorPos;
if (battleStatus->currentButtonsHeld & (BUTTON_STICK_UP | BUTTON_Z)) {
if (battleStatus->curButtonsHeld & (BUTTON_STICK_UP | BUTTON_Z)) {
if (battle_menu_moveCursorPos > 0) {
battle_menu_moveCursorPos--;
} else if (battleStatus->currentButtonsPressed & (BUTTON_STICK_UP | BUTTON_Z)) {
} else if (battleStatus->curButtonsPressed & (BUTTON_STICK_UP | BUTTON_Z)) {
battle_menu_moveCursorPos--;
}
}
if (battleStatus->currentButtonsHeld & (BUTTON_STICK_DOWN | BUTTON_R)) {
if (battleStatus->curButtonsHeld & (BUTTON_STICK_DOWN | BUTTON_R)) {
if (battle_menu_moveCursorPos < BattleMenu_Moves_OptionCount - 1) {
battle_menu_moveCursorPos++;
} else if (battleStatus->currentButtonsPressed & (BUTTON_STICK_DOWN | BUTTON_R)) {
} else if (battleStatus->curButtonsPressed & (BUTTON_STICK_DOWN | BUTTON_R)) {
battle_menu_moveCursorPos++;
}
}
@ -1260,7 +1260,7 @@ s32 btl_submenu_moves_update(void) {
}
D_802AD10D = battle_menu_moveScrollLine + 6;
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
if (BattleMenu_Moves_OptionEnabled[BattleMenu_Moves_OptionIndexMap[battle_menu_moveCursorPos]] == 1) {
sfx_play_sound(SOUND_MENU_NEXT);
battle_menu_moveState = BTL_SUBMENU_MOVES_STATE_UNK_NEGATIVE_ONE;
@ -1276,7 +1276,7 @@ s32 btl_submenu_moves_update(void) {
break;
}
if (battleStatus->currentButtonsPressed & BUTTON_B) {
if (battleStatus->curButtonsPressed & BUTTON_B) {
sfx_play_sound(SOUND_MENU_BACK);
func_802A27E4();
battle_menu_moveState = BTL_SUBMENU_MOVES_STATE_UNK_NEGATIVE_TWO;
@ -1851,18 +1851,18 @@ s32 func_802A4A54(void) {
case 1:
if (D_802AD607 == 0) {
D_802AD606 = D_802AD605;
if (battleStatus->currentButtonsHeld & BUTTON_STICK_UP) {
if (battleStatus->curButtonsHeld & BUTTON_STICK_UP) {
if (D_802AD605 > 0) {
D_802AD605--;
} else if (battleStatus->currentButtonsPressed & BUTTON_STICK_UP) {
} else if (battleStatus->curButtonsPressed & BUTTON_STICK_UP) {
D_802AD605--;
}
}
if (battleStatus->currentButtonsHeld & BUTTON_STICK_DOWN) {
if (battleStatus->curButtonsHeld & BUTTON_STICK_DOWN) {
if (D_802AD605 < D_802AD66C - 1) {
D_802AD605++;
} else if (battleStatus->currentButtonsPressed & BUTTON_STICK_DOWN) {
} else if (battleStatus->curButtonsPressed & BUTTON_STICK_DOWN) {
D_802AD605++;
}
}
@ -1890,7 +1890,7 @@ s32 func_802A4A54(void) {
D_802AD609 = D_802AD66C;
}
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
if (D_802AD690[D_802AD605] == 1) {
sfx_play_sound(SOUND_MENU_NEXT);
BattleSubmenuStratsState = -1;
@ -1902,7 +1902,7 @@ s32 func_802A4A54(void) {
break;
}
if (battleStatus->currentButtonsPressed & BUTTON_B) {
if (battleStatus->curButtonsPressed & BUTTON_B) {
sfx_play_sound(SOUND_MENU_BACK);
func_802A472C();
BattleSubmenuStratsState = -2;
@ -2233,7 +2233,7 @@ void btl_state_update_player_menu(void) {
case BTL_SUBSTATE_PLAYER_MENU_INIT:
battleStatus->moveCategory = BTL_MENU_TYPE_INVALID;
battleStatus->selectedMoveID = 0;
battleStatus->currentAttackElement = 0;
battleStatus->curAttackElement = 0;
if (!can_btl_state_update_switch_to_player()) {
btl_set_state(BATTLE_STATE_END_PLAYER_TURN);
return;
@ -2244,8 +2244,8 @@ void btl_state_update_player_menu(void) {
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_CREATE_MAIN_MENU;
} else {
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_PERFORM_SWAP;
partnerActor->state.currentPos.x = partnerActor->homePos.x;
partnerActor->state.currentPos.z = partnerActor->homePos.z;
partnerActor->state.curPos.x = partnerActor->homePos.x;
partnerActor->state.curPos.z = partnerActor->homePos.z;
partnerActor->state.goalPos.x = playerActor->homePos.x;
partnerActor->state.goalPos.z = playerActor->homePos.z;
partnerActor->state.moveTime = 4;
@ -2254,27 +2254,27 @@ void btl_state_update_player_menu(void) {
break;
case BTL_SUBSTATE_PLAYER_MENU_PERFORM_SWAP:
if (partnerActor->state.moveTime != 0) {
partnerActor->currentPos.x += (partnerActor->state.goalPos.x - partnerActor->currentPos.x) / partnerActor->state.moveTime;
partnerActor->currentPos.z += (partnerActor->state.goalPos.z - partnerActor->currentPos.z) / partnerActor->state.moveTime;
playerActor->currentPos.x += (partnerActor->state.currentPos.x - playerActor->currentPos.x) / partnerActor->state.moveTime;
playerActor->currentPos.z += (partnerActor->state.currentPos.z - playerActor->currentPos.z) / partnerActor->state.moveTime;
partnerActor->curPos.x += (partnerActor->state.goalPos.x - partnerActor->curPos.x) / partnerActor->state.moveTime;
partnerActor->curPos.z += (partnerActor->state.goalPos.z - partnerActor->curPos.z) / partnerActor->state.moveTime;
playerActor->curPos.x += (partnerActor->state.curPos.x - playerActor->curPos.x) / partnerActor->state.moveTime;
playerActor->curPos.z += (partnerActor->state.curPos.z - playerActor->curPos.z) / partnerActor->state.moveTime;
}
partnerActor->currentPos.z -= sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
partnerActor->curPos.z -= sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
partnerActor->yaw = clamp_angle(-partnerActor->state.angle);
playerActor->currentPos.z += sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
playerActor->curPos.z += sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
playerActor->yaw = clamp_angle(-partnerActor->state.angle);
partnerActor->state.angle += 90.0f;
if (partnerActor->state.moveTime != 0) {
partnerActor->state.moveTime--;
} else {
partnerActor->currentPos.x = partnerActor->state.goalPos.x;
partnerActor->currentPos.z = partnerActor->state.goalPos.z;
playerActor->currentPos.x = partnerActor->state.currentPos.x;
playerActor->currentPos.z = partnerActor->state.currentPos.z;
partnerActor->homePos.x = partnerActor->currentPos.x;
partnerActor->homePos.z = partnerActor->currentPos.z;
playerActor->homePos.x = playerActor->currentPos.x;
playerActor->homePos.z = playerActor->currentPos.z;
partnerActor->curPos.x = partnerActor->state.goalPos.x;
partnerActor->curPos.z = partnerActor->state.goalPos.z;
playerActor->curPos.x = partnerActor->state.curPos.x;
playerActor->curPos.z = partnerActor->state.curPos.z;
partnerActor->homePos.x = partnerActor->curPos.x;
partnerActor->homePos.z = partnerActor->curPos.z;
playerActor->homePos.x = playerActor->curPos.x;
playerActor->homePos.z = playerActor->curPos.z;
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_CREATE_MAIN_MENU;
battleStatus->flags1 &= ~BS_FLAGS1_PLAYER_IN_BACK;
}
@ -2467,14 +2467,14 @@ void btl_state_update_player_menu(void) {
D_802ACC60--;
} else if (submenuResult != 0) {
set_animation(ACTOR_PLAYER, 0, ANIM_Mario1_Walk);
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_MAIN] = battleStatus->currentSubmenu = battle_menu_submenuIDs[submenuResult - 1];
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_MAIN] = battleStatus->curSubmenu = battle_menu_submenuIDs[submenuResult - 1];
for (i = 0; i < ARRAY_COUNT(battleStatus->submenuMoves); i++) {
battleStatus->submenuMoves[i] = 0;
battleStatus->submenuIcons[0] = 0; ///< @bug ?
battleStatus->submenuStatus[i] = 0;
}
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case BTL_MENU_TYPE_ITEMS:
battleStatus->submenuMoves[0] = D_802AB4F0[8];
battleStatus->submenuIcons[0] = ITEM_PARTNER_ATTACK;
@ -2487,7 +2487,7 @@ void btl_state_update_player_menu(void) {
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = playerData->invItems[i];
battleStatus->currentTargetListFlags = itemData->targetFlags;
battleStatus->curTargetListFlags = itemData->targetFlags;
player_create_target_list(playerActor);
}
entryIdx = 1;
@ -2495,7 +2495,7 @@ void btl_state_update_player_menu(void) {
if (playerData->equippedBadges[i] != 0) {
s32 moveID = gItemTable[playerData->equippedBadges[i]].moveID;
moveData = &gMoveTable[moveID];
if (moveData->category == D_802AB4F0[battleStatus->currentSubmenu]) {
if (moveData->category == D_802AB4F0[battleStatus->curSubmenu]) {
battleStatus->submenuMoves[entryIdx] = moveID;
battleStatus->submenuIcons[entryIdx] = playerData->equippedBadges[i];
battleStatus->submenuStatus[entryIdx] = 1;
@ -2542,7 +2542,7 @@ void btl_state_update_player_menu(void) {
battleStatus->submenuIcons[entryIdx] = 0;
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->moveArgument = MOVE_REFRESH + i;
battleStatus->currentTargetListFlags = moveData->flags;
battleStatus->curTargetListFlags = moveData->flags;
player_create_target_list(playerActor);
battleStatus->submenuStatus[entryIdx] = 1;
if (playerActor->targetListLength == 0) {
@ -2564,7 +2564,7 @@ void btl_state_update_player_menu(void) {
battleStatus->submenuIcons[entryIdx] = 0;
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->moveArgument = MOVE_REFRESH + i;
battleStatus->currentTargetListFlags = moveData->flags;
battleStatus->curTargetListFlags = moveData->flags;
player_create_target_list(playerActor);
battleStatus->submenuStatus[entryIdx] = starBeamLevel;
if (playerActor->targetListLength == 0) {
@ -2587,7 +2587,7 @@ void btl_state_update_player_menu(void) {
battleStatus->submenuIcons[entryIdx] = 0;
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->moveArgument = MOVE_REFRESH + i;
battleStatus->currentTargetListFlags = moveData->flags;
battleStatus->curTargetListFlags = moveData->flags;
player_create_target_list(playerActor);
battleStatus->submenuStatus[entryIdx] = 1;
if (playerActor->targetListLength == 0) {
@ -2608,7 +2608,7 @@ void btl_state_update_player_menu(void) {
} while (0); // TODO required to match
}
currentSubmenu = battleStatus->currentSubmenu;
currentSubmenu = battleStatus->curSubmenu;
if (currentSubmenu == BTL_MENU_TYPE_STAR_POWERS) {
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_1;
btl_state_update_player_menu();
@ -2648,13 +2648,13 @@ void btl_state_update_player_menu(void) {
}
initialPos = battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_JUMP];
}
if (battleStatus->currentSubmenu == BTL_MENU_TYPE_SMASH) {
if (battleStatus->curSubmenu == BTL_MENU_TYPE_SMASH) {
if (battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_SMASH] < 0) {
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_SMASH] = 0;
}
initialPos = battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_SMASH];
}
if (battleStatus->currentSubmenu == BTL_MENU_TYPE_ITEMS) {
if (battleStatus->curSubmenu == BTL_MENU_TYPE_ITEMS) {
if (battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_ITEMS] < 0) {
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_ITEMS] = 0;
}
@ -2732,16 +2732,16 @@ void btl_state_update_player_menu(void) {
} else {
battleStatus->unk_49 = BattleMenu_Moves_OptionIndices[submenuResult - 1];
battleStatus->selectedMoveID = battleStatus->submenuMoves[battleStatus->unk_49];
if (battleStatus->currentSubmenu == BTL_MENU_TYPE_JUMP) {
if (battleStatus->curSubmenu == BTL_MENU_TYPE_JUMP) {
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_JUMP] = battle_menu_moveOptionActive;
}
if (battleStatus->currentSubmenu == BTL_MENU_TYPE_SMASH) {
if (battleStatus->curSubmenu == BTL_MENU_TYPE_SMASH) {
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_SMASH] = battle_menu_moveOptionActive;
}
currentSubmenu2 = battleStatus->currentSubmenu;
if (battleStatus->currentSubmenu == BTL_MENU_TYPE_ITEMS) {
currentSubmenu2 = battleStatus->curSubmenu;
if (battleStatus->curSubmenu == BTL_MENU_TYPE_ITEMS) {
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_ITEMS] = battle_menu_moveOptionActive;
if (battleStatus->currentSubmenu == currentSubmenu2) {
if (battleStatus->curSubmenu == currentSubmenu2) {
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_1;
btl_state_update_player_menu();
btl_state_update_player_menu();
@ -2755,7 +2755,7 @@ void btl_state_update_player_menu(void) {
break;
case BTL_SUBSTATE_PLAYER_MENU_MOVE_CHOOSE_TARGET:
submenuResult = btl_submenu_moves_update();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && submenuResult == 0) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && submenuResult == 0) {
func_802A2AB8();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_4;
@ -2767,8 +2767,8 @@ void btl_state_update_player_menu(void) {
battleStatus->cancelTargetMenuSubstate = BTL_SUBSTATE_PLAYER_MENU_MOVE_TARGET_CANCEL;
battleStatus->acceptTargetMenuSubstate = BTL_SUBSTATE_PLAYER_MENU_MOVE_TARGET_CHOSEN;
battleStatus->selectedMoveID = battleStatus->submenuMoves[battleStatus->unk_49];
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->submenuMoves[battleStatus->unk_49]].flags;
currentSubmenu = battleStatus->currentSubmenu;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->submenuMoves[battleStatus->unk_49]].flags;
currentSubmenu = battleStatus->curSubmenu;
switch (currentSubmenu) {
case BTL_MENU_TYPE_JUMP:
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
@ -2813,7 +2813,7 @@ void btl_state_update_player_menu(void) {
if (gBattleStatus.flags2 & BS_FLAGS2_4) {
btl_show_variable_battle_message(BTL_MSG_CANT_SWITCH, 60, 0);
} else {
btl_show_variable_battle_message(BTL_MSG_CANT_MOVE, 60, playerData->currentPartner);
btl_show_variable_battle_message(BTL_MSG_CANT_MOVE, 60, playerData->curPartner);
}
D_802AD607 = 1;
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_MAIN_AWAIT_CANT_SWAP;
@ -2833,25 +2833,25 @@ void btl_state_update_player_menu(void) {
break;
case BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_11:
submenuResult = btl_main_menu_update();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && submenuResult == 0) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && submenuResult == 0) {
func_802A1078();
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_12;
} else if (submenuResult != 0) {
battleStatus->cancelTargetMenuSubstate = BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_13;
battleStatus->acceptTargetMenuSubstate = BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_14;
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case BTL_MENU_TYPE_JUMP:
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
battleStatus->moveArgument = playerData->bootsLevel;
battleStatus->selectedMoveID = playerData->bootsLevel + MOVE_JUMP1;
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
btl_set_state(BATTLE_STATE_SELECT_TARGET);
break;
case BTL_MENU_TYPE_SMASH:
battleStatus->moveCategory = BTL_MENU_TYPE_SMASH;
battleStatus->moveArgument = playerData->hammerLevel;
battleStatus->selectedMoveID = playerData->hammerLevel + MOVE_HAMMER1;
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
btl_set_state(BATTLE_STATE_SELECT_TARGET);
break;
default:
@ -2894,7 +2894,7 @@ void btl_state_update_player_menu(void) {
}
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = playerData->invItems[i];
battleStatus->currentTargetListFlags = itemData->targetFlags;
battleStatus->curTargetListFlags = itemData->targetFlags;
player_create_target_list(playerActor);
popup->ptrIcon[entryIdx] = hudScriptPair->enabled;
popup->userIndex[entryIdx] = playerData->invItems[i];
@ -2943,8 +2943,8 @@ void btl_state_update_player_menu(void) {
battleStatus->unk_1AA = popup->userIndex[popup->result - 1];
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = battleStatus->unk_1AA;
battleStatus->currentTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->currentAttackElement = 0;
battleStatus->curTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->curAttackElement = 0;
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_DIP] = popup->result - 1;
hide_popup_menu();
func_802A27D0();
@ -2954,7 +2954,7 @@ void btl_state_update_player_menu(void) {
}
break;
case BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_3:
if ((battleStatus->currentButtonsPressed & BUTTON_B) && popup->result == POPUP_RESULT_CHOOSING) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && popup->result == POPUP_RESULT_CHOOSING) {
func_800F16CC();
func_802A2C58();
func_802A1098();
@ -2998,7 +2998,7 @@ void btl_state_update_player_menu(void) {
}
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = playerData->invItems[i];
battleStatus->currentTargetListFlags = itemData->targetFlags;
battleStatus->curTargetListFlags = itemData->targetFlags;
player_create_target_list(playerActor);
popup->ptrIcon[entryIdx] = hudScriptPair->enabled;
@ -3041,8 +3041,8 @@ void btl_state_update_player_menu(void) {
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = battleStatus->unk_1AA;
battleStatus->selectedMoveID = MOVE_ITEMS;
battleStatus->currentTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->currentAttackElement = 0;
battleStatus->curTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->curAttackElement = 0;
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_DIP] = popup->result - 1;
hide_popup_menu();
func_802A1030();
@ -3051,7 +3051,7 @@ void btl_state_update_player_menu(void) {
}
break;
case BTL_SUBSTATE_PLAYER_MENU_ITEMS_3:
if ((battleStatus->currentButtonsPressed & BUTTON_B) && popup->result == POPUP_RESULT_CHOOSING) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && popup->result == POPUP_RESULT_CHOOSING) {
func_800F16CC();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_ITEMS_4;
@ -3143,7 +3143,7 @@ void btl_state_update_player_menu(void) {
break;
case BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_3:
submenuResult = btl_submenu_moves_update();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && submenuResult == 0) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && submenuResult == 0) {
func_802A2AB8();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_4;
@ -3152,7 +3152,7 @@ void btl_state_update_player_menu(void) {
battleStatus->acceptTargetMenuSubstate = BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_6;
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->selectedMoveID = battleStatus->submenuMoves[battleStatus->unk_49];
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->submenuMoves[battleStatus->unk_49]].flags;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->submenuMoves[battleStatus->unk_49]].flags;
battleStatus->moveArgument = battleStatus->unk_49;
if (playerData->starBeamLevel == 2 && battleStatus->moveArgument == 8) {
battleStatus->moveArgument++;
@ -3198,7 +3198,7 @@ void btl_state_update_player_menu(void) {
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = playerData->invItems[i];
battleStatus->currentTargetListFlags = itemData->targetFlags;
battleStatus->curTargetListFlags = itemData->targetFlags;
player_create_target_list(playerActor);
popup->ptrIcon[entryIdx] = hudScriptPair->enabled;
popup->userIndex[entryIdx] = playerData->invItems[i];
@ -3249,8 +3249,8 @@ void btl_state_update_player_menu(void) {
battleStatus->unk_1AA = popup->userIndex[popup->result - 1];
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = battleStatus->unk_1AA;
battleStatus->currentTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->currentAttackElement = 0;
battleStatus->curTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->curAttackElement = 0;
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_DIP] = popup->result - 1;
hide_popup_menu();
D_802ACC60 = 5;
@ -3282,7 +3282,7 @@ void btl_state_update_player_menu(void) {
break;
case BTL_SUBSTATE_PLAYER_MENU_BERSERKER_1:
if (playerData->bootsLevel >= 0) {
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_JUMP5].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_UNUSED_JUMP5].flags;
player_create_target_list(playerActor);
jumpTargetCount = playerActor->targetListLength;
} else {
@ -3290,7 +3290,7 @@ void btl_state_update_player_menu(void) {
}
if (playerData->hammerLevel >= 0) {
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_HAMMER5].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_UNUSED_HAMMER5].flags;
player_create_target_list(playerActor);
hammerTargetCount = playerActor->targetListLength;
} else {
@ -3312,13 +3312,13 @@ void btl_state_update_player_menu(void) {
if (rand_int(100) < jumpChance) {
battleStatus->selectedMoveID = MOVE_UNUSED_JUMP5;
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_JUMP5].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_UNUSED_JUMP5].flags;
battleStatus->moveArgument = playerData->bootsLevel;
player_create_target_list(playerActor);
} else {
battleStatus->selectedMoveID = MOVE_UNUSED_HAMMER5;
battleStatus->moveCategory = BTL_MENU_TYPE_SMASH;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_UNUSED_HAMMER5].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_UNUSED_HAMMER5].flags;
battleStatus->moveArgument = playerData->hammerLevel;
player_create_target_list(playerActor);
}
@ -3331,11 +3331,11 @@ void btl_state_update_player_menu(void) {
if (battleStatus->changePartnerAllowed >= 0) {
D_802AD678[0] = BTL_MENU_TYPE_CHANGE_PARTNER;
D_802AD658[0] = BattleMenu_LeftJustMessages[BTL_MENU_TYPE_CHANGE_PARTNER];
D_802AD640[0] = battle_menu_PartnerHudScripts[playerData->currentPartner];
D_802AD640[0] = battle_menu_PartnerHudScripts[playerData->curPartner];
D_802AD690[0] = 1;
D_802AD6C0[0] = MSG_Menus_Action_ChangePartner;
if (battleStatus->changePartnerAllowed <= 0) {
D_802AD640[0] = battle_menu_DisabledPartnerHudScripts[playerData->currentPartner];
D_802AD640[0] = battle_menu_DisabledPartnerHudScripts[playerData->curPartner];
D_802AD690[0] = 0;
D_802AD6A8[0] = 0;
}
@ -3383,9 +3383,9 @@ void btl_state_update_player_menu(void) {
btl_state_update_player_menu();
btl_state_update_player_menu();
} else {
battleStatus->currentSubmenu = D_802AD678[submenuResult - 1];
battleStatus->curSubmenu = D_802AD678[submenuResult - 1];
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_STRATEGY] = submenuResult - 1;
if (battleStatus->currentSubmenu == 5) {
if (battleStatus->curSubmenu == 5) {
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_1;
btl_state_update_player_menu();
btl_state_update_player_menu();
@ -3398,14 +3398,14 @@ void btl_state_update_player_menu(void) {
break;
case BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_3:
submenuResult = func_802A4A54();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && submenuResult == 0) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && submenuResult == 0) {
func_802A48FC();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_4;
} else if (btl_main_menu_update() != 0) {
battleStatus->cancelTargetMenuSubstate = BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_5;
battleStatus->acceptTargetMenuSubstate = BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_6;
switch (battleStatus->currentSubmenu) {
switch (battleStatus->curSubmenu) {
case 3:
gBattleSubState = BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_6;
btl_state_update_player_menu();
@ -3469,7 +3469,7 @@ void btl_state_update_player_menu(void) {
popup->nameMsg[entryIdx] = prop->nameMsg;
popup->descMsg[entryIdx] = prop->battleDescMsg;
popup->value[entryIdx] = playerData->partners[partnerId].level;
if (playerData->currentPartner == partnerId) {
if (playerData->curPartner == partnerId) {
popup->enabled[entryIdx] = 0;
popup->ptrIcon[entryIdx] = battle_menu_DisabledPartnerHudScripts[partnerId];
}
@ -3481,7 +3481,7 @@ void btl_state_update_player_menu(void) {
}
popup->popupType = POPUP_MENU_SWITCH_PARTNER;
popup->numEntries = entryIdx;
popup->initialPos = MenuIndexFromPartnerID[playerData->currentPartner] - 1;
popup->initialPos = MenuIndexFromPartnerID[playerData->curPartner] - 1;
popup->dipMode = 0;
popup->titleNumber = 0;
create_battle_popup_menu(popup);
@ -3503,7 +3503,7 @@ void btl_state_update_player_menu(void) {
battleStatus->unk_1AC = popup->userIndex[popup->result - 1];
battleStatus->moveCategory = BTL_MENU_TYPE_CHANGE_PARTNER;
battleStatus->selectedMoveID = MOVE_UNUSED_37;
battleStatus->currentTargetListFlags = TARGET_FLAG_2;
battleStatus->curTargetListFlags = TARGET_FLAG_2;
battleStatus->moveArgument = battleStatus->unk_1AC;
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_PARTNER] = popup->result - 1;
hide_popup_menu();
@ -3514,7 +3514,7 @@ void btl_state_update_player_menu(void) {
}
break;
case BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_3:
if ((battleStatus->currentButtonsPressed & BUTTON_B) && popup->result == POPUP_RESULT_CHOOSING) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && popup->result == POPUP_RESULT_CHOOSING) {
func_800F16CC();
func_802A4A10();
func_802A1098();
@ -3629,7 +3629,7 @@ void btl_state_update_partner_menu(void) {
if (gBattleSubState == BTL_SUBSTATE_PARTNER_MENU_NONE) {
battleStatus->moveCategory = BTL_MENU_TYPE_INVALID;
battleStatus->selectedMoveID = MOVE_NONE;
battleStatus->currentAttackElement = 0;
battleStatus->curAttackElement = 0;
if (!func_802A58D0()) {
btl_set_state(BATTLE_STATE_9);
} else {
@ -3641,8 +3641,8 @@ void btl_state_update_partner_menu(void) {
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_INIT_MENU;
} else {
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_12D;
partnerActor->state.currentPos.x = partnerActor->homePos.x;
partnerActor->state.currentPos.z = partnerActor->homePos.z;
partnerActor->state.curPos.x = partnerActor->homePos.x;
partnerActor->state.curPos.z = partnerActor->homePos.z;
partnerActor->state.goalPos.x = playerActor->homePos.x;
partnerActor->state.goalPos.z = playerActor->homePos.z;
partnerActor->state.moveTime = 4;
@ -3652,28 +3652,28 @@ void btl_state_update_partner_menu(void) {
}
if (gBattleSubState == BTL_SUBSTATE_PARTNER_MENU_12D) {
if (partnerActor->state.moveTime != 0) {
partnerActor->currentPos.x += (partnerActor->state.goalPos.x - partnerActor->currentPos.x) / partnerActor->state.moveTime;
partnerActor->currentPos.z += (partnerActor->state.goalPos.z - partnerActor->currentPos.z) / partnerActor->state.moveTime;
playerActor->currentPos.x += (partnerActor->state.currentPos.x - playerActor->currentPos.x) / partnerActor->state.moveTime;
playerActor->currentPos.z += (partnerActor->state.currentPos.z - playerActor->currentPos.z) / partnerActor->state.moveTime;
partnerActor->curPos.x += (partnerActor->state.goalPos.x - partnerActor->curPos.x) / partnerActor->state.moveTime;
partnerActor->curPos.z += (partnerActor->state.goalPos.z - partnerActor->curPos.z) / partnerActor->state.moveTime;
playerActor->curPos.x += (partnerActor->state.curPos.x - playerActor->curPos.x) / partnerActor->state.moveTime;
playerActor->curPos.z += (partnerActor->state.curPos.z - playerActor->curPos.z) / partnerActor->state.moveTime;
}
partnerActor->currentPos.z += sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
partnerActor->curPos.z += sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
partnerActor->yaw = clamp_angle(-partnerActor->state.angle);
playerActor->currentPos.z -= sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
playerActor->curPos.z -= sin_rad(DEG_TO_RAD(partnerActor->state.angle)) * 16.0f;
playerActor->yaw = clamp_angle(-partnerActor->state.angle);
partnerActor->state.angle += 90.0f;
if (partnerActor->state.moveTime != 0) {
partnerActor->state.moveTime--;
} else {
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_INIT_MENU;
partnerActor->currentPos.x = partnerActor->state.goalPos.x;
partnerActor->currentPos.z = partnerActor->state.goalPos.z;
playerActor->currentPos.x = partnerActor->state.currentPos.x;
playerActor->currentPos.z = partnerActor->state.currentPos.z;
partnerActor->homePos.x = partnerActor->currentPos.x;
partnerActor->homePos.z = partnerActor->currentPos.z;
playerActor->homePos.x = playerActor->currentPos.x;
playerActor->homePos.z = playerActor->currentPos.z;
partnerActor->curPos.x = partnerActor->state.goalPos.x;
partnerActor->curPos.z = partnerActor->state.goalPos.z;
playerActor->curPos.x = partnerActor->state.curPos.x;
playerActor->curPos.z = partnerActor->state.curPos.z;
partnerActor->homePos.x = partnerActor->curPos.x;
partnerActor->homePos.z = partnerActor->curPos.z;
playerActor->homePos.x = playerActor->curPos.x;
playerActor->homePos.z = playerActor->curPos.z;
gBattleStatus.flags1 |= BS_FLAGS1_PLAYER_IN_BACK;
}
}
@ -3710,17 +3710,17 @@ void btl_state_update_partner_menu(void) {
entryIdx++;
// abilities menu category
BattleMenu_HudScripts[entryIdx] = battle_menu_PartnerMoveHudScripts[playerData->currentPartner][0];
BattleMenu_HudScripts[entryIdx] = battle_menu_PartnerMoveHudScripts[playerData->curPartner][0];
battle_menu_submenuIDs[entryIdx] = BTL_MENU_TYPE_ABILITY;
BattleMenu_OptionEnabled[entryIdx] = TRUE;
BattleMenu_TitleMessages[entryIdx] = BattleMenu_CenteredMessages[BTL_MENU_TYPE_ABILITY];
if (battleStatus->menuStatus[3] <= 0) {
BattleMenu_HudScripts[entryIdx] = battle_menu_PartnerMoveHudScripts[playerData->currentPartner][1];
BattleMenu_HudScripts[entryIdx] = battle_menu_PartnerMoveHudScripts[playerData->curPartner][1];
BattleMenu_OptionEnabled[entryIdx] = FALSE;
battle_menu_isMessageDisabled[entryIdx] = BTL_MSG_CANT_SELECT_NOW;
}
if (!(battleStatus->enabledMenusFlags & BTL_MENU_ENABLED_ABILITIES)) {
BattleMenu_HudScripts[entryIdx] = battle_menu_PartnerMoveHudScripts[playerData->currentPartner][1];
BattleMenu_HudScripts[entryIdx] = battle_menu_PartnerMoveHudScripts[playerData->curPartner][1];
BattleMenu_OptionEnabled[entryIdx] = FALSE;
battle_menu_isMessageDisabled[entryIdx] = BTL_MSG_CANT_SELECT_NOW;
}
@ -3762,7 +3762,7 @@ void btl_state_update_partner_menu(void) {
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_1;
return;
case BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_1:
set_animation(ACTOR_PARTNER, 0, BattleMenu_PartnerThinkAnims[playerData->currentPartner]);
set_animation(ACTOR_PARTNER, 0, BattleMenu_PartnerThinkAnims[playerData->curPartner]);
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_2;
case BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_2:
entryIdx = btl_main_menu_update();
@ -3785,7 +3785,7 @@ void btl_state_update_partner_menu(void) {
if (D_802ACC60 != 0) {
D_802ACC60--;
} else if (entryIdx != 0) {
set_animation(ACTOR_PARTNER, 0, BattleMenu_PartnerIdleAnims[playerData->currentPartner]);
set_animation(ACTOR_PARTNER, 0, BattleMenu_PartnerIdleAnims[playerData->curPartner]);
battleStatus->lastPartnerMenuSelection[BTL_MENU_IDX_MAIN] = battleStatus->unk_4A = battle_menu_submenuIDs[entryIdx - 1];
if (battleStatus->unk_4A == 7) {
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_1;
@ -3817,7 +3817,7 @@ void btl_state_update_partner_menu(void) {
break;
case BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_3:
entryIdx = btl_main_menu_update();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && entryIdx == 0) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && entryIdx == 0) {
func_802A1078();
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_MAIN_MENU_4;
return;
@ -3826,7 +3826,7 @@ void btl_state_update_partner_menu(void) {
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->selectedMoveID = MOVE_FOCUS;
battleStatus->moveArgument = 0;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_FOCUS].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_FOCUS].flags;
btl_set_state(BATTLE_STATE_SELECT_TARGET);
return;
}
@ -3878,9 +3878,9 @@ void btl_state_update_partner_menu(void) {
battleStatus->submenuStatus[i] = 0;
BattleMenu_Moves_OptionCantUseMessages[i] = BTL_MSG_CANT_SELECT_NOW;
}
battle_menu_moveOptionIconScripts[i] = battle_menu_PartnerMoveHudScripts[playerData->currentPartner][2 * i + 2];
battle_menu_moveOptionIconScripts[i] = battle_menu_PartnerMoveHudScripts[playerData->curPartner][2 * i + 2];
if (battleStatus->submenuStatus[i] == 0) {
battle_menu_moveOptionIconScripts[i] = battle_menu_PartnerMoveHudScripts[playerData->currentPartner][2 * i + 3];
battle_menu_moveOptionIconScripts[i] = battle_menu_PartnerMoveHudScripts[playerData->curPartner][2 * i + 3];
}
BattleMenu_Moves_OptionIndices[i] = battleStatus->submenuMoves[i];
BattleMenu_Moves_OptionEnabled[i] = battleStatus->submenuStatus[i];
@ -3933,14 +3933,14 @@ void btl_state_update_partner_menu(void) {
break;
case BTL_SUBSTATE_PARTNER_MENU_ABILITIES_3:
entryIdx = btl_submenu_moves_update();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && entryIdx == 0) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && entryIdx == 0) {
func_802A2AB8();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_ABILITIES_4;
} else if (btl_main_menu_update() != 0) {
battleStatus->moveCategory = BTL_MENU_TYPE_ABILITY;
battleStatus->selectedMoveID = BattleMenu_Moves_OptionIndices[battleStatus->unk_4B];
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->selectedMoveID].flags;
battleStatus->lastPartnerMenuSelection[BTL_MENU_IDX_ABILITY] = battle_menu_moveOptionActive;
battleStatus->cancelTargetMenuSubstate = BTL_SUBSTATE_PARTNER_MENU_ABILITIES_5;
battleStatus->acceptTargetMenuSubstate = BTL_SUBSTATE_PARTNER_MENU_ABILITIES_6;
@ -4016,8 +4016,8 @@ void btl_state_update_partner_menu(void) {
battleStatus->unk_1AA = popupMenu->userIndex[popupMenu->result - 1];
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
battleStatus->moveArgument = battleStatus->unk_1AA;
battleStatus->currentTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->currentAttackElement = 0;
battleStatus->curTargetListFlags = gItemTable[battleStatus->moveArgument].targetFlags | TARGET_FLAG_8000;
battleStatus->curAttackElement = 0;
battleStatus->lastPartnerMenuSelection[BTL_MENU_IDX_PARTNER_ITEM] = popupMenu->result - 1;
hide_popup_menu();
func_802A1030();
@ -4026,7 +4026,7 @@ void btl_state_update_partner_menu(void) {
}
break;
case BTL_SUBSTATE_PARTNER_MENU_ITEMS_3:
if ((battleStatus->currentButtonsPressed & BUTTON_B) && popupMenu->result == POPUP_RESULT_CHOOSING) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && popupMenu->result == POPUP_RESULT_CHOOSING) {
func_800F16CC();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_ITEMS_4;
@ -4060,7 +4060,7 @@ void btl_state_update_partner_menu(void) {
popupMenu->nameMsg[popupIndex] = popupProps->nameMsg;
popupMenu->descMsg[popupIndex] = popupProps->battleDescMsg;
popupMenu->value[popupIndex] = playerData->partners[partnerId].level;
if (playerData->currentPartner == partnerId) {
if (playerData->curPartner == partnerId) {
popupMenu->enabled[popupIndex] = 0;
popupMenu->ptrIcon[popupIndex] = battle_menu_DisabledPartnerHudScripts[partnerId];
}
@ -4072,7 +4072,7 @@ void btl_state_update_partner_menu(void) {
}
popupMenu->popupType = POPUP_MENU_SWITCH_PARTNER;
popupMenu->numEntries = popupIndex;
popupMenu->initialPos = MenuIndexFromPartnerID[playerData->currentPartner] - 1;
popupMenu->initialPos = MenuIndexFromPartnerID[playerData->curPartner] - 1;
popupMenu->dipMode = 0;
popupMenu->titleNumber = 0;
create_battle_popup_menu(popupMenu);
@ -4096,7 +4096,7 @@ void btl_state_update_partner_menu(void) {
battleStatus->unk_1AC = popupMenu->userIndex[popupMenu->result - 1];
battleStatus->moveCategory = BTL_MENU_TYPE_CHANGE_PARTNER;
battleStatus->selectedMoveID = MOVE_UNUSED_37;
battleStatus->currentTargetListFlags = TARGET_FLAG_2;
battleStatus->curTargetListFlags = TARGET_FLAG_2;
battleStatus->moveArgument = battleStatus->unk_1AC;
battleStatus->lastPartnerMenuSelection[BTL_MENU_IDX_PARTNER] = popupMenu->result - 1;
hide_popup_menu();
@ -4106,7 +4106,7 @@ void btl_state_update_partner_menu(void) {
}
break;
case BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_3:
if ((battleStatus->currentButtonsPressed & BUTTON_B) && (popupMenu->result == POPUP_RESULT_CHOOSING)) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && (popupMenu->result == POPUP_RESULT_CHOOSING)) {
func_800F16CC();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_UNUSED_CHANGE_PARTNER_4;
@ -4187,7 +4187,7 @@ void btl_state_update_partner_menu(void) {
break;
case BTL_SUBSTATE_PARTNER_MENU_FOCUS_3:
entryIdx = btl_submenu_moves_update();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && (entryIdx == 0)) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && (entryIdx == 0)) {
func_802A2AB8();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_FOCUS_4;
@ -4196,7 +4196,7 @@ void btl_state_update_partner_menu(void) {
battleStatus->acceptTargetMenuSubstate = BTL_SUBSTATE_PARTNER_MENU_FOCUS_6;
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->selectedMoveID = battleStatus->submenuMoves[battleStatus->unk_4B];
battleStatus->currentTargetListFlags = gMoveTable[battleStatus->submenuMoves[battleStatus->unk_4B]].flags;
battleStatus->curTargetListFlags = gMoveTable[battleStatus->submenuMoves[battleStatus->unk_4B]].flags;
battleStatus->moveArgument = battleStatus->unk_4B;
battleStatus->lastPartnerMenuSelection[BTL_MENU_IDX_STAR_POWER] = battle_menu_moveOptionActive;
btl_set_state(BATTLE_STATE_SELECT_TARGET);
@ -4223,11 +4223,11 @@ void btl_state_update_partner_menu(void) {
if (battleStatus->changePartnerAllowed >= 0) {
D_802AD678[popupIndex] = BTL_MENU_TYPE_CHANGE_PARTNER;
D_802AD658[popupIndex] = BattleMenu_LeftJustMessages[BTL_MENU_TYPE_CHANGE_PARTNER];
D_802AD640[popupIndex] = battle_menu_PartnerHudScripts[playerData->currentPartner];
D_802AD640[popupIndex] = battle_menu_PartnerHudScripts[playerData->curPartner];
D_802AD690[popupIndex] = 1;
D_802AD6C0[popupIndex] = MSG_Menus_Action_ChangePartner;
if (battleStatus->changePartnerAllowed <= 0) {
D_802AD640[popupIndex] = battle_menu_DisabledPartnerHudScripts[playerData->currentPartner];
D_802AD640[popupIndex] = battle_menu_DisabledPartnerHudScripts[playerData->curPartner];
D_802AD690[popupIndex] = 0;
D_802AD6A8[popupIndex] = 0;
}
@ -4276,7 +4276,7 @@ void btl_state_update_partner_menu(void) {
break;
case BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_3:
entryIdx = func_802A4A54();
if ((battleStatus->currentButtonsPressed & BUTTON_B) && entryIdx == 0) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && entryIdx == 0) {
func_802A48FC();
func_802A1098();
gBattleSubState = BTL_SUBSTATE_PARTNER_MENU_STRATEGIES_4;
@ -4334,7 +4334,7 @@ void btl_state_update_partner_menu(void) {
popupMenu->nameMsg[popupIndex] = popupProps->nameMsg;
popupMenu->descMsg[popupIndex] = popupProps->battleDescMsg;
popupMenu->value[popupIndex] = playerData->partners[partnerId].level;
if (playerData->currentPartner == partnerId) {
if (playerData->curPartner == partnerId) {
popupMenu->enabled[popupIndex] = 0;
popupMenu->ptrIcon[popupIndex] = battle_menu_DisabledPartnerHudScripts[partnerId];
}
@ -4346,7 +4346,7 @@ void btl_state_update_partner_menu(void) {
}
popupMenu->popupType = POPUP_MENU_SWITCH_PARTNER;
popupMenu->numEntries = popupIndex;
popupMenu->initialPos = MenuIndexFromPartnerID[playerData->currentPartner] - 1;
popupMenu->initialPos = MenuIndexFromPartnerID[playerData->curPartner] - 1;
popupMenu->dipMode = 0;
popupMenu->titleNumber = 0;
create_battle_popup_menu(popupMenu);
@ -4368,7 +4368,7 @@ void btl_state_update_partner_menu(void) {
battleStatus->unk_1AC = popupMenu->userIndex[popupMenu->result - 1];
battleStatus->moveCategory = BTL_MENU_TYPE_CHANGE_PARTNER;
battleStatus->selectedMoveID = MOVE_UNUSED_37;
battleStatus->currentTargetListFlags = TARGET_FLAG_2;
battleStatus->curTargetListFlags = TARGET_FLAG_2;
battleStatus->moveArgument = battleStatus->unk_1AC;
battleStatus->lastPartnerMenuSelection[BTL_MENU_IDX_PARTNER] = popupMenu->result - 1;
hide_popup_menu();
@ -4379,7 +4379,7 @@ void btl_state_update_partner_menu(void) {
}
break;
case BTL_SUBSTATE_PARTNER_MENU_CHANGE_PARTNER_3:
if ((battleStatus->currentButtonsPressed & BUTTON_B) && popupMenu->result == POPUP_RESULT_CHOOSING) {
if ((battleStatus->curButtonsPressed & BUTTON_B) && popupMenu->result == POPUP_RESULT_CHOOSING) {
func_800F16CC();
func_802A4A10();
func_802A1098();
@ -4502,8 +4502,8 @@ void btl_state_update_peach_menu(void) {
gBattleSubState = BTL_SUBSTATE_PEACH_CREATE_MAIN_MENU;
break;
}
player->state.currentPos.x = player->homePos.x;
player->state.currentPos.z = player->homePos.z;
player->state.curPos.x = player->homePos.x;
player->state.curPos.z = player->homePos.z;
gBattleSubState = BTL_SUBSTATE_PEACH_MENU_PERFORM_SWAP;
player->state.goalPos.x = partner->homePos.x;
player->state.goalPos.z = partner->homePos.z;
@ -4512,15 +4512,15 @@ void btl_state_update_peach_menu(void) {
break;
case BTL_SUBSTATE_PEACH_MENU_PERFORM_SWAP:
if (player->state.moveTime != 0) {
player->currentPos.x += (player->state.goalPos.x - player->currentPos.x) / player->state.moveTime;
player->currentPos.z += (player->state.goalPos.z - player->currentPos.z) / player->state.moveTime;
partner->currentPos.x += (player->state.currentPos.x - partner->currentPos.x) / player->state.moveTime;
partner->currentPos.z += (player->state.currentPos.z - partner->currentPos.z) / player->state.moveTime;
player->curPos.x += (player->state.goalPos.x - player->curPos.x) / player->state.moveTime;
player->curPos.z += (player->state.goalPos.z - player->curPos.z) / player->state.moveTime;
partner->curPos.x += (player->state.curPos.x - partner->curPos.x) / player->state.moveTime;
partner->curPos.z += (player->state.curPos.z - partner->curPos.z) / player->state.moveTime;
}
player->currentPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
player->curPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
player->yaw = clamp_angle(-player->state.angle);
partner->currentPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
partner->curPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
partner->yaw = clamp_angle(-player->state.angle);
player->state.angle += 90.0f;
@ -4529,14 +4529,14 @@ void btl_state_update_peach_menu(void) {
break;
}
player->currentPos.x = player->state.goalPos.x;
player->currentPos.z = player->state.goalPos.z;
partner->currentPos.x = player->state.currentPos.x;
partner->currentPos.z = player->state.currentPos.z;
player->homePos.x = player->currentPos.x;
player->homePos.z = player->currentPos.z;
partner->homePos.x = partner->currentPos.x;
partner->homePos.z = partner->currentPos.z;
player->curPos.x = player->state.goalPos.x;
player->curPos.z = player->state.goalPos.z;
partner->curPos.x = player->state.curPos.x;
partner->curPos.z = player->state.curPos.z;
player->homePos.x = player->curPos.x;
player->homePos.z = player->curPos.z;
partner->homePos.x = partner->curPos.x;
partner->homePos.z = partner->curPos.z;
gBattleStatus.flags1 &= ~BS_FLAGS1_PLAYER_IN_BACK;
case BTL_SUBSTATE_PEACH_CREATE_MAIN_MENU:
gBattleStatus.flags1 |= BS_FLAGS1_MENU_OPEN;
@ -4586,7 +4586,7 @@ void btl_state_update_peach_menu(void) {
}
if (selectedOption != 0) {
set_animation(ACTOR_PLAYER, 0, ANIM_Peach1_Walk);
battleStatus->currentSubmenu = battle_menu_submenuIDs[selectedOption - 1];
battleStatus->curSubmenu = battle_menu_submenuIDs[selectedOption - 1];
func_802A1030();
D_802ACC60 = 8;
D_802ACC6C = 4;
@ -4597,7 +4597,7 @@ void btl_state_update_peach_menu(void) {
if (btl_main_menu_update() != 0) {
battleStatus->cancelTargetMenuSubstate = BTL_SUBSTATE_PEACH_MENU_TARGET_CANCEL;
battleStatus->acceptTargetMenuSubstate = BTL_SUBSTATE_PEACH_MENU_TARGET_CHOSEN;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_PEACH_FOCUS].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_PEACH_FOCUS].flags;
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->selectedMoveID = MOVE_PEACH_FOCUS;
battleStatus->moveArgument = STAR_POWER_INDEX(MOVE_PEACH_FOCUS);
@ -4709,8 +4709,8 @@ void btl_state_update_twink_menu(void) {
btl_cam_use_preset(BTL_CAM_DEFAULT);
btl_cam_move(10);
if (!(gBattleStatus.flags1 & BS_FLAGS1_PLAYER_IN_BACK)) {
player->state.currentPos.x = player->homePos.x;
player->state.currentPos.z = player->homePos.z;
player->state.curPos.x = player->homePos.x;
player->state.curPos.z = player->homePos.z;
player->state.goalPos.x = partner->homePos.x;
player->state.goalPos.z = partner->homePos.z;
gBattleSubState = BTL_SUBSTATE_TWINK_MENU_PERFORM_SWAP;
@ -4722,28 +4722,28 @@ void btl_state_update_twink_menu(void) {
break;
case BTL_SUBSTATE_TWINK_MENU_PERFORM_SWAP:
if (player->state.moveTime != 0) {
player->currentPos.x += (player->state.goalPos.x - player->currentPos.x) / player->state.moveTime;
player->currentPos.z += (player->state.goalPos.z - player->currentPos.z) / player->state.moveTime;
partner->currentPos.x += (player->state.currentPos.x - partner->currentPos.x) / player->state.moveTime;
partner->currentPos.z += (player->state.currentPos.z - partner->currentPos.z) / player->state.moveTime;
player->curPos.x += (player->state.goalPos.x - player->curPos.x) / player->state.moveTime;
player->curPos.z += (player->state.goalPos.z - player->curPos.z) / player->state.moveTime;
partner->curPos.x += (player->state.curPos.x - partner->curPos.x) / player->state.moveTime;
partner->curPos.z += (player->state.curPos.z - partner->curPos.z) / player->state.moveTime;
}
player->currentPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
player->curPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
player->yaw = clamp_angle(-player->state.angle);
partner->currentPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
partner->curPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
partner->yaw = clamp_angle(-player->state.angle);
player->state.angle += 90.0f;
if (player->state.moveTime != 0) {
player->state.moveTime--;
break;
}
player->currentPos.x = player->state.goalPos.x;
player->currentPos.z = player->state.goalPos.z;
partner->currentPos.x = player->state.currentPos.x;
partner->currentPos.z = player->state.currentPos.z;
player->homePos.x = player->currentPos.x;
player->homePos.z = player->currentPos.z;
partner->homePos.x = partner->currentPos.x;
partner->homePos.z = partner->currentPos.z;
player->curPos.x = player->state.goalPos.x;
player->curPos.z = player->state.goalPos.z;
partner->curPos.x = player->state.curPos.x;
partner->curPos.z = player->state.curPos.z;
player->homePos.x = player->curPos.x;
player->homePos.z = player->curPos.z;
partner->homePos.x = partner->curPos.x;
partner->homePos.z = partner->curPos.z;
gBattleStatus.flags1 |= BS_FLAGS1_PLAYER_IN_BACK;
case BTL_SUBSTATE_TWINK_MENU_CREATE_MAIN_MENU:
gBattleStatus.flags1 |= BS_FLAGS1_MENU_OPEN;
@ -4793,7 +4793,7 @@ void btl_state_update_twink_menu(void) {
}
if (selection != 0) {
set_animation(ACTOR_PARTNER, 0, ANIM_Twink_Angry);
battleStatus->currentSubmenu = battle_menu_submenuIDs[selection - 1];
battleStatus->curSubmenu = battle_menu_submenuIDs[selection - 1];
func_802A1030();
D_802ACC60 = 8;
D_802ACC6C = 4;
@ -4807,7 +4807,7 @@ void btl_state_update_twink_menu(void) {
battleStatus->moveCategory = BTL_MENU_TYPE_STAR_POWERS;
battleStatus->selectedMoveID = MOVE_TWINK_DASH;
battleStatus->moveArgument = 0;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_TWINK_DASH].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_TWINK_DASH].flags;
btl_set_state(BATTLE_STATE_SELECT_TARGET);
}
break;
@ -4896,7 +4896,7 @@ void btl_state_update_select_target(void) {
}
player_create_target_list(actor);
targetListLength = actor->targetListLength;
if (battleStatus->currentTargetListFlags & TARGET_FLAG_ENEMY) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_ENEMY) {
targetIndexList = actor->targetIndexList;
for (i = 0; i < targetListLength; i++) {
target = &actor->targetData[targetIndexList[i]];
@ -4907,7 +4907,7 @@ void btl_state_update_select_target(void) {
}
}
if (battleStatus->currentTargetListFlags & TARGET_FLAG_80000000) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_80000000) {
if (!(gBattleStatus.flags1 & BS_FLAGS1_PARTNER_ACTING)) {
gBattleSubState = battleStatus->acceptTargetMenuSubstate;
if (gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) {
@ -4965,13 +4965,13 @@ void btl_state_update_select_target(void) {
}
}
if (battleStatus->currentButtonsPressed & BUTTON_B) {
if (battleStatus->curButtonsPressed & BUTTON_B) {
sfx_play_sound(SOUND_MENU_BACK);
gBattleSubState = BTL_SUBSTATE_SELECT_TARGET_CANCEL;
break;
}
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
sfx_play_sound(SOUND_MENU_NEXT);
D_802ACC60 = 8;
D_802ACC6C = 4;
@ -4980,18 +4980,18 @@ void btl_state_update_select_target(void) {
}
gBattleStatus.flags1 |= BS_FLAGS1_MENU_OPEN;
if (battleStatus->currentButtonsDown & (BUTTON_Z | BUTTON_R)) {
if (battleStatus->curButtonsDown & (BUTTON_Z | BUTTON_R)) {
gBattleStatus.flags1 &= ~BS_FLAGS1_MENU_OPEN;
break;
}
if (battleStatus->currentTargetListFlags & TARGET_FLAG_ENEMY) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_ENEMY) {
s32 oldSelectedTargetIndex = selectedTargetIndex;
if (battleStatus->currentButtonsHeld & BUTTON_STICK_LEFT) {
if (battleStatus->curButtonsHeld & BUTTON_STICK_LEFT) {
selectedTargetIndex--;
}
if (battleStatus->currentButtonsHeld & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsHeld & BUTTON_STICK_RIGHT) {
selectedTargetIndex++;
}
if (selectedTargetIndex < 0) {
@ -5115,7 +5115,7 @@ void btl_state_draw_select_target(void) {
tmpPtr = &D_802ACC68;
if (targetListLength != 0) {
if (battleStatus->currentTargetListFlags & TARGET_FLAG_ENEMY) {
if (battleStatus->curTargetListFlags & TARGET_FLAG_ENEMY) {
target = &actor->targetData[targetIndexList[selectedTargetIndex]];
anotherActor = get_actor(target->actorID);
id = D_802ACC70[0];
@ -5169,14 +5169,14 @@ void btl_state_draw_select_target(void) {
}
}
currentPartner = playerData->currentPartner;
currentPartner = playerData->curPartner;
screenX = 52;
screenY = 64;
if (gBattleStatus.flags2 & BS_FLAGS2_PEACH_BATTLE) {
currentPartner = PARTNER_TWINK;
}
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_ENEMY) || targetListLength == 1) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_ENEMY) || targetListLength == 1) {
actorID = target->actorID;
if (actorID == ACTOR_PLAYER) {
msgWidth = get_msg_width(MSG_Menus_Battle_TargetMario, 0) + 10;
@ -5208,7 +5208,7 @@ void btl_state_draw_select_target(void) {
screenX += 4;
screenY += 2;
if ((battleStatus->currentTargetListFlags & TARGET_FLAG_ENEMY) || targetListLength == 1) {
if ((battleStatus->curTargetListFlags & TARGET_FLAG_ENEMY) || targetListLength == 1) {
actorID = target->actorID;
if (actorID == ACTOR_PLAYER) {
draw_msg(MSG_Menus_Battle_TargetMario, screenX + D_802ACC68, screenY, 255, MSG_PAL_36, 0);

View File

@ -182,7 +182,7 @@ s32 player_raycast_below_cam_relative(PlayerStatus* playerStatus, f32* outX, f32
yaw = 180.0f;
}
return player_raycast_below(yaw - 90.0f + gCameras[gCurrentCameraID].currentYaw, playerStatus->colliderDiameter,
return player_raycast_below(yaw - 90.0f + gCameras[gCurrentCameraID].curYaw, playerStatus->colliderDiameter,
outX, outY, outZ, outLength, hitRx, hitRz, hitDirX, hitDirZ);
}
@ -607,31 +607,31 @@ void update_player(void) {
update_partner_timers();
if ((playerStatus->timeInAir > 100) || (playerStatus->position.y < -2000.0f)) {
if ((playerStatus->timeInAir > 100) || (playerStatus->pos.y < -2000.0f)) {
if (!(playerStatus->animFlags & PA_FLAG_NO_OOB_RESPAWN)) {
playerStatus->timeInAir = 0;
playerStatus->position.x = playerStatus->lastGoodPosition.x;
playerStatus->position.y = playerStatus->lastGoodPosition.y;
playerStatus->position.z = playerStatus->lastGoodPosition.z;
playerStatus->pos.x = playerStatus->lastGoodPos.x;
playerStatus->pos.y = playerStatus->lastGoodPos.y;
playerStatus->pos.z = playerStatus->lastGoodPos.z;
if (playerStatus->animFlags & PA_FLAG_RIDING_PARTNER) {
Npc* partner;
playerStatus->animFlags |= PA_FLAG_DISMOUNTING_ALLOWED | PA_FLAG_INTERRUPT_USE_PARTNER;
partner = get_npc_unsafe(NPC_PARTNER);
partner->pos.x = playerStatus->lastGoodPosition.x;
partner->pos.y = playerStatus->lastGoodPosition.y + playerStatus->colliderHeight;
partner->pos.z = playerStatus->lastGoodPosition.z;
partner->moveToPos.y = playerStatus->lastGoodPosition.y;
partner->pos.x = playerStatus->lastGoodPos.x;
partner->pos.y = playerStatus->lastGoodPos.y + playerStatus->colliderHeight;
partner->pos.z = playerStatus->lastGoodPos.z;
partner->moveToPos.y = playerStatus->lastGoodPos.y;
} else {
playerStatus->timeInAir = 10;
}
}
}
collisionStatus->currentWall = NO_COLLIDER;
collisionStatus->curWall = NO_COLLIDER;
collisionStatus->lastWallHammered = NO_COLLIDER;
collisionStatus->currentInspect = NO_COLLIDER;
collisionStatus->curInspect = NO_COLLIDER;
collisionStatus->floorBelow = TRUE;
update_player_input();
@ -664,10 +664,10 @@ void update_player(void) {
player_update_sprite();
gameStatus = gGameStatusPtr;
gameStatus->playerPos.x = playerStatus->position.x;
gameStatus->playerPos.y = playerStatus->position.y;
gameStatus->playerPos.z = playerStatus->position.z;
gameStatus->playerYaw = playerStatus->currentYaw;
gameStatus->playerPos.x = playerStatus->pos.x;
gameStatus->playerPos.y = playerStatus->pos.y;
gameStatus->playerPos.z = playerStatus->pos.z;
gameStatus->playerYaw = playerStatus->curYaw;
check_input_open_menus();
if (!(playerStatus->animFlags & PA_FLAG_USING_PEACH_PHYSICS)) {
@ -680,9 +680,9 @@ void update_player(void) {
check_for_pulse_stone();
check_for_ispy();
playerStatus->pushVelocity.x = 0.0f;
playerStatus->pushVelocity.y = 0.0f;
playerStatus->pushVelocity.z = 0.0f;
playerStatus->pushVel.x = 0.0f;
playerStatus->pushVel.y = 0.0f;
playerStatus->pushVel.z = 0.0f;
playerStatus->flags &= ~PS_FLAG_SLIDING;
playerStatus->animFlags &= ~PA_FLAG_FORCE_USE_PARTNER;
}
@ -699,7 +699,7 @@ void check_input_use_partner(void) {
&& !(playerStatus->animFlags & PA_FLAG_USING_PEACH_PHYSICS)
&& actionState <= ACTION_STATE_RUN
) {
if (playerData->currentPartner == PARTNER_GOOMBARIO) {
if (playerData->curPartner == PARTNER_GOOMBARIO) {
WorldTattleInteractionID = playerStatus->interactingWithID;
}
partner_use_ability();
@ -747,9 +747,9 @@ void phys_update_standard(void) {
}
if (!(playerStatus->flags & PS_FLAG_CAMERA_DOESNT_FOLLOW)) {
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->pos.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->pos.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->pos.z;
}
}
@ -761,9 +761,9 @@ void phys_update_lava_reset(void) {
if (!(gPlayerStatusPtr->flags & PS_FLAG_CAMERA_DOESNT_FOLLOW)) {
Camera* camera = &gCameras[CAM_DEFAULT];
camera->targetPos.x = gPlayerStatusPtr->position.x;
camera->targetPos.y = gPlayerStatusPtr->position.y;
camera->targetPos.z = gPlayerStatusPtr->position.z;
camera->targetPos.x = gPlayerStatusPtr->pos.x;
camera->targetPos.y = gPlayerStatusPtr->pos.y;
camera->targetPos.z = gPlayerStatusPtr->pos.z;
}
}
@ -777,8 +777,8 @@ void player_reset_data(void) {
mem_clear(playerStatus, sizeof(PlayerStatus));
playerStatus->flags = PS_FLAG_HAS_REFLECTION;
reset_player_status();
playerStatus->shadowID = create_shadow_type(0, playerStatus->position.x, playerStatus->position.y,
playerStatus->position.z);
playerStatus->shadowID = create_shadow_type(0, playerStatus->pos.x, playerStatus->pos.y,
playerStatus->pos.z);
func_800E6B68();
func_800E0B14();
clear_conversation_prompt();
@ -925,7 +925,7 @@ void update_player_blink(void) {
f32 get_xz_dist_to_player(f32 x, f32 z) {
PlayerStatus* playerStatus = &gPlayerStatus;
return dist2D(x, z, playerStatus->position.x, playerStatus->position.z);
return dist2D(x, z, playerStatus->pos.x, playerStatus->pos.z);
}
void enable_player_shadow(void) {
@ -983,7 +983,7 @@ void func_800E01DC(void) {
s32 game_scripts_disabled(void) {
s32 ret = FALSE;
if (gGameStatusPtr->disableScripts && (gGameStatusPtr->currentButtons[0] & BUTTON_R)) {
if (gGameStatusPtr->disableScripts && (gGameStatusPtr->curButtons[0] & BUTTON_R)) {
if (gPartnerStatus.partnerActionState == PARTNER_ACTION_NONE) {
set_action_state(ACTION_STATE_IDLE);
}
@ -1137,7 +1137,7 @@ s32 func_800E06D8(void) {
if (playerStatus->timeInAir != 0 || playerStatus->inputDisabledCount != 0) {
return FALSE;
}
if (gCollisionStatus.currentWall == NO_COLLIDER) {
if (gCollisionStatus.curWall == NO_COLLIDER) {
return FALSE;
}
if (playerStatus->flags & PS_FLAG_HAS_CONVERSATION_NPC
@ -1149,7 +1149,7 @@ s32 func_800E06D8(void) {
return TRUE;
}
currentWall = gCollisionStatus.currentWall;
currentWall = gCollisionStatus.curWall;
if (!(currentWall & COLLISION_WITH_ENTITY_BIT)) {
if (!should_collider_allow_interact(currentWall)) {
return FALSE;
@ -1185,7 +1185,7 @@ void check_for_interactables(void) {
}
if (InteractNotificationCallback == NULL) {
s32 curInteraction = gCollisionStatus.currentWall;
s32 curInteraction = gCollisionStatus.curWall;
if (playerStatus->inputDisabledCount != 0) {
if (gPlayerStatus.interactingWithID != curInteraction) {
@ -1199,7 +1199,7 @@ void check_for_interactables(void) {
}
if (curInteraction == NO_COLLIDER) {
s32 floor = gCollisionStatus.currentFloor;
s32 floor = gCollisionStatus.curFloor;
if ((floor >= 0) && (floor & COLLISION_WITH_ENTITY_BIT)) {
phi_s2 = 1;
@ -1313,8 +1313,8 @@ void update_partner_timers(void) {
void player_update_sprite(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
f32 cameraYaw = gCameras[gCurrentCameraID].currentYaw;
f32 camRelativeYaw = get_clamped_angle_diff(cameraYaw, playerStatus->currentYaw);
f32 cameraYaw = gCameras[gCurrentCameraID].curYaw;
f32 camRelativeYaw = get_clamped_angle_diff(cameraYaw, playerStatus->curYaw);
s32 trueAnim;
s32 sprIndex;
f32 angle;
@ -1338,7 +1338,7 @@ void player_update_sprite(void) {
PrevPlayerDirection = direction;
playerStatus->flipYaw[gCurrentCameraID] = (direction != 0) ? 180.0f : -180.0f;
if (fabsf(get_clamped_angle_diff(cameraYaw, playerStatus->currentYaw)) >= 90.0f) {
if (fabsf(get_clamped_angle_diff(cameraYaw, playerStatus->curYaw)) >= 90.0f) {
playerStatus->flipYaw[gCurrentCameraID] = -playerStatus->flipYaw[gCurrentCameraID];
}
}
@ -1367,7 +1367,7 @@ void player_update_sprite(void) {
PrevPlayerCamRelativeYaw = angle = clamp_angle(camRelativeYaw);
angle = clamp_angle(playerStatus->flipYaw[gCurrentCameraID] + angle);
if (playerStatus->currentSpeed == 0.0f) {
if (playerStatus->curSpeed == 0.0f) {
D_800F7B48 = 0.0f;
}
@ -1382,12 +1382,12 @@ void player_update_sprite(void) {
trueAnim = playerStatus->anim;
if (!(playerStatus->flags & PS_FLAG_FACE_FORWARDS)
&& (sprIndex == SPR_Mario1 || sprIndex == SPR_MarioW1 || sprIndex == SPR_Peach1)
&& fabsf(get_clamped_angle_diff(cameraYaw, playerStatus->currentYaw)) < 60.0f
&& fabsf(get_clamped_angle_diff(cameraYaw, playerStatus->curYaw)) < 60.0f
) {
trueAnim = get_player_back_anim(trueAnim);
}
playerStatus->trueAnimation = trueAnim;
playerStatus->currentYaw = playerStatus->targetYaw;
playerStatus->curYaw = playerStatus->targetYaw;
} else {
trueAnim = playerStatus->anim;
if (!(playerStatus->flags & PS_FLAG_FACE_FORWARDS)
@ -1474,8 +1474,8 @@ void render_player_model(void) {
if (playerStatus->flags & PS_FLAG_SPRITE_REDRAW) {
playerStatus->flags &= ~PS_FLAG_SPRITE_REDRAW;
get_screen_coords(gCurrentCamID, playerStatus->position.x, playerStatus->position.y,
playerStatus->position.z, &x, &y, &z);
get_screen_coords(gCurrentCamID, playerStatus->pos.x, playerStatus->pos.y,
playerStatus->pos.z, &x, &y, &z);
if (!(playerStatus->flags & PS_FLAG_SPINNING)) {
if (playerStatus->alpha1 != playerStatus->alpha2) {
if (playerStatus->alpha1 < 254) {
@ -1503,7 +1503,7 @@ void render_player_model(void) {
if (!(playerStatus->animFlags & PA_FLAG_INVISIBLE)) {
rtPtr->appendGfxArg = playerStatus;
rtPtr->distance = -z;
rtPtr->dist = -z;
rtPtr->renderMode = playerStatus->renderMode;
@ -1524,7 +1524,7 @@ void render_player_model(void) {
void appendGfx_player(void* data) {
PlayerStatus* playerStatus = &gPlayerStatus;
Matrix4f sp20, sp60, spA0, spE0;
f32 temp_f0 = -gCameras[gCurrentCamID].currentYaw;
f32 temp_f0 = -gCameras[gCurrentCamID].curYaw;
s32 spriteIdx;
if (playerStatus->actionState == ACTION_STATE_SLIDING) {
@ -1533,7 +1533,7 @@ void appendGfx_player(void* data) {
guMtxCatF(spE0, sp20, sp20);
guRotateF(spA0, playerStatus->spriteFacingAngle, 0.0f, 1.0f, 0.0f);
guMtxCatF(sp20, spA0, sp20);
guTranslateF(sp60, playerStatus->position.x, playerStatus->position.y - 1.0f, playerStatus->position.z);
guTranslateF(sp60, playerStatus->pos.x, playerStatus->pos.y - 1.0f, playerStatus->pos.z);
guMtxCatF(sp20, sp60, sp20);
spr_draw_player_sprite(PLAYER_SPRITE_MAIN, 0, 0, 0, sp20);
} else {
@ -1550,7 +1550,7 @@ void appendGfx_player(void* data) {
guMtxCatF(sp20, sp60, sp20);
guScaleF(spE0, SPRITE_WORLD_SCALE_D, SPRITE_WORLD_SCALE_D, SPRITE_WORLD_SCALE_D);
guMtxCatF(sp20, spE0, sp20);
guTranslateF(sp60, playerStatus->position.x, playerStatus->position.y, playerStatus->position.z);
guTranslateF(sp60, playerStatus->pos.x, playerStatus->pos.y, playerStatus->pos.z);
guMtxCatF(sp20, sp60, sp20);
if (playerStatus->animFlags & PA_FLAG_SHIVERING) {
@ -1599,7 +1599,7 @@ void appendGfx_player_spin(void* data) {
s32 spriteIdx;
for (i = 0; i < 2; i++) {
yaw = -gCameras[gCurrentCamID].currentYaw;
yaw = -gCameras[gCurrentCamID].curYaw;
if (i == 0) {
if (playerStatus->spriteFacingAngle > 90.0f && playerStatus->spriteFacingAngle <= 180.0f) {
@ -1625,20 +1625,20 @@ void appendGfx_player_spin(void* data) {
guRotateF(rotation, yaw, 0.0f, -1.0f, 0.0f);
guRotateF(mtx, clamp_angle(playerStatus->pitch), 0.0f, 0.0f, 1.0f);
guMtxCatF(rotation, mtx, mtx);
px = playerStatus->position.x;
py = playerStatus->position.y;
pz = playerStatus->position.z;
px = playerStatus->pos.x;
py = playerStatus->pos.y;
pz = playerStatus->pos.z;
} else {
blurAngle = phys_get_spin_history(i, &x, &y, &z);
if (y == 0x80000000) {
py = playerStatus->position.y;
py = playerStatus->pos.y;
} else {
py = y;
}
px = playerStatus->position.x;
pz = playerStatus->position.z;
px = playerStatus->pos.x;
pz = playerStatus->pos.z;
set_player_imgfx_comp(PLAYER_SPRITE_MAIN, -1, IMGFX_SET_ALPHA, 0, 0, 0, 64, 0);
guRotateF(mtx, yaw, 0.0f, -1.0f, 0.0f);
guRotateF(rotation, yaw, 0.0f, -1.0f, 0.0f);
@ -1686,24 +1686,24 @@ void update_player_shadow(void) {
yawTemp = 180.0f;
}
raycastYaw = (yawTemp - 90.0f) + gCameras[gCurrentCameraID].currentYaw;
shadow->position.x = playerX = playerStatus->position.x;
shadow->position.z = playerZ = playerStatus->position.z;
raycastYaw = (yawTemp - 90.0f) + gCameras[gCurrentCameraID].curYaw;
shadow->pos.x = playerX = playerStatus->pos.x;
shadow->pos.z = playerZ = playerStatus->pos.z;
x = playerX;
y = playerStatus->position.y + (playerStatus->colliderHeight / 3.5f);
y = playerStatus->pos.y + (playerStatus->colliderHeight / 3.5f);
z = playerZ;
shadowScale = 1024.0f;
gCollisionStatus.floorBelow = player_raycast_below(raycastYaw, playerStatus->colliderDiameter, &x, &y, &z,
&shadowScale, &hitRx, &hitRz, &hitDirX, &hitDirZ);
shadow->rotation.x = hitRx;
shadow->rotation.z = hitRz;
shadow->rotation.y = clamp_angle(-camera->currentYaw);
shadow->rot.x = hitRx;
shadow->rot.z = hitRz;
shadow->rot.y = clamp_angle(-camera->curYaw);
hitRx += 180.0f;
hitRz += 180.0f;
if (hitRx != 0.0f || hitRz != 0.0f) {
s32 dist = dist2D(x, z, playerStatus->position.x, playerStatus->position.z);
f32 tan = atan2(playerStatus->position.x, playerStatus->position.z, x, z);
s32 dist = dist2D(x, z, playerStatus->pos.x, playerStatus->pos.z);
f32 tan = atan2(playerStatus->pos.x, playerStatus->pos.z, x, z);
s32 angleTemp = clamp_angle((-90.0f - tan) + get_player_normal_yaw());
if (gGameStatusPtr->playerGroundTraceNormal.y != 0.0f) {
@ -1712,7 +1712,7 @@ void update_player_shadow(void) {
}
}
shadow->position.y = y;
shadow->pos.y = y;
shadow->alpha = (f64)playerStatus->alpha1 / 2;
if (!(gGameStatusPtr->peachFlags & PEACH_STATUS_FLAG_IS_PEACH)) {

View File

@ -16,7 +16,7 @@ void update_player_input(void) {
playerStatus->stickAxis[0] = gGameStatusPtr->stickX[0];
playerStatus->stickAxis[1] = gGameStatusPtr->stickY[0];
playerStatus->currentButtons = gGameStatusPtr->currentButtons[0];
playerStatus->curButtons = gGameStatusPtr->curButtons[0];
playerStatus->pressedButtons = gGameStatusPtr->pressedButtons[0];
playerStatus->heldButtons = gGameStatusPtr->heldButtons[0];
@ -27,7 +27,7 @@ void update_player_input(void) {
playerStatus->stickXBuffer[inputBufPos] = playerStatus->stickAxis[0];
playerStatus->stickYBuffer[inputBufPos] = playerStatus->stickAxis[1];
playerStatus->currentButtonsBuffer[inputBufPos] = playerStatus->currentButtons;
playerStatus->curButtonsBuffer[inputBufPos] = playerStatus->curButtons;
playerStatus->pressedButtonsBuffer[inputBufPos] = playerStatus->pressedButtons;
playerStatus->heldButtonsBuffer[inputBufPos] = playerStatus->heldButtons;
playerStatus->inputBufPos = inputBufPos;
@ -35,7 +35,7 @@ void update_player_input(void) {
if (playerStatus->flags & (PS_FLAG_INPUT_DISABLED | PS_FLAG_NO_STATIC_COLLISION)) {
playerStatus->stickAxis[0] = 0;
playerStatus->stickAxis[1] = 0;
playerStatus->currentButtons = 0;
playerStatus->curButtons = 0;
playerStatus->pressedButtons = 0;
playerStatus->heldButtons = 0;
}
@ -97,16 +97,16 @@ void reset_player_status(void) {
set_action_state(ACTION_STATE_IDLE);
playerStatus->currentSpeed = 0.0f;
playerStatus->curSpeed = 0.0f;
playerStatus->targetYaw = 0.0f;
playerStatus->overlapPushAmount = 0.0f;
playerStatus->overlapPushYaw = 0.0f;
playerStatus->anim = 0;
playerStatus->timeInAir = 0;
playerStatus->position.x = 0.0f;
playerStatus->position.y = 0.0f;
playerStatus->position.z = 0.0f;
playerStatus->currentYaw = 0.0f;
playerStatus->pos.x = 0.0f;
playerStatus->pos.y = 0.0f;
playerStatus->pos.z = 0.0f;
playerStatus->curYaw = 0.0f;
playerStatus->flipYaw[CAM_DEFAULT] = 0.0f;
playerStatus->flipYaw[CAM_BATTLE] = 0.0f;
playerStatus->flipYaw[CAM_TATTLE] = 0.0f;
@ -116,16 +116,16 @@ void reset_player_status(void) {
if (mapSettings->entryList != NULL) {
if (gGameStatusPtr->entryID < mapSettings->entryCount) {
playerStatus->position.x = (*mapSettings->entryList)[gGameStatusPtr->entryID].x;
playerStatus->position.y = (*mapSettings->entryList)[gGameStatusPtr->entryID].y;
playerStatus->position.z = (*mapSettings->entryList)[gGameStatusPtr->entryID].z;
playerStatus->currentYaw = (*mapSettings->entryList)[gGameStatusPtr->entryID].yaw;
playerStatus->pos.x = (*mapSettings->entryList)[gGameStatusPtr->entryID].x;
playerStatus->pos.y = (*mapSettings->entryList)[gGameStatusPtr->entryID].y;
playerStatus->pos.z = (*mapSettings->entryList)[gGameStatusPtr->entryID].z;
playerStatus->curYaw = (*mapSettings->entryList)[gGameStatusPtr->entryID].yaw;
}
}
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->pos.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->pos.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->pos.z;
phys_reset_spin_history();
mem_clear(&gPlayerSpinState, sizeof(gPlayerSpinState));
@ -134,7 +134,7 @@ void reset_player_status(void) {
void get_packed_buttons(s32* arg0) {
PlayerStatus* playerStatus = &gPlayerStatus;
*arg0 = (u16)playerStatus->currentButtons | (playerStatus->pressedButtons << 16);
*arg0 = (u16)playerStatus->curButtons | (playerStatus->pressedButtons << 16);
}
void player_input_to_move_vector(f32* angle, f32* magnitude) {
@ -153,7 +153,7 @@ void player_input_to_move_vector(f32* angle, f32* magnitude) {
mag = magMax;
}
ang = clamp_angle(atan2(0.0f, 0.0f, stickAxisX, stickAxisY) + gCameras[CAM_DEFAULT].currentYaw);
ang = clamp_angle(atan2(0.0f, 0.0f, stickAxisX, stickAxisY) + gCameras[CAM_DEFAULT].curYaw);
if (mag == 0.0f) {
ang = playerStatus->targetYaw;
}
@ -175,7 +175,7 @@ void game_input_to_move_vector(f32* outAngle, f32* outMagnitude) {
magnitude = maxRadius;
}
angle = clamp_angle(atan2(0.0f, 0.0f, stickX, stickY) + gCameras[CAM_DEFAULT].currentYaw);
angle = clamp_angle(atan2(0.0f, 0.0f, stickX, stickY) + gCameras[CAM_DEFAULT].curYaw);
if (magnitude == 0.0f) {
angle = playerStatus->targetYaw;
}
@ -186,8 +186,8 @@ void game_input_to_move_vector(f32* outAngle, f32* outMagnitude) {
void func_800E24F8(void) {
Shadow* shadow = get_shadow_by_index(gPlayerStatus.shadowID);
f32 x = shadow->rotation.x + 180.0;
f32 z = shadow->rotation.z + 180.0;
f32 x = shadow->rot.x + 180.0;
f32 z = shadow->rot.z + 180.0;
Camera* camera = &gCameras[CAM_DEFAULT];
f32 temp;

View File

@ -45,42 +45,42 @@ s32 phys_adjust_cam_on_landing(void) {
break;
case 1:
if (D_8010C9B0 == 0) {
if (playerStatus->position.y <= 0.0f) {
if (playerStatus->pos.y <= 0.0f) {
D_8010C9B0 = 1;
}
ret = 2;
} else if (playerStatus->position.y > 0.0f) {
} else if (playerStatus->pos.y > 0.0f) {
ret = 0;
}
break;
case 3:
if (playerStatus->position.y > 25.0f) {
if (playerStatus->pos.y > 25.0f) {
ret = 0;
}
break;
case 4:
if (playerStatus->position.y > 50.0f) {
if (playerStatus->pos.y > 50.0f) {
ret = 0;
}
break;
case 7:
if (playerStatus->position.y > -390.0f) {
if (playerStatus->pos.y > -390.0f) {
ret = 0;
} else if (playerStatus->position.y < -495.0f) {
} else if (playerStatus->pos.y < -495.0f) {
ret = 0;
}
break;
case 8:
if (playerStatus->position.y > -90.0f) {
if (playerStatus->pos.y > -90.0f) {
ret = 0;
} else if (playerStatus->position.y < -370.0f) {
} else if (playerStatus->pos.y < -370.0f) {
ret = 0;
}
break;
case 2:
if (gGameStatusPtr->entryID == 0) {
if (D_8010C9B0 == 0) {
if (!(playerStatus->position.y > 0.0f)) {
if (!(playerStatus->pos.y > 0.0f)) {
D_8010C9B0 = 1;
} else {
ret = 2;
@ -88,7 +88,7 @@ s32 phys_adjust_cam_on_landing(void) {
}
}
if (playerStatus->position.y > 0.0f) {
if (playerStatus->pos.y > 0.0f) {
ret = 0;
}
} else {
@ -98,7 +98,7 @@ s32 phys_adjust_cam_on_landing(void) {
case 5:
if (gGameStatusPtr->entryID == 0) {
if (D_8010C9B0 == 0) {
if (!(playerStatus->position.y > -130.0f)) {
if (!(playerStatus->pos.y > -130.0f)) {
D_8010C9B0 = 1;
} else {
ret = 2;
@ -107,7 +107,7 @@ s32 phys_adjust_cam_on_landing(void) {
}
if (playerStatus->position.y > -130.0f) {
if (playerStatus->pos.y > -130.0f) {
ret = 0;
}
} else {
@ -116,7 +116,7 @@ s32 phys_adjust_cam_on_landing(void) {
break;
case 10:
if (D_8010C9B0 == 0) {
if (!(playerStatus->position.y > -520.0f)) {
if (!(playerStatus->pos.y > -520.0f)) {
D_8010C9B0 = 1;
} else {
ret = 2;
@ -124,14 +124,14 @@ s32 phys_adjust_cam_on_landing(void) {
}
}
if (playerStatus->position.y > -520.0f) {
if (playerStatus->pos.y > -520.0f) {
ret = 0;
}
break;
case 11:
if (gGameStatusPtr->entryID == 0) {
if (D_8010C9B0 == 0) {
if (!(playerStatus->position.y > -520.0f)) {
if (!(playerStatus->pos.y > -520.0f)) {
D_8010C9B0 = 1;
} else {
ret = 2;
@ -140,7 +140,7 @@ s32 phys_adjust_cam_on_landing(void) {
}
if (playerStatus->position.y > -520.0f) {
if (playerStatus->pos.y > -520.0f) {
ret = 0;
}
}
@ -154,7 +154,7 @@ s32 phys_adjust_cam_on_landing(void) {
}
if (ret == 1) {
s32 surfaceType = get_collider_flags(gCollisionStatus.currentFloor) & COLLIDER_FLAGS_SURFACE_TYPE_MASK;
s32 surfaceType = get_collider_flags(gCollisionStatus.curFloor) & COLLIDER_FLAGS_SURFACE_TYPE_MASK;
if (surfaceType == SURFACE_TYPE_LAVA) {
gCameras[CAM_DEFAULT].moveFlags |= CAMERA_MOVE_IGNORE_PLAYER_Y;
@ -363,7 +363,7 @@ void set_action_state(s32 actionState) {
}
// Whilst Sushie, Lakilester, or Parakarry's ability is active, hazards have no effect.
partner = playerData->currentPartner;
partner = playerData->curPartner;
if (partner == PARTNER_SUSHIE || partner == PARTNER_LAKILESTER || partner == PARTNER_PARAKARRY) {
if (gPartnerStatus.partnerActionState != PARTNER_ACTION_NONE) {
@ -457,7 +457,7 @@ s32 check_input_hammer(void) {
return FALSE;
}
if (gPartnerStatus.partnerActionState == PARTNER_ACTION_USE && playerData->currentPartner == PARTNER_WATT) {
if (gPartnerStatus.partnerActionState == PARTNER_ACTION_USE && playerData->curPartner == PARTNER_WATT) {
return FALSE;
}
@ -481,7 +481,7 @@ s32 check_input_jump(void) {
}
// @bug? collider flags not properly masked with COLLIDER_FLAG_SURFACE_TYPE
surfaceType = get_collider_flags((u16)gCollisionStatus.currentFloor);
surfaceType = get_collider_flags((u16)gCollisionStatus.curFloor);
if ((surfaceType == SURFACE_TYPE_SLIDE) && phys_should_player_be_sliding()) {
return FALSE;
}
@ -493,8 +493,8 @@ s32 check_input_jump(void) {
return FALSE;
}
if ((collisionStatus->currentInspect != -1) && (collisionStatus->currentInspect & COLLISION_WITH_ENTITY_BIT)) {
Entity* entity = get_entity_by_index(collisionStatus->currentInspect);
if ((collisionStatus->curInspect != -1) && (collisionStatus->curInspect & COLLISION_WITH_ENTITY_BIT)) {
Entity* entity = get_entity_by_index(collisionStatus->curInspect);
if (entity->flags & ENTITY_FLAG_SHOWS_INSPECT_PROMPT) {
if ((entity->boundScriptBytecode == 0) || (entity->flags & ENTITY_FLAG_4000)) {
@ -521,7 +521,7 @@ void check_input_spin(void) {
if (!((playerStatus->flags & (PS_FLAG_NO_STATIC_COLLISION | PS_FLAG_CUTSCENE_MOVEMENT)) ||
(playerStatus->animFlags & PA_FLAG_USING_WATT) ||
(playerStatus->currentButtons & BUTTON_C_DOWN) ||
(playerStatus->curButtons & BUTTON_C_DOWN) ||
is_ability_active(ABILITY_SLOW_GO))) {
s32 actionState = playerStatus->actionState;
@ -553,7 +553,7 @@ void peach_set_disguise_anim(AnimID anim) {
s32 listIndex = PeachDisguiseNpcIndex;
if (listIndex >= 0) {
get_npc_by_index(listIndex)->currentAnim = anim;
get_npc_by_index(listIndex)->curAnim = anim;
}
}
@ -610,9 +610,9 @@ void peach_sync_disguise_npc(void) {
npc->yaw = playerStatus->targetYaw;
}
npc->pos.x = playerStatus->position.x;
npc->pos.y = playerStatus->position.y;
npc->pos.z = playerStatus->position.z;
npc->pos.x = playerStatus->pos.x;
npc->pos.y = playerStatus->pos.y;
npc->pos.z = playerStatus->pos.z;
}
}
@ -650,9 +650,9 @@ Npc* peach_make_disguise_npc(s32 peachDisguise) {
set_npc_yaw(npc, yaw);
npc->pos.x = playerStatus->position.x;
npc->pos.y = playerStatus->position.y;
npc->pos.z = playerStatus->position.z;
npc->pos.x = playerStatus->pos.x;
npc->pos.y = playerStatus->pos.y;
npc->pos.z = playerStatus->pos.z;
return npc;
}
@ -666,16 +666,16 @@ s32 peach_disguise_check_overlaps(void) {
s32 i;
if (playerStatus->spriteFacingAngle >= 90.0f && playerStatus->spriteFacingAngle < 270.0f) {
yaw = camera->currentYaw - 270.0f;
yaw = camera->curYaw - 270.0f;
} else {
yaw = camera->currentYaw - 90.0f;
yaw = camera->curYaw - 90.0f;
}
sin_cos_rad(DEG_TO_RAD(clamp_angle(yaw)), &dx, &dy);
for (radius = 2, i = 2; i > 0; radius += 18, i--) {
f32 x = playerStatus->position.x + (dx * radius);
f32 y = playerStatus->position.y + 4.0f;
f32 z = playerStatus->position.z - (dy * radius);
f32 x = playerStatus->pos.x + (dx * radius);
f32 y = playerStatus->pos.y + 4.0f;
f32 z = playerStatus->pos.z - (dy * radius);
hitID = player_test_lateral_overlap(3, playerStatus, &x, &y, &z, 4.0f, yaw);
if (hitID >= 0) {
break;

View File

@ -15,7 +15,7 @@ s32 phys_check_interactable_collision(void);
void phys_save_ground_pos(void);
void record_jump_apex(void) {
gPlayerStatus.jumpApexHeight = gPlayerStatus.position.y;
gPlayerStatus.jumpApexHeight = gPlayerStatus.pos.y;
}
s32 can_trigger_loading_zone(void) {
@ -33,7 +33,7 @@ s32 can_trigger_loading_zone(void) {
}
if (actionState == ACTION_STATE_RIDE) {
if (playerData->currentPartner == PARTNER_LAKILESTER || playerData->currentPartner == PARTNER_BOW) {
if (playerData->curPartner == PARTNER_LAKILESTER || playerData->curPartner == PARTNER_BOW) {
if (partnerStatus->partnerActionState != PARTNER_ACTION_NONE) {
return TRUE;
} else {
@ -57,7 +57,7 @@ void move_player(s32 duration, f32 heading, f32 speed) {
gPlayerStatus.flags |= PS_FLAG_CUTSCENE_MOVEMENT;
gPlayerStatus.heading = heading;
gPlayerStatus.moveFrames = duration;
gPlayerStatus.currentSpeed = speed;
gPlayerStatus.curSpeed = speed;
if (!(gPlayerStatus.animFlags & PA_FLAG_RIDING_PARTNER)) {
set_action_state(speed > gPlayerStatus.walkSpeed ? ACTION_STATE_RUN : ACTION_STATE_WALK);
@ -76,26 +76,26 @@ s32 collision_main_above(void) {
f32 phi_f2;
new_var = sp2C = playerStatus->colliderHeight * 0.5f;
x = playerStatus->position.x;
y = playerStatus->position.y + new_var;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y + new_var;
z = playerStatus->pos.z;
player_input_to_move_vector(&moveAngle, &moveMagnitude);
if (moveMagnitude != 0.0f) {
phi_f2 = playerStatus->targetYaw;
} else {
phi_f2 = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw;
phi_f2 = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw;
}
moveAngle = phi_f2;
hitResult = player_raycast_up_corners(playerStatus, &x, &y, &z, &sp2C, moveAngle);
collisionStatus->currentCeiling = hitResult;
collisionStatus->curCeiling = hitResult;
if (hitResult >= 0) {
if (playerStatus->actionState != ACTION_STATE_FALLING
&& playerStatus->actionState != ACTION_STATE_STEP_DOWN
&& collisionStatus->currentFloor <= NO_COLLIDER
&& collisionStatus->curFloor <= NO_COLLIDER
) {
if (sp2C <= fabsf(new_var + playerStatus->gravityIntegrator[0])) {
do {
@ -104,7 +104,7 @@ s32 collision_main_above(void) {
}
} while (0);
playerStatus->position.y = y - ((playerStatus->colliderHeight / 5.0f) * 3.0f);
playerStatus->pos.y = y - ((playerStatus->colliderHeight / 5.0f) * 3.0f);
if (playerStatus->actionState != ACTION_STATE_TORNADO_JUMP
&& playerStatus->actionState != ACTION_STATE_SPIN_JUMP
) {
@ -132,8 +132,8 @@ void handle_switch_hit(void) {
}
if (playerStatus->actionSubstate == LANDING_ON_SWITCH_SUBSTATE_0) {
if (dist2D(JumpedOnSwitchX, JumpedOnSwitchZ, playerStatus->position.x, playerStatus->position.z) <= 22.0f) {
add_vec2D_polar(&playerStatus->position.x, &playerStatus->position.z, 5.0f, playerStatus->targetYaw);
if (dist2D(JumpedOnSwitchX, JumpedOnSwitchZ, playerStatus->pos.x, playerStatus->pos.z) <= 22.0f) {
add_vec2D_polar(&playerStatus->pos.x, &playerStatus->pos.z, 5.0f, playerStatus->targetYaw);
}
integrate_gravity();
if (playerStatus->gravityIntegrator[0] <= 0.0f) {
@ -145,14 +145,14 @@ void handle_switch_hit(void) {
if (playerStatus->gravityIntegrator[0] > playerStatus->maxJumpSpeed) {
playerStatus->gravityIntegrator[0] = playerStatus->maxJumpSpeed;
}
playerStatus->position.y += playerStatus->gravityIntegrator[0];
playerStatus->pos.y += playerStatus->gravityIntegrator[0];
} else if (playerStatus->actionSubstate == LANDING_ON_SWITCH_SUBSTATE_2) {
if (dist2D(JumpedOnSwitchX, JumpedOnSwitchZ, playerStatus->position.x, playerStatus->position.z) <= 22.0f) {
add_vec2D_polar(&playerStatus->position.x, &playerStatus->position.z, 5.0f, playerStatus->targetYaw);
if (dist2D(JumpedOnSwitchX, JumpedOnSwitchZ, playerStatus->pos.x, playerStatus->pos.z) <= 22.0f) {
add_vec2D_polar(&playerStatus->pos.x, &playerStatus->pos.z, 5.0f, playerStatus->targetYaw);
}
groundPosY = player_check_collision_below(player_fall_distance(), &colliderID);
player_handle_floor_collider_type(colliderID);
playerStatus->position.y = groundPosY;
playerStatus->pos.y = groundPosY;
if (colliderID >= 0) {
if (!(playerStatus->animFlags & PA_FLAG_USING_WATT)) {
anim = ANIM_Mario1_Land;
@ -170,8 +170,8 @@ void func_800E2BB0(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
s32 cond = FALSE;
if (playerStatus->position.y < playerStatus->gravityIntegrator[3] + playerStatus->gravityIntegrator[2]) {
f32 phi_f6 = (playerStatus->gravityIntegrator[3] - playerStatus->position.y) / 777.0f;
if (playerStatus->pos.y < playerStatus->gravityIntegrator[3] + playerStatus->gravityIntegrator[2]) {
f32 phi_f6 = (playerStatus->gravityIntegrator[3] - playerStatus->pos.y) / 777.0f;
if (phi_f6 < -0.47) {
phi_f6 = -0.47f;
@ -180,7 +180,7 @@ void func_800E2BB0(void) {
phi_f6 = 0.001f;
}
playerStatus->gravityIntegrator[0] += phi_f6;
playerStatus->position.y += playerStatus->gravityIntegrator[0];
playerStatus->pos.y += playerStatus->gravityIntegrator[0];
if (playerStatus->gravityIntegrator[0] <= 0.0f) {
cond = TRUE;
}
@ -189,7 +189,7 @@ void func_800E2BB0(void) {
if (playerStatus->gravityIntegrator[0] <= 0.0f) {
cond = TRUE;
}
playerStatus->position.y += playerStatus->gravityIntegrator[0];
playerStatus->pos.y += playerStatus->gravityIntegrator[0];
}
if (cond) {
@ -212,7 +212,7 @@ void phys_update_jump(void) {
return;
case ACTION_STATE_BOUNCE:
integrate_gravity();
playerStatus->position.y += playerStatus->gravityIntegrator[0];
playerStatus->pos.y += playerStatus->gravityIntegrator[0];
if (playerStatus->gravityIntegrator[0] <= 0.0f) {
record_jump_apex();
if (is_starting_conversation()) {
@ -229,7 +229,7 @@ void phys_update_jump(void) {
return;
case ACTION_STATE_HOP:
playerStatus->gravityIntegrator[0] -= 4.5;
playerStatus->position.y += playerStatus->gravityIntegrator[0];
playerStatus->pos.y += playerStatus->gravityIntegrator[0];
if (playerStatus->gravityIntegrator[0] <= 0.0f) {
record_jump_apex();
gravity_use_fall_parms();
@ -241,7 +241,7 @@ void phys_update_jump(void) {
case ACTION_STATE_HIT_LAVA:
return;
default:
if (!(playerStatus->currentButtons & BUTTON_A)) {
if (!(playerStatus->curButtons & BUTTON_A)) {
record_jump_apex();
set_action_state(ACTION_STATE_HOP);
integrate_gravity();
@ -266,7 +266,7 @@ void phys_update_jump(void) {
if (playerStatus->gravityIntegrator[0] > playerStatus->maxJumpSpeed) {
playerStatus->gravityIntegrator[0] = playerStatus->maxJumpSpeed;
}
playerStatus->position.y += playerStatus->gravityIntegrator[0];
playerStatus->pos.y += playerStatus->gravityIntegrator[0];
}
void phys_init_integrator_for_current_state(void) {
@ -330,7 +330,7 @@ void phys_update_falling(void) {
&& gPlayerStatus.actionState != ACTION_STATE_BOUNCE
) {
s32 colliderID;
gPlayerStatus.position.y = player_check_collision_below(player_fall_distance(), &colliderID);
gPlayerStatus.pos.y = player_check_collision_below(player_fall_distance(), &colliderID);
player_handle_floor_collider_type(colliderID);
}
}
@ -387,21 +387,21 @@ void phys_player_land(void) {
playerStatus->timeInAir = 0;
playerStatus->peakJumpTime = 0;
playerStatus->flags &= ~PS_FLAG_SCRIPTED_FALL;
playerStatus->landPos.x = playerStatus->position.x;
playerStatus->landPos.z = playerStatus->position.z;
playerStatus->landPos.x = playerStatus->pos.x;
playerStatus->landPos.z = playerStatus->pos.z;
playerStatus->flags &= ~PS_FLAG_AIRBORNE;
sfx_play_sound_at_player(SOUND_SOFT_LAND, SOUND_SPACE_MODE_0);
if (!(collisionStatus->currentFloor & COLLISION_WITH_ENTITY_BIT)) {
if (!(collisionStatus->curFloor & COLLISION_WITH_ENTITY_BIT)) {
phys_adjust_cam_on_landing();
}
collisionStatus->lastTouchedFloor = -1;
if (collisionStatus->currentFloor & COLLISION_WITH_ENTITY_BIT) {
s32 entityType = get_entity_type(collisionStatus->currentFloor);
if (collisionStatus->curFloor & COLLISION_WITH_ENTITY_BIT) {
s32 entityType = get_entity_type(collisionStatus->curFloor);
if (entityType <= ACTION_STATE_FALLING) {
if (entityType >= ACTION_STATE_LANDING_ON_SWITCH) {
Entity* entity = get_entity_by_index(collisionStatus->currentFloor);
Entity* entity = get_entity_by_index(collisionStatus->curFloor);
entity->collisionFlags |= ENTITY_COLLISION_PLAYER_TOUCH_FLOOR;
if (playerStatus->actionState != ACTION_STATE_TORNADO_JUMP
@ -474,20 +474,20 @@ f32 player_check_collision_below(f32 offset, s32* colliderID) {
CollisionStatus* collisionStatus = &gCollisionStatus;
f32 temp_f4 = playerStatus->colliderHeight * 0.5f;
f32 outLength = fabsf(offset) + temp_f4;
f32 x = playerStatus->position.x;
f32 y = playerStatus->position.y + temp_f4;
f32 z = playerStatus->position.z;
f32 x = playerStatus->pos.x;
f32 y = playerStatus->pos.y + temp_f4;
f32 z = playerStatus->pos.z;
f32 sp38, sp3C, sp40, sp44;
s32 hit = *colliderID = player_raycast_below_cam_relative(&gPlayerStatus, &x, &y, &z, &outLength,
&sp38, &sp3C, &sp40, &sp44);
if (hit < 0) {
if (offset >= 0.0f && collisionStatus->currentCeiling >= 0) {
return playerStatus->position.y;
if (offset >= 0.0f && collisionStatus->curCeiling >= 0) {
return playerStatus->pos.y;
}
y = playerStatus->position.y + offset;
y = playerStatus->pos.y + offset;
} else {
collisionStatus->currentFloor = hit;
collisionStatus->curFloor = hit;
collisionStatus->lastTouchedFloor = -1;
}
return y;
@ -512,91 +512,91 @@ void collision_main_lateral(void) {
gCollisionStatus.pushingAgainstWall = NO_COLLIDER;
if (playerStatus->flags & PS_FLAG_CUTSCENE_MOVEMENT) {
speed = playerStatus->currentSpeed;
speed = playerStatus->curSpeed;
if (playerStatus->flags & PS_FLAG_ENTERING_BATTLE) {
speed *= 0.5f;
}
add_vec2D_polar(&playerStatus->position.x, &playerStatus->position.z, speed, playerStatus->heading);
add_vec2D_polar(&playerStatus->pos.x, &playerStatus->pos.z, speed, playerStatus->heading);
return;
}
switch (playerStatus->actionState) {
case ACTION_STATE_STEP_UP:
collision_check_player_intersecting_world(0, 0,
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw);
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw);
break;
case ACTION_STATE_RIDE:
if (get_current_partner_id() == PARTNER_BOW) {
playerStatus->position.x += playerStatus->pushVelocity.x;
playerStatus->position.y += playerStatus->pushVelocity.y;
playerStatus->position.z += playerStatus->pushVelocity.z;
playerStatus->pos.x += playerStatus->pushVel.x;
playerStatus->pos.y += playerStatus->pushVel.y;
playerStatus->pos.z += playerStatus->pushVel.z;
if (playerStatus->pushVelocity.x != 0.0f ||
playerStatus->pushVelocity.y != 0.0f ||
playerStatus->pushVelocity.z != 0.0f)
if (playerStatus->pushVel.x != 0.0f ||
playerStatus->pushVel.y != 0.0f ||
playerStatus->pushVel.z != 0.0f)
{
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->pos.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->pos.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->pos.z;
if (playerStatus->alpha1 != 128) {
collision_check_player_intersecting_world(0, 0,
atan2(0.0f, 0.0f, playerStatus->pushVelocity.x, playerStatus->pushVelocity.z));
atan2(0.0f, 0.0f, playerStatus->pushVel.x, playerStatus->pushVel.z));
}
}
}
break;
case ACTION_STATE_SPIN_POUND:
case ACTION_STATE_TORNADO_POUND:
playerStatus->position.x += playerStatus->pushVelocity.x;
playerStatus->position.y += playerStatus->pushVelocity.y;
playerStatus->position.z += playerStatus->pushVelocity.z;
if (playerStatus->pushVelocity.x != 0.0f ||
playerStatus->pushVelocity.y != 0.0f ||
playerStatus->pushVelocity.z != 0.0f)
playerStatus->pos.x += playerStatus->pushVel.x;
playerStatus->pos.y += playerStatus->pushVel.y;
playerStatus->pos.z += playerStatus->pushVel.z;
if (playerStatus->pushVel.x != 0.0f ||
playerStatus->pushVel.y != 0.0f ||
playerStatus->pushVel.z != 0.0f)
{
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->pos.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->pos.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->pos.z;
}
if (playerStatus->pushVelocity.x != 0.0f ||
playerStatus->pushVelocity.y != 0.0f ||
playerStatus->pushVelocity.z != 0.0f)
if (playerStatus->pushVel.x != 0.0f ||
playerStatus->pushVel.y != 0.0f ||
playerStatus->pushVel.z != 0.0f)
{
collision_check_player_intersecting_world(0, 0,
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw);
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw);
}
break;
case ACTION_STATE_HAMMER:
playerStatus->position.x += playerStatus->pushVelocity.x;
playerStatus->position.y += playerStatus->pushVelocity.y;
playerStatus->position.z += playerStatus->pushVelocity.z;
if (playerStatus->pushVelocity.x != 0.0f ||
playerStatus->pushVelocity.y != 0.0f ||
playerStatus->pushVelocity.z != 0.0f)
playerStatus->pos.x += playerStatus->pushVel.x;
playerStatus->pos.y += playerStatus->pushVel.y;
playerStatus->pos.z += playerStatus->pushVel.z;
if (playerStatus->pushVel.x != 0.0f ||
playerStatus->pushVel.y != 0.0f ||
playerStatus->pushVel.z != 0.0f)
{
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->pos.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->pos.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->pos.z;
}
playerX = playerStatus->position.x;
playerY = playerStatus->position.y;
playerZ = playerStatus->position.z;
if (playerStatus->currentSpeed != 0.0f) {
playerX = playerStatus->pos.x;
playerY = playerStatus->pos.y;
playerZ = playerStatus->pos.z;
if (playerStatus->curSpeed != 0.0f) {
yaw = playerStatus->targetYaw;
} else {
yaw = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw;
yaw = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw;
}
collisionStatus->currentWall =
collisionStatus->curWall =
player_test_move_with_slipping(playerStatus, &playerX, &playerY, &playerZ,
playerStatus->colliderDiameter * 0.5f, yaw);
if (playerStatus->pushVelocity.x != 0.0f ||
playerStatus->pushVelocity.y != 0.0f ||
playerStatus->pushVelocity.z != 0.0f)
if (playerStatus->pushVel.x != 0.0f ||
playerStatus->pushVel.y != 0.0f ||
playerStatus->pushVel.z != 0.0f)
{
collision_check_player_intersecting_world(0, 0,
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw);
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw);
}
break;
default:
@ -637,7 +637,7 @@ void collision_main_lateral(void) {
}
sin_cos_rad(DEG_TO_RAD(playerStatus->targetYaw), &sinTheta, &cosTheta);
speed = playerStatus->currentSpeed;
speed = playerStatus->curSpeed;
if (playerStatus->flags & PS_FLAG_ENTERING_BATTLE) {
speed *= 0.5f;
}
@ -652,47 +652,47 @@ void collision_main_lateral(void) {
}
}
playerStatus->position.x += playerStatus->pushVelocity.x;
playerStatus->position.z += playerStatus->pushVelocity.z;
playerStatus->pos.x += playerStatus->pushVel.x;
playerStatus->pos.z += playerStatus->pushVel.z;
if (playerStatus->timeInAir == 0) {
playerStatus->position.y += playerStatus->pushVelocity.y;
playerStatus->pos.y += playerStatus->pushVel.y;
}
if (
playerStatus->pushVelocity.x != 0.0f ||
playerStatus->pushVelocity.y != 0.0f ||
playerStatus->pushVelocity.z != 0.0f)
playerStatus->pushVel.x != 0.0f ||
playerStatus->pushVel.y != 0.0f ||
playerStatus->pushVel.z != 0.0f)
{
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->position.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->position.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->position.z;
gCameras[CAM_DEFAULT].targetPos.x = playerStatus->pos.x;
gCameras[CAM_DEFAULT].targetPos.y = playerStatus->pos.y;
gCameras[CAM_DEFAULT].targetPos.z = playerStatus->pos.z;
}
playerX = playerStatus->position.x;
playerY = playerStatus->position.y;
playerZ = playerStatus->position.z;
playerX = playerStatus->pos.x;
playerY = playerStatus->pos.y;
playerZ = playerStatus->pos.z;
result = player_test_move_with_slipping(playerStatus, &playerX, &playerY, &playerZ,
playerStatus->colliderDiameter * 0.5f, playerStatus->targetYaw);
if (speed == 0.0f && result < 0) {
yaw2 = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw;
yaw2 = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw;
sin_cos_rad(DEG_TO_RAD(yaw2 + 180.0f), &sinTheta, &cosTheta);
playerX = playerStatus->position.x + (sinTheta * playerStatus->colliderDiameter * 0.5f);
playerY = playerStatus->position.y;
playerZ = playerStatus->position.z - (cosTheta * playerStatus->colliderDiameter * 0.5f);
playerX = playerStatus->pos.x + (sinTheta * playerStatus->colliderDiameter * 0.5f);
playerY = playerStatus->pos.y;
playerZ = playerStatus->pos.z - (cosTheta * playerStatus->colliderDiameter * 0.5f);
result = player_test_move_with_slipping(playerStatus, &playerX, &playerY, &playerZ,
playerStatus->colliderDiameter, yaw2);
}
collisionStatus->currentWall = result;
collisionStatus->curWall = result;
if (!(playerStatus->flags & PS_FLAG_MOVEMENT_LOCKED) && playerStatus->actionState != ACTION_STATE_HAMMER) {
if (speed == 0.0f) {
collision_check_player_intersecting_world(0, 0,
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw);
playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw);
break;
}
playerX = playerStatus->position.x;
playerZ = playerStatus->position.z;
playerY = playerStatus->position.y;
playerX = playerStatus->pos.x;
playerZ = playerStatus->pos.z;
playerY = playerStatus->pos.y;
yaw2 = yaw;
if (speed > 4.0f) {
@ -719,22 +719,22 @@ void collision_main_lateral(void) {
if (test1 < 0) {
if (test2 < 0) {
playerStatus->position.x = playerX;
playerStatus->position.z = playerZ;
playerStatus->pos.x = playerX;
playerStatus->pos.z = playerZ;
} else {
playerStatus->position.x = test1X;
playerStatus->position.z = test1Z;
playerStatus->pos.x = test1X;
playerStatus->pos.z = test1Z;
}
} else if (test2 < 0) {
playerStatus->position.x = test2X;
playerStatus->position.z = test2Y;
playerStatus->pos.x = test2X;
playerStatus->pos.z = test2Y;
}
if (playerStatus->enableCollisionOverlapsCheck == 0) {
if (playerStatus->animFlags & PA_FLAG_SPINNING) {
yaw2 = playerStatus->targetYaw;
} else {
yaw2 = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw;
yaw2 = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw;
}
if (collision_check_player_intersecting_world(0, 0, yaw2) < 0) {
collision_check_player_intersecting_world(1, playerStatus->colliderHeight * 0.75f, yaw2);
@ -762,9 +762,9 @@ s32 collision_check_player_intersecting_world(s32 mode, s32 arg1, f32 yaw) {
s32 i;
for (i = 0; i < 4; i++) {
f32 x = gPlayerStatusPtr->position.x;
f32 y = gPlayerStatusPtr->position.y + arg1;
f32 z = gPlayerStatusPtr->position.z;
f32 x = gPlayerStatusPtr->pos.x;
f32 y = gPlayerStatusPtr->pos.y + arg1;
f32 z = gPlayerStatusPtr->pos.z;
s32 hitID, hitID2;
hitID = player_test_lateral_overlap(mode, gPlayerStatusPtr, &x, &y, &z, 0.0f, angle);
@ -783,8 +783,8 @@ s32 collision_check_player_intersecting_world(s32 mode, s32 arg1, f32 yaw) {
}
gPlayerStatusPtr = gPlayerStatusPtr;
gPlayerStatusPtr->position.x = x;
gPlayerStatusPtr->position.z = z;
gPlayerStatusPtr->pos.x = x;
gPlayerStatusPtr->pos.z = z;
angle += 90.0f;
}
@ -819,16 +819,16 @@ void collision_check_player_overlaps(void) {
f32 overlapPush = playerStatus->overlapPushAmount;
if (overlapPush != 0.0f) {
f32 x = playerStatus->position.x;
f32 y = playerStatus->position.y;
f32 z = playerStatus->position.z;
f32 x = playerStatus->pos.x;
f32 y = playerStatus->pos.y;
f32 z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, overlapPush, playerStatus->overlapPushYaw);
overlapPush -= playerStatus->runSpeed / 10.0f;
playerStatus->position.x = x;
playerStatus->position.y = y;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.y = y;
playerStatus->pos.z = z;
if (overlapPush < 0.0f) {
overlapPush = 0.0f;
@ -844,7 +844,7 @@ s32 phys_should_player_be_sliding(void) {
s32 ret = FALSE;
if (gGameStatusPtr->areaID == AREA_IWA) {
f32 temp_f0 = shadow->rotation.z + 180.0;
f32 temp_f0 = shadow->rot.z + 180.0;
if (temp_f0 != 0.0f) {
ret = TRUE;
@ -855,7 +855,7 @@ s32 phys_should_player_be_sliding(void) {
}
break;
case 1:
if (playerStatus->position.x >= -300.0f && playerStatus->position.x <= -140.0f) {
if (playerStatus->pos.x >= -300.0f && playerStatus->pos.x <= -140.0f) {
ret = FALSE;
}
break;
@ -867,8 +867,8 @@ s32 phys_should_player_be_sliding(void) {
s32 phys_is_on_sloped_ground(void) {
Shadow* playerShadow = get_shadow_by_index(gPlayerStatus.shadowID);
f32 rotZ = playerShadow->rotation.z + 180.0;
f32 rotX = playerShadow->rotation.x + 180.0;
f32 rotZ = playerShadow->rot.z + 180.0;
f32 rotX = playerShadow->rot.x + 180.0;
s32 ret = TRUE;
if (fabsf(rotZ) < 20.0f && fabsf(rotX) < 20.0f) {
@ -883,9 +883,9 @@ void phys_main_collision_below(void) {
PartnerStatus* partnerStatus = &gPartnerStatus;
CollisionStatus* collisionStatus = &gCollisionStatus;
f32 collHeightHalf = playerStatus->colliderHeight * 0.5f;
f32 playerX = playerStatus->position.x;
f32 playerY = playerStatus->position.y + collHeightHalf;
f32 playerZ = playerStatus->position.z;
f32 playerX = playerStatus->pos.x;
f32 playerY = playerStatus->pos.y + collHeightHalf;
f32 playerZ = playerStatus->pos.z;
f32 outLength = playerStatus->colliderHeight;
f32 temp_f24 = (2.0f * playerStatus->colliderHeight) / 7.0f;
f32 hitRx, hitRz;
@ -901,7 +901,7 @@ void phys_main_collision_below(void) {
colliderID = NO_COLLIDER;
}
if (playerStatus->timeInAir == 0) {
collisionStatus->currentFloor = colliderID;
collisionStatus->curFloor = colliderID;
}
if (colliderID >= 0) {
playerStatus->groundAnglesXZ.x = hitDirX;
@ -953,21 +953,21 @@ void phys_main_collision_below(void) {
break;
default:
cond = FALSE;
if (collisionStatus->currentFloor & COLLISION_WITH_ENTITY_BIT) {
cond = get_entity_type(collisionStatus->currentFloor) == ENTITY_TYPE_HIDDEN_PANEL;
if (collisionStatus->curFloor & COLLISION_WITH_ENTITY_BIT) {
cond = get_entity_type(collisionStatus->curFloor) == ENTITY_TYPE_HIDDEN_PANEL;
}
if (playerStatus->actionState != ACTION_STATE_STEP_UP && !cond) {
if (!(playerStatus->animFlags & PA_FLAG_USING_PEACH_PHYSICS)) {
if (playerY - playerStatus->position.y < 6.0f) {
playerStatus->position.y = playerY;
if (playerY - playerStatus->pos.y < 6.0f) {
playerStatus->pos.y = playerY;
} else {
set_action_state(ACTION_STATE_STEP_UP);
D_8010C928 = playerY;
D_8010C984 = playerStatus->targetYaw;
}
} else {
playerStatus->position.y = playerY;
playerStatus->pos.y = playerY;
}
phys_save_ground_pos();
}
@ -989,13 +989,13 @@ void phys_main_collision_below(void) {
void func_800E4AD8(s32 mode) {
Camera* currentCamera = &gCameras[gCurrentCameraID];
collision_check_player_intersecting_world(mode, 0, gPlayerStatus.spriteFacingAngle - 90.0f + currentCamera->currentYaw);
collision_check_player_intersecting_world(mode, 0, gPlayerStatus.spriteFacingAngle - 90.0f + currentCamera->curYaw);
}
void func_800E4B40(s32 mode, f32* arg1, f32* arg2, f32* arg3) {
Camera* currentCamera = &gCameras[gCurrentCameraID];
func_800E4404(mode, 0, gPlayerStatus.spriteFacingAngle - 90.0f + currentCamera->currentYaw, arg1, arg2, arg3);
func_800E4404(mode, 0, gPlayerStatus.spriteFacingAngle - 90.0f + currentCamera->curYaw, arg1, arg2, arg3);
}
void collision_lava_reset_check_additional_overlaps(void) {
@ -1009,79 +1009,79 @@ void collision_lava_reset_check_additional_overlaps(void) {
}
temp_f0 = clamp_angle(playerStatus->targetYaw - 30.0);
y = playerStatus->position.y + (playerStatus->colliderHeight * 0.75f);
x = playerStatus->position.x;
z = playerStatus->position.z;
y = playerStatus->pos.y + (playerStatus->colliderHeight * 0.75f);
x = playerStatus->pos.x;
z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, 0.0f, temp_f0);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
temp_f0 = clamp_angle(playerStatus->targetYaw + 30.0);
y = playerStatus->position.y + (playerStatus->colliderHeight * 0.75f);
x = playerStatus->position.x;
z = playerStatus->position.z;
y = playerStatus->pos.y + (playerStatus->colliderHeight * 0.75f);
x = playerStatus->pos.x;
z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, 0.0f, temp_f0);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
temp_f0 = clamp_angle(playerStatus->targetYaw - 30.0);
x = playerStatus->position.x;
y = playerStatus->position.y;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y;
z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, 0.0f, temp_f0);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
temp_f0 = clamp_angle(playerStatus->targetYaw + 30.0);
x = playerStatus->position.x;
y = playerStatus->position.y;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y;
z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, 0.0f, temp_f0);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
temp_f0 = clamp_angle(playerStatus->targetYaw + 90.0);
x = playerStatus->position.x;
y = playerStatus->position.y;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y;
z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, 0.0f, temp_f0);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
temp_f0 = clamp_angle(playerStatus->targetYaw - 90.0);
x = playerStatus->position.x;
y = playerStatus->position.y;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y;
z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, 0.0f, temp_f0);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
temp_f0 = clamp_angle(playerStatus->targetYaw + 180.0);
x = playerStatus->position.x;
y = playerStatus->position.y;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y;
z = playerStatus->pos.z;
player_test_lateral_overlap(0, &gPlayerStatus, &x, &y, &z, 0.0f, temp_f0);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
}
void collision_lateral_peach(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
s32 climbableStep = FALSE;
f32 yaw = playerStatus->targetYaw;
f32 x = playerStatus->position.x;
f32 y = playerStatus->position.y;
f32 z = playerStatus->position.z;
f32 x = playerStatus->pos.x;
f32 y = playerStatus->pos.y;
f32 z = playerStatus->pos.z;
s32 wall = player_test_move_without_slipping(&gPlayerStatus, &x, &y, &z, 0, yaw, &climbableStep);
playerStatus->position.x = x;
playerStatus->position.z = z;
playerStatus->pos.x = x;
playerStatus->pos.z = z;
// If there was a climbable step in this direction, but no wall, we can climb up it
if (climbableStep
&& wall < 0
&& playerStatus->actionState != ACTION_STATE_STEP_UP_PEACH
&& playerStatus->currentSpeed != 0.0f
&& playerStatus->curSpeed != 0.0f
) {
set_action_state(ACTION_STATE_STEP_UP_PEACH);
}
@ -1110,12 +1110,12 @@ void check_input_midair_jump(void) {
}
s8 get_current_partner_id(void) {
return gPlayerData.currentPartner;
return gPlayerData.curPartner;
}
void try_player_footstep_sounds(s32 interval) {
if (gGameStatusPtr->frameCounter % interval == 0) {
s32 surfaceType = get_collider_flags(gCollisionStatus.currentFloor) & COLLIDER_FLAGS_SURFACE_TYPE_MASK;
s32 surfaceType = get_collider_flags(gCollisionStatus.curFloor) & COLLIDER_FLAGS_SURFACE_TYPE_MASK;
s32 soundID, altSoundID;
if (surfaceType == SURFACE_TYPE_FLOWERS || surfaceType == SURFACE_TYPE_HEDGES) {
@ -1136,7 +1136,7 @@ void try_player_footstep_sounds(s32 interval) {
}
void phys_update_interact_collider(void) {
gCollisionStatus.currentInspect = phys_check_interactable_collision();
gCollisionStatus.curInspect = phys_check_interactable_collision();
}
s32 phys_check_interactable_collision(void) {
@ -1150,16 +1150,16 @@ s32 phys_check_interactable_collision(void) {
if (playerStatus->pressedButtons & BUTTON_A) {
yaw = playerStatus->targetYaw;
x = playerStatus->position.x;
y = playerStatus->position.y;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y;
z = playerStatus->pos.z;
ret = player_test_move_with_slipping(playerStatus, &x, &y, &z, playerStatus->colliderDiameter * 0.5f, yaw);
if (ret < 0 && playerStatus->currentSpeed == 0.0f) {
yaw = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].currentYaw;
x = playerStatus->position.x;
y = playerStatus->position.y;
z = playerStatus->position.z;
if (ret < 0 && playerStatus->curSpeed == 0.0f) {
yaw = playerStatus->spriteFacingAngle - 90.0f + gCameras[gCurrentCameraID].curYaw;
x = playerStatus->pos.x;
y = playerStatus->pos.y;
z = playerStatus->pos.z;
ret = player_test_move_with_slipping(playerStatus, &x, &y, &z, playerStatus->colliderDiameter * 0.5f, yaw);
}
}
@ -1189,7 +1189,7 @@ s32 phys_can_player_interact(void) {
}
f32 func_800E5348(void) {
f32 deltaYaw = get_clamped_angle_diff(gCameras[gCurrentCameraID].currentYaw, gPlayerStatus.currentYaw);
f32 deltaYaw = get_clamped_angle_diff(gCameras[gCurrentCameraID].curYaw, gPlayerStatus.curYaw);
if (deltaYaw < -5.0f && deltaYaw > -175.0f) {
deltaYaw = 0.0f;
@ -1198,7 +1198,7 @@ f32 func_800E5348(void) {
} else {
deltaYaw = PrevPlayerCamRelativeYaw;
}
return clamp_angle(deltaYaw - 90.0f + gCameras[gCurrentCameraID].currentYaw);
return clamp_angle(deltaYaw - 90.0f + gCameras[gCurrentCameraID].curYaw);
}
f32 player_get_camera_facing_angle(void) {
@ -1208,7 +1208,7 @@ f32 player_get_camera_facing_angle(void) {
angle = 180.0f;
}
angle = angle + gCameras[CAM_DEFAULT].currentYaw + 90.0f;
angle = angle + gCameras[CAM_DEFAULT].curYaw + 90.0f;
return clamp_angle(angle);
}
@ -1216,7 +1216,7 @@ f32 player_get_camera_facing_angle(void) {
void phys_save_ground_pos(void) {
PlayerStatus* playerStatus = &gPlayerStatus;
playerStatus->lastGoodPosition.x = playerStatus->position.x;
playerStatus->lastGoodPosition.y = playerStatus->position.y;
playerStatus->lastGoodPosition.z = playerStatus->position.z;
playerStatus->lastGoodPos.x = playerStatus->pos.x;
playerStatus->lastGoodPos.y = playerStatus->pos.y;
playerStatus->lastGoodPos.z = playerStatus->pos.z;
}

View File

@ -140,7 +140,7 @@ s32 setup_partner_popup(PopupMenu* menu) {
menu->nameMsg[optionCount] = properties->nameMsg;
menu->descMsg[optionCount] = properties->worldDescMsg;
menu->value[optionCount] = playerData->partners[partnerID].level;
if (playerData->currentPartner == partnerID) {
if (playerData->curPartner == partnerID) {
menu->enabled[optionCount] = FALSE;
menu->ptrIcon[optionCount] = wDisabledPartnerHudScripts[partnerID];
}
@ -209,10 +209,10 @@ void check_input_open_menus(void) {
partnerStatus->actingPartner == PARTNER_LAKILESTER ||
partnerStatus->actingPartner == PARTNER_BOW))
{
currentButtons = partnerStatus->currentButtons;
currentButtons = partnerStatus->curButtons;
pressedButtons = partnerStatus->pressedButtons;
} else {
currentButtons = playerStatus->currentButtons;
currentButtons = playerStatus->curButtons;
pressedButtons = playerStatus->pressedButtons;
}
partnerActionState = &partnerStatus->partnerActionState;
@ -251,7 +251,7 @@ block_17:
}
popup->numEntries = numEntries;
popup->popupType = POPUP_MENU_SWITCH_PARTNER;
popup->initialPos = MenuIndexFromPartnerID[playerData->currentPartner] - 1;
popup->initialPos = MenuIndexFromPartnerID[playerData->curPartner] - 1;
break;
}
return;
@ -388,14 +388,14 @@ void check_input_status_bar(void) {
}
if (!is_status_bar_visible()) {
if (!(playerStatus->currentButtons & (Z_TRIG | R_TRIG)) && (pressedButtons & BUTTON_C_UP) && func_800E9860()) {
if (!(playerStatus->curButtons & (Z_TRIG | R_TRIG)) && (pressedButtons & BUTTON_C_UP) && func_800E9860()) {
open_status_bar_long();
if (!is_picking_up_item()) {
sfx_play_sound(SOUND_3);
}
}
} else if (!(playerStatus->currentButtons & (Z_TRIG | R_TRIG)) && (pressedButtons & BUTTON_C_UP) && func_800E9860()) {
} else if (!(playerStatus->curButtons & (Z_TRIG | R_TRIG)) && (pressedButtons & BUTTON_C_UP) && func_800E9860()) {
close_status_bar();
if (!is_picking_up_item()) {

View File

@ -60,7 +60,7 @@ void clear_player_data(void) {
playerData->maxStarPower = 0;
playerData->specialBarsFilled = 0;
playerData->starBeamLevel = 0;
playerData->currentPartner = 0;
playerData->curPartner = 0;
for (i = 0; i < ARRAY_COUNT(playerData->partners); i++) {
playerData->partners[i].enabled = FALSE;

View File

@ -191,7 +191,7 @@ void render_frame(s32 isSecondPass) {
camera->unkMatrix = &gDisplayContext->matrixStack[gMatrixListPos];
matrixListPos = gMatrixListPos++;
guRotate(&gDisplayContext->matrixStack[matrixListPos], -camera->trueRotation.x, 0.0f, 1.0f, 0.0f);
guRotate(&gDisplayContext->matrixStack[matrixListPos], -camera->trueRot.x, 0.0f, 1.0f, 0.0f);
camera->vpAlt.vp.vtrans[0] = camera->vp.vp.vtrans[0] + gGameStatusPtr->unk_82;
camera->vpAlt.vp.vtrans[1] = camera->vp.vp.vtrans[1] + gGameStatusPtr->unk_83;
@ -366,12 +366,12 @@ Camera* initialize_next_camera(CameraInitData* initData) {
camera->lookAt_obj.x = 0;
camera->lookAt_obj.y = 0;
camera->lookAt_obj.z = -100.0f;
camera->currentYaw = 0;
camera->currentBoomLength = 0;
camera->currentYOffset = 0;
camera->trueRotation.x = 0.0f;
camera->trueRotation.y = 0.0f;
camera->trueRotation.z = 0.0f;
camera->curYaw = 0;
camera->curBoomLength = 0;
camera->curYOffset = 0;
camera->trueRot.x = 0.0f;
camera->trueRot.y = 0.0f;
camera->trueRot.z = 0.0f;
camera->updateMode = initData->updateMode;
camera->needsInit = TRUE;
camera->nearClip = initData->nearClip;

View File

@ -41,7 +41,7 @@ void handle_floor_behavior(void) {
colliderType = D_80109480;
}
D_80109480 = get_collider_flags((u16)gCollisionStatus.currentFloor) & COLLIDER_FLAGS_SURFACE_TYPE_MASK;
D_80109480 = get_collider_flags((u16)gCollisionStatus.curFloor) & COLLIDER_FLAGS_SURFACE_TYPE_MASK;
if (playerStatus->actionState != ACTION_STATE_JUMP) {
colliderType = D_80109480;
@ -90,9 +90,9 @@ void surface_standard_behavior(void) {
(playerStatus->flags & PS_FLAG_ACTION_STATE_CHANGED) &&
D_8010CFF4 >= 10)
{
x = playerStatus->position.x;
y = playerStatus->position.y + 0.0f;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y + 0.0f;
z = playerStatus->pos.z;
if (!cond) {
fx_landing_dust(0, x, y, z, D_80109484);
} else {
@ -102,33 +102,33 @@ void surface_standard_behavior(void) {
} else if (
(playerStatus->actionState == ACTION_STATE_SPIN_POUND || playerStatus->actionState == ACTION_STATE_TORNADO_POUND) && (playerStatus->flags & PS_FLAG_SPECIAL_LAND))
{
x = playerStatus->position.x;
y = playerStatus->position.y + 0.0f;
z = playerStatus->position.z;
x = playerStatus->pos.x;
y = playerStatus->pos.y + 0.0f;
z = playerStatus->pos.z;
if (!cond) {
fx_landing_dust(0, x, y, z, D_80109484);
} else {
fx_misc_particles(3, x, y, z, playerStatus->colliderDiameter, 10.0f, 1.0f, 5, 40);
}
} else if (playerStatus->actionState == ACTION_STATE_SPIN && playerStatus->currentSpeed != 0.0f) {
} else if (playerStatus->actionState == ACTION_STATE_SPIN && playerStatus->curSpeed != 0.0f) {
if (D_80109488++ >= 4) {
D_80109488 = 2;
if (cond) {
sin_cos_rad(DEG_TO_RAD(clamp_angle(playerStatus->targetYaw)), &sinTheta, &cosTheta);
fx_misc_particles(
3,
playerStatus->position.x + (playerStatus->colliderDiameter * sinTheta),
playerStatus->position.y + 1.5f,
playerStatus->position.z + (playerStatus->colliderDiameter * cosTheta),
playerStatus->pos.x + (playerStatus->colliderDiameter * sinTheta),
playerStatus->pos.y + 1.5f,
playerStatus->pos.z + (playerStatus->colliderDiameter * cosTheta),
13.0f, 10.0f, 1.0f, 5, 30
);
} else {
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw)), &sinTheta, &cosTheta);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw)), &sinTheta, &cosTheta);
fx_walking_dust(
0,
playerStatus->position.x + (playerStatus->colliderDiameter * sinTheta * 0.2f),
playerStatus->position.y + 1.5f,
playerStatus->position.z + (playerStatus->colliderDiameter * cosTheta * 0.2f),
playerStatus->pos.x + (playerStatus->colliderDiameter * sinTheta * 0.2f),
playerStatus->pos.y + 1.5f,
playerStatus->pos.z + (playerStatus->colliderDiameter * cosTheta * 0.2f),
sinTheta, cosTheta
);
}
@ -144,21 +144,21 @@ void surface_standard_behavior(void) {
if (D_80109488++ >= 4) {
D_80109488 = 0;
if (!cond) {
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw)), &sinTheta, &cosTheta);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw)), &sinTheta, &cosTheta);
fx_walking_dust(
0,
playerStatus->position.x + (playerStatus->colliderDiameter * sinTheta * 0.2f),
playerStatus->position.y + 1.5f,
playerStatus->position.z + (playerStatus->colliderDiameter * cosTheta * 0.2f),
playerStatus->pos.x + (playerStatus->colliderDiameter * sinTheta * 0.2f),
playerStatus->pos.y + 1.5f,
playerStatus->pos.z + (playerStatus->colliderDiameter * cosTheta * 0.2f),
sinTheta, cosTheta
);
} else {
sin_cos_rad(DEG_TO_RAD(clamp_angle(playerStatus->targetYaw)), &sinTheta, &cosTheta);
fx_misc_particles(
3,
playerStatus->position.x + (playerStatus->currentSpeed * sinTheta),
playerStatus->position.y + 1.5f,
playerStatus->position.z + (playerStatus->currentSpeed * cosTheta),
playerStatus->pos.x + (playerStatus->curSpeed * sinTheta),
playerStatus->pos.y + 1.5f,
playerStatus->pos.z + (playerStatus->curSpeed * cosTheta),
13.0f, 10.0f, 1.0f, 5, 30
);
}
@ -172,10 +172,10 @@ void surface_flowers_behavior(void) {
f32 t1;
if (playerStatus->actionState == ACTION_STATE_JUMP && playerStatus->timeInAir == 1 && D_80109492 == 5) {
z = playerStatus->position.z; // TODO weird use of temps required to match
x = playerStatus->position.y + 14.0f;
z = playerStatus->pos.z; // TODO weird use of temps required to match
x = playerStatus->pos.y + 14.0f;
y = D_8010948C;
fx_flower_splash(playerStatus->position.x, x, z, y);
fx_flower_splash(playerStatus->pos.x, x, z, y);
D_8010948C = clamp_angle(D_8010948C + 35.0f);
D_80109492 = 0;
return;
@ -197,15 +197,15 @@ void surface_flowers_behavior(void) {
if (D_80109490++ > 0) {
f32 colliderDiameter;
D_80109490 = 0;
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw)), &sin, &cos);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw)), &sin, &cos);
colliderDiameter = playerStatus->colliderDiameter;
x = playerStatus->position.x + (colliderDiameter * sin * -0.4f);
z = playerStatus->position.z + (colliderDiameter * cos * -0.4f);
y = playerStatus->position.y + 15.5f;
x = playerStatus->pos.x + (colliderDiameter * sin * -0.4f);
z = playerStatus->pos.z + (colliderDiameter * cos * -0.4f);
y = playerStatus->pos.y + 15.5f;
fx_flower_trail(0, x, y, z, -playerStatus->currentYaw + rand_int(10) - 5.0f, D_80109494);
fx_flower_trail(0, x, y, z, -playerStatus->curYaw + rand_int(10) - 5.0f, D_80109494);
D_80109494 = !D_80109494;
}
}
@ -225,9 +225,9 @@ void surface_cloud_behavior(void) {
D_8010CFF4 >= 10)
{
fx_cloud_puff(
playerStatus->position.x,
(playerStatus->position.y + 14.0f) - 5.0f,
playerStatus->position.z, D_80109498
playerStatus->pos.x,
(playerStatus->pos.y + 14.0f) - 5.0f,
playerStatus->pos.z, D_80109498
);
D_80109498 = clamp_angle(D_80109498 + 35.0f);
@ -236,12 +236,12 @@ void surface_cloud_behavior(void) {
zTemp = rand_int(10) - 5;
yTemp = -2.0f - ((SQ(xTemp) + SQ(zTemp)) / 5.0f);
D_8010949C = 0;
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw + (i * 90))), &sinTheta, &cosTheta);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw + (i * 90))), &sinTheta, &cosTheta);
fx_cloud_trail(
0,
playerStatus->position.x + (playerStatus->colliderDiameter * sinTheta * -0.3f) + xTemp,
playerStatus->position.y + 15.5f + yTemp,
playerStatus->position.z + (playerStatus->colliderDiameter * cosTheta * -0.3f) + zTemp
playerStatus->pos.x + (playerStatus->colliderDiameter * sinTheta * -0.3f) + xTemp,
playerStatus->pos.y + 15.5f + yTemp,
playerStatus->pos.z + (playerStatus->colliderDiameter * cosTheta * -0.3f) + zTemp
);
}
} else {
@ -255,12 +255,12 @@ void surface_cloud_behavior(void) {
zTemp2 = rand_int(10) - 5;
yTemp2 = -2.0f - ((SQ(xTemp2) + SQ(zTemp2)) / 5.0f);
D_8010949C = 0;
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw)), &sinTheta, &cosTheta);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw)), &sinTheta, &cosTheta);
fx_cloud_trail(
1,
playerStatus->position.x + (playerStatus->colliderDiameter * sinTheta * -0.3f) + xTemp2,
playerStatus->position.y + 15.5f + yTemp2,
playerStatus->position.z + (playerStatus->colliderDiameter * cosTheta * -0.3f) + zTemp2
playerStatus->pos.x + (playerStatus->colliderDiameter * sinTheta * -0.3f) + xTemp2,
playerStatus->pos.y + 15.5f + yTemp2,
playerStatus->pos.z + (playerStatus->colliderDiameter * cosTheta * -0.3f) + zTemp2
);
}
}
@ -281,12 +281,12 @@ void surface_snow_behavior(void) {
if (D_801094A4++ >= 4) {
D_801094A4 = 0;
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw)), &sin, &cos);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw)), &sin, &cos);
fx_footprint(
playerStatus->position.x + (playerStatus->colliderDiameter * sin * 0.2f),
playerStatus->position.y + 1.5f,
playerStatus->position.z + (playerStatus->colliderDiameter * cos * 0.2f),
-playerStatus->currentYaw,
playerStatus->pos.x + (playerStatus->colliderDiameter * sin * 0.2f),
playerStatus->pos.y + 1.5f,
playerStatus->pos.z + (playerStatus->colliderDiameter * cos * 0.2f),
-playerStatus->curYaw,
D_801094A8
);
D_801094A8 = !D_801094A8;
@ -309,12 +309,12 @@ void surface_hedges_behavior(void) {
if (D_801094AC++ >= 4) {
D_801094AC = 0;
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw)), &sin, &cos);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw)), &sin, &cos);
fx_falling_leaves(
0,
playerStatus->position.x + (playerStatus->colliderDiameter * sin * 0.2f),
playerStatus->pos.x + (playerStatus->colliderDiameter * sin * 0.2f),
40.0f,
playerStatus->position.z + (playerStatus->colliderDiameter * cos * 0.2f)
playerStatus->pos.z + (playerStatus->colliderDiameter * cos * 0.2f)
);
}
}
@ -335,12 +335,12 @@ void surface_water_behavior(void) {
if (D_801094AE++ >= 4) {
D_801094AE = 0;
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->currentYaw)), &sin, &cos);
sin_cos_rad(DEG_TO_RAD(clamp_angle(-playerStatus->curYaw)), &sin, &cos);
fx_rising_bubble(
0,
playerStatus->position.x + (playerStatus->colliderDiameter * sin * 0.2f),
playerStatus->position.y + 0.0f,
playerStatus->position.z + (playerStatus->colliderDiameter * cos * 0.2f),
playerStatus->pos.x + (playerStatus->colliderDiameter * sin * 0.2f),
playerStatus->pos.y + 0.0f,
playerStatus->pos.z + (playerStatus->colliderDiameter * cos * 0.2f),
0.0f
);
}

View File

@ -973,7 +973,7 @@ s32 popup_menu_update(void) {
case POPUP_STATE_CANCEL_DIP_AWAIT_CHOICE:
if (D_8010D6A4 == 1) {
set_window_update(WINDOW_ID_21, WINDOW_UPDATE_HIDE);
switch (D_8010D6A0->currentOption) {
switch (D_8010D6A0->curOption) {
case 0:
gPopupState = POPUP_STATE_CANCEL_DIP_ACCEPT;
break;

View File

@ -35,23 +35,23 @@ void update_camera_mode_4(Camera* camera) {
}
camera->lookAt_obj_target.z = f4;
camera->unk_70 = 0.0f;
camera->currentBoomYaw = 0.0f;
camera->trueRotation.x = camera->unk_70;
camera->currentBoomLength = camera->lookAt_dist * D_8009A5EC;
camera->currentYOffset = camera->auxBoomPitch * D_8009A5EC;
camera->curBoomYaw = 0.0f;
camera->trueRot.x = camera->unk_70;
camera->curBoomLength = camera->lookAt_dist * D_8009A5EC;
camera->curYOffset = camera->auxBoomPitch * D_8009A5EC;
if (camera->needsInit) {
camera->needsInit = FALSE;
camera->unk_98 = 0.0f;
camera->unk_9C = 0.0f;
camera->lookAt_obj.x = camera->lookAt_obj_target.x;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->currentYOffset;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->curYOffset;
camera->lookAt_obj.z = camera->lookAt_obj_target.z;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaX = 0.0f;
deltaY = 0.0f;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX2 = deltaX;
deltaY2 = deltaY;
boomYaw = deltaX = -deltaY2;
@ -71,14 +71,14 @@ void update_camera_mode_4(Camera* camera) {
camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ2;
}
camera->lookAt_obj.x = camera->lookAt_obj_target.x;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->currentYOffset;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->curYOffset;
camera->lookAt_obj.z = camera->lookAt_obj_target.z;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaX = 0.0f;
deltaY = 0.0f;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX2 = deltaX;
deltaY2 = deltaY;
boomYaw = deltaX = -deltaY2;
@ -96,12 +96,12 @@ void update_camera_mode_4(Camera* camera) {
camera->lookAt_eye.x = camera->lookAt_obj.x + deltaX2;
camera->lookAt_eye.y = camera->lookAt_obj.y + deltaY2;
camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ2;
camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
camera->curYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
deltaX = camera->lookAt_obj.x - camera->lookAt_eye.x;
deltaY = camera->lookAt_obj.y - camera->lookAt_eye.y;
deltaZ = camera->lookAt_obj.z - camera->lookAt_eye.z;
camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
camera->currentPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ)));
camera->curBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
camera->curPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ)));
}
void update_camera_mode_2(Camera *camera) {
@ -120,26 +120,26 @@ void update_camera_mode_2(Camera *camera) {
f32 tmp;
camera->unk_70 = camera->auxBoomLength;
camera->currentBoomLength = camera->lookAt_dist * D_8009A5EC;
camera->currentYOffset = camera->auxBoomPitch * D_8009A5EC;
camera->currentBoomYaw = camera->auxPitch;
camera->trueRotation.x = camera->unk_70;
camera->curBoomLength = camera->lookAt_dist * D_8009A5EC;
camera->curYOffset = camera->auxBoomPitch * D_8009A5EC;
camera->curBoomYaw = camera->auxPitch;
camera->trueRot.x = camera->unk_70;
if (camera->needsInit) {
camera->needsInit = FALSE;
camera->unk_98 = 0.0f;
camera->unk_9C = 0.0f;
camera->lookAt_obj.x = camera->lookAt_obj_target.x;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->currentYOffset;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->curYOffset;
camera->lookAt_obj.z = camera->lookAt_obj_target.z;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaX = 0.0f;
deltaY = 0.0f;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX3 = deltaX;
deltaY3 = -deltaY;
@ -168,7 +168,7 @@ void update_camera_mode_2(Camera *camera) {
}
deltaX2 = camera->lookAt_obj_target.x - camera->lookAt_obj.x;
deltaY2 = (camera->lookAt_obj_target.y + camera->currentYOffset) - camera->lookAt_obj.y;
deltaY2 = (camera->lookAt_obj_target.y + camera->curYOffset) - camera->lookAt_obj.y;
deltaZ2 = camera->lookAt_obj_target.z - camera->lookAt_obj.z;
if (fabsf(deltaX2) > 16.0f) {
@ -197,13 +197,13 @@ void update_camera_mode_2(Camera *camera) {
camera->lookAt_obj.y += deltaY2 * 0.5f;
camera->lookAt_obj.z += deltaZ2 * 0.5f;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaX = 0.0f;
deltaY = 0.0f;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX3 = deltaX;
deltaY3 = -deltaY;
@ -257,14 +257,14 @@ void update_camera_mode_2(Camera *camera) {
camera->lookAt_eye.y += deltaY2;
camera->lookAt_eye.z += deltaZ2;
camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
camera->curYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
deltaX = camera->lookAt_obj.x - camera->lookAt_eye.x;
deltaY = camera->lookAt_obj.y - camera->lookAt_eye.y;
deltaZ = camera->lookAt_obj.z - camera->lookAt_eye.z;
camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
camera->currentPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ)));
camera->curBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
camera->curPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ)));
}
void update_camera_mode_1(Camera* camera) {
@ -287,24 +287,24 @@ void update_camera_mode_1(Camera* camera) {
deltaX2 = camera->targetPos.x;
deltaZ = camera->targetPos.z;
camera->currentBoomYaw = camera->auxPitch;
camera->currentBoomLength = camera->lookAt_dist * 100 / D_8009A5EC;
camera->currentYOffset = camera->auxBoomPitch * 20 / D_8009A5EC;
camera->curBoomYaw = camera->auxPitch;
camera->curBoomLength = camera->lookAt_dist * 100 / D_8009A5EC;
camera->curYOffset = camera->auxBoomPitch * 20 / D_8009A5EC;
f20 = atan2(deltaX, deltaZ2, deltaX2, deltaZ);
if ((dist2D(deltaX, deltaZ2, deltaX2, deltaZ) < camera->auxBoomLength * 100 / D_8009A5EC)) {
f20 = camera->trueRotation.x;
camera->trueRotation.x = f20;
f20 = camera->trueRot.x;
camera->trueRot.x = f20;
} else {
camera->trueRotation.x = f20;
camera->trueRot.x = f20;
}
camera->trueRotation.y = f20;
camera->trueRot.y = f20;
camera->lookAt_obj.x = camera->lookAt_obj_target.x;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->currentYOffset;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->curYOffset;
camera->lookAt_obj.z = camera->lookAt_obj_target.z;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
deltaX = 0.0f;
@ -312,7 +312,7 @@ void update_camera_mode_1(Camera* camera) {
new_var2 = -deltaY;
cosBoom = cos_rad(boomYaw);
boomYaw = new_var2;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX2 = deltaX;
deltaY2 = new_var2;
@ -341,11 +341,11 @@ void update_camera_mode_1(Camera* camera) {
y3 = tmp1;
z3 = camera->lookAt_obj_target.z;
camera->currentBoomYaw = camera->auxPitch;
camera->currentBoomLength = camera->lookAt_dist * 100 / D_8009A5EC;
camera->currentYOffset = camera->auxBoomPitch * 20 / D_8009A5EC;
camera->curBoomYaw = camera->auxPitch;
camera->curBoomLength = camera->lookAt_dist * 100 / D_8009A5EC;
camera->curYOffset = camera->auxBoomPitch * 20 / D_8009A5EC;
y3 += camera->currentYOffset;
y3 += camera->curYOffset;
x3 -= camera->lookAt_obj.x;
y3 -= camera->lookAt_obj.y;
@ -365,20 +365,20 @@ void update_camera_mode_1(Camera* camera) {
f20 = atan2(deltaX, deltaZ2, deltaX2, deltaZ);
if ((dist2D(deltaX, deltaZ2, deltaX2, deltaZ) < camera->auxBoomLength * 100 / D_8009A5EC)) {
f20 = camera->trueRotation.x;
f20 = camera->trueRot.x;
} else {
camera->trueRotation.x = f20;
camera->trueRot.x = f20;
}
camera->trueRotation.y -= get_clamped_angle_diff(f20, camera->trueRotation.y) / 10.0f;
f20 = camera->trueRotation.y;
camera->trueRot.y -= get_clamped_angle_diff(f20, camera->trueRot.y) / 10.0f;
f20 = camera->trueRot.y;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaX = 0.0f;
deltaY = 0.0f;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX2 = deltaX;
deltaY2 = -deltaY;
@ -402,14 +402,14 @@ void update_camera_mode_1(Camera* camera) {
camera->lookAt_eye.y = camera->lookAt_obj.y + deltaY2;
camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ;
camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
camera->curYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
deltaX = camera->lookAt_obj.x - camera->lookAt_eye.x;
deltaY = camera->lookAt_obj.y - camera->lookAt_eye.y;
deltaZ2 = camera->lookAt_obj.z - camera->lookAt_eye.z;
camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ2);
camera->currentPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf((deltaX * deltaX) + (deltaZ2 * deltaZ2)));
camera->curBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ2);
camera->curPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf((deltaX * deltaX) + (deltaZ2 * deltaZ2)));
}
void update_camera_mode_0(Camera* camera) {
@ -427,11 +427,11 @@ void update_camera_mode_0(Camera* camera) {
camera->lookAt_eye.z = camera->lookAt_obj.z - (1000.0f / D_8009A5EC);
}
camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
camera->curYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
dx = camera->lookAt_obj.x - camera->lookAt_eye.x;
dy = camera->lookAt_obj.y - camera->lookAt_eye.y;
dz = camera->lookAt_obj.z - camera->lookAt_eye.z;
camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, dx, dz);
camera->curBlendedYawNegated = -atan2(0.0f, 0.0f, dx, dz);
dx = -sqrtf(SQ(dx) + SQ(dz));
camera->currentPitch = atan2(0.0f, 0.0f, dy, dx);
camera->curPitch = atan2(0.0f, 0.0f, dy, dx);
}

View File

@ -36,25 +36,25 @@ void update_camera_mode_unused(Camera* camera) {
}
if (!(playerStatus->flags & (PS_FLAG_FALLING | PS_FLAG_JUMPING))) {
camera->lookAt_obj_target.y = playerStatus->position.y + 60.0f;
camera->lookAt_obj_target.y = playerStatus->pos.y + 60.0f;
}
camera->lookAt_obj_target.x = playerStatus->position.x;
camera->lookAt_obj_target.z = playerStatus->position.z + 400.0f;
camera->lookAt_obj_target.x = playerStatus->pos.x;
camera->lookAt_obj_target.z = playerStatus->pos.z + 400.0f;
if (camera->auxPitch == 0) {
camera->lookAt_obj.x = camera->lookAt_obj_target.x;
camera->lookAt_obj.y = camera->lookAt_obj_target.y;
camera->lookAt_obj.z = camera->lookAt_obj_target.z;
camera->trueRotation.x = camera->auxBoomYaw;
camera->currentBoomYaw = camera->auxBoomPitch;
camera->currentBoomLength = camera->auxBoomLength;
camera->trueRot.x = camera->auxBoomYaw;
camera->curBoomYaw = camera->auxBoomPitch;
camera->curBoomLength = camera->auxBoomLength;
camera->vfov = (10000 / camera->lookAt_dist) / 4;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaX = 0.0f;
deltaY = 0.0f;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX2 = deltaX;
deltaY2 = deltaY;
boomYaw = deltaX = -deltaY2;
@ -62,7 +62,7 @@ void update_camera_mode_unused(Camera* camera) {
deltaX = deltaX2;
deltaY = cosBoom * deltaY2 + deltaZ2 * sinBoom;
deltaZ = sinBoom * boomYaw + deltaZ2 * cosBoom;
boomYaw = DEG_TO_RAD(camera->trueRotation.x);
boomYaw = DEG_TO_RAD(camera->trueRot.x);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaZ2 = cosBoom * deltaX - deltaZ * sinBoom;
@ -73,12 +73,12 @@ void update_camera_mode_unused(Camera* camera) {
camera->lookAt_eye.y = camera->lookAt_obj.y + deltaY2;
camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ2;
}
camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
camera->curYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
deltaX = camera->lookAt_obj.x - camera->lookAt_eye.x;
deltaY = camera->lookAt_obj.y - camera->lookAt_eye.y;
deltaZ = camera->lookAt_obj.z - camera->lookAt_eye.z;
camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
camera->currentPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ)));
camera->curBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
camera->curPitch = atan2(0.0f, 0.0f, deltaY, -sqrtf(SQ(deltaX) + SQ(deltaZ)));
}
//TODO CODE SPLIT?
@ -87,26 +87,26 @@ void update_camera_mode_5(Camera* camera) {
PlayerStatus* playerStatus = &gPlayerStatus;
f32 lookXDelta, lookYDelta, lookZDelta;
camera->currentBoomYaw = 18.0f;
camera->currentBoomLength = 690.0f;
camera->currentYOffset = 47.0f;
camera->curBoomYaw = 18.0f;
camera->curBoomLength = 690.0f;
camera->curYOffset = 47.0f;
if (camera->needsInit) {
camera->unk_550 = 0.0f;
camera->unk_70 = 0.0f;
camera->trueRotation.x = 0.0f;
camera->trueRot.x = 0.0f;
camera->needsInit = FALSE;
camera->unk_554 = 0;
camera->lookAt_obj.x = camera->targetPos.x;
camera->lookAt_obj.y = camera->targetPos.y + camera->currentYOffset;
camera->lookAt_obj.y = camera->targetPos.y + camera->curYOffset;
camera->lookAt_obj.z = camera->targetPos.z;
cam_interp_lookat_pos(camera, 0.0f, 0.0f, FALSE);
} else {
f32 maxInterpSpeed = (playerStatus->currentSpeed * 1.5f) + 1.0f;
f32 interpRate = (playerStatus->currentSpeed * 0.05f) + 0.05f;
f32 maxInterpSpeed = (playerStatus->curSpeed * 1.5f) + 1.0f;
f32 interpRate = (playerStatus->curSpeed * 0.05f) + 0.05f;
camera->lookAt_obj_target.x = camera->targetPos.x + camera->unk_550;
camera->lookAt_obj_target.y = camera->targetPos.y + camera->currentYOffset;
camera->lookAt_obj_target.y = camera->targetPos.y + camera->curYOffset;
camera->lookAt_obj_target.z = camera->targetPos.z;
func_8003034C(camera);
if (!(camera->moveFlags & CAMERA_MOVE_IGNORE_PLAYER_Y)) {
@ -118,12 +118,12 @@ void update_camera_mode_5(Camera* camera) {
}
}
camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
camera->curYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
lookXDelta = camera->lookAt_obj.x - camera->lookAt_eye.x;
lookYDelta = camera->lookAt_obj.y - camera->lookAt_eye.y;
lookZDelta = camera->lookAt_obj.z - camera->lookAt_eye.z;
camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, lookXDelta, lookZDelta);
camera->currentPitch = atan2(0.0f, 0.0f, lookYDelta, -sqrtf(SQ(lookXDelta) + SQ(lookZDelta)));
camera->curBlendedYawNegated = -atan2(0.0f, 0.0f, lookXDelta, lookZDelta);
camera->curPitch = atan2(0.0f, 0.0f, lookYDelta, -sqrtf(SQ(lookXDelta) + SQ(lookZDelta)));
}
void cam_interp_lookat_pos(Camera* camera, f32 interpAmtXZ, f32 maxDeltaXZ, s16 lockPosY) {
@ -141,22 +141,22 @@ void cam_interp_lookat_pos(Camera* camera, f32 interpAmtXZ, f32 maxDeltaXZ, s16
camera->lookAt_obj.x = camera->lookAt_eye.x = camera->lookAt_obj.x + xDelta;
theta = DEG_TO_RAD(camera->currentBoomYaw);
cosTheta = cos_rad(DEG_TO_RAD(camera->currentBoomYaw));
theta = DEG_TO_RAD(camera->curBoomYaw);
cosTheta = cos_rad(DEG_TO_RAD(camera->curBoomYaw));
camera->lookAt_obj.z += (camera->lookAt_obj_target.z - camera->lookAt_obj.z) * interpAmtXZ;
camera->lookAt_eye.z = camera->lookAt_obj.z + (camera->currentBoomLength * cosTheta);
camera->lookAt_eye.z = camera->lookAt_obj.z + (camera->curBoomLength * cosTheta);
if (!lockPosY) {
sinTheta = sin_rad(theta);
camera->lookAt_obj.y += (camera->lookAt_obj_target.y - camera->lookAt_obj.y) * 0.125f;
camera->lookAt_eye.y = camera->lookAt_obj.y + (camera->currentBoomLength * sinTheta);
camera->lookAt_eye.y = camera->lookAt_obj.y + (camera->curBoomLength * sinTheta);
}
}
void func_8003034C(Camera* camera) {
PlayerStatus* playerStatus = &gPlayerStatus;
if (fabsf(get_clamped_angle_diff(playerStatus->currentYaw, 90.0f)) < 45.0f) {
if (fabsf(get_clamped_angle_diff(playerStatus->curYaw, 90.0f)) < 45.0f) {
if (camera->unk_556 == 0) {
if (camera->unk_554 <= 0) {
camera->unk_550 = 35.0f;
@ -167,7 +167,7 @@ void func_8003034C(Camera* camera) {
camera->unk_554 = 15;
camera->unk_556 = 0;
}
} else if (fabsf(get_clamped_angle_diff(playerStatus->currentYaw, 270.0f)) < 45.0f) {
} else if (fabsf(get_clamped_angle_diff(playerStatus->curYaw, 270.0f)) < 45.0f) {
if (camera->unk_556 == 1) {
if (camera->unk_554 <= 0) {
camera->unk_550 = -35.0f;
@ -789,7 +789,7 @@ void update_camera_zone_interp(Camera* camera) {
changingZone = FALSE;
if (camera->isChangingMap) {
camera->currentController = NULL;
camera->curController = NULL;
camera->prevController = NULL;
camera->linearInterp = 0.0f;
camera->unk_494 = 0.0f;
@ -854,7 +854,7 @@ void update_camera_zone_interp(Camera* camera) {
cond2 = FALSE;
cs2 = cs;
currentController = camera->currentController;
currentController = camera->curController;
if (cs != NULL
&& currentController != NULL
&& cs->type == currentController->type
@ -909,13 +909,13 @@ void update_camera_zone_interp(Camera* camera) {
if (camera->panActive || (!cond2 && cs2 != currentController)) {
if (camera->interpAlpha == 1.0f) {
camera->prevController = camera->currentController;
camera->prevController = camera->curController;
} else {
camera->prevController = (CameraControlSettings*) CAMERA_SETTINGS_PTR_MINUS_1;
}
changingZone = TRUE;
camera->prevConfiguration = gCurrentCamConfiguration;
camera->currentController = cs;
camera->curController = cs;
camera->interpAlpha = 0.0f;
camera->linearInterp = 0.0f;
camera->panActive = FALSE;
@ -953,7 +953,7 @@ void update_camera_zone_interp(Camera* camera) {
}
update_camera_from_controller(camera, &camera->prevConfiguration, &camera->prevController,
&camera->goalConfiguration, &camera->currentController, posX, posY, posZ, tX, tY, tZ,
&camera->goalConfiguration, &camera->curController, posX, posY, posZ, tX, tY, tZ,
camera->isChangingMap, &camera->interpAlpha, changingZone);
if (camera->isChangingMap) {
@ -1098,13 +1098,13 @@ void update_camera_zone_interp(Camera* camera) {
temp_f4_4 = (dist * cosAngle) - (temp_f8_2 * sinAngle);
camera->lookAt_obj.x = camera->lookAt_eye.x + (temp_f26 * temp_f4_4);
camera->lookAt_obj.z = camera->lookAt_eye.z + (temp_f24_2 * temp_f4_4);
camera->currentYaw = gCurrentCamConfiguration.boomYaw + D_800A08E0;
camera->trueRotation.x = camera->currentYaw;
camera->currentBoomLength = gCurrentCamConfiguration.boomLength;
camera->currentBlendedYawNegated = -gCurrentCamConfiguration.boomYaw;
camera->currentPitch = -gCurrentCamConfiguration.boomPitch - gCurrentCamConfiguration.viewPitch;
camera->curYaw = gCurrentCamConfiguration.boomYaw + D_800A08E0;
camera->trueRot.x = camera->curYaw;
camera->curBoomLength = gCurrentCamConfiguration.boomLength;
camera->curBlendedYawNegated = -gCurrentCamConfiguration.boomYaw;
camera->curPitch = -gCurrentCamConfiguration.boomPitch - gCurrentCamConfiguration.viewPitch;
camera->lookAt_obj_target.x = camera->lookAt_obj.x;
camera->lookAt_obj_target.y = camera->lookAt_obj.y;
camera->lookAt_obj_target.z = camera->lookAt_obj.z;
camera->currentYOffset = 0.0f;
camera->curYOffset = 0.0f;
}

View File

@ -373,9 +373,9 @@ AnimatorNode* add_anim_node(ModelAnimator* animator, s32 parentNodeID, AnimatorN
ret->pos.x = 0.0f;
ret->pos.y = 0.0f;
ret->pos.z = 0.0f;
ret->rotation.x = nodeBP->rotation.x;
ret->rotation.y = nodeBP->rotation.y;
ret->rotation.z = nodeBP->rotation.z;
ret->rot.x = nodeBP->rot.x;
ret->rot.y = nodeBP->rot.y;
ret->rot.z = nodeBP->rot.z;
ret->scale.x = 1.0f;
ret->scale.y = 1.0f;
ret->scale.z = 1.0f;
@ -595,9 +595,9 @@ s32 step_model_animator(ModelAnimator* animator) {
node = get_animator_child_with_id(animator->rootNode, nodeId);
ASSERT(node != NULL);
node->rotation.x = x;
node->rotation.y = y;
node->rotation.z = z;
node->rot.x = x;
node->rot.y = y;
node->rot.z = z;
return 1;
case AS_ADD_ROTATION:
nodeId = animator->staticNodeIDs[*args++ - 1];
@ -608,9 +608,9 @@ s32 step_model_animator(ModelAnimator* animator) {
node = get_animator_child_with_id(animator->rootNode, nodeId);
ASSERT(node != NULL);
node->rotation.x += x;
node->rotation.y += y;
node->rotation.z += z;
node->rot.x += x;
node->rot.y += y;
node->rot.z += z;
return 1;
case AS_SET_POS:
nodeId = animator->staticNodeIDs[*args++ - 1];
@ -668,7 +668,7 @@ void animator_node_update_model_transform(ModelAnimator* animator, f32 (*flipMtx
Matrix4f sp10;
s32 i;
guRotateRPYF(gAnimRotMtx, clamp_angle(node->rotation.x), clamp_angle(node->rotation.y), clamp_angle(node->rotation.z));
guRotateRPYF(gAnimRotMtx, clamp_angle(node->rot.x), clamp_angle(node->rot.y), clamp_angle(node->rot.z));
guScaleF(gAnimScaleMtx, node->scale.x, node->scale.y, node->scale.z);
guTranslateF(gAnimTranslateMtx, node->basePos.x + node->pos.x, node->basePos.y + node->pos.y, node->basePos.z + node->pos.z);
guMtxCatF(gAnimScaleMtx, gAnimRotMtx, gAnimRotScaleMtx);
@ -712,7 +712,7 @@ void render_animated_model(s32 animatorID, Mtx* rootTransform) {
animator->baseAddr = NULL;
rtPtr->appendGfxArg = animator;
rtPtr->appendGfx = (void (*)(void*))appendGfx_animator;
rtPtr->distance = 0;
rtPtr->dist = 0;
rtPtr->renderMode = animator->renderMode;
queue_render_task(rtPtr);
}
@ -736,7 +736,7 @@ void render_animated_model_with_vertices(s32 animatorID, Mtx* rootTransform, s32
animator->baseAddr = baseAddr;
rtPtr->appendGfxArg = animator;
rtPtr->appendGfx = (void (*)(void*))appendGfx_animator;
rtPtr->distance = 0;
rtPtr->dist = 0;
rtPtr->renderMode = animator->renderMode;
queue_render_task(rtPtr);
}
@ -1060,9 +1060,9 @@ void load_model_animator_node(StaticAnimatorNode* node, ModelAnimator* animator,
bpPtr->basePos.x = 0.0f;
bpPtr->basePos.y = 0.0f;
bpPtr->basePos.z = 0.0f;
bpPtr->rotation.x = ((f32) node->rot.x * 180.0) / 32767.0;
bpPtr->rotation.y = ((f32) node->rot.y * 180.0) / 32767.0;
bpPtr->rotation.z = ((f32) node->rot.z * 180.0) / 32767.0;
bpPtr->rot.x = ((f32) node->rot.x * 180.0) / 32767.0;
bpPtr->rot.y = ((f32) node->rot.y * 180.0) / 32767.0;
bpPtr->rot.z = ((f32) node->rot.z * 180.0) / 32767.0;
newNode = add_anim_node(animator, parentNodeID, bpPtr);
@ -1150,9 +1150,9 @@ void reload_mesh_animator_node(StaticAnimatorNode* node, ModelAnimator* animator
bpPtr->basePos.x = 0.0f;
bpPtr->basePos.y = 0.0f;
bpPtr->basePos.z = 0.0f;
bpPtr->rotation.x = ((f32) node->rot.x * 180.0) / 32767.0;
bpPtr->rotation.y = ((f32) node->rot.y * 180.0) / 32767.0;
bpPtr->rotation.z = ((f32) node->rot.z * 180.0) / 32767.0;
bpPtr->rot.x = ((f32) node->rot.x * 180.0) / 32767.0;
bpPtr->rot.y = ((f32) node->rot.y * 180.0) / 32767.0;
bpPtr->rot.z = ((f32) node->rot.z * 180.0) / 32767.0;
newNode = add_anim_node(animator, parentNodeID, bpPtr);
newNode->vertexStartOffset = node->vertexStartOffset;
@ -1249,9 +1249,9 @@ s32 step_mesh_animator(ModelAnimator* animator) {
if (nodeId != 0xFF) {
node = get_animator_child_with_id(animator->rootNode, nodeId);
if (node != NULL) {
node->rotation.x = x;
node->rotation.y = y;
node->rotation.z = z;
node->rot.x = x;
node->rot.y = y;
node->rot.z = z;
return 1;
} else {
animator->animReadPos = oldPos;
@ -1269,9 +1269,9 @@ s32 step_mesh_animator(ModelAnimator* animator) {
if (nodeId != 0xFF) {
node = get_animator_child_with_id(animator->rootNode, nodeId);
if (node != NULL) {
node->rotation.x += x;
node->rotation.y += y;
node->rotation.z += z;
node->rot.x += x;
node->rot.y += y;
node->rot.z += z;
return 1;
} else {
animator->animReadPos = oldPos;

View File

@ -664,10 +664,10 @@ void draw_coin_sparkles(ItemEntity* item) {
x = D_80155D8C;
y = D_80155D8E;
z = D_80155D90;
angle = clamp_angle(180.0f - gCameras[gCurrentCamID].currentYaw);
angle = clamp_angle(180.0f - gCameras[gCurrentCamID].curYaw);
guTranslateF(sp18, x, y, z);
guTranslateF(sp58, item->position.x, item->position.y + 12.0f, item->position.z);
guTranslateF(sp58, item->pos.x, item->pos.y + 12.0f, item->pos.z);
guRotateF(sp98, angle, 0.0f, 1.0f, 0.0f);
guMtxCatF(sp18, sp98, sp98);
guMtxCatF(sp98, sp58, spD8);
@ -922,9 +922,9 @@ s32 make_item_entity(s32 itemID, f32 x, f32 y, f32 z, s32 itemSpawnMode, s32 pic
item->spawnType = itemSpawnMode;
item->state = ITEM_PHYSICS_STATE_INIT;
item->position.x = x;
item->position.y = y;
item->position.z = z;
item->pos.x = x;
item->pos.y = y;
item->pos.z = z;
itemID &= 0xFFFF;
@ -1119,24 +1119,24 @@ s32 make_item_entity(s32 itemID, f32 x, f32 y, f32 z, s32 itemSpawnMode, s32 pic
case ITEM_SPAWN_MODE_FALL_SPAWN_ALWAYS:
case ITEM_SPAWN_MODE_FIXED_SPAWN_ALWAYS:
case ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS:
item->shadowIndex = create_shadow_type(0, item->position.x, item->position.y, item->position.z);
item->shadowIndex = create_shadow_type(0, item->pos.x, item->pos.y, item->pos.z);
shadow = get_shadow_by_index(item->shadowIndex);
if (item->spawnType == ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS) {
shadow->flags |= ENTITY_FLAG_HIDDEN;
}
x = item->position.x;
y = item->position.y + 12.0f;
z = item->position.z;
x = item->pos.x;
y = item->pos.y + 12.0f;
z = item->pos.z;
hitDepth = 1000.0f;
npc_raycast_down_sides(COLLISION_CHANNEL_20000, &x, &y, &z, &hitDepth);
shadow->position.x = x;
shadow->position.y = y;
shadow->position.z = z;
shadow->rotation.x = gGameStatusPtr->playerGroundTraceAngles.x;
shadow->rotation.y = 0.0f;
shadow->rotation.z = gGameStatusPtr->playerGroundTraceAngles.z;
shadow->pos.x = x;
shadow->pos.y = y;
shadow->pos.z = z;
shadow->rot.x = gGameStatusPtr->playerGroundTraceAngles.x;
shadow->rot.y = 0.0f;
shadow->rot.z = gGameStatusPtr->playerGroundTraceAngles.z;
set_standard_shadow_scale(shadow, hitDepth * 0.5f);
break;
}
@ -1200,9 +1200,9 @@ s32 make_item_entity_at_player(s32 itemID, s32 category, s32 pickupMsgFlags) {
item->spawnType = ITEM_SPAWN_AT_PLAYER;
item->state = ITEM_PICKUP_STATE_INIT;
item->boundVar = 0;
item->position.x = playerStatus->position.x;
item->position.y = playerStatus->position.y;
item->position.z = playerStatus->position.z;
item->pos.x = playerStatus->pos.x;
item->pos.y = playerStatus->pos.y;
item->pos.z = playerStatus->pos.z;
item->shadowIndex = -1;
item->nextUpdate = 1;
@ -1224,22 +1224,22 @@ s32 make_item_entity_at_player(s32 itemID, s32 category, s32 pickupMsgFlags) {
}
ItemEntityAlternatingSpawn = 1 - ItemEntityAlternatingSpawn;
item->shadowIndex = create_shadow_type(0, item->position.x, item->position.y, item->position.z);
item->shadowIndex = create_shadow_type(0, item->pos.x, item->pos.y, item->pos.z);
shadow = get_shadow_by_index(item->shadowIndex);
shadow->flags |= ENTITY_FLAG_HIDDEN;
posX = item->position.x;
posY = item->position.y + 12.0f;
posZ = item->position.z;
posX = item->pos.x;
posY = item->pos.y + 12.0f;
posZ = item->pos.z;
depth = 1000.0f;
npc_raycast_down_sides(COLLISION_CHANNEL_20000, &posX, &posY, &posZ, &depth);
shadow->position.x = posX;
shadow->position.y = posY;
shadow->position.z = posZ;
shadow->pos.x = posX;
shadow->pos.y = posY;
shadow->pos.z = posZ;
shadow->rotation.x = gGameStatusPtr->playerGroundTraceAngles.x;
shadow->rotation.y = 0.0f;
shadow->rotation.z = gGameStatusPtr->playerGroundTraceAngles.z;
shadow->rot.x = gGameStatusPtr->playerGroundTraceAngles.x;
shadow->rot.y = 0.0f;
shadow->rot.z = gGameStatusPtr->playerGroundTraceAngles.z;
set_standard_shadow_scale(shadow, depth * 0.5f);
item_entity_load(item);
@ -1350,32 +1350,32 @@ void update_item_entities(void) {
case ITEM_SPAWN_MODE_FALL_SPAWN_ALWAYS:
case ITEM_SPAWN_MODE_FIXED_SPAWN_ALWAYS:
case ITEM_SPAWN_AT_PLAYER:
xs = item->position.x;
ys = item->position.y;
zs = item->position.z;
xs = item->pos.x;
ys = item->pos.y;
zs = item->pos.z;
if (xs != item->lastPos.x || ys != item->lastPos.y || zs != item->lastPos.z) {
Shadow* shadow = get_shadow_by_index(item->shadowIndex);
x = item->position.x;
y = item->position.y + 12.0f;
z = item->position.z;
x = item->pos.x;
y = item->pos.y + 12.0f;
z = item->pos.z;
hitDepth = 1000.0f;
npc_raycast_down_sides(COLLISION_CHANNEL_20000, &x, &y, &z, &hitDepth);
shadow->position.x = x;
shadow->position.y = y;
shadow->position.z = z;
shadow->rotation.x = gGameStatusPtr->playerGroundTraceAngles.x;
shadow->rotation.y = 0.0f;
shadow->rotation.z = gGameStatusPtr->playerGroundTraceAngles.z;
shadow->pos.x = x;
shadow->pos.y = y;
shadow->pos.z = z;
shadow->rot.x = gGameStatusPtr->playerGroundTraceAngles.x;
shadow->rot.y = 0.0f;
shadow->rot.z = gGameStatusPtr->playerGroundTraceAngles.z;
set_standard_shadow_scale(shadow, hitDepth * 0.5f);
}
break;
}
item->lastPos.x = item->position.x;
item->lastPos.y = item->position.y;
item->lastPos.z = item->position.z;
item->lastPos.x = item->pos.x;
item->lastPos.y = item->pos.y;
item->lastPos.z = item->pos.z;
}
}
do {} while (0); // required to match
@ -1414,8 +1414,8 @@ void appendGfx_item_entity(void* data) {
item->scale = 1.0f;
}
rot = clamp_angle(180.0f - gCameras[gCurrentCamID].currentYaw);
guTranslateF(mtxTranslate, item->position.x, item->position.y + yOffset, item->position.z);
rot = clamp_angle(180.0f - gCameras[gCurrentCamID].curYaw);
guTranslateF(mtxTranslate, item->pos.x, item->pos.y + yOffset, item->pos.z);
guRotateF(mtxRotY, rot, 0.0f, 1.0f, 0.0f);
if (item->flags & ITEM_ENTITY_RESIZABLE) {
guScaleF(mtxScale, item->scale, item->scale, item->scale);
@ -1554,7 +1554,7 @@ void draw_item_entities(void) {
rtPtr->appendGfxArg = item;
rtPtr->appendGfx = appendGfx_item_entity;
rtPtr->distance = 0;
rtPtr->dist = 0;
retTask = queue_render_task(rtPtr);
retTask->renderMode |= RENDER_TASK_FLAG_REFLECT_FLOOR;
@ -1624,8 +1624,8 @@ void render_item_entities(void) {
item->scale = 1.0f;
}
rotX = clamp_angle(180.0f - gCameras[gCurrentCamID].currentYaw);
guTranslateF(sp58, item->position.x, -item->position.y - offsetY, item->position.z);
rotX = clamp_angle(180.0f - gCameras[gCurrentCamID].curYaw);
guTranslateF(sp58, item->pos.x, -item->pos.y - offsetY, item->pos.z);
guRotateF(sp98, rotX, 0.0f, 1.0f, 0.0f);
if (item->flags & ITEM_ENTITY_RESIZABLE) {
guScaleF(spD8, item->scale, item->scale, item->scale);
@ -1879,28 +1879,28 @@ b32 test_item_player_collision(ItemEntity* item) {
cond = FALSE;
colliderHeightHalf = playerStatus->colliderHeight / 2;
playerX = playerStatus->position.x;
playerY = playerStatus->position.y;
playerZ = playerStatus->position.z;
playerX = playerStatus->pos.x;
playerY = playerStatus->pos.y;
playerZ = playerStatus->pos.z;
colliderDiameterQuart = playerStatus->colliderDiameter / 4;
spriteFacingAngle = playerStatus->spriteFacingAngle;
if (spriteFacingAngle < 180.0f) {
spriteFacingAngle = clamp_angle(camera->currentYaw - 90.0f);
spriteFacingAngle = clamp_angle(camera->curYaw - 90.0f);
} else {
spriteFacingAngle = clamp_angle(camera->currentYaw + 90.0f);
spriteFacingAngle = clamp_angle(camera->curYaw + 90.0f);
}
tmpX = playerX;
playerY2 = playerY;
tmpZ = playerZ;
if (get_clamped_angle_diff(camera->currentYaw, spriteFacingAngle) < 0.0f) {
angle = clamp_angle(camera->currentYaw - 90.0f);
if (get_clamped_angle_diff(camera->curYaw, spriteFacingAngle) < 0.0f) {
angle = clamp_angle(camera->curYaw - 90.0f);
if (playerStatus->trueAnimation & 0x01000000) {
angle = clamp_angle(angle + 30.0f);
}
} else {
angle = clamp_angle(camera->currentYaw + 90.0f);
angle = clamp_angle(camera->curYaw + 90.0f);
if (playerStatus->trueAnimation & 0x01000000) {
angle = clamp_angle(angle - 30.0f);
}
@ -1908,9 +1908,9 @@ b32 test_item_player_collision(ItemEntity* item) {
add_vec2D_polar(&tmpX, &tmpZ, 24.0f, angle);
itemX = item->position.x;
itemY = item->position.y;
itemZ = item->position.z;
itemX = item->pos.x;
itemY = item->pos.y;
itemZ = item->pos.z;
do {
do {
@ -1997,9 +1997,9 @@ s32 test_item_entity_position(f32 x, f32 y, f32 z, f32 dist) {
continue;
}
dx = item->position.x - x;
dz = item->position.y - y;
dy = item->position.z - z;
dx = item->pos.x - x;
dz = item->pos.y - y;
dy = item->pos.z - z;
if (sqrtf(SQ(dx) + SQ(dz) + SQ(dy)) < dist) {
return i;
}
@ -2041,9 +2041,9 @@ b32 is_picking_up_item(void) {
void set_item_entity_position(s32 itemEntityIndex, f32 x, f32 y, f32 z) {
ItemEntity* item = gCurrentItemEntities[itemEntityIndex];
item->position.x = x;
item->position.y = y;
item->position.z = z;
item->pos.x = x;
item->pos.y = y;
item->pos.z = z;
}
void set_current_item_entity_render_group(s32 group) {
@ -2087,71 +2087,71 @@ void update_item_entity_collectable(ItemEntity* item) {
ASSERT(physData != NULL);
if (item->flags & ITEM_ENTITY_FLAG_TOSS_HIGHER) {
physData->verticalVelocity = 16.0f;
physData->verticalVel = 16.0f;
physData->gravity = 2.0f;
} else if (!(item->flags & ITEM_ENTITY_FLAG_TOSS_LOWER)) {
physData->verticalVelocity = 12.0f;
physData->verticalVel = 12.0f;
physData->gravity = 2.0f;
} else {
physData->verticalVelocity = 14.0f;
physData->verticalVel = 14.0f;
physData->gravity = 2.0f;
}
physData->collisionRadius = 24.0f;
physData->constVelocity = 24.0f;
physData->constVel = 24.0f;
if (item->spawnAngle < 0) {
if (IS_ITEM(item->itemID)) {
if (rand_int(10000) < 5000) {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 105.0f + rand_int(30) - 15.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 105.0f + rand_int(30) - 15.0f);
} else {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw - 105.0f + rand_int(30) - 15.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw - 105.0f + rand_int(30) - 15.0f);
}
physData->verticalVelocity += 4.0f;
physData->verticalVel += 4.0f;
} else {
switch (item->itemID) {
case ITEM_HEART:
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 90.0f + rand_int(120) - 60.0f);
break;
case ITEM_FLOWER_POINT:
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw - 90.0f + rand_int(120) + 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw - 90.0f + rand_int(120) + 60.0f);
break;
case ITEM_COIN:
if (rand_int(10000) < 5000) {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 90.0f + rand_int(120) - 60.0f);
} else {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw - 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw - 90.0f + rand_int(120) - 60.0f);
}
break;
case ITEM_KOOPA_FORTRESS_KEY:
if (rand_int(10000) >= 5000) {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw - 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw - 90.0f + rand_int(120) - 60.0f);
} else {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 90.0f + rand_int(120) - 60.0f);
}
break;
case ITEM_STAR_POINT:
if (item->spawnType != ITEM_SPAWN_MODE_TOSS_FADE1) {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw - 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw - 90.0f + rand_int(120) - 60.0f);
break;
}
if (rand_int(10000) < 5000) {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 90.0f + rand_int(60) - 30.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 90.0f + rand_int(60) - 30.0f);
} else {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw - 90.0f + rand_int(60) - 30.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw - 90.0f + rand_int(60) - 30.0f);
}
break;
case ITEM_HEART_POINT:
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 90.0f + rand_int(120) - 60.0f);
break;
case ITEM_STAR_PIECE:
if (rand_int(10000) < 5000) {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 90.0f + rand_int(60) - 30.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 90.0f + rand_int(60) - 30.0f);
} else {
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw - 90.0f + rand_int(60) - 30.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw - 90.0f + rand_int(60) - 30.0f);
}
break;
case ITEM_HEART_PIECE:
physData->moveAngle = clamp_angle(gCameras[camID].currentYaw + 90.0f + rand_int(120) - 60.0f);
physData->moveAngle = clamp_angle(gCameras[camID].curYaw + 90.0f + rand_int(120) - 60.0f);
break;
default:
physData->moveAngle = 0.0f;
@ -2165,16 +2165,16 @@ void update_item_entity_collectable(ItemEntity* item) {
theta = DEG_TO_RAD(physData->moveAngle);
sinAngle = sin_rad(theta);
cosAngle = cos_rad(theta);
physData->velx = temp * sinAngle;
physData->velz = -temp * cosAngle;
physData->velX = temp * sinAngle;
physData->velZ = -temp * cosAngle;
} else {
temp = rand_int(2000);
temp = (temp / 1000.0f) + 2.0;
theta = DEG_TO_RAD(physData->moveAngle);
sinAngle = sin_rad(theta);
cosAngle = cos_rad(theta);
physData->velx = temp * sinAngle;
physData->velz = -temp * cosAngle;
physData->velX = temp * sinAngle;
physData->velZ = -temp * cosAngle;
}
} else {
physData->moveAngle = clamp_angle(item->spawnAngle);
@ -2186,8 +2186,8 @@ void update_item_entity_collectable(ItemEntity* item) {
theta = DEG_TO_RAD(physData->moveAngle);
sinAngle = sin_rad(theta);
cosAngle = cos_rad(theta);
physData->velx = temp * sinAngle;
physData->velz = -temp * cosAngle;
physData->velX = temp * sinAngle;
physData->velZ = -temp * cosAngle;
}
if (item->spawnType != ITEM_SPAWN_MODE_TOSS_FADE1) {
@ -2200,28 +2200,28 @@ void update_item_entity_collectable(ItemEntity* item) {
physData->timeLeft = 20;
}
physData->useSimplePhysics = FALSE;
physData->verticalVelocity = 15.0f;
physData->verticalVel = 15.0f;
physData->gravity = 1.6f;
}
if (item->spawnType == ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS) {
physData->timeLeft = 60;
physData->useSimplePhysics = FALSE;
physData->velx = 0.0f;
physData->velz = 0.0f;
physData->velX = 0.0f;
physData->velZ = 0.0f;
}
if (item->spawnType == ITEM_SPAWN_MODE_FALL_SPAWN_ALWAYS) {
physData->verticalVelocity = 0.0f;
physData->velx = 0.0f;
physData->velz = 0.0f;
physData->verticalVel = 0.0f;
physData->velX = 0.0f;
physData->velZ = 0.0f;
physData->useSimplePhysics = TRUE;
}
if (item->spawnType == ITEM_SPAWN_MODE_FIXED_SPAWN_ALWAYS) {
physData->verticalVelocity = 0.0f;
physData->velx = 0.0f;
physData->velz = 0.0f;
physData->verticalVel = 0.0f;
physData->velX = 0.0f;
physData->velZ = 0.0f;
physData->useSimplePhysics = TRUE;
}
@ -2259,19 +2259,19 @@ void update_item_entity_collectable(ItemEntity* item) {
// apply gravity
if (!(item->flags & ITEM_ENTITY_FLAG_NO_GRAVITY)) {
if (!(item->flags & ITEM_ENTITY_FLAG_CANT_COLLECT)) {
physData->verticalVelocity -= physData->gravity;
if (physData->verticalVelocity < -16.0) {
physData->verticalVelocity = -16.0f;
physData->verticalVel -= physData->gravity;
if (physData->verticalVel < -16.0) {
physData->verticalVel = -16.0f;
}
item->position.y += physData->verticalVelocity;
item->position.x += physData->velx;
item->position.z += physData->velz;
item->pos.y += physData->verticalVel;
item->pos.x += physData->velX;
item->pos.z += physData->velZ;
}
}
// handle auto-collection from multi-coin bricks
if (item->spawnType == ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS
&& physData->verticalVelocity <= 0.0f
&& physData->verticalVel <= 0.0f
) {
item->state = ITEM_PHYSICS_STATE_TOUCH;
break;
@ -2281,13 +2281,13 @@ void update_item_entity_collectable(ItemEntity* item) {
if (!(item->flags & (ITEM_ENTITY_FLAG_DONE_FALLING | ITEM_ENTITY_FLAG_NO_MOTION))
&& item->spawnType != ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS
&& item->spawnType != ITEM_SPAWN_MODE_TOSS_FADE1
&& physData->verticalVelocity > 0.0f
&& physData->verticalVel > 0.0f
) {
temp = physData->constVelocity;
outX = item->position.x;
outY = item->position.y;
outZ = item->position.z;
outDepth = temp + physData->verticalVelocity;
temp = physData->constVel;
outX = item->pos.x;
outY = item->pos.y;
outZ = item->pos.z;
outDepth = temp + physData->verticalVel;
if (!physData->useSimplePhysics) {
hit = npc_raycast_up(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, &outDepth);
@ -2296,8 +2296,8 @@ void update_item_entity_collectable(ItemEntity* item) {
}
if (hit && outDepth < temp) {
item->position.y = outY - temp;
physData->verticalVelocity = 0.0f;
item->pos.y = outY - temp;
physData->verticalVel = 0.0f;
}
}
@ -2305,53 +2305,53 @@ void update_item_entity_collectable(ItemEntity* item) {
if (!(item->flags & (ITEM_ENTITY_FLAG_DONE_FALLING | ITEM_ENTITY_FLAG_NO_MOTION))
&& item->spawnType != ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS
&& item->spawnType != ITEM_SPAWN_MODE_TOSS_FADE1
&& (physData->velx != 0.0f || physData->velz != 0.0f)
&& (physData->velX != 0.0f || physData->velZ != 0.0f)
) {
outX = item->position.x;
outY = item->position.y;
outZ = item->position.z;
outX = item->pos.x;
outY = item->pos.y;
outZ = item->pos.z;
if (!physData->useSimplePhysics) {
hit = npc_test_move_complex_with_slipping(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVelocity, physData->collisionRadius);
hit = npc_test_move_complex_with_slipping(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVel, physData->collisionRadius);
} else {
hit = npc_test_move_simple_with_slipping(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVelocity, physData->collisionRadius);
hit = npc_test_move_simple_with_slipping(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVel, physData->collisionRadius);
}
if (hit) {
// if a wall is hit, bounce back
item->position.x = outX;
item->position.y = outY;
item->position.z = outZ;
item->pos.x = outX;
item->pos.y = outY;
item->pos.z = outZ;
physData->moveAngle = clamp_angle(physData->moveAngle + 180.0f);
theta = DEG_TO_RAD(physData->moveAngle);
sinAngle = sin_rad(theta);
cosAngle = cos_rad(theta);
physData->velx = sinAngle * 2.0;
physData->velz = cosAngle * -2.0;
physData->velX = sinAngle * 2.0;
physData->velZ = cosAngle * -2.0;
}
}
// if the item has downward velocity, try moving it down
if (!(item->flags & ITEM_ENTITY_FLAG_NO_MOTION)
&& item->spawnType != ITEM_SPAWN_MODE_ITEM_BLOCK_SPAWN_ALWAYS
&& physData->verticalVelocity <= 0.0
&& physData->verticalVel <= 0.0
) {
physData->useSimplePhysics = TRUE;
if (item->spawnType != ITEM_SPAWN_MODE_TOSS_FADE1) {
outX = item->position.x;
outY = (item->position.y - physData->verticalVelocity) + 12.0f;
outZ = item->position.z;
outDepth = -physData->verticalVelocity + 12.0f;
outX = item->pos.x;
outY = (item->pos.y - physData->verticalVel) + 12.0f;
outZ = item->pos.z;
outDepth = -physData->verticalVel + 12.0f;
if (!physData->useSimplePhysics) {
hit = npc_raycast_down_sides(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, &outDepth);
} else {
hit = npc_raycast_down_around(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, &outDepth, 180.0f, 20.0f);
}
} else {
outX = item->position.x;
outY = (item->position.y - physData->verticalVelocity) + 12.0f;
outZ = item->position.z;
outDepth = -physData->verticalVelocity + 12.0f;
outX = item->pos.x;
outY = (item->pos.y - physData->verticalVel) + 12.0f;
outZ = item->pos.z;
outDepth = -physData->verticalVel + 12.0f;
if (outY < outDepth + 0.0f) {
outY = 0.0f;
hit = TRUE;
@ -2362,43 +2362,43 @@ void update_item_entity_collectable(ItemEntity* item) {
// handle bounce
if (hit) {
item->position.y = outY;
physData->verticalVelocity = -physData->verticalVelocity / 1.25;
if (physData->verticalVelocity < 3.0) {
physData->verticalVelocity = 0.0f;
physData->velx = 0.0f;
physData->velz = 0.0f;
item->pos.y = outY;
physData->verticalVel = -physData->verticalVel / 1.25;
if (physData->verticalVel < 3.0) {
physData->verticalVel = 0.0f;
physData->velX = 0.0f;
physData->velZ = 0.0f;
item->flags |= ITEM_ENTITY_FLAG_DONE_FALLING;
} else {
if (IS_BADGE(item->itemID)) {
sfx_play_sound_at_position(SOUND_21B, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_21B, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
} else if (IS_ITEM(item->itemID)) {
sfx_play_sound_at_position(SOUND_21A, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_21A, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
} else {
switch (item->itemID) {
case ITEM_HEART:
sfx_play_sound_at_position(SOUND_214, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_214, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_COIN:
sfx_play_sound_at_position(SOUND_212, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_212, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_KOOPA_FORTRESS_KEY:
sfx_play_sound_at_position(SOUND_212, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_212, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_HEART_PIECE:
sfx_play_sound_at_position(SOUND_214, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_214, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_STAR_POINT:
sfx_play_sound_at_position(SOUND_212, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_212, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_HEART_POINT:
sfx_play_sound_at_position(SOUND_214, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_214, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_STAR_PIECE:
sfx_play_sound_at_position(SOUND_219, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_219, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_FLOWER_POINT:
sfx_play_sound_at_position(SOUND_218, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_218, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
}
}
@ -2406,7 +2406,7 @@ void update_item_entity_collectable(ItemEntity* item) {
}
}
if (item->position.y < -2000.0f) {
if (item->pos.y < -2000.0f) {
item->state = ITEM_PHYSICS_STATE_DEAD;
}
break;
@ -2421,7 +2421,7 @@ void update_item_entity_collectable(ItemEntity* item) {
set_global_flag(item->boundVar);
}
fx_small_gold_sparkle(0, item->position.x, item->position.y + 16.0f, item->position.z, 1.0f, 0);
fx_small_gold_sparkle(0, item->pos.x, item->pos.y + 16.0f, item->pos.z, 1.0f, 0);
if (IS_ITEM(item->itemID)) {
item->state = ITEM_PHYSICS_STATE_PICKUP;
@ -2438,34 +2438,34 @@ void update_item_entity_collectable(ItemEntity* item) {
switch (item->itemID) {
case ITEM_HEART:
if (playerData->curHP < playerData->curMaxHP) {
fx_recover(0, playerStatus->position.x, playerStatus->position.y + playerStatus->colliderHeight, playerStatus->position.z, 1);
sfx_play_sound_at_position(SOUND_2056, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
fx_recover(0, playerStatus->pos.x, playerStatus->pos.y + playerStatus->colliderHeight, playerStatus->pos.z, 1);
sfx_play_sound_at_position(SOUND_2056, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
}
playerData->curHP++;
if (playerData->curHP > playerData->curMaxHP) {
playerData->curHP = playerData->curMaxHP;
}
sfx_play_sound_at_position(SOUND_213, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
fx_sparkles(4, playerStatus->position.x, playerStatus->position.y + playerStatus->colliderHeight, playerStatus->position.z, 30.0f);
sfx_play_sound_at_position(SOUND_213, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
fx_sparkles(4, playerStatus->pos.x, playerStatus->pos.y + playerStatus->colliderHeight, playerStatus->pos.z, 30.0f);
break;
case ITEM_FLOWER_POINT:
if (playerData->curFP < playerData->curMaxFP) {
fx_recover(1, playerStatus->position.x, playerStatus->position.y + playerStatus->colliderHeight, playerStatus->position.z, 1);
sfx_play_sound_at_position(SOUND_2056, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
fx_recover(1, playerStatus->pos.x, playerStatus->pos.y + playerStatus->colliderHeight, playerStatus->pos.z, 1);
sfx_play_sound_at_position(SOUND_2056, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
}
playerData->curFP++;
if (playerData->curFP > playerData->curMaxFP) {
playerData->curFP = playerData->curMaxFP;
}
sfx_play_sound_at_position(SOUND_217, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
fx_sparkles(4, playerStatus->position.x, playerStatus->position.y + playerStatus->colliderHeight, playerStatus->position.z, 30.0f);
sfx_play_sound_at_position(SOUND_217, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
fx_sparkles(4, playerStatus->pos.x, playerStatus->pos.y + playerStatus->colliderHeight, playerStatus->pos.z, 30.0f);
break;
case ITEM_COIN:
playerData->coins++;
if (playerData->coins > 999) {
playerData->coins = 999;
}
sfx_play_sound_at_position(SOUND_211, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_211, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
playerData->totalCoinsEarned++;
if (playerData->totalCoinsEarned > 99999) {
playerData->totalCoinsEarned = 99999;
@ -2473,19 +2473,19 @@ void update_item_entity_collectable(ItemEntity* item) {
break;
case ITEM_KOOPA_FORTRESS_KEY:
playerData->fortressKeyCount = playerData->fortressKeyCount + 1;
sfx_play_sound_at_position(SOUND_211, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_211, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_STAR_POINT:
playerData->starPoints++;
if (playerData->starPoints > 100) {
playerData->starPoints = 100;
}
sfx_play_sound_at_position(SOUND_211, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_211, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
case ITEM_HEART_POINT:
playerData->curHP = playerData->curMaxHP;
playerData->curFP = playerData->curMaxFP;
sfx_play_sound_at_position(SOUND_213, SOUND_SPACE_MODE_0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_213, SOUND_SPACE_MODE_0, item->pos.x, item->pos.y, item->pos.z);
break;
}
D_801565A8 = FALSE;
@ -2606,7 +2606,7 @@ void update_item_entity_pickup(ItemEntity* item) {
} else if (gItemTable[item->itemID].typeFlags & ITEM_TYPE_FLAG_KEY) {
sfx_play_sound(SOUND_D2);
} else if (item->itemID == ITEM_COIN) {
sfx_play_sound_at_position(SOUND_211, 0, item->position.x, item->position.y, item->position.z);
sfx_play_sound_at_position(SOUND_211, 0, item->pos.x, item->pos.y, item->pos.z);
} else {
sfx_play_sound(SOUND_D1);
}
@ -2706,18 +2706,18 @@ block_47: // TODO required to match
|| (item->flags & ITEM_ENTITY_FLAG_4000000)
|| (item->pickupMsgFlags & ITEM_PICKUP_FLAG_NO_ANIMS)
) {
item->position.x = playerStatus->position.x;
item->position.y = playerStatus->position.y + playerStatus->colliderHeight;
item->position.z = playerStatus->position.z;
item->pos.x = playerStatus->pos.x;
item->pos.y = playerStatus->pos.y + playerStatus->colliderHeight;
item->pos.z = playerStatus->pos.z;
suggest_player_anim_always_forward(ANIM_MarioW1_Lift);
}
if (gItemTable[item->itemID].typeFlags & ITEM_TYPE_FLAG_GEAR) {
fx_got_item_outline(
1,
item->position.x,
item->position.y + 8.0f,
item->position.z,
item->pos.x,
item->pos.y + 8.0f,
item->pos.z,
1.0f,
&ItemPickupGotOutline
);
@ -2896,9 +2896,9 @@ block_47: // TODO required to match
get_item_entity(
make_item_entity_delayed(
D_801568EC,
playerStatus->position.x,
playerStatus->position.y + playerStatus->colliderHeight,
playerStatus->position.z, 3, 0, 0
playerStatus->pos.x,
playerStatus->pos.y + playerStatus->colliderHeight,
playerStatus->pos.z, 3, 0, 0
)
)->renderGroup = -1;

View File

@ -9,7 +9,7 @@ s32 count_targets(Actor* actor, s32 targetHomeIndex, s32 targetSelectionFlags) {
BattleStatus* battleStatus = &gBattleStatus;
battleStatus->targetHomeIndex = targetHomeIndex;
battleStatus->currentTargetListFlags = targetSelectionFlags;
battleStatus->curTargetListFlags = targetSelectionFlags;
player_create_target_list(actor);
return actor->targetListLength;
}
@ -49,9 +49,9 @@ void set_goal_pos_to_part(ActorState* state, s32 actorID, s32 partID) {
switch (actorClass) {
case ACTOR_CLASS_PLAYER:
part = get_actor_part(actor, 0);
state->goalPos.x = actor->currentPos.x + part->partOffset.x * actor->scalingFactor;
state->goalPos.y = actor->currentPos.y + part->partOffset.y * actor->scalingFactor;
state->goalPos.z = actor->currentPos.z + 10.0f;
state->goalPos.x = actor->curPos.x + part->partOffset.x * actor->scalingFactor;
state->goalPos.y = actor->curPos.y + part->partOffset.y * actor->scalingFactor;
state->goalPos.z = actor->curPos.z + 10.0f;
if (actor->stoneStatus == STATUS_KEY_STONE) {
state->goalPos.y -= actor->scalingFactor * 5.0f;
}
@ -60,21 +60,21 @@ void set_goal_pos_to_part(ActorState* state, s32 actorID, s32 partID) {
case ACTOR_CLASS_ENEMY:
part = get_actor_part(actor, partID);
if (!(part->flags & ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION)) {
state->goalPos.x = actor->currentPos.x + (part->partOffset.x + part->targetOffset.x) * actor->scalingFactor;
state->goalPos.x = actor->curPos.x + (part->partOffset.x + part->targetOffset.x) * actor->scalingFactor;
if (!(actor->flags & ACTOR_PART_FLAG_800)) {
state->goalPos.y = actor->currentPos.y + (part->partOffset.y + part->targetOffset.y) * actor->scalingFactor;
state->goalPos.y = actor->curPos.y + (part->partOffset.y + part->targetOffset.y) * actor->scalingFactor;
} else {
state->goalPos.y = actor->currentPos.y + (-part->partOffset.y - part->targetOffset.y) * actor->scalingFactor;
state->goalPos.y = actor->curPos.y + (-part->partOffset.y - part->targetOffset.y) * actor->scalingFactor;
}
state->goalPos.z = actor->currentPos.z + part->partOffset.z + 10.0f;
state->goalPos.z = actor->curPos.z + part->partOffset.z + 10.0f;
} else {
state->goalPos.x = part->absolutePosition.x + part->targetOffset.x;
state->goalPos.x = part->absolutePos.x + part->targetOffset.x;
if (!(actor->flags & ACTOR_PART_FLAG_800)) {
state->goalPos.y = part->absolutePosition.y + part->targetOffset.y * actor->scalingFactor;
state->goalPos.y = part->absolutePos.y + part->targetOffset.y * actor->scalingFactor;
} else {
state->goalPos.y = part->absolutePosition.y - part->targetOffset.y * actor->scalingFactor;
state->goalPos.y = part->absolutePos.y - part->targetOffset.y * actor->scalingFactor;
}
state->goalPos.z = part->absolutePosition.z + 10.0f;
state->goalPos.z = part->absolutePos.z + 10.0f;
}
break;
}
@ -88,29 +88,29 @@ void set_part_goal_to_actor_part(ActorPartMovement* movement, s32 actorID, s32 p
switch (actorClass) {
case ACTOR_CLASS_PLAYER:
part = get_actor_part(actor, 0);
part->movement->goalPos.x = actor->currentPos.x + part->partOffset.x * actor->scalingFactor;
part->movement->goalPos.y = actor->currentPos.y + part->partOffset.y * actor->scalingFactor;
part->movement->goalPos.z = actor->currentPos.z;
part->movement->goalPos.x = actor->curPos.x + part->partOffset.x * actor->scalingFactor;
part->movement->goalPos.y = actor->curPos.y + part->partOffset.y * actor->scalingFactor;
part->movement->goalPos.z = actor->curPos.z;
break;
case ACTOR_CLASS_PARTNER:
case ACTOR_CLASS_ENEMY:
part = get_actor_part(actor, partID);
if (!(part->flags & ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION)) {
part->movement->goalPos.x = actor->currentPos.x + (part->partOffset.x + part->targetOffset.x) * actor->scalingFactor;
part->movement->goalPos.x = actor->curPos.x + (part->partOffset.x + part->targetOffset.x) * actor->scalingFactor;
if (!(actor->flags & ACTOR_PART_FLAG_800)) {
part->movement->goalPos.y = actor->currentPos.y + (part->partOffset.y + part->targetOffset.y) * actor->scalingFactor;
part->movement->goalPos.y = actor->curPos.y + (part->partOffset.y + part->targetOffset.y) * actor->scalingFactor;
} else {
part->movement->goalPos.y = actor->currentPos.y + (-part->partOffset.y - part->targetOffset.y) * actor->scalingFactor;
part->movement->goalPos.y = actor->curPos.y + (-part->partOffset.y - part->targetOffset.y) * actor->scalingFactor;
}
part->movement->goalPos.z = actor->currentPos.z + part->partOffset.z;
part->movement->goalPos.z = actor->curPos.z + part->partOffset.z;
} else {
part->movement->goalPos.x = part->absolutePosition.x + part->targetOffset.x;
part->movement->goalPos.x = part->absolutePos.x + part->targetOffset.x;
if (!(actor->flags & ACTOR_PART_FLAG_800)) {
part->movement->goalPos.y = part->absolutePosition.y + part->targetOffset.y * actor->scalingFactor;
part->movement->goalPos.y = part->absolutePos.y + part->targetOffset.y * actor->scalingFactor;
} else {
part->movement->goalPos.y = part->absolutePosition.y - part->targetOffset.y * actor->scalingFactor;
part->movement->goalPos.y = part->absolutePos.y - part->targetOffset.y * actor->scalingFactor;
}
part->movement->goalPos.z = part->absolutePosition.z;
part->movement->goalPos.z = part->absolutePos.z;
}
break;
}
@ -119,9 +119,9 @@ void set_part_goal_to_actor_part(ActorPartMovement* movement, s32 actorID, s32 p
void set_actor_current_position(s32 actorID, f32 x, f32 y, f32 z) {
Actor* actor = get_actor(actorID);
actor->currentPos.x = x;
actor->currentPos.y = y;
actor->currentPos.z = z;
actor->curPos.x = x;
actor->curPos.y = y;
actor->curPos.z = z;
}
void set_part_absolute_position(s32 actorID, s32 partID, f32 x, f32 y, f32 z) {
@ -130,16 +130,16 @@ void set_part_absolute_position(s32 actorID, s32 partID, f32 x, f32 y, f32 z) {
switch (actorID & ACTOR_CLASS_MASK) {
case ACTOR_CLASS_PLAYER:
actor->currentPos.x = x;
actor->currentPos.y = y;
actor->currentPos.z = z;
actor->curPos.x = x;
actor->curPos.y = y;
actor->curPos.z = z;
break;
case ACTOR_CLASS_PARTNER:
case ACTOR_CLASS_ENEMY:
actorPart = get_actor_part(actor, partID);
actorPart->absolutePosition.x = x;
actorPart->absolutePosition.y = y;
actorPart->absolutePosition.z = z;
actorPart->absolutePos.x = x;
actorPart->absolutePos.y = y;
actorPart->absolutePos.z = z;
break;
}
}
@ -186,19 +186,19 @@ ApiStatus GetBattlePhase(Evt* script, s32 isInitialCall) {
}
ApiStatus GetLastElement(Evt* script, s32 isInitialCall) {
evt_set_variable(script, *script->ptrReadPos, gBattleStatus.currentAttackElement);
evt_set_variable(script, *script->ptrReadPos, gBattleStatus.curAttackElement);
return ApiStatus_DONE2;
}
ApiStatus GetDamageSource(Evt* script, s32 isInitialCall) {
evt_set_variable(script, *script->ptrReadPos, gBattleStatus.currentDamageSource);
evt_set_variable(script, *script->ptrReadPos, gBattleStatus.curDamageSource);
return ApiStatus_DONE2;
}
ApiStatus SetDamageSource(Evt* script, s32 isInitialCall) {
s32 damageSource = *script->ptrReadPos;
gBattleStatus.currentDamageSource = damageSource;
gBattleStatus.curDamageSource = damageSource;
return ApiStatus_DONE2;
}
@ -263,7 +263,7 @@ ApiStatus GetIndexFromPos(Evt* script, s32 isInitialCall) {
}
actor = get_actor(actorID);
evt_set_variable(script, a1, get_nearest_home_index(actor->currentPos.x, actor->currentPos.y, actor->currentPos.z));
evt_set_variable(script, a1, get_nearest_home_index(actor->curPos.x, actor->curPos.y, actor->curPos.z));
return ApiStatus_DONE2;
}
@ -296,8 +296,8 @@ ApiStatus CountPlayerTargets(Evt* script, s32 isInitialCall) {
}
actor = get_actor(actorID);
evt_set_variable(script, outVar, count_targets(actor, get_nearest_home_index(actor->currentPos.x, actor->currentPos.y,
actor->currentPos.z), targetSelectionFlags));
evt_set_variable(script, outVar, count_targets(actor, get_nearest_home_index(actor->curPos.x, actor->curPos.y,
actor->curPos.z), targetSelectionFlags));
return ApiStatus_DONE2;
}
@ -318,11 +318,11 @@ ApiStatus ForceHomePos(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID);
actor->homePos.x = x;
actor->currentPos.x = x;
actor->curPos.x = x;
actor->homePos.y = y;
actor->currentPos.y = y;
actor->curPos.y = y;
actor->homePos.z = z;
actor->currentPos.z = z;
actor->curPos.z = z;
return ApiStatus_DONE2;
}
@ -603,9 +603,9 @@ ApiStatus GetActorPos(Evt* script, s32 isInitialCall) {
outY = *args++;
outZ = *args++;
x = actor->currentPos.x;
y = actor->currentPos.y;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y;
z = actor->curPos.z;
evt_set_variable(script, outX, x);
evt_set_variable(script, outY, y);
@ -638,9 +638,9 @@ ApiStatus GetPartOffset(Evt* script, s32 isInitialCall) {
y = actorPart->partOffset.y;
z = actorPart->partOffset.z;
} else {
x = actorPart->absolutePosition.x;
y = actorPart->absolutePosition.y;
z = actorPart->absolutePosition.z;
x = actorPart->absolutePos.x;
y = actorPart->absolutePos.y;
z = actorPart->absolutePos.z;
}
evt_set_variable(script, outX, x);
@ -669,9 +669,9 @@ ApiStatus GetPartPos(Evt* script, s32 isInitialCall) {
outY = *args++;
outZ = *args++;
x = actorPart->currentPos.x;
y = actorPart->currentPos.y;
z = actorPart->currentPos.z;
x = actorPart->curPos.x;
y = actorPart->curPos.y;
z = actorPart->curPos.z;
evt_set_variable(script, outX, x);
evt_set_variable(script, outY, y);
@ -723,9 +723,9 @@ ApiStatus SetActorPos(Evt* script, s32 isInitialCall) {
z = evt_get_variable(script, *args++);
actor = get_actor(actorID);
actor->currentPos.x = x;
actor->currentPos.y = y;
actor->currentPos.z = z;
actor->curPos.x = x;
actor->curPos.y = y;
actor->curPos.z = z;
return ApiStatus_DONE2;
}
@ -751,9 +751,9 @@ ApiStatus SetPartPos(Evt* script, s32 isInitialCall) {
switch (actorID & ACTOR_CLASS_MASK) {
case ACTOR_CLASS_PLAYER:
actor->currentPos.x = x;
actor->currentPos.y = y;
actor->currentPos.z = z;
actor->curPos.x = x;
actor->curPos.y = y;
actor->curPos.z = z;
break;
case ACTOR_CLASS_PARTNER:
case ACTOR_CLASS_ENEMY:
@ -764,9 +764,9 @@ ApiStatus SetPartPos(Evt* script, s32 isInitialCall) {
actorPart->partOffset.y = y;
actorPart->partOffset.z = z;
} else {
actorPart->absolutePosition.x = x;
actorPart->absolutePosition.y = y;
actorPart->absolutePosition.z = z;
actorPart->absolutePos.x = x;
actorPart->absolutePos.y = y;
actorPart->absolutePos.z = z;
}
break;
}
@ -841,7 +841,7 @@ ApiStatus GetAnimation(Evt* script, s32 isInitialCall) {
actorPart = get_actor_part(get_actor(actorID), partID);
if (actorPart != NULL) {
evt_set_variable(script, outVar, actorPart->currentAnimation);
evt_set_variable(script, outVar, actorPart->curAnimation);
}
return ApiStatus_DONE2;
}
@ -1059,9 +1059,9 @@ ApiStatus AddActorPos(Evt* script, s32 isInitialCall) {
z = evt_get_float_variable(script, *args++);
actor = get_actor(actorID);
actor->currentPos.x += x;
actor->currentPos.y += y;
actor->currentPos.z += z;
actor->curPos.x += x;
actor->curPos.y += y;
actor->curPos.z += z;
return ApiStatus_DONE2;
}
@ -1334,15 +1334,15 @@ ApiStatus SetActorRotation(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID);
if (x != EVT_IGNORE_ARG) {
actor->rotation.x = x;
actor->rot.x = x;
}
if (y != EVT_IGNORE_ARG) {
actor->rotation.y = y;
actor->rot.y = y;
}
if (z != EVT_IGNORE_ARG) {
actor->rotation.z = z;
actor->rot.z = z;
}
return ApiStatus_DONE2;
@ -1364,9 +1364,9 @@ ApiStatus SetActorRotationOffset(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID);
actor->rotationPivotOffset.x = x;
actor->rotationPivotOffset.y = y;
actor->rotationPivotOffset.z = z;
actor->rotPivotOffset.x = x;
actor->rotPivotOffset.y = y;
actor->rotPivotOffset.z = z;
return ApiStatus_DONE2;
}
@ -1387,9 +1387,9 @@ ApiStatus GetActorRotation(Evt* script, s32 isInitialCall) {
actor = get_actor(actorID);
evt_set_variable(script, x, actor->rotation.x);
evt_set_variable(script, y, actor->rotation.y);
evt_set_variable(script, z, actor->rotation.z);
evt_set_variable(script, x, actor->rot.x);
evt_set_variable(script, y, actor->rot.y);
evt_set_variable(script, z, actor->rot.z);
return ApiStatus_DONE2;
}
@ -1411,9 +1411,9 @@ ApiStatus SetPartRotation(Evt* script, s32 isInitialCall) {
actorPart = get_actor_part(get_actor(actorID), partID);
actorPart->rotation.x = x;
actorPart->rotation.y = y;
actorPart->rotation.z = z;
actorPart->rot.x = x;
actorPart->rot.y = y;
actorPart->rot.z = z;
return ApiStatus_DONE2;
}
@ -1435,9 +1435,9 @@ ApiStatus SetPartRotationOffset(Evt* script, s32 isInitialCall) {
actorPart = get_actor_part(get_actor(actorID), partID);
actorPart->rotationPivotOffset.x = x;
actorPart->rotationPivotOffset.y = y;
actorPart->rotationPivotOffset.z = z;
actorPart->rotPivotOffset.x = x;
actorPart->rotPivotOffset.y = y;
actorPart->rotPivotOffset.z = z;
return ApiStatus_DONE2;
}
@ -1459,9 +1459,9 @@ ApiStatus GetPartRotation(Evt* script, s32 isInitialCall) {
actorPart = get_actor_part(get_actor(actorID), partID);
evt_set_float_variable(script, x, actorPart->rotation.x);
evt_set_float_variable(script, y, actorPart->rotation.y);
evt_set_float_variable(script, z, actorPart->rotation.z);
evt_set_float_variable(script, x, actorPart->rot.x);
evt_set_float_variable(script, y, actorPart->rot.y);
evt_set_float_variable(script, z, actorPart->rot.z);
return ApiStatus_DONE2;
}
@ -1941,7 +1941,7 @@ ApiStatus HPBarToHome(Evt* script, s32 isInitialCall) {
actor->healthBarPos.y = actor->homePos.y - actor->size.y - actor->actorBlueprint->healthBarOffset.y;
}
actor->healthFraction = (actor->currentHP * 25) / actor->maxHP;
actor->healthFraction = (actor->curHP * 25) / actor->maxHP;
return ApiStatus_DONE2;
}
@ -1956,15 +1956,15 @@ ApiStatus HPBarToCurrent(Evt* script, s32 isInitialCall) {
}
actor = get_actor(actorID);
actor->healthBarPos.x = actor->currentPos.x + actor->actorBlueprint->healthBarOffset.x;
actor->healthBarPos.y = actor->currentPos.y + actor->actorBlueprint->healthBarOffset.y;
actor->healthBarPos.z = actor->currentPos.z;
actor->healthBarPos.x = actor->curPos.x + actor->actorBlueprint->healthBarOffset.x;
actor->healthBarPos.y = actor->curPos.y + actor->actorBlueprint->healthBarOffset.y;
actor->healthBarPos.z = actor->curPos.z;
if (actor->flags & ACTOR_FLAG_UPSIDE_DOWN) {
actor->healthBarPos.y = actor->currentPos.y - actor->size.y - actor->actorBlueprint->healthBarOffset.y;
actor->healthBarPos.y = actor->curPos.y - actor->size.y - actor->actorBlueprint->healthBarOffset.y;
}
actor->healthFraction = (actor->currentHP * 25) / actor->maxHP;
actor->healthFraction = (actor->curHP * 25) / actor->maxHP;
return ApiStatus_DONE2;
}
@ -2205,9 +2205,9 @@ ApiStatus SetBattleInputButtons(Evt* script, s32 isInitialCall) {
s32 currentButtonsPressed = *args++;
s32 currentButtonsHeld = *args;
battleStatus->currentButtonsDown = currentButtonsDown;
battleStatus->currentButtonsPressed = currentButtonsPressed;
battleStatus->currentButtonsHeld = currentButtonsHeld;
battleStatus->curButtonsDown = currentButtonsDown;
battleStatus->curButtonsPressed = currentButtonsPressed;
battleStatus->curButtonsHeld = currentButtonsHeld;
return ApiStatus_DONE2;
}
@ -2216,7 +2216,7 @@ ApiStatus CheckButtonPress(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Bytecode buttons = *args++;
Bytecode out = *args;
s32 buttonsPressed = gBattleStatus.currentButtonsPressed;
s32 buttonsPressed = gBattleStatus.curButtonsPressed;
evt_set_variable(script, out, (buttonsPressed & buttons) != 0);
return ApiStatus_DONE2;
@ -2226,7 +2226,7 @@ ApiStatus CheckButtonHeld(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Bytecode buttons = *args++;
Bytecode out = *args;
s32 buttonsHeld = gBattleStatus.currentButtonsHeld;
s32 buttonsHeld = gBattleStatus.curButtonsHeld;
evt_set_variable(script, out, (buttonsHeld & buttons) != 0);
return ApiStatus_DONE2;
@ -2236,7 +2236,7 @@ ApiStatus CheckButtonDown(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Bytecode buttons = *args++;
Bytecode out = *args;
s32 buttonsDown = gBattleStatus.currentButtonsDown;
s32 buttonsDown = gBattleStatus.curButtonsDown;
evt_set_variable(script, out, (buttonsDown & buttons) != 0);
return ApiStatus_DONE2;
@ -2308,7 +2308,7 @@ ApiStatus PlayerCreateTargetList(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Actor* actor = get_actor(script->owner1.actorID);
gBattleStatus.currentTargetListFlags = *args;
gBattleStatus.curTargetListFlags = *args;
player_create_target_list(actor);
return ApiStatus_DONE2;
@ -2318,7 +2318,7 @@ ApiStatus EnemyCreateTargetList(Evt* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
Actor* actor = get_actor(script->owner1.actorID);
gBattleStatus.currentTargetListFlags = *args;
gBattleStatus.curTargetListFlags = *args;
enemy_create_target_list(actor);
return ApiStatus_DONE2;
@ -2423,9 +2423,9 @@ s32 func_8026E558(Evt* script, s32 isInitialCall) {
}
actor = get_actor(i);
x = actor->currentPos.x;
y = actor->currentPos.y;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y;
z = actor->curPos.z;
outVal = -1;
@ -2518,8 +2518,8 @@ ApiStatus func_8026E914(Evt* script, s32 isInitialCall) {
s32 temp_v0 = *args++;
s32 temp_s1 = *args++;
evt_set_variable(script, temp_v0, gBattleStatus.currentTargetID2);
evt_set_variable(script, temp_s1, gBattleStatus.currentTargetPart2);
evt_set_variable(script, temp_v0, gBattleStatus.curTargetID2);
evt_set_variable(script, temp_s1, gBattleStatus.curTargetPart2);
return ApiStatus_DONE2;
}
@ -2537,8 +2537,8 @@ ApiStatus func_8026E9A0(Evt* script, s32 isInitialCall) {
actorID = evt_get_variable(script, *args++);
partID = evt_get_variable(script, *args++);
gBattleStatus.currentTargetPart2 = partID;
gBattleStatus.currentTargetID2 = actorID;
gBattleStatus.curTargetPart2 = partID;
gBattleStatus.curTargetID2 = actorID;
return ApiStatus_DONE2;
}
@ -2555,7 +2555,7 @@ ApiStatus GetDistanceToGoal(Evt* script, s32 isInitialCall) {
}
actor = get_actor(actorID);
dist = dist2D(actor->currentPos.x, actor->currentPos.z, actor->state.goalPos.x, actor->state.goalPos.z);
dist = dist2D(actor->curPos.x, actor->curPos.z, actor->state.goalPos.x, actor->state.goalPos.z);
evt_set_variable(script, outVar, dist);
return ApiStatus_DONE2;
}
@ -3213,26 +3213,26 @@ ApiStatus BoostAttack(Evt* script, s32 isInitialCall) {
attackBoost = script->functionTemp[2];
flags = actor->flags;
x1 = actor->currentPos.x + actor->headOffset.x;
x1 = actor->curPos.x + actor->headOffset.x;
if (flags & ACTOR_FLAG_UPSIDE_DOWN) {
y1 = actor->currentPos.y + actor->headOffset.y - actor->size.y / 2;
y1 = actor->curPos.y + actor->headOffset.y - actor->size.y / 2;
} else if (!(flags & ACTOR_FLAG_8000)) {
y1 = actor->currentPos.y + actor->headOffset.y + actor->size.y / 2;
y1 = actor->curPos.y + actor->headOffset.y + actor->size.y / 2;
} else {
y1 = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y1 = actor->curPos.y + actor->headOffset.y + actor->size.y;
}
z1 = actor->currentPos.z + actor->headOffset.z + 10.0f;
z1 = actor->curPos.z + actor->headOffset.z + 10.0f;
flags2 = actor->flags;
x2 = actor->currentPos.x + actor->headOffset.x + actor->size.x / 2;
x2 = actor->curPos.x + actor->headOffset.x + actor->size.x / 2;
if (flags2 & ACTOR_FLAG_UPSIDE_DOWN) {
y2 = actor->currentPos.y + actor->headOffset.y - actor->size.y;
y2 = actor->curPos.y + actor->headOffset.y - actor->size.y;
} else if (!(flags2 & ACTOR_FLAG_8000)) {
y2 = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y2 = actor->curPos.y + actor->headOffset.y + actor->size.y;
} else {
y2 = actor->currentPos.y + actor->headOffset.y + actor->size.y * 2;
y2 = actor->curPos.y + actor->headOffset.y + actor->size.y * 2;
}
z2 = actor->currentPos.z + actor->headOffset.z + 10.0f;
z2 = actor->curPos.z + actor->headOffset.z + 10.0f;
switch (script->functionTemp[0]) {
case 1:
@ -3337,26 +3337,26 @@ ApiStatus BoostDefense(Evt* script, s32 isInitialCall) {
defenseBoost = script->functionTemp[2];
flags = actor->flags;
x1 = actor->currentPos.x + actor->headOffset.x;
x1 = actor->curPos.x + actor->headOffset.x;
if (flags & ACTOR_FLAG_UPSIDE_DOWN) {
y1 = actor->currentPos.y + actor->headOffset.y - actor->size.y / 2;
y1 = actor->curPos.y + actor->headOffset.y - actor->size.y / 2;
} else if (!(flags & ACTOR_FLAG_8000)) {
y1 = actor->currentPos.y + actor->headOffset.y + actor->size.y / 2;
y1 = actor->curPos.y + actor->headOffset.y + actor->size.y / 2;
} else {
y1 = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y1 = actor->curPos.y + actor->headOffset.y + actor->size.y;
}
z1 = actor->currentPos.z + actor->headOffset.z + 10.0f;
z1 = actor->curPos.z + actor->headOffset.z + 10.0f;
flags2 = actor->flags;
x2 = actor->currentPos.x + actor->headOffset.x + actor->size.x / 2;
x2 = actor->curPos.x + actor->headOffset.x + actor->size.x / 2;
if (flags2 & ACTOR_FLAG_UPSIDE_DOWN) {
y2 = actor->currentPos.y + actor->headOffset.y - actor->size.y;
y2 = actor->curPos.y + actor->headOffset.y - actor->size.y;
} else if (!(flags2 & ACTOR_FLAG_8000)) {
y2 = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y2 = actor->curPos.y + actor->headOffset.y + actor->size.y;
} else {
y2 = actor->currentPos.y + actor->headOffset.y + actor->size.y * 2;
y2 = actor->curPos.y + actor->headOffset.y + actor->size.y * 2;
}
z2 = actor->currentPos.z + actor->headOffset.z + 10.0f;
z2 = actor->curPos.z + actor->headOffset.z + 10.0f;
switch (script->functionTemp[0]) {
case 1:
@ -3459,15 +3459,15 @@ ApiStatus VanishActor(Evt* script, s32 isInitialCall) {
vanished = script->functionTemp[2];
flags = actor->flags;
x = actor->currentPos.x + actor->headOffset.x;
x = actor->curPos.x + actor->headOffset.x;
if (flags & ACTOR_FLAG_UPSIDE_DOWN) {
y = actor->currentPos.y + actor->headOffset.y - actor->size.y / 2;
y = actor->curPos.y + actor->headOffset.y - actor->size.y / 2;
} else if (!(flags & ACTOR_FLAG_8000)) {
y = actor->currentPos.y + actor->headOffset.y + actor->size.y / 2;
y = actor->curPos.y + actor->headOffset.y + actor->size.y / 2;
} else {
y = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y = actor->curPos.y + actor->headOffset.y + actor->size.y;
}
z = actor->currentPos.z + actor->headOffset.z + 10.0f;
z = actor->curPos.z + actor->headOffset.z + 10.0f;
switch (script->functionTemp[0]) {
case 1:
@ -3565,15 +3565,15 @@ ApiStatus ElectrifyActor(Evt* script, s32 isInitialCall) {
electrified = script->functionTemp[2];
flags = actor->flags;
x = actor->currentPos.x + actor->headOffset.x;
x = actor->curPos.x + actor->headOffset.x;
if (flags & ACTOR_FLAG_UPSIDE_DOWN) {
y = actor->currentPos.y + actor->headOffset.y - actor->size.y / 2;
y = actor->curPos.y + actor->headOffset.y - actor->size.y / 2;
} else if (!(flags & ACTOR_FLAG_8000)) {
y = actor->currentPos.y + actor->headOffset.y + actor->size.y / 2;
y = actor->curPos.y + actor->headOffset.y + actor->size.y / 2;
} else {
y = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y = actor->curPos.y + actor->headOffset.y + actor->size.y;
}
z = actor->currentPos.z + actor->headOffset.z + 10.0f;
z = actor->curPos.z + actor->headOffset.z + 10.0f;
switch (script->functionTemp[0]) {
case 1:
@ -3671,26 +3671,26 @@ ApiStatus HealActor(Evt* script, s32 isInitialCall) {
hpBoost = script->functionTemp[2];
flags = actor->flags;
x1 = actor->currentPos.x + actor->headOffset.x;
x1 = actor->curPos.x + actor->headOffset.x;
if (flags & ACTOR_FLAG_UPSIDE_DOWN) {
y1 = actor->currentPos.y + actor->headOffset.y - actor->size.y / 2;
y1 = actor->curPos.y + actor->headOffset.y - actor->size.y / 2;
} else if (!(flags & ACTOR_FLAG_8000)) {
y1 = actor->currentPos.y + actor->headOffset.y + actor->size.y / 2;
y1 = actor->curPos.y + actor->headOffset.y + actor->size.y / 2;
} else {
y1 = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y1 = actor->curPos.y + actor->headOffset.y + actor->size.y;
}
z1 = actor->currentPos.z + actor->headOffset.z + 10.0f;
z1 = actor->curPos.z + actor->headOffset.z + 10.0f;
flags2 = actor->flags;
x2 = actor->currentPos.x + actor->headOffset.x + actor->size.x / 2;
x2 = actor->curPos.x + actor->headOffset.x + actor->size.x / 2;
if (flags2 & ACTOR_FLAG_UPSIDE_DOWN) {
y2 = actor->currentPos.y + actor->headOffset.y - actor->size.y;
y2 = actor->curPos.y + actor->headOffset.y - actor->size.y;
} else if (!(flags2 & ACTOR_FLAG_8000)) {
y2 = actor->currentPos.y + actor->headOffset.y + actor->size.y;
y2 = actor->curPos.y + actor->headOffset.y + actor->size.y;
} else {
y2 = actor->currentPos.y + actor->headOffset.y + actor->size.y * 2;
y2 = actor->curPos.y + actor->headOffset.y + actor->size.y * 2;
}
z2 = actor->currentPos.z + actor->headOffset.z + 10.0f;
z2 = actor->curPos.z + actor->headOffset.z + 10.0f;
switch (script->functionTemp[0]) {
case 1:
@ -3709,9 +3709,9 @@ ApiStatus HealActor(Evt* script, s32 isInitialCall) {
if (script->functionTemp[3] == 0) {
btl_cam_use_preset(BTL_CAM_DEFAULT);
btl_cam_move(15);
actor->currentHP += hpBoost;
if (actor->maxHP < actor->currentHP) {
actor->currentHP = actor->maxHP;
actor->curHP += hpBoost;
if (actor->maxHP < actor->curHP) {
actor->curHP = actor->maxHP;
}
show_recovery_shimmer(x1, y1, z1, hpBoost);
script->functionTemp[3] = 15;

View File

@ -33,25 +33,25 @@ void update_camera_mode_6(Camera* camera) {
camera->lookAt_obj.x = camera->lookAt_obj_target.x + camera->targetPos.x;
camera->lookAt_obj.y = camera->lookAt_obj_target.y + camera->targetPos.y + camera->auxBoomZOffset / 256.0;
camera->lookAt_obj.z = camera->lookAt_obj_target.z + camera->targetPos.z;
camera->trueRotation.x = camera->auxBoomYaw;
camera->currentBoomYaw = camera->auxBoomPitch;
camera->currentBoomLength = camera->auxBoomLength;
camera->trueRot.x = camera->auxBoomYaw;
camera->curBoomYaw = camera->auxBoomPitch;
camera->curBoomLength = camera->auxBoomLength;
camera->vfov = (10000 / camera->lookAt_dist) / 4;
boomYaw = DEG_TO_RAD(camera->currentBoomYaw);
boomYaw = DEG_TO_RAD(camera->curBoomYaw);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaX = 0.0f;
deltaY = 0.0f;
deltaZ = camera->currentBoomLength;
deltaZ = camera->curBoomLength;
deltaX2 = 0.0f;
deltaY2 = 0.0f;
boomYaw = deltaX = -deltaY2;
deltaZ2 = camera->currentBoomLength;
deltaZ2 = camera->curBoomLength;
new_var = boomYaw;
deltaX = deltaX2;
deltaY = cosBoom * deltaY2 + deltaZ2 * sinBoom;
deltaZ = sinBoom * new_var + deltaZ2 * cosBoom;
boomYaw = DEG_TO_RAD(camera->trueRotation.x);
boomYaw = DEG_TO_RAD(camera->trueRot.x);
sinBoom = sin_rad(boomYaw);
cosBoom = cos_rad(boomYaw);
deltaZ2 = cosBoom * deltaX - deltaZ * sinBoom;
@ -62,13 +62,13 @@ void update_camera_mode_6(Camera* camera) {
camera->lookAt_eye.y = camera->lookAt_obj.y + deltaY2;
camera->lookAt_eye.z = camera->lookAt_obj.z + deltaZ2;
}
camera->currentYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
camera->curYaw = atan2(camera->lookAt_eye.x, camera->lookAt_eye.z, camera->lookAt_obj.x, camera->lookAt_obj.z);
deltaX = camera->lookAt_obj.x - camera->lookAt_eye.x;
deltaY = camera->lookAt_obj.y - camera->lookAt_eye.y;
deltaZ = camera->lookAt_obj.z - camera->lookAt_eye.z;
camera->currentBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
camera->curBlendedYawNegated = -atan2(0.0f, 0.0f, deltaX, deltaZ);
planarDist = sqrtf(SQ(deltaX) + SQ(deltaZ));
camera->currentPitch = atan2(0.0f, 0.0f, deltaY, -planarDist);
camera->curPitch = atan2(0.0f, 0.0f, deltaY, -planarDist);
gBattleStatus.camLookatObjPos.x = camera->lookAt_obj.x;
gBattleStatus.camLookatObjPos.y = camera->lookAt_obj.y;
gBattleStatus.camLookatObjPos.z = camera->lookAt_obj.z;

View File

@ -364,7 +364,7 @@ typedef union VolumeField {
// envelope related?
typedef struct Fade {
/* 0x0 */ VolumeField currentVolume;
/* 0x0 */ VolumeField curVolume;
/* 0x4 */ s32 fadeStep;
/* 0x8 */ s16 targetVolume;
/* 0xA */ s16 fadeTime;
@ -439,7 +439,7 @@ typedef struct AuFxBus {
/* 0x02 */ char unk_02[0x2];
/* 0x04 */ AuFX* fxL;
/* 0x08 */ AuFX* fxR;
/* 0x0C */ u8 currentEffectType;
/* 0x0C */ u8 curEffectType;
/* 0x0D */ char unk_0D[0x3];
/* 0x10 */ struct AuPVoice* head;
/* 0x14 */ struct AuPVoice* tail;
@ -620,7 +620,7 @@ typedef struct SoundPlayer {
/* 0x92 */ s16 coarseTune;
/* 0x94 */ s8 fineTune;
/* 0x95 */ char unk_05;
/* 0x96 */ u16 currentSoundID;
/* 0x96 */ u16 curSoundID;
/* 0x98 */ u8 priority;
/* 0x99 */ u8 exclusiveID;
/* 0x9A */ u8 sfxParamsFlags;
@ -658,7 +658,7 @@ typedef struct SoundManagerCustomCmdList {
typedef struct SoundManager {
/* 0x000 */ struct AuGlobals* globals;
/* 0x004 */ struct AuVoice* currentVoice;
/* 0x004 */ struct AuVoice* curVoice;
/* 0x008 */ u8* sefData;
/* 0x00C */ s32* normalSounds[8];
/* 0x02C */ s32* extraSounds;
@ -681,7 +681,7 @@ typedef struct SoundManager {
/* 0x0BC */ u8 priority;
/* 0x0BD */ u8 sfxPlayerSelector;
/* 0x0BE */ u8 busId;
/* 0x0BF */ u8 currentVoiceIndex;
/* 0x0BF */ u8 curVoiceIndex;
/* 0x0C0 */ u8 state;
/* 0x0C1 */ char unk_C1[0x1];
/* 0x0C2 */ SoundSFXEntry soundQueue[16];
@ -701,13 +701,13 @@ typedef struct SoundInstance {
/* 0x0C */ u8 volume;
/* 0x0D */ u8 pan;
/* 0x0E */ s16 pitchShift;
/* 0x10 */ Vec3f position;
/* 0x10 */ Vec3f pos;
} SoundInstance; // size = 0x1C
typedef struct AlternatingSoundSet {
/* 0x00 */ s32* sounds;
/* 0x04 */ s16 soundCount;
/* 0x06 */ s16 currentIndex;
/* 0x06 */ s16 curIndex;
} AlternatingSoundSet; // size = 0x08
typedef struct AuVoice {

View File

@ -295,7 +295,7 @@ AuResult func_8004DB4C(SongUpdateEvent* s) {
if (player->unk_220 == 0) {
player->fadeInfo.targetVolume = volume;
player->fadeInfo.fadeTime = (duration * 1000) / AU_5750;
player->fadeInfo.fadeStep = ((volume << 0x10) - player->fadeInfo.currentVolume.s32) / player->fadeInfo.fadeTime;
player->fadeInfo.fadeStep = ((volume << 0x10) - player->fadeInfo.curVolume.s32) / player->fadeInfo.fadeTime;
player->fadeInfo.variation = s->variation;
if (s->unk14 == 1) {
player->fadeSongName = songName;
@ -616,9 +616,9 @@ void au_bgm_update_fade(BGMPlayer* player) {
player->fadeInfo.fadeTime--;
if (player->fadeInfo.fadeTime != 0) {
player->fadeInfo.currentVolume.s32 += player->fadeInfo.fadeStep;
player->fadeInfo.curVolume.s32 += player->fadeInfo.fadeStep;
} else {
player->fadeInfo.currentVolume.s32 = player->fadeInfo.targetVolume << 16;
player->fadeInfo.curVolume.s32 = player->fadeInfo.targetVolume << 16;
if (player->fadeInfo.onCompleteCallback != NULL) {
player->fadeInfo.onCompleteCallback();
@ -626,7 +626,7 @@ void au_bgm_update_fade(BGMPlayer* player) {
if (player->fadeSongName != 0) {
func_8004DC80(player->fadeSongName);
} else if (player->fadeInfo.currentVolume.s32 == 0) {
} else if (player->fadeInfo.curVolume.s32 == 0) {
au_bgm_stop_player(player);
}
}
@ -634,7 +634,7 @@ void au_bgm_update_fade(BGMPlayer* player) {
}
void func_8004E444(BGMPlayer* arg0) {
u16 mult = (arg0->fadeInfo.currentVolume.u16 * arg0->fadeInfo.volScale.u16) >> 15;
u16 mult = (arg0->fadeInfo.curVolume.u16 * arg0->fadeInfo.volScale.u16) >> 15;
s32 i;
for (i = 0; i < ARRAY_COUNT(arg0->effectIndices); i++) {
@ -1788,7 +1788,7 @@ void au_BGMCmd_FF(BGMPlayer* player, BGMPlayerTrack* track) {
for (i = 0; i < ARRAY_COUNT(player->soundManager->bgmSounds); i++) {
if ((player->soundManager->bgmSounds[i].unk_0) == 0) {
player->soundManager->bgmSounds[i].unk_0 = arg1;
player->soundManager->bgmSounds[i].volume = ((player->fadeInfo.currentVolume.u16 * player->fadeInfo.volScale.u16) + 0x7FFF) >> 0x17;
player->soundManager->bgmSounds[i].volume = ((player->fadeInfo.curVolume.u16 * player->fadeInfo.volScale.u16) + 0x7FFF) >> 0x17;
break;
}
}

View File

@ -212,7 +212,7 @@ void au_update_clients_2(void) {
if (sfxManager->fadeInfo.fadeTime != 0) {
au_fade_update(&sfxManager->fadeInfo);
au_fade_set_volume(sfxManager->busId, sfxManager->fadeInfo.currentVolume.u16, sfxManager->busVolume);
au_fade_set_volume(sfxManager->busId, sfxManager->fadeInfo.curVolume.u16, sfxManager->busVolume);
}
sfxManager->nextUpdateCounter -= sfxManager->nextUpdateStep;
@ -398,12 +398,12 @@ f32 au_compute_pitch_ratio(s32 pitch) {
}
void au_fade_init(Fade* fade, s32 time, s32 startValue, s32 endValue) {
fade->currentVolume.s32 = startValue * 0x10000;
fade->curVolume.s32 = startValue * 0x10000;
fade->targetVolume = endValue;
if (time != 0) {
fade->fadeTime = (time * 1000) / AU_5750;
fade->fadeStep = (endValue * 0x10000 - fade->currentVolume.s32) / fade->fadeTime;
fade->fadeStep = (endValue * 0x10000 - fade->curVolume.s32) / fade->fadeTime;
} else {
fade->fadeTime = 1;
fade->fadeStep = 0;
@ -422,9 +422,9 @@ void au_fade_update(Fade* fade) {
fade->fadeTime--;
if ((fade->fadeTime << 0x10) != 0) {
fade->currentVolume.s32 += fade->fadeStep;
fade->curVolume.s32 += fade->fadeStep;
} else {
fade->currentVolume.s32 = fade->targetVolume << 0x10;
fade->curVolume.s32 = fade->targetVolume << 0x10;
if (fade->onCompleteCallback != NULL) {
fade->onCompleteCallback();
fade->fadeStep = 0;
@ -441,7 +441,7 @@ void func_80053AC8(Fade* fade) {
if (fade->fadeTime == 0) {
fade->fadeTime = 1;
fade->fadeStep = 0;
fade->targetVolume = fade->currentVolume.u16;
fade->targetVolume = fade->curVolume.u16;
}
}

View File

@ -88,11 +88,11 @@ void au_driver_init(AuSynDriver* driver, ALConfig* config) {
fxBus->head = NULL;
fxBus->tail = NULL;
fxBus->gain = 0x7FFF;
fxBus->currentEffectType = AU_FX_NONE;
fxBus->curEffectType = AU_FX_NONE;
fxBus->fxL = alHeapAlloc(heap, 1, sizeof(*fxBus->fxL));
fxBus->fxR = alHeapAlloc(heap, 1, sizeof(*fxBus->fxR));
func_80058E84(fxBus->fxL, fxBus->currentEffectType, heap);
func_80058E84(fxBus->fxR, fxBus->currentEffectType, heap);
func_80058E84(fxBus->fxL, fxBus->curEffectType, heap);
func_80058E84(fxBus->fxR, fxBus->curEffectType, heap);
}
gSynDriverPtr->savedMainOut = alHeapAlloc(heap, 2 * AUDIO_SAMPLES, 2);
@ -174,7 +174,7 @@ Acmd* alAudioFrame(Acmd* cmdList, s32* cmdLen, s16* outBuf, s32 outLen) {
} while (next != NULL);
fxBus->tail = NULL;
}
if (fxBus->currentEffectType != AU_FX_NONE) {
if (fxBus->curEffectType != AU_FX_NONE) {
cmdListPos = au_pull_fx(fxBus->fxL, cmdListPos, N_AL_AUX_L_OUT, 0);
cmdListPos = au_pull_fx(fxBus->fxR, cmdListPos, N_AL_AUX_R_OUT, 0);
}
@ -279,7 +279,7 @@ u16 au_bus_get_volume(u8 index, u16 arg1) {
void au_bus_set_effect(u8 index, u8 effectType) {
AuFxBus* fxBus = &gSynDriverPtr->fxBus[index];
fxBus->currentEffectType = effectType;
fxBus->curEffectType = effectType;
func_8005904C(fxBus->fxL, effectType);
func_8005904C(fxBus->fxR, effectType);
}

View File

@ -339,7 +339,7 @@ void sfx_update_env_sound_params(void) {
for (i = 0; i < MAX_SOUND_INSTANCES; i++, sound++) {
if (sound->flags & SOUND_INSTANCE_FLAG_ACTIVE) {
if (sound->flags & SOUND_INSTANCE_FLAG_POSITION_CHANGED) {
sfx_get_spatialized_sound_params(sound->position.x, sound->position.y, sound->position.z, &volume, &pan, sound->sourceFlags);
sfx_get_spatialized_sound_params(sound->pos.x, sound->pos.y, sound->pos.z, &volume, &pan, sound->sourceFlags);
sound->volume = volume;
sound->pan = pan;
}
@ -418,9 +418,9 @@ void sfx_register_looping_sound_at_position(s32 soundID, s32 flags, f32 x, f32 y
}
sound->sourceFlags = flags;
sound->position.x = x;
sound->position.y = y;
sound->position.z = z;
sound->pos.x = x;
sound->pos.y = y;
sound->pos.z = z;
sound->soundID = soundID;
sound->flags |= SOUND_INSTANCE_FLAG_ACTIVE | SOUND_INSTANCE_FLAG_POSITION_CHANGED;
@ -435,9 +435,9 @@ s32 sfx_adjust_env_sound_pos(s32 soundID, s32 sourceFlags, f32 x, f32 y, f32 z)
}
sound->sourceFlags = sourceFlags;
sound->position.x = x;
sound->position.y = y;
sound->position.z = z;
sound->pos.x = x;
sound->pos.y = y;
sound->pos.z = z;
sound->soundID = soundID;
sound->flags |= SOUND_INSTANCE_FLAG_ACTIVE | SOUND_INSTANCE_FLAG_POSITION_CHANGED;
return TRUE;
@ -478,10 +478,10 @@ void sfx_play_sound_with_params(s32 soundID, u8 volume, u8 pan, s16 pitchShift)
case SOUND_TYPE_ALTERNATING:
// 0xBxxxxxxx
alternatingSet = &AlternatingSounds[soundIndex];
if (alternatingSet->currentIndex >= alternatingSet->soundCount) {
alternatingSet->currentIndex = 0;
if (alternatingSet->curIndex >= alternatingSet->soundCount) {
alternatingSet->curIndex = 0;
}
soundID = alternatingSet->sounds[alternatingSet->currentIndex++];
soundID = alternatingSet->sounds[alternatingSet->curIndex++];
break;
}
}
@ -520,7 +520,7 @@ void sfx_play_sound(s32 soundID) {
void sfx_play_sound_at_player(s32 soundID, s32 flags) {
PlayerStatus* playerStatus = &gPlayerStatus;
sfx_play_sound_at_position(soundID, flags, playerStatus->position.x, playerStatus->position.y, playerStatus->position.z);
sfx_play_sound_at_position(soundID, flags, playerStatus->pos.x, playerStatus->pos.y, playerStatus->pos.z);
}
void sfx_play_sound_at_npc(s32 soundID, s32 flags, s32 npcID) {

View File

@ -480,7 +480,7 @@ void au_sfx_init(SoundManager* manager, u8 priority, u8 busId, AuGlobals* global
au_sfx_set_state(manager, SND_MANAGER_STATE_ENABLED);
au_sfx_clear_queue(manager);
au_fade_init(&manager->fadeInfo, 0, 0x7FFF, 0x7FFF);
au_fade_set_volume(manager->busId, manager->fadeInfo.currentVolume.u16, manager->busVolume);
au_fade_set_volume(manager->busId, manager->fadeInfo.curVolume.u16, manager->busVolume);
manager->lastCustomEffectIdx = 0xFF;
manager->customReverbParams[0] = CUSTOM_SMALL_ROOM_PARAMS;
@ -589,7 +589,7 @@ void au_sfx_update_main(SoundManager* manager) {
u16 sound2 = unkData->sound2;
if (sound2 != 0) {
for (j = 0; j < ARRAY_COUNT(manager->players); j++) {
if (manager->players[j].currentSoundID == sound2) {
if (manager->players[j].curSoundID == sound2) {
newEntry.soundID = unkData->sound1;
newEntry.upperSoundID = 0;
newEntry.pitchShift = 0;
@ -718,7 +718,7 @@ void au_sfx_load_sound(SoundManager* manager, SoundSFXEntry* entry, SoundManager
// check if any player is playing this sound
for (playerIndex = 7; playerIndex >= 0; playerIndex--) {
player = &manager->players[playerIndex];
if (player->currentSoundID == soundIDLower) {
if (player->curSoundID == soundIDLower) {
cond = TRUE;
break;
}
@ -755,7 +755,7 @@ void au_sfx_load_sound(SoundManager* manager, SoundSFXEntry* entry, SoundManager
// check if any player is playing this sound
for (playerIndex = 7; playerIndex >= 0; playerIndex--) {
player = &manager->players[playerIndex];
if (player->currentSoundID == soundIDLower) {
if (player->curSoundID == soundIDLower) {
cond = TRUE;
break;
}
@ -796,7 +796,7 @@ void au_sfx_load_sound(SoundManager* manager, SoundSFXEntry* entry, SoundManager
if (entry->upperSoundID != 0) {
for (playerIndex = 0; playerIndex < 8; playerIndex++) {
player = &manager->players[playerIndex];
if (player->currentSoundID == entry->upperSoundID) {
if (player->curSoundID == entry->upperSoundID) {
cond = TRUE;
break;
}
@ -819,7 +819,7 @@ void au_sfx_load_sound(SoundManager* manager, SoundSFXEntry* entry, SoundManager
// check if any player is playing this sound
for (playerIndex = soundInfo & 0x7; playerIndex >= 0; playerIndex--) {
player = &manager->players[playerIndex];
if (player->currentSoundID == soundIDLower) {
if (player->curSoundID == soundIDLower) {
cond = TRUE;
break;
}
@ -955,7 +955,7 @@ static void au_sfx_play_sound(SoundManager* manager, SoundPlayer* player, s8* re
player->loopIterCount = 0;
player->delay = 1;
player->playLength = 0;
player->currentSoundID = sfxEntry->soundID & SOUND_ID_LOWER;
player->curSoundID = sfxEntry->soundID & SOUND_ID_LOWER;
player->priority = priority;
player->exclusiveID = exclusiveID;
player->envelopCustomPressProfile = NULL;
@ -1004,7 +1004,7 @@ static void au_sfx_set_triggers(SoundManager* manager, u32 soundID) {
for (i = 0; i < ARRAY_COUNT(manager->players); i++) {
SoundPlayer* player = &manager->players[i];
if (player->currentSoundID == (soundID & SOUND_ID_LOWER)) {
if (player->curSoundID == (soundID & SOUND_ID_LOWER)) {
player->triggers = triggers;
}
}
@ -1015,7 +1015,7 @@ static void au_sfx_stop_by_id(SoundManager* manager, u32 soundID) {
for (i = 0; i < ARRAY_COUNT(manager->players); i++) {
SoundPlayer* player = &manager->players[i];
if (player->currentSoundID == (soundID & SOUND_ID_LOWER)) {
if (player->curSoundID == (soundID & SOUND_ID_LOWER)) {
player->sefDataReadPos = BlankSEFData;
player->alternativeDataPos = NULL;
player->sfxParamsFlags = SFX_PARAM_MODE_SEQUENCE;
@ -1050,7 +1050,7 @@ static void au_sfx_set_modifiers(SoundManager* manager, SoundSFXEntry* sfxEntry)
for (i = 0; i < ARRAY_COUNT(manager->players); i++) {
SoundPlayer* player = &manager->players[i];
if (player->currentSoundID == soundID) {
if (player->curSoundID == soundID) {
au_sfx_set_player_modifiers(player, sfxEntry);
}
}
@ -1092,9 +1092,9 @@ s16 au_sfx_manager_update(SoundManager* manager) {
player = &manager->players[i - manager->sfxPlayerSelector];
if (player->sefDataReadPos != NULL) {
voice = &manager->globals->voices[i];
manager->currentVoice = voice;
manager->curVoice = voice;
if (voice->priority <= manager->priority) {
manager->currentVoiceIndex = i;
manager->curVoiceIndex = i;
switch (player->sfxParamsFlags & SFX_PARAM_FLAG_MODE) {
case SFX_PARAM_MODE_ADVANCED:
au_sfx_update_basic(manager, player, voice, i);
@ -1107,7 +1107,7 @@ s16 au_sfx_manager_update(SoundManager* manager) {
}
} else {
player->sefDataReadPos = NULL;
player->currentSoundID = 0;
player->curSoundID = 0;
player->priority = 0;
}
}
@ -1126,7 +1126,7 @@ static void au_sfx_update_basic(SoundManager* manager, SoundPlayer* player, AuVo
case SND_PLAYER_STATE_CONTINUE:
if (voice->priority != manager->priority) {
player->sefDataReadPos = NULL;
player->currentSoundID = 0;
player->curSoundID = 0;
player->priority = 0;
} else {
if (!(player->sfxParamsFlags & SFX_PARAM_FLAG_PITCH)) {
@ -1198,7 +1198,7 @@ static void au_sfx_update_basic(SoundManager* manager, SoundPlayer* player, AuVo
break;
default:
player->sefDataReadPos = NULL;
player->currentSoundID = 0;
player->curSoundID = 0;
player->priority = 0;
break;
}
@ -1253,7 +1253,7 @@ static void au_sfx_update_sequence(SoundManager* manager, SoundPlayer* player, A
au_reset_voice(voice, voiceIdx);
}
player->sefDataReadPos = NULL;
player->currentSoundID = 0;
player->curSoundID = 0;
player->priority = 0;
player->exclusiveID = 0;
return;
@ -1513,7 +1513,7 @@ static void au_SEFCmd_06_FineTune(SoundManager* manager, SoundPlayer* player) {
}
static void au_SEFCmd_07_WaitForEnd(SoundManager* manager, SoundPlayer* player) {
if (manager->currentVoice->priority == manager->priority) {
if (manager->curVoice->priority == manager->priority) {
player->delay = 2;
player->sefDataReadPos--;
}
@ -1614,9 +1614,9 @@ static void au_SEFCmd_0E_SetAlternativeSound(SoundManager* manager, SoundPlayer*
}
static void au_SEFCmd_0F_Stop(SoundManager* manager, SoundPlayer* player) {
AuVoice* voice = manager->currentVoice;
AuVoice* voice = manager->curVoice;
if (voice->priority == manager->priority) {
au_reset_voice(voice, manager->currentVoiceIndex);
au_reset_voice(voice, manager->curVoiceIndex);
}
}

View File

@ -175,7 +175,7 @@ void appendGfx_background_texture(void) {
}
}
theta = clamp_angle(-cam->trueRotation.x);
theta = clamp_angle(-cam->trueRot.x);
sinTheta = sin_deg(theta);
cosTheta = cos_deg(theta);
f5 = cosTheta * cam->lookAt_obj.x - sinTheta * cam->lookAt_obj.z + cam->leadAmount;

View File

@ -139,7 +139,7 @@ void N(update)(void) {
case 11:
btl_set_popup_duration(99);
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
s32 fillAmt = battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 6;
if (actionCommandStatus->unk_5D == 0) {

View File

@ -106,7 +106,7 @@ void N(update)(void) {
case 11:
btl_set_popup_duration(99);
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
actionCommandStatus->barFillLevel += battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 15;
}

View File

@ -157,7 +157,7 @@ void N(update)(void) {
}
}
if (battleStatus->actionCommandMode != ACTION_COMMAND_MODE_NOT_LEARNED && (battleStatus->currentButtonsPressed & BUTTON_A)) {
if (battleStatus->actionCommandMode != ACTION_COMMAND_MODE_NOT_LEARNED && (battleStatus->curButtonsPressed & BUTTON_A)) {
if (actionCommandStatus->unk_5A != 0) {
s32 a = battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty];
s32 b = actionCommandStatus->unk_5A * 820;

View File

@ -129,18 +129,18 @@ void N(update)(void) {
}
if (!actionCommandStatus->isBarFilled) {
if (battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) {
if (battleStatus->curButtonsDown & BUTTON_STICK_LEFT) {
actionCommandStatus->unk_5C = 1;
}
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT)) {
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT)) {
if (actionCommandStatus->unk_5C != 0) {
actionCommandStatus->barFillLevel += (battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 850) / 100;
actionCommandStatus->unk_5C = 0;
}
}
if (battleStatus->currentButtonsPressed & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsPressed & BUTTON_STICK_RIGHT) {
actionCommandStatus->barFillLevel -= (battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 850) / 100;
}
}

View File

@ -120,7 +120,7 @@ void N(update)(void) {
case 11:
btl_set_popup_duration(99);
if (battleStatus->currentButtonsDown & BUTTON_A) {
if (battleStatus->curButtonsDown & BUTTON_A) {
actionCommandStatus->barFillLevel += 154;
actionCommandStatus->thresholdLevel += 154;
} else {

View File

@ -120,7 +120,7 @@ void N(update)(void) {
}
}
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
switch (actionCommandStatus->targetWeakness) {
case 0: {
s32 fillOffset = battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 235 * 4;

View File

@ -120,7 +120,7 @@ void N(update)(void) {
}
}
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
s32 a = battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty];
s32 b = actionCommandStatus->targetWeakness * 850;
s32 temp_v1_2 = (a * b) / 10000;

View File

@ -118,16 +118,16 @@ void N(update)(void) {
actionCommandStatus->barFillLevel = 0;
}
if (!actionCommandStatus->isBarFilled) {
if (battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) {
if (battleStatus->curButtonsDown & BUTTON_STICK_LEFT) {
actionCommandStatus->unk_5C = 1;
}
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) && (actionCommandStatus->unk_5C != 0)) {
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT) && (actionCommandStatus->unk_5C != 0)) {
actionCommandStatus->barFillLevel += (battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 950) / 100;
actionCommandStatus->unk_5C = 0;
}
if (battleStatus->currentButtonsPressed & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsPressed & BUTTON_STICK_RIGHT) {
actionCommandStatus->barFillLevel -= (battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 950) / 100;
}
}

View File

@ -142,7 +142,7 @@ void N(update)(void) {
actionCommandStatus->state = 11;
actionCommandStatus->frameCounter = actionCommandStatus->duration;
case 11:
if (battleStatus->actionCommandMode != ACTION_COMMAND_MODE_NOT_LEARNED && (battleStatus->currentButtonsPressed & BUTTON_A)) {
if (battleStatus->actionCommandMode != ACTION_COMMAND_MODE_NOT_LEARNED && (battleStatus->curButtonsPressed & BUTTON_A)) {
actionCommandStatus->barFillLevel += (battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 180 / 100);
}
if (actionCommandStatus->barFillLevel >= 10000) {

View File

@ -196,7 +196,7 @@ void N(update)(void) {
}
actionCommandStatus->frameCounter = 0;
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) && battleStatus->actionCommandMode < ACTION_COMMAND_MODE_TUTORIAL) {
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT) && battleStatus->actionCommandMode < ACTION_COMMAND_MODE_TUTORIAL) {
actionCommandStatus->hammerMissedStart = TRUE;
}
actionCommandStatus->state = 11;
@ -254,7 +254,7 @@ void N(update)(void) {
phi_s0 = 0;
}
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) &&
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT) &&
phi_s0 == 0 &&
actionCommandStatus->autoSucceed == 0 &&
battleStatus->actionCommandMode < ACTION_COMMAND_MODE_TUTORIAL)

View File

@ -123,7 +123,7 @@ void N(update)(void) {
if (((actionCommandStatus->prepareTime - temp_s0_3) - 2) <= 0) {
hud_element_set_script(actionCommandStatus->hudElements[0], &HES_AButtonDown);
}
if ((battleStatus->currentButtonsPressed & BUTTON_A) && (actionCommandStatus->autoSucceed == 0)) {
if ((battleStatus->curButtonsPressed & BUTTON_A) && (actionCommandStatus->autoSucceed == 0)) {
actionCommandStatus->wrongButtonPressed = TRUE;
battleStatus->unk_86 = -1;
}
@ -153,7 +153,7 @@ void N(update)(void) {
}
if (battleStatus->actionSuccess < 0) {
if (((battleStatus->currentButtonsPressed & BUTTON_A)&&
if (((battleStatus->curButtonsPressed & BUTTON_A)&&
!actionCommandStatus->wrongButtonPressed) ||
(actionCommandStatus->autoSucceed != 0)) {
battleStatus->actionSuccess = 1;

View File

@ -181,7 +181,7 @@ void N(update)(void) {
}
}
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
phi_a1 = actionCommandStatus->targetWeakness;
if (phi_a1 != 0) {
s32 a = battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty];

View File

@ -151,11 +151,11 @@ void N(update)(void) {
}
if (!actionCommandStatus->isBarFilled) {
if (battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) {
if (battleStatus->curButtonsDown & BUTTON_STICK_LEFT) {
actionCommandStatus->unk_5C = TRUE;
}
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) && actionCommandStatus->unk_5C) {
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT) && actionCommandStatus->unk_5C) {
if (actionCommandStatus->targetWeakness == 0) {
actionCommandStatus->barFillLevel += battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 13;
} else {
@ -165,7 +165,7 @@ void N(update)(void) {
actionCommandStatus->unk_5C = 0;
}
if (battleStatus->currentButtonsPressed & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsPressed & BUTTON_STICK_RIGHT) {
actionCommandStatus->barFillLevel -= battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 11;
}
}

View File

@ -156,10 +156,10 @@ void N(update)(void) {
}
if (!actionCommandStatus->isBarFilled) {
if (battleStatus->currentButtonsPressed & BUTTON_STICK_LEFT) {
if (battleStatus->curButtonsPressed & BUTTON_STICK_LEFT) {
actionCommandStatus->barFillLevel += (battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 1250) / 100;
}
if (battleStatus->currentButtonsPressed & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsPressed & BUTTON_STICK_RIGHT) {
actionCommandStatus->barFillLevel -= (battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty] * 1250) / 100;
}
}
@ -185,13 +185,13 @@ void N(update)(void) {
}
if (!(D_802A98C0 & BUTTON_STICK_LEFT) &&
!(battleStatus->currentButtonsDown & BUTTON_STICK_RIGHT) &&
!(battleStatus->curButtonsDown & BUTTON_STICK_RIGHT) &&
actionCommandStatus->unk_5C == 1)
{
actionCommandStatus->unk_5C = 2;
}
battleStatus->actionSuccess = actionCommandStatus->barFillLevel / 100;
D_802A98C0 = battleStatus->currentButtonsDown;
D_802A98C0 = battleStatus->curButtonsDown;
battleStatus->actionResult = actionCommandStatus->unk_5C;
sfx_adjust_env_sound_params(SOUND_80000041, 0, 0, battleStatus->actionSuccess * 12);

View File

@ -124,11 +124,11 @@ void N(update)(void) {
if (!actionCommandStatus->isBarFilled) {
if (actionCommandStatus->targetWeakness != 0) {
if (battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) {
if (battleStatus->curButtonsDown & BUTTON_STICK_LEFT) {
actionCommandStatus->unk_5C = TRUE;
}
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) && actionCommandStatus->unk_5C) {
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT) && actionCommandStatus->unk_5C) {
s32 a = battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty];
s32 b = actionCommandStatus->targetWeakness * 850;
@ -136,18 +136,18 @@ void N(update)(void) {
actionCommandStatus->unk_5C = 0;
}
if (battleStatus->currentButtonsPressed & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsPressed & BUTTON_STICK_RIGHT) {
s32 a = battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty];
s32 b = actionCommandStatus->targetWeakness * 850;
actionCommandStatus->barFillLevel -= (a * b) / 10000;
}
} else {
if (battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) {
if (battleStatus->curButtonsDown & BUTTON_STICK_LEFT) {
actionCommandStatus->unk_5C = TRUE;
}
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) && actionCommandStatus->unk_5C) {
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT) && actionCommandStatus->unk_5C) {
actionCommandStatus->barFillLevel += 100;
if (actionCommandStatus->barFillLevel >= 500) {
actionCommandStatus->barFillLevel = 500;
@ -155,7 +155,7 @@ void N(update)(void) {
actionCommandStatus->unk_5C = 0;
}
if (battleStatus->currentButtonsPressed & BUTTON_STICK_RIGHT) {
if (battleStatus->curButtonsPressed & BUTTON_STICK_RIGHT) {
actionCommandStatus->barFillLevel -= 100;
}
}

View File

@ -131,7 +131,7 @@ void N(update)(void) {
cutoff = actionCommandStatus->mashMeterCutoffs[actionCommandStatus->mashMeterIntervals];
temp = actionCommandStatus->barFillLevel / cutoff;
if (actionCommandStatus->unk_5C == 0) {
if (!(battleStatus->currentButtonsDown & BUTTON_A)) {
if (!(battleStatus->curButtonsDown & BUTTON_A)) {
actionCommandStatus->barFillLevel -= D_802A9760_42A480[temp / 20];
if (actionCommandStatus->barFillLevel < 0) {
actionCommandStatus->barFillLevel = 0;

View File

@ -110,7 +110,7 @@ void N(update)(void) {
case 11:
btl_set_popup_duration(99);
if (!actionCommandStatus->berserkerEnabled) {
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
actionCommandStatus->barFillLevel += battleStatus->actionCmdDifficultyTable[actionCommandStatus->difficulty];
}
} else {

View File

@ -222,7 +222,7 @@ void N(update)(void) {
}
if (!actionCommandStatus->berserkerEnabled) {
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
s32 amt;
if (actionCommandStatus->targetWeakness == 0) {

View File

@ -12,7 +12,7 @@ API_CALLABLE(N(SetupDemoPlayerMove)) {
battleStatus->moveCategory = BTL_MENU_TYPE_SMASH;
battleStatus->selectedMoveID = MOVE_HAMMER1;
battleStatus->moveArgument = gCurrentEncounter.hitTier;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_HAMMER1].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_HAMMER1].flags;
player_create_target_list(player);
player->selectedTargetIndex = 0;

View File

@ -10,7 +10,7 @@ API_CALLABLE(N(SetupDemoPlayerMove)) {
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
battleStatus->selectedMoveID = MOVE_POWER_BOUNCE;
battleStatus->moveArgument = gCurrentEncounter.hitTier;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_POWER_BOUNCE].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_POWER_BOUNCE].flags;
player_create_target_list(player);
player->selectedTargetIndex = 1;

View File

@ -10,7 +10,7 @@ API_CALLABLE(N(SetupDemoPlayerMove)) {
battleStatus->moveCategory = BTL_MENU_TYPE_ABILITY;
battleStatus->moveArgument = 0;
battleStatus->selectedMoveID = MOVE_SHELL_SHOT;
battleStatus->currentTargetListFlags = gMoveTable[MOVE_SHELL_SHOT].flags;
battleStatus->curTargetListFlags = gMoveTable[MOVE_SHELL_SHOT].flags;
player_create_target_list(partner);
partner->selectedTargetIndex = 0;

View File

@ -13,9 +13,9 @@ API_CALLABLE(N(SetupDemoPlayerMove)) {
battleStatus->moveArgument = ITEM_THUNDER_RAGE;
selectedItemID = battleStatus->moveArgument;
battleStatus->selectedMoveID = 0;
battleStatus->currentAttackElement = 0;
battleStatus->curAttackElement = 0;
playerData->invItems[0] = selectedItemID;
battleStatus->currentTargetListFlags = gItemTable[playerData->invItems[0]].targetFlags | TARGET_FLAG_8000;
battleStatus->curTargetListFlags = gItemTable[playerData->invItems[0]].targetFlags | TARGET_FLAG_8000;
player_create_target_list(player);
player->selectedTargetIndex = 0;

View File

@ -281,7 +281,7 @@ EvtScript N(takeTurn_80219444) = {
API_CALLABLE(func_80218000_47F0B0) {
PlayerData* playerData = &gPlayerData;
playerData->currentPartner = PARTNER_GOOMBARIO;
playerData->curPartner = PARTNER_GOOMBARIO;
return ApiStatus_DONE2;
}

View File

@ -190,7 +190,7 @@ API_CALLABLE(N(BlockAppear)) {
entity->scale.x = (60 - script->functionTemp[1]) / 60.0f;
entity->scale.y = (60 - script->functionTemp[1]) / 60.0f;
entity->scale.z = (60 - script->functionTemp[1]) / 60.0f;
entity->rotation.y = (1.0f - cos_rad(entity->scale.y * PI)) * 1080.0f * 0.5f;
entity->rot.y = (1.0f - cos_rad(entity->scale.y * PI)) * 1080.0f * 0.5f;
script->functionTemp[1]--;
if (script->functionTemp[1] == -1) {

View File

@ -521,7 +521,7 @@ void N(worker_render_piranha_vines)(void) {
renderTask.appendGfx = &func_8021835C_59EA3C;
renderTask.appendGfxArg = 0;
renderTask.distance = 10;
renderTask.dist = 10;
renderTask.renderMode = RENDER_MODE_SURFACE_OPA;
queue_render_task(&renderTask);

View File

@ -2892,8 +2892,8 @@ API_CALLABLE(func_80219188_465618) {
wattEffectData->angle = 0;
wattEffectData->unk_0C = TRUE;
wattEffectData->unk_10 = 0;
wattEffectData->effect1 = fx_static_status(0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->effect2 = fx_static_status(1, actor->currentPos.x, NPC_DISPOSE_POS_Y, actor->currentPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->effect1 = fx_static_status(0, actor->curPos.x, actor->curPos.y, actor->curPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->effect2 = fx_static_status(1, actor->curPos.x, NPC_DISPOSE_POS_Y, actor->curPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->flags = TRUE;
wattEffectData->debuff = actor->debuff;
}
@ -2906,9 +2906,9 @@ API_CALLABLE(func_80219188_465618) {
}
actor->verticalRenderOffset = sin_rad(DEG_TO_RAD(wattEffectData->angle)) * 3.0f;
x = actor->currentPos.x + actor->headOffset.x;
y = actor->currentPos.y + actor->headOffset.y + actor->verticalRenderOffset + (actor->debuff != STATUS_KEY_SHRINK ? 12.0 : 4.800000000000001); // 4.8 doesn't match
z = actor->currentPos.z + actor->headOffset.z;
x = actor->curPos.x + actor->headOffset.x;
y = actor->curPos.y + actor->headOffset.y + actor->verticalRenderOffset + (actor->debuff != STATUS_KEY_SHRINK ? 12.0 : 4.800000000000001); // 4.8 doesn't match
z = actor->curPos.z + actor->headOffset.z;
if (wattEffectData->unk_0C) {
switch (wattEffectData->unk_10) {
case 0:
@ -4119,8 +4119,8 @@ Formation N(formation_lakilester) = {
API_CALLABLE(func_802197B8_465C48) {
Bytecode* args = script->ptrReadPos;
evt_set_variable(script, *args++, gPlayerData.currentPartner);
evt_set_variable(script, *args++, gPlayerData.partners[gPlayerData.currentPartner].level);
evt_set_variable(script, *args++, gPlayerData.curPartner);
evt_set_variable(script, *args++, gPlayerData.partners[gPlayerData.curPartner].level);
return ApiStatus_DONE2;
}

View File

@ -191,16 +191,16 @@ API_CALLABLE(N(update_effect)) {
effectData = effect->data.bulbGlow;
}
posX = actor->currentPos.x;
posY = actor->currentPos.y;
posZ = actor->currentPos.z;
posX = actor->curPos.x;
posY = actor->curPos.y;
posZ = actor->curPos.z;
rotX = actor->rotation.x;
rotY = actor->rotation.y + actor->yaw;
rotZ = actor->rotation.z;
rotX = actor->rot.x;
rotY = actor->rot.y + actor->yaw;
rotZ = actor->rot.z;
actorPart = get_actor_part(actor, 1);
if (actorPart->currentAnimation == ANIM_BigLanternGhost_Anim0C) {
if (actorPart->curAnimation == ANIM_BigLanternGhost_Anim0C) {
spr_get_comp_position(actor->partsTable->spriteInstanceID, 0, &partX, &partY, &partZ);
} else {
spr_get_comp_position(actor->partsTable->spriteInstanceID, 1, &partX, &partY, &partZ);

View File

@ -229,13 +229,13 @@ API_CALLABLE(UpdateCrystalBitEffect) {
effect->data.miscParticles->scaleX = actorPart->scale.x * 24.0f;
effect->data.miscParticles->scaleY = actorPart->scale.y * 24.0f;
if (actorPart->flags & ACTOR_PART_FLAG_INVISIBLE) {
effect->data.miscParticles->pos.x = actor->currentPos.x;
effect->data.miscParticles->pos.x = actor->curPos.x;
effect->data.miscParticles->pos.y = NPC_DISPOSE_POS_Y;
effect->data.miscParticles->pos.z = actor->currentPos.z;
effect->data.miscParticles->pos.z = actor->curPos.z;
} else {
effect->data.miscParticles->pos.x = actor->currentPos.x;
effect->data.miscParticles->pos.y = actor->currentPos.y;
effect->data.miscParticles->pos.z = actor->currentPos.z;
effect->data.miscParticles->pos.x = actor->curPos.x;
effect->data.miscParticles->pos.y = actor->curPos.y;
effect->data.miscParticles->pos.z = actor->curPos.z;
}
return ApiStatus_BLOCK;

View File

@ -156,9 +156,9 @@ API_CALLABLE(N(SpawnSpinEffect)) {
s32 posZ = evt_get_variable(script, *args++);
s32 duration = evt_get_variable(script, *args++);
N(DummyPlayerStatus).position.x = posX;
N(DummyPlayerStatus).position.y = posY - 10.0f;
N(DummyPlayerStatus).position.z = posZ;
N(DummyPlayerStatus).pos.x = posX;
N(DummyPlayerStatus).pos.y = posY - 10.0f;
N(DummyPlayerStatus).pos.z = posZ;
fx_effect_46(6, &N(DummyPlayerStatus), 1.0f, duration);
return ApiStatus_DONE2;

View File

@ -188,7 +188,7 @@ void setup_demo_player(void) {
playerData->partners[i].level = 2;
}
playerData->currentPartner = PARTNER_GOOMBARIO;
playerData->curPartner = PARTNER_GOOMBARIO;
for (i = 0; i < ARRAY_COUNT(playerData->badges); i++) {
playerData->badges[i] = 0;
@ -257,25 +257,25 @@ void load_demo_battle(u32 index) {
case 1:
setup_demo_player();
mode = 0;
playerData->currentPartner = PARTNER_BOW;
playerData->curPartner = PARTNER_BOW;
battleID = BTL_DIG_FORMATION_01;
break;
case 2:
setup_demo_player();
mode = 0;
playerData->currentPartner = PARTNER_PARAKARRY;
playerData->curPartner = PARTNER_PARAKARRY;
gGameStatusPtr->demoFlags |= 2;
battleID = BTL_DIG_FORMATION_02;
break;
case 3:
setup_demo_player();
mode = 0;
playerData->currentPartner = PARTNER_WATT;
playerData->curPartner = PARTNER_WATT;
battleID = BTL_DIG_FORMATION_03;
break;
case 4:
setup_demo_player();
playerData->currentPartner = PARTNER_KOOPER;
playerData->curPartner = PARTNER_KOOPER;
gGameStatusPtr->demoFlags |= 4;
mode = 0;
battleID = BTL_DIG_FORMATION_04;

View File

@ -566,8 +566,8 @@ Formation N(formation_lakilester) = {
API_CALLABLE(N(GetPartnerAndLevel)) {
Bytecode* args = script->ptrReadPos;
evt_set_variable(script, *args++, gPlayerData.currentPartner);
evt_set_variable(script, *args++, gPlayerData.partners[gPlayerData.currentPartner].level);
evt_set_variable(script, *args++, gPlayerData.curPartner);
evt_set_variable(script, *args++, gPlayerData.partners[gPlayerData.curPartner].level);
return ApiStatus_DONE2;
}

View File

@ -126,22 +126,22 @@ API_CALLABLE(N(kooper_UnkActorPosFunc)) {
ActorState* actorState = &actor->state;
if (isInitialCall) {
actor->state.currentPos.x = actor->currentPos.x;
actor->state.currentPos.y = actor->currentPos.y;
actor->state.currentPos.z = actor->currentPos.z;
actor->state.curPos.x = actor->curPos.x;
actor->state.curPos.y = actor->curPos.y;
actor->state.curPos.z = actor->curPos.z;
}
add_xz_vec3f(&actorState->currentPos, actor->state.speed, actor->state.angle);
add_xz_vec3f(&actorState->curPos, actor->state.speed, actor->state.angle);
if (actor->state.speed < 4.0f) {
play_movement_dust_effects(0, actor->state.currentPos.x, actor->state.currentPos.y, actor->state.currentPos.z, actor->state.angle);
play_movement_dust_effects(0, actor->state.curPos.x, actor->state.curPos.y, actor->state.curPos.z, actor->state.angle);
} else {
play_movement_dust_effects(1, actor->state.currentPos.x, actor->state.currentPos.y, actor->state.currentPos.z, actor->state.angle);
play_movement_dust_effects(1, actor->state.curPos.x, actor->state.curPos.y, actor->state.curPos.z, actor->state.angle);
}
actorState->speed /= 1.5;
actor->currentPos.x = actorState->currentPos.x;
actor->currentPos.y = actorState->currentPos.y;
actor->currentPos.z = actorState->currentPos.z;
actor->curPos.x = actorState->curPos.x;
actor->curPos.y = actorState->curPos.y;
actor->curPos.z = actorState->curPos.z;
if (actorState->speed < 1.0) {
return ApiStatus_DONE2;

View File

@ -25,8 +25,8 @@ API_CALLABLE(N(UnkWattEffectFunc1)) {
wattEffectData->angle = 0;
wattEffectData->unk_0C = TRUE;
wattEffectData->unk_10 = 0;
wattEffectData->effect1 = fx_static_status(0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->effect2 = fx_static_status(1, actor->currentPos.x, -1000.0f, actor->currentPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->effect1 = fx_static_status(0, actor->curPos.x, actor->curPos.y, actor->curPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->effect2 = fx_static_status(1, actor->curPos.x, -1000.0f, actor->curPos.z, (actor->debuff != STATUS_KEY_SHRINK) ? 1.0f : 0.4f, 5, 0);
wattEffectData->flags = TRUE;
wattEffectData->debuff = actor->debuff;
}
@ -39,9 +39,9 @@ API_CALLABLE(N(UnkWattEffectFunc1)) {
}
actor->verticalRenderOffset = sin_rad(DEG_TO_RAD(wattEffectData->angle)) * 3.0f;
x = actor->currentPos.x + actor->headOffset.x;
y = actor->currentPos.y + actor->headOffset.y + actor->verticalRenderOffset + (actor->debuff != STATUS_KEY_SHRINK ? 12.0 : 4.800000000000001); // 4.8 doesn't match
z = actor->currentPos.z + actor->headOffset.z;
x = actor->curPos.x + actor->headOffset.x;
y = actor->curPos.y + actor->headOffset.y + actor->verticalRenderOffset + (actor->debuff != STATUS_KEY_SHRINK ? 12.0 : 4.800000000000001); // 4.8 doesn't match
z = actor->curPos.z + actor->headOffset.z;
if (wattEffectData->unk_0C) {
switch (wattEffectData->unk_10) {
case 0:

View File

@ -612,9 +612,9 @@ s32 func_8021878C_512D5C(Evt* script, s32 isInitialCall) {
temp_f20 = evt_get_float_variable(script, *args++);
temp_v0 = evt_get_variable(script, *args++);
D_802310D0.position.x = x;
D_802310D0.position.y = y;
D_802310D0.position.z = z;
D_802310D0.pos.x = x;
D_802310D0.pos.y = y;
D_802310D0.pos.z = z;
fx_effect_46(6, &D_802310D0, temp_f20, temp_v0);
return ApiStatus_DONE2;

View File

@ -9,7 +9,7 @@ API_CALLABLE(N(GiveRefund)) {
Actor* player = gBattleStatus.playerActor;
s32 sellValue = gItemTable[battleStatus->moveArgument].sellValue;
f32 posX;
f32 posY = player->currentPos.y + player->size.y;
f32 posY = player->curPos.y + player->size.y;
f32 posZ;
f32 angle = 0.0f;
s32 delayTime = 0;
@ -25,8 +25,8 @@ API_CALLABLE(N(GiveRefund)) {
sellValue = (sellValue * 75 + 99) / 100;
for (i = 0; i < sellValue; i++) {
posX = player->currentPos.x;
posZ = player->currentPos.z;
posX = player->curPos.x;
posZ = player->curPos.z;
make_item_entity(ITEM_COIN, posX, posY, posZ, ITEM_SPAWN_MODE_TOSS_FADE1, 1 + 3 * i, angle, 0);
add_coins(1);
@ -36,9 +36,9 @@ API_CALLABLE(N(GiveRefund)) {
delayTime = (i * 3) + 30;
posX = player->currentPos.x;
posY = player->currentPos.y;
posZ = player->currentPos.z;
posX = player->curPos.x;
posY = player->curPos.y;
posZ = player->curPos.z;
get_screen_coords(gCurrentCameraID, posX, posY, posZ, &iconX, &iconY, &iconZ);

View File

@ -323,15 +323,15 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
return ApiStatus_DONE2;
}
get_actor_part(target, player->targetPartIndex);
targetPosX = target->currentPos.x + target->headOffset.x;
targetPosX = target->curPos.x + target->headOffset.x;
if (target->flags & ACTOR_FLAG_UPSIDE_DOWN) {
targetPosY = target->currentPos.y + target->headOffset.y - target->size.y;
targetPosY = target->curPos.y + target->headOffset.y - target->size.y;
} else if (!(target->flags & ACTOR_FLAG_8000)) {
targetPosY = target->currentPos.y + target->headOffset.y + target->size.y;
targetPosY = target->curPos.y + target->headOffset.y + target->size.y;
} else {
targetPosY = target->currentPos.y + target->headOffset.y + target->size.y * 2;
targetPosY = target->curPos.y + target->headOffset.y + target->size.y * 2;
}
targetPosZ = target->currentPos.z + target->headOffset.z;
targetPosZ = target->curPos.z + target->headOffset.z;
} else {
targetPosX = 64.0f;
targetPosY = 80.0f;
@ -387,13 +387,13 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
switch (script->functionTemp[0]) {
case PEACH_STAR_BEAM_CREATE_EFFECT:
currentPosX = player->currentPos.x;
currentPosY = player->currentPos.y + player->size.y + 30.0f;
currentPosZ = player->currentPos.z;
currentPosX = player->curPos.x;
currentPosY = player->curPos.y + player->size.y + 30.0f;
currentPosZ = player->curPos.z;
playerState->currentPos.x = currentPosX;
playerState->currentPos.y = currentPosY + 150.0f;
playerState->currentPos.z = currentPosZ;
playerState->curPos.x = currentPosX;
playerState->curPos.y = currentPosY + 150.0f;
playerState->curPos.z = currentPosZ;
playerState->goalPos.x = currentPosX;
playerState->goalPos.y = currentPosY;
@ -404,12 +404,12 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
} else {
N(effect) = fx_peach_star_beam(1, currentPosX, currentPosY, currentPosZ, 1.0f, 0);
}
playerState->distance = 48.0f;
playerState->dist = 48.0f;
N(effect)->data.peachStarBeam->unk_3C = 0;
N(effect)->data.peachStarBeam->circleRadius = playerState->distance;
N(effect)->data.peachStarBeam->circleRadius = playerState->dist;
N(effect)->data.peachStarBeam->beamAlpha = 0;
N(effect)->data.peachStarBeam->twinkYOffset = 30.0f;
N(effect)->data.peachStarBeam->rotationSpeed = 5.0f;
N(effect)->data.peachStarBeam->rotSpeed = 5.0f;
for (i = 0; i < ARRAY_COUNT(N(miscParticlesTimeLeft)); i++) {
N(miscParticlesTimeLeft)[i] = rand_int(20);
}
@ -423,12 +423,12 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
script->functionTemp[0] = PEACH_STAR_BEAM_SPIRITS_APPEAR;
break;
case PEACH_STAR_BEAM_SPIRITS_APPEAR:
playerState->currentPos.y += (playerState->goalPos.y - playerState->currentPos.y) / 10.0f;
N(effect)->data.peachStarBeam->circleCenter.x = playerState->currentPos.x;
N(effect)->data.peachStarBeam->circleCenter.y = playerState->currentPos.y;
N(effect)->data.peachStarBeam->circleCenter.z = playerState->currentPos.z;
playerState->curPos.y += (playerState->goalPos.y - playerState->curPos.y) / 10.0f;
N(effect)->data.peachStarBeam->circleCenter.x = playerState->curPos.x;
N(effect)->data.peachStarBeam->circleCenter.y = playerState->curPos.y;
N(effect)->data.peachStarBeam->circleCenter.z = playerState->curPos.z;
N(effect)->data.peachStarBeam->unk_3C = 0;
N(effect)->data.peachStarBeam->circleRadius = playerState->distance;
N(effect)->data.peachStarBeam->circleRadius = playerState->dist;
N(effect)->data.peachStarBeam->beamAlpha = 0;
if (script->functionTemp[1] == 0) {
script->functionTemp[1] = 20;
@ -448,8 +448,8 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
}
break;
case PEACH_STAR_BEAM_SHRINK_CIRCLE:
playerState->distance += (24.0f - playerState->distance) * 0.125f;
N(effect)->data.peachStarBeam->circleRadius = playerState->distance;
playerState->dist += (24.0f - playerState->dist) * 0.125f;
N(effect)->data.peachStarBeam->circleRadius = playerState->dist;
if (script->functionTemp[1] == 0) {
playerState->goalPos.x = targetPosX;
playerState->goalPos.y = targetPosY;
@ -470,45 +470,45 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
break;
case PEACH_STAR_BEAM_FLY_TO_TARGET:
cond = FALSE;
playerState->distance += (48.0f - playerState->distance) * 0.25f;
N(effect)->data.peachStarBeam->circleRadius = playerState->distance;
playerState->dist += (48.0f - playerState->dist) * 0.25f;
N(effect)->data.peachStarBeam->circleRadius = playerState->dist;
for (i = 0; i < 2; i++) {
if (i != 0) {
spirit = &effectData->spirits[i];
if (N(spiritsFlyDelay)[i] < 0) {
currentPosX = playerState->currentPos.x;
currentPosY = playerState->currentPos.y;
currentPosZ = playerState->currentPos.z;
currentPosX = playerState->curPos.x;
currentPosY = playerState->curPos.y;
currentPosZ = playerState->curPos.z;
goalPosX = playerState->goalPos.x;
goalPosY = playerState->goalPos.y;
goalPosZ = playerState->goalPos.z;
playerState->currentPos.x += goalPosX - currentPosX;
playerState->currentPos.y += goalPosY - currentPosY;
playerState->currentPos.z += goalPosZ - currentPosZ;
playerState->curPos.x += goalPosX - currentPosX;
playerState->curPos.y += goalPosY - currentPosY;
playerState->curPos.z += goalPosZ - currentPosZ;
} else {
cond = TRUE;
if (N(spiritsFlyDelay)[i] != 0) {
N(spiritsFlyDelay)[i]--;
} else {
currentPosX = playerState->currentPos.x;
currentPosY = playerState->currentPos.y;
currentPosZ = playerState->currentPos.z;
currentPosX = playerState->curPos.x;
currentPosY = playerState->curPos.y;
currentPosZ = playerState->curPos.z;
goalPosX = playerState->goalPos.x;
goalPosY = playerState->goalPos.y;
goalPosZ = playerState->goalPos.z;
dist = dist2D(currentPosX, currentPosZ, goalPosX, goalPosZ);
playerState->currentPos.x += (goalPosX - currentPosX) / N(spiritsMoveTime)[i];
playerState->currentPos.y += (goalPosY - currentPosY) / N(spiritsMoveTime)[i];
playerState->currentPos.z += (goalPosZ - currentPosZ) / N(spiritsMoveTime)[i];
playerState->curPos.x += (goalPosX - currentPosX) / N(spiritsMoveTime)[i];
playerState->curPos.y += (goalPosY - currentPosY) / N(spiritsMoveTime)[i];
playerState->curPos.z += (goalPosZ - currentPosZ) / N(spiritsMoveTime)[i];
if (N(spiritsMoveTime)[i] == 1) {
N(spiritsFlyDelay)[i] = -1;
playerState->currentPos.x = goalPosX;
playerState->currentPos.y = goalPosY;
playerState->currentPos.z = goalPosZ;
playerState->curPos.x = goalPosX;
playerState->curPos.y = goalPosY;
playerState->curPos.z = goalPosZ;
} else {
playerState->currentPos.y += dist / 60.0f;
playerState->curPos.y += dist / 60.0f;
}
N(spiritsMoveTime)[i]--;
}
@ -516,22 +516,22 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
}
}
N(effect)->data.peachStarBeam->circleCenter.x = playerState->currentPos.x;
N(effect)->data.peachStarBeam->circleCenter.y = playerState->currentPos.y;
N(effect)->data.peachStarBeam->circleCenter.z = playerState->currentPos.z;
N(effect)->data.peachStarBeam->pos.x = playerState->currentPos.x;
N(effect)->data.peachStarBeam->circleCenter.x = playerState->curPos.x;
N(effect)->data.peachStarBeam->circleCenter.y = playerState->curPos.y;
N(effect)->data.peachStarBeam->circleCenter.z = playerState->curPos.z;
N(effect)->data.peachStarBeam->pos.x = playerState->curPos.x;
N(effect)->data.peachStarBeam->pos.y = 0.0f;
N(effect)->data.peachStarBeam->pos.z = playerState->currentPos.z;
N(effect)->data.peachStarBeam->pos.z = playerState->curPos.z;
if (!cond) {
playerState->currentPos.x = playerState->goalPos.x;
playerState->currentPos.y = playerState->goalPos.y;
playerState->currentPos.z = playerState->goalPos.z;
N(effect)->data.peachStarBeam->circleCenter.x = playerState->currentPos.x;
N(effect)->data.peachStarBeam->circleCenter.y = playerState->currentPos.y;
N(effect)->data.peachStarBeam->circleCenter.z = playerState->currentPos.z;
N(effect)->data.peachStarBeam->pos.x = playerState->currentPos.x;
playerState->curPos.x = playerState->goalPos.x;
playerState->curPos.y = playerState->goalPos.y;
playerState->curPos.z = playerState->goalPos.z;
N(effect)->data.peachStarBeam->circleCenter.x = playerState->curPos.x;
N(effect)->data.peachStarBeam->circleCenter.y = playerState->curPos.y;
N(effect)->data.peachStarBeam->circleCenter.z = playerState->curPos.z;
N(effect)->data.peachStarBeam->pos.x = playerState->curPos.x;
N(effect)->data.peachStarBeam->pos.y = 0.0f;
N(effect)->data.peachStarBeam->pos.z = playerState->currentPos.z;
N(effect)->data.peachStarBeam->pos.z = playerState->curPos.z;
effectData = N(effect)->data.peachStarBeam;
for (i = 0; i < ARRAY_COUNT(effectData->spirits); i++) {
if (script->functionTemp[2] != 0 || i != 0) {
@ -562,9 +562,9 @@ API_CALLABLE(N(ProcessPeachStarBeam)) {
}
newScript = start_script(&N(802A33A8), EVT_PRIORITY_A, 0);
newScript->varTable[0] = playerState->currentPos.x;
newScript->varTable[1] = playerState->currentPos.y * 0.5f;
newScript->varTable[2] = playerState->currentPos.z;
newScript->varTable[0] = playerState->curPos.x;
newScript->varTable[1] = playerState->curPos.y * 0.5f;
newScript->varTable[2] = playerState->curPos.z;
newScript->varTable[10] = script->functionTemp[2];
do {} while (0); // required to match

View File

@ -18,9 +18,9 @@ API_CALLABLE(N(CheckDripCollisionWithActors)) {
actor = battleStatus->playerActor;
if (actor != NULL) {
xDiff = actor->currentPos.x - model->center.x;
yDiff = actor->currentPos.y + actor->size.y - 1.5f - model->center.y;
zDiff = actor->currentPos.z - model->center.z;
xDiff = actor->curPos.x - model->center.x;
yDiff = actor->curPos.y + actor->size.y - 1.5f - model->center.y;
zDiff = actor->curPos.z - model->center.z;
temp = sqrtf(SQ(xDiff) + SQ(zDiff));
if (yDiff > 0.0f && yDiff < actor->size.y && temp < actor->size.x * 0.5f) {
@ -31,9 +31,9 @@ API_CALLABLE(N(CheckDripCollisionWithActors)) {
actor = battleStatus->partnerActor;
if (actor != NULL) {
xDiff = actor->currentPos.x - model->center.x;
yDiff = actor->currentPos.y + actor->size.y - 1.5f - model->center.y;
zDiff = actor->currentPos.z - model->center.z;
xDiff = actor->curPos.x - model->center.x;
yDiff = actor->curPos.y + actor->size.y - 1.5f - model->center.y;
zDiff = actor->curPos.z - model->center.z;
temp = sqrtf(SQ(xDiff) + SQ(zDiff));
if (yDiff > 0.0f && yDiff < actor->size.y && temp < actor->size.x * 0.5f) {
@ -48,9 +48,9 @@ API_CALLABLE(N(CheckDripCollisionWithActors)) {
actor = battleStatus->enemyActors[i];
if (actor != NULL && !(actor->flags & ACTOR_FLAG_DISABLED)) {
xDiff = actor->currentPos.x - model->center.x;
yDiff = actor->currentPos.y + actor->size.y - 1.5f - model->center.y;
zDiff = actor->currentPos.z - model->center.z;
xDiff = actor->curPos.x - model->center.x;
yDiff = actor->curPos.y + actor->size.y - 1.5f - model->center.y;
zDiff = actor->curPos.z - model->center.z;
temp = sqrtf(SQ(xDiff) + SQ(zDiff));
if (yDiff > 0.0f && yDiff < actor->size.y && temp < actor->size.x * 0.5f) {
@ -61,9 +61,9 @@ API_CALLABLE(N(CheckDripCollisionWithActors)) {
for (part = actor->partsTable; part != NULL; part = part->nextPart) {
if (!(part->flags & ACTOR_PART_FLAG_INVISIBLE)) {
if (part->flags & ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION) {
xDiff = part->currentPos.x - model->center.x;
yDiff = part->currentPos.y + part->size.y - 1.5f - model->center.y;
zDiff = part->currentPos.z - model->center.z;
xDiff = part->curPos.x - model->center.x;
yDiff = part->curPos.y + part->size.y - 1.5f - model->center.y;
zDiff = part->curPos.z - model->center.z;
temp = sqrtf(SQ(xDiff) + SQ(zDiff));
if (yDiff > 0.0f && yDiff < part->size.y && temp < part->size.x * 0.5f) {

View File

@ -7,9 +7,9 @@
API_CALLABLE(func_802A1000_737890) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* playerActor = battleStatus->playerActor;
f32 xPos = playerActor->currentPos.x + 20.0f;
f32 yPos = playerActor->currentPos.y + 15.0f;
f32 zPos = playerActor->currentPos.z + 5.0f;
f32 xPos = playerActor->curPos.x + 20.0f;
f32 yPos = playerActor->curPos.y + 15.0f;
f32 zPos = playerActor->curPos.z + 5.0f;
fx_stars_spread(0, xPos, yPos, zPos, 6, 20);
@ -19,9 +19,9 @@ API_CALLABLE(func_802A1000_737890) {
API_CALLABLE(func_802A1074_737904) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* playerActor = battleStatus->playerActor;
f32 xPos = playerActor->currentPos.x + 20.0f;
f32 yPos = playerActor->currentPos.y + 15.0f;
f32 zPos = playerActor->currentPos.z + 5.0f;
f32 xPos = playerActor->curPos.x + 20.0f;
f32 yPos = playerActor->curPos.y + 15.0f;
f32 zPos = playerActor->curPos.z + 5.0f;
fx_steam_burst(0, xPos, yPos, zPos, 1.0f, 20);

View File

@ -17,9 +17,9 @@ API_CALLABLE(N(func_802A123C_73330C)) {
s32 c = evt_get_variable(script, *args++);
ItemEntity* item = get_item_entity(script->varTable[14]);
item->position.x = a;
item->position.y = b;
item->position.z = c;
item->pos.x = a;
item->pos.y = b;
item->pos.z = c;
return ApiStatus_DONE2;
}

View File

@ -17,9 +17,9 @@ API_CALLABLE(N(func_802A123C_72E76C)) {
s32 c = evt_get_variable(script, *args++);
ItemEntity* item = get_item_entity(script->varTable[14]);
item->position.x = a;
item->position.y = b;
item->position.z = c;
item->pos.x = a;
item->pos.y = b;
item->pos.z = c;
return ApiStatus_DONE2;
}

View File

@ -17,9 +17,9 @@ API_CALLABLE(N(func_802A123C_715A8C)) {
s32 c = evt_get_variable(script, *args++);
ItemEntity* item = get_item_entity(script->varTable[14]);
item->position.x = a;
item->position.y = b;
item->position.z = c;
item->pos.x = a;
item->pos.y = b;
item->pos.z = c;
return ApiStatus_DONE2;
}

View File

@ -17,10 +17,10 @@ API_CALLABLE(N(func_802A123C_718A8C)) {
if (player->scalingFactor == 1.0) {
s32 var = script->varTable[10];
get_entity_by_index(var);
collisionStatus->currentCeiling = var | COLLISION_WITH_ENTITY_BIT;
collisionStatus->curCeiling = var | COLLISION_WITH_ENTITY_BIT;
playerStatus->flags |= PS_FLAG_JUMPING;
update_entities();
collisionStatus->currentCeiling = -1;
collisionStatus->curCeiling = -1;
playerStatus->flags &= ~PS_FLAG_JUMPING;
return ApiStatus_DONE2;
}
@ -45,7 +45,7 @@ API_CALLABLE(N(func_802A1318_718B68)) {
entity->scale.y = player->scalingFactor;
entity->scale.z = player->scalingFactor;
if (player->scalingFactor != 1.0) {
entity->position.y -= 10.0f;
entity->pos.y -= 10.0f;
}
return ApiStatus_DONE2;

View File

@ -26,9 +26,9 @@ API_CALLABLE(N(func_802A123C_7217DC)) {
case 1:
for (i = 0; i < 10; i++) {
f32 x = player->currentPos.x + ((rand_int(20) - 10) * player->scalingFactor);
f32 y = player->currentPos.y + ((rand_int(20) + 10) * player->scalingFactor);
f32 z = player->currentPos.z + 5.0f;
f32 x = player->curPos.x + ((rand_int(20) - 10) * player->scalingFactor);
f32 y = player->curPos.y + ((rand_int(20) + 10) * player->scalingFactor);
f32 z = player->curPos.z + 5.0f;
fx_floating_cloud_puff(0, x, y, z, 1.0f, 25);
}

View File

@ -17,9 +17,9 @@ API_CALLABLE(N(func_802A123C_724F1C)) {
s32 c = evt_get_variable(script, *args++);
ItemEntity* item = get_item_entity(script->varTable[14]);
item->position.x = a;
item->position.y = b;
item->position.z = c;
item->pos.x = a;
item->pos.y = b;
item->pos.z = c;
return ApiStatus_DONE2;
}

View File

@ -17,9 +17,9 @@ API_CALLABLE(N(func_802A123C_722D7C)) {
if (actor != NULL) {
sfx_play_sound(SOUND_366);
posX = actor->currentPos.x;
posY = actor->currentPos.y + (actor->size.y / 10);
posZ = actor->currentPos.z;
posX = actor->curPos.x;
posY = actor->curPos.y + (actor->size.y / 10);
posZ = actor->curPos.z;
scaleX = (actor->size.x + (actor->size.x >> 2)) * actor->scalingFactor;
scaleY = (actor->size.y - 2) * actor->scalingFactor;

View File

@ -34,9 +34,9 @@ API_CALLABLE(N(func_802A1354_71B4F4)) {
if (actor != NULL) {
sfx_play_sound(SOUND_366);
posX = actor->currentPos.x;
posY = actor->currentPos.y + (actor->size.y / 10);
posZ = actor->currentPos.z;
posX = actor->curPos.x;
posY = actor->curPos.y + (actor->size.y / 10);
posZ = actor->curPos.z;
scaleX = (actor->size.x + (actor->size.x >> 2)) * actor->scalingFactor;
scaleY = (actor->size.y - 2) * actor->scalingFactor;

View File

@ -87,15 +87,15 @@ API_CALLABLE(func_802A16F4_7907C4) {
dispatch_damage_event_actor_0(target, 0, 10);
x = target->currentPos.x + target->headOffset.x + (target->size.x / 2);
x = target->curPos.x + target->headOffset.x + (target->size.x / 2);
if (target->flags & ACTOR_FLAG_UPSIDE_DOWN) {
y = target->currentPos.y + target->headOffset.y - target->size.y;
y = target->curPos.y + target->headOffset.y - target->size.y;
} else if (!(target->flags & ACTOR_FLAG_8000)) {
y = target->currentPos.y + target->headOffset.y + target->size.y;
y = target->curPos.y + target->headOffset.y + target->size.y;
} else {
y = target->currentPos.y + target->headOffset.y + target->size.y * 2;
y = target->curPos.y + target->headOffset.y + target->size.y * 2;
}
z = target->currentPos.z + target->headOffset.z + 5.0f;
z = target->curPos.z + target->headOffset.z + 5.0f;
fx_stat_change(5, x, y, z, 1.0f, 60);
sfx_play_sound(SOUND_2106);

View File

@ -24,7 +24,7 @@ API_CALLABLE(func_802A1518_78BB18) {
npc->planarFlyDist = 0;
npc->yaw = 0;
npc->duration = 0;
npc->jumpVelocity = -1.5f;
npc->jumpVel = -1.5f;
npc->jumpScale = 0.02f;
npc->moveSpeed = 1.0f;
npc->moveToPos.x = npc->pos.x;
@ -33,7 +33,7 @@ API_CALLABLE(func_802A1518_78BB18) {
script->functionTemp[0] = 1;
break;
case 1:
if (npc->jumpVelocity < 0.0f) {
if (npc->jumpVel < 0.0f) {
npc->planarFlyDist += 3.0;
if (npc->planarFlyDist > 40.0f) {
npc->planarFlyDist = 40.0f;
@ -46,8 +46,8 @@ API_CALLABLE(func_802A1518_78BB18) {
}
npc->moveSpeed += 0.75;
npc->jumpVelocity += npc->jumpScale;
npc->pos.y += npc->jumpVelocity;
npc->jumpVel += npc->jumpScale;
npc->pos.y += npc->jumpVel;
if (npc->moveSpeed > 33.0f) {
npc->moveSpeed = 33.0f;
}

View File

@ -83,26 +83,26 @@ API_CALLABLE(N(SlowDown)) {
ActorState* partnerActorMovement = &partnerActor->state;
if (isInitialCall) {
partnerActor->state.currentPos.x = partnerActor->currentPos.x;
partnerActor->state.currentPos.y = partnerActor->currentPos.y;
partnerActor->state.currentPos.z = partnerActor->currentPos.z;
partnerActor->state.curPos.x = partnerActor->curPos.x;
partnerActor->state.curPos.y = partnerActor->curPos.y;
partnerActor->state.curPos.z = partnerActor->curPos.z;
}
add_xz_vec3f(&partnerActorMovement->currentPos, partnerActor->state.speed, partnerActor->state.angle);
add_xz_vec3f(&partnerActorMovement->curPos, partnerActor->state.speed, partnerActor->state.angle);
if (partnerActor->state.speed < 4.0f) {
play_movement_dust_effects(0, partnerActor->state.currentPos.x, partnerActor->state.currentPos.y,
partnerActor->state.currentPos.z, partnerActor->state.angle);
play_movement_dust_effects(0, partnerActor->state.curPos.x, partnerActor->state.curPos.y,
partnerActor->state.curPos.z, partnerActor->state.angle);
} else {
play_movement_dust_effects(1, partnerActor->state.currentPos.x, partnerActor->state.currentPos.y,
partnerActor->state.currentPos.z, partnerActor->state.angle);
play_movement_dust_effects(1, partnerActor->state.curPos.x, partnerActor->state.curPos.y,
partnerActor->state.curPos.z, partnerActor->state.angle);
}
partnerActorMovement->speed /= 1.5;
partnerActor->currentPos.x = partnerActorMovement->currentPos.x;
partnerActor->currentPos.y = partnerActorMovement->currentPos.y;
partnerActor->currentPos.z = partnerActorMovement->currentPos.z;
partnerActor->curPos.x = partnerActorMovement->curPos.x;
partnerActor->curPos.y = partnerActorMovement->curPos.y;
partnerActor->curPos.z = partnerActorMovement->curPos.z;
if (partnerActorMovement->speed < 1.0) {
return ApiStatus_DONE2;

View File

@ -37,9 +37,9 @@ enum N(ActorPartIDs) {
API_CALLABLE(N(GetReturnMoveTime)) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* partner = battleStatus->partnerActor;
f32 posX = partner->currentPos.x;
f32 posY = partner->currentPos.y;
f32 posZ = partner->currentPos.z;
f32 posX = partner->curPos.x;
f32 posY = partner->curPos.y;
f32 posZ = partner->curPos.z;
f32 goalX = partner->state.goalPos.x;
f32 goalY = partner->state.goalPos.y;
f32 goalZ = partner->state.goalPos.z;
@ -103,38 +103,38 @@ API_CALLABLE(N(JumpOnTarget)) {
}
if (script->functionTemp[0] == 0) {
state->currentPos.x = actor->currentPos.x;
state->currentPos.y = actor->currentPos.y;
state->curPos.x = actor->curPos.x;
state->curPos.y = actor->curPos.y;
stateGoalX = state->goalPos.x;
stateGoalZ = state->goalPos.z;
stateCurrentX = state->currentPos.x;
stateCurrentZ = actor->currentPos.z;
state->currentPos.z = stateCurrentZ;
stateCurrentX = state->curPos.x;
stateCurrentZ = actor->curPos.z;
state->curPos.z = stateCurrentZ;
state->angle = atan2(stateCurrentX, stateCurrentZ, stateGoalX, stateGoalZ);
state->distance = dist2D(stateCurrentX, stateCurrentZ, stateGoalX, stateGoalZ);
state->dist = dist2D(stateCurrentX, stateCurrentZ, stateGoalX, stateGoalZ);
if (state->moveTime == 0) {
state->moveTime = state->distance / state->speed;
temp = state->distance - (state->moveTime * state->speed);
state->moveTime = state->dist / state->speed;
temp = state->dist - (state->moveTime * state->speed);
} else {
state->speed = state->distance / state->moveTime;
temp = state->distance - (state->moveTime * state->speed);
state->speed = state->dist / state->moveTime;
temp = state->dist - (state->moveTime * state->speed);
}
if (state->moveTime == 0) {
return ApiStatus_DONE2;
}
state->unk_30.x = (state->goalPos.x - state->currentPos.x) / state->moveTime;
state->unk_30.y = (state->goalPos.y - state->currentPos.y) / state->moveTime;
state->unk_30.z = (state->goalPos.z - state->currentPos.z) / state->moveTime;
state->unk_30.x = (state->goalPos.x - state->curPos.x) / state->moveTime;
state->unk_30.y = (state->goalPos.y - state->curPos.y) / state->moveTime;
state->unk_30.z = (state->goalPos.z - state->curPos.z) / state->moveTime;
state->acceleration = PI_S / state->moveTime;
state->velocity = 0.0f;
state->vel = 0.0f;
state->speed += temp / state->moveTime;
if (state->moveArcAmplitude < 3) {
state->unk_24 = 90.0f;
state->unk_28 = 360 / state->moveTime;
temp = state->distance;
temp = state->dist;
temp -= 20.0;
temp /= 6.0;
temp += 47.0;
@ -144,13 +144,13 @@ API_CALLABLE(N(JumpOnTarget)) {
}
state->unk_18.x = 0.0f;
state->unk_18.y = 0.0f;
vel3 = state->velocity;
vel3 = state->vel;
acc3 = state->acceleration;
state->velocity = vel3 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.53 * acc3) + acc3);
state->vel = vel3 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.53 * acc3) + acc3);
} else {
state->unk_24 = 90.0f;
state->unk_28 = 360 / state->moveTime;
temp = state->distance;
temp = state->dist;
temp -= 20.0;
temp /= 6.0;
temp += 47.0;
@ -160,9 +160,9 @@ API_CALLABLE(N(JumpOnTarget)) {
}
state->unk_18.x = 0.0f;
state->unk_18.y = 0.0f;
vel4 = state->velocity;
vel4 = state->vel;
acc4 = state->acceleration;
state->velocity = vel4 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.8 * acc4) + acc4);
state->vel = vel4 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.8 * acc4) + acc4);
}
set_animation(ACTOR_PARTNER, 1, state->animJumpRise);
script->functionTemp[0] = 1;
@ -170,41 +170,41 @@ API_CALLABLE(N(JumpOnTarget)) {
switch (script->functionTemp[0]) {
case 1:
if (state->velocity > PI_S / 2) {
if (state->vel > PI_S / 2) {
set_animation(ACTOR_PARTNER, 1, state->animJumpFall);
}
oldActorX = actor->currentPos.x;
oldActorY = actor->currentPos.y;
state->currentPos.x += state->unk_30.x;
state->currentPos.y = state->currentPos.y + state->unk_30.y;
state->currentPos.z = state->currentPos.z + state->unk_30.z;
state->unk_18.x = actor->currentPos.y;
actor->currentPos.x = state->currentPos.x;
actor->currentPos.y = state->currentPos.y + (state->bounceDivisor * sin_rad(state->velocity));
actor->currentPos.z = state->currentPos.z;
if (state->goalPos.y > actor->currentPos.y && state->moveTime < 3) {
actor->currentPos.y = state->goalPos.y;
oldActorX = actor->curPos.x;
oldActorY = actor->curPos.y;
state->curPos.x += state->unk_30.x;
state->curPos.y = state->curPos.y + state->unk_30.y;
state->curPos.z = state->curPos.z + state->unk_30.z;
state->unk_18.x = actor->curPos.y;
actor->curPos.x = state->curPos.x;
actor->curPos.y = state->curPos.y + (state->bounceDivisor * sin_rad(state->vel));
actor->curPos.z = state->curPos.z;
if (state->goalPos.y > actor->curPos.y && state->moveTime < 3) {
actor->curPos.y = state->goalPos.y;
}
actor->rotation.z = -atan2(oldActorX, -oldActorY, actor->currentPos.x, -actor->currentPos.y);
state->unk_18.y = actor->currentPos.y;
actor->rot.z = -atan2(oldActorX, -oldActorY, actor->curPos.x, -actor->curPos.y);
state->unk_18.y = actor->curPos.y;
if (state->moveArcAmplitude < 3) {
vel1 = state->velocity;
vel1 = state->vel;
acc1 = state->acceleration;
state->velocity = vel1 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.53 * acc1) + acc1);
state->vel = vel1 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.53 * acc1) + acc1);
} else {
vel2 = state->velocity;
vel2 = state->vel;
acc2 = state->acceleration;
state->velocity = vel2 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.8 * acc2) + acc2);
state->vel = vel2 + ((sin_rad(DEG_TO_RAD(state->unk_24)) * 0.8 * acc2) + acc2);
}
state->unk_24 += state->unk_28;
state->unk_24 = clamp_angle(state->unk_24);
state->moveTime--;
if (state->moveTime == 0) {
actor->currentPos.y = state->goalPos.y;
actor->curPos.y = state->goalPos.y;
state->acceleration = 1.8f;
state->velocity = -(state->unk_18.x - state->unk_18.y);
state->vel = -(state->unk_18.x - state->unk_18.y);
set_animation(ACTOR_PARTNER, 1, state->animJumpLand);
return ApiStatus_DONE1;
}
@ -216,23 +216,23 @@ API_CALLABLE(N(JumpOnTarget)) {
state->moveTime = 1;
state->acceleration = 1.8f;
state->unk_24 = 90.0f;
state->velocity = -(state->unk_18.x - state->unk_18.y);
state->vel = -(state->unk_18.x - state->unk_18.y);
state->bounceDivisor = fabsf(state->unk_18.x - state->unk_18.y) / 16.5;
state->unk_28 = 360 / state->moveTime;
state->currentPos.x = actor->currentPos.x;
state->currentPos.y = actor->currentPos.y;
state->currentPos.z = actor->currentPos.z;
state->curPos.x = actor->curPos.x;
state->curPos.y = actor->curPos.y;
state->curPos.z = actor->curPos.z;
script->functionTemp[0] = 3;
// fallthrough
case 3:
currentPosX64 = state->currentPos.x; // required to match
state->currentPos.x = currentPosX64 + state->bounceDivisor * sin_rad(DEG_TO_RAD(state->unk_24)) / 33.0;
state->currentPos.y -= state->bounceDivisor * sin_rad(DEG_TO_RAD(state->unk_24));
currentPosX64 = state->curPos.x; // required to match
state->curPos.x = currentPosX64 + state->bounceDivisor * sin_rad(DEG_TO_RAD(state->unk_24)) / 33.0;
state->curPos.y -= state->bounceDivisor * sin_rad(DEG_TO_RAD(state->unk_24));
state->unk_24 += state->unk_28;
state->unk_24 = clamp_angle(state->unk_24);
actor->currentPos.x = state->currentPos.x;
actor->currentPos.y = state->currentPos.y;
actor->currentPos.z = state->currentPos.z;
actor->curPos.x = state->curPos.x;
actor->curPos.y = state->curPos.y;
actor->curPos.z = state->curPos.z;
if (gBattleStatus.flags1 & BS_FLAGS1_2000) {
return ApiStatus_DONE2;
@ -251,38 +251,38 @@ API_CALLABLE(N(JumpOnTarget)) {
API_CALLABLE(N(OnMissHeadbonk)) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* partner = gBattleStatus.partnerActor;
Vec3f* pos = &partner->state.currentPos;
Vec3f* pos = &partner->state.curPos;
if (isInitialCall) {
script->functionTemp[0] = 0;
}
if (script->functionTemp[0] == 0) {
partner->state.currentPos.x = partner->currentPos.x;
partner->state.currentPos.y = partner->currentPos.y;
partner->state.currentPos.z = partner->currentPos.z;
partner->state.curPos.x = partner->curPos.x;
partner->state.curPos.y = partner->curPos.y;
partner->state.curPos.z = partner->curPos.z;
script->functionTemp[0] = 1;
}
if (partner->state.velocity > 0.0f) {
if (partner->state.vel > 0.0f) {
set_animation(ACTOR_PARTNER, 0, partner->state.animJumpRise);
}
if (partner->state.velocity < 0.0f) {
if (partner->state.vel < 0.0f) {
set_animation(ACTOR_PARTNER, 0, partner->state.animJumpFall);
}
partner->state.currentPos.y = (partner->state.currentPos.y + partner->state.velocity);
partner->state.velocity = (partner->state.velocity - partner->state.acceleration);
partner->state.curPos.y = (partner->state.curPos.y + partner->state.vel);
partner->state.vel = (partner->state.vel - partner->state.acceleration);
add_xz_vec3f(pos, partner->state.speed, partner->state.angle);
partner->currentPos.x = partner->state.currentPos.x;
partner->currentPos.y = partner->state.currentPos.y;
partner->currentPos.z = partner->state.currentPos.z;
partner->curPos.x = partner->state.curPos.x;
partner->curPos.y = partner->state.curPos.y;
partner->curPos.z = partner->state.curPos.z;
if (partner->currentPos.y < 10.0f) {
partner->currentPos.y = 10.0f;
if (partner->curPos.y < 10.0f) {
partner->curPos.y = 10.0f;
play_movement_dust_effects(2, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z,
play_movement_dust_effects(2, partner->curPos.x, partner->curPos.y, partner->curPos.z,
partner->yaw);
sfx_play_sound(SOUND_SOFT_LAND);

View File

@ -36,26 +36,26 @@ API_CALLABLE(N(SlowDown)) {
ActorState* partnerActorMovement = &partnerActor->state;
if (isInitialCall) {
partnerActor->state.currentPos.x = partnerActor->currentPos.x;
partnerActor->state.currentPos.y = partnerActor->currentPos.y;
partnerActor->state.currentPos.z = partnerActor->currentPos.z;
partnerActor->state.curPos.x = partnerActor->curPos.x;
partnerActor->state.curPos.y = partnerActor->curPos.y;
partnerActor->state.curPos.z = partnerActor->curPos.z;
}
add_xz_vec3f(&partnerActorMovement->currentPos, partnerActor->state.speed, partnerActor->state.angle);
add_xz_vec3f(&partnerActorMovement->curPos, partnerActor->state.speed, partnerActor->state.angle);
if (partnerActor->state.speed < 4.0f) {
play_movement_dust_effects(0, partnerActor->state.currentPos.x, partnerActor->state.currentPos.y,
partnerActor->state.currentPos.z, partnerActor->state.angle);
play_movement_dust_effects(0, partnerActor->state.curPos.x, partnerActor->state.curPos.y,
partnerActor->state.curPos.z, partnerActor->state.angle);
} else {
play_movement_dust_effects(1, partnerActor->state.currentPos.x, partnerActor->state.currentPos.y,
partnerActor->state.currentPos.z, partnerActor->state.angle);
play_movement_dust_effects(1, partnerActor->state.curPos.x, partnerActor->state.curPos.y,
partnerActor->state.curPos.z, partnerActor->state.angle);
}
partnerActorMovement->speed = partnerActorMovement->speed / 1.5;
partnerActor->currentPos.x = partnerActorMovement->currentPos.x;
partnerActor->currentPos.y = partnerActorMovement->currentPos.y;
partnerActor->currentPos.z = partnerActorMovement->currentPos.z;
partnerActor->curPos.x = partnerActorMovement->curPos.x;
partnerActor->curPos.y = partnerActorMovement->curPos.y;
partnerActor->curPos.z = partnerActorMovement->curPos.z;
if (partnerActorMovement->speed < 1.0) {
return ApiStatus_DONE2;
@ -80,7 +80,7 @@ API_CALLABLE(N(SetTargetsYaw)) {
if (script->functionTemp[0] == 0) {
for (i = 0; i < actor->targetListLength; i++) {
x = actor->currentPos.x;
x = actor->curPos.x;
target = &actor->targetData[actor->targetIndexList[i]];
targetX = target->posA.x;
targetActor = get_actor(target->actorID);

View File

@ -424,20 +424,20 @@ API_CALLABLE(N(SpinyFlipActionCommand)) {
hudAim[i] = idAim = hud_element_create(N(aimHudScripts)[i]);
hud_element_set_render_depth(idAim, 10);
}
partnerState->currentPos.x = partner->currentPos.x + 33.0f;
partnerState->currentPos.y = partner->currentPos.y + 34.0f;
partnerState->currentPos.z = partner->currentPos.z + 15.0f;
partnerState->unk_18.x = partner->currentPos.x + 33.0f;
partnerState->unk_18.y = partner->currentPos.y + 34.0f;
partnerState->unk_18.z = partner->currentPos.z + 15.0f;
partnerState->curPos.x = partner->curPos.x + 33.0f;
partnerState->curPos.y = partner->curPos.y + 34.0f;
partnerState->curPos.z = partner->curPos.z + 15.0f;
partnerState->unk_18.x = partner->curPos.x + 33.0f;
partnerState->unk_18.y = partner->curPos.y + 34.0f;
partnerState->unk_18.z = partner->curPos.z + 15.0f;
set_goal_pos_to_part(partnerState, partner->targetActorID, partner->targetPartIndex);
target = get_actor(partner->targetActorID);
part = get_actor_part(target, partner->targetPartIndex);
partnerState->goalPos.x += part->projectileTargetOffset.x;
partnerState->goalPos.y += part->projectileTargetOffset.y;
partnerState->goalPos.z = partnerState->goalPos.z; // required to match
partnerState->distance = dist2D(partnerState->currentPos.x,
partnerState->currentPos.y,
partnerState->dist = dist2D(partnerState->curPos.x,
partnerState->curPos.y,
partnerState->goalPos.x,
partnerState->goalPos.y);
partnerState->speed = 0.0f;
@ -514,22 +514,22 @@ API_CALLABLE(N(SpinyFlipActionCommand)) {
sinTheta = sin_rad(theta);
cosTheta = cos_rad(theta);
speed = partnerState->speed;
partnerState->currentPos.x += speed * sinTheta;
partnerState->currentPos.y += speed * cosTheta;
partnerState->curPos.x += speed * sinTheta;
partnerState->curPos.y += speed * cosTheta;
}
if (partnerState->currentPos.x < -30.0f) {
partnerState->currentPos.x = -30.0f;
if (partnerState->curPos.x < -30.0f) {
partnerState->curPos.x = -30.0f;
}
if (partnerState->currentPos.x > 170.0f) {
partnerState->currentPos.x = 170.0f;
if (partnerState->curPos.x > 170.0f) {
partnerState->curPos.x = 170.0f;
}
if (partnerState->currentPos.y > 130.0f) {
partnerState->currentPos.y = 130.0f;
if (partnerState->curPos.y > 130.0f) {
partnerState->curPos.y = 130.0f;
}
if (partnerState->currentPos.y < 0.0f) {
partnerState->currentPos.y = 0.0f;
if (partnerState->curPos.y < 0.0f) {
partnerState->curPos.y = 0.0f;
}
if (battleStatus->currentButtonsPressed & BUTTON_A) {
if (battleStatus->curButtonsPressed & BUTTON_A) {
sAimingTimer = 0;
}
if (sAimingTimer == 60) {
@ -544,11 +544,11 @@ API_CALLABLE(N(SpinyFlipActionCommand)) {
}
script->varTable[14] = 0;
script->varTable[15] = 0;
script->varTable[7] = partnerState->currentPos.x;
script->varTable[8] = partnerState->currentPos.y;
script->varTable[9] = partnerState->currentPos.z;
partnerState->distance = dist2D(partnerState->currentPos.x, partnerState->currentPos.y, partnerState->goalPos.x, partnerState->goalPos.y) / partnerState->unk_24;
if (partnerState->distance <= 12.0) {
script->varTable[7] = partnerState->curPos.x;
script->varTable[8] = partnerState->curPos.y;
script->varTable[9] = partnerState->curPos.z;
partnerState->dist = dist2D(partnerState->curPos.x, partnerState->curPos.y, partnerState->goalPos.x, partnerState->goalPos.y) / partnerState->unk_24;
if (partnerState->dist <= 12.0) {
script->varTable[15] = 1;
}
hud_element_free(hudAimTarget);
@ -572,7 +572,7 @@ API_CALLABLE(N(SpinyFlipActionCommand)) {
sTargetMarkRotation -= 10;
sTargetMarkRotation = clamp_angle(sTargetMarkRotation);
get_screen_coords(gCurrentCameraID,
partnerState->currentPos.x, partnerState->currentPos.y, partnerState->currentPos.z,
partnerState->curPos.x, partnerState->curPos.y, partnerState->curPos.z,
&screenX, &screenY, &screenZ);
hud_element_set_render_pos(hudAimReticle, screenX, screenY);
@ -590,11 +590,11 @@ API_CALLABLE(N(SpinyFlipActionCommand)) {
switch (script->functionTemp[0]) {
case 1:
case 2:
playerState->currentPos.x = partnerState->currentPos.x;
playerState->currentPos.y = partnerState->currentPos.y;
playerState->currentPos.z = partnerState->currentPos.z;
playerState->curPos.x = partnerState->curPos.x;
playerState->curPos.y = partnerState->curPos.y;
playerState->curPos.z = partnerState->curPos.z;
for (i = 0; i < ARRAY_COUNT(N(aimHudScripts)); i++) {
get_screen_coords(gCurrentCameraID, playerState->currentPos.x, playerState->currentPos.y, playerState->currentPos.z, &screenX, &screenY, &screenZ);
get_screen_coords(gCurrentCameraID, playerState->curPos.x, playerState->curPos.y, playerState->curPos.z, &screenX, &screenY, &screenZ);
id = hudAim[i];
hud_element_set_render_pos(id, screenX, screenY);
}
@ -608,9 +608,9 @@ API_CALLABLE(N(SpinyFlipActionCommand)) {
API_CALLABLE(N(ThrowSpinyFX)) {
BattleStatus* battleStatus = &gBattleStatus;
Actor* partnerActor = battleStatus->partnerActor;
f32 xPos = partnerActor->currentPos.x + 5;
f32 yPos = partnerActor->currentPos.y + partnerActor->size.y + 20;
f32 zPos = partnerActor->currentPos.z;
f32 xPos = partnerActor->curPos.x + 5;
f32 yPos = partnerActor->curPos.y + partnerActor->size.y + 20;
f32 zPos = partnerActor->curPos.z;
f32 var = rand_int(140) + 10;
f32 var2 = rand_int(80) + 10;
@ -690,7 +690,7 @@ API_CALLABLE(N(CloudNineFX)) {
switch (script->functionTemp[0]) {
case 0:
sCounter = 0.1f;
fx_ending_decals(0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z, 0.1f, &battleStatus->cloudNineEffect);
fx_ending_decals(0, actor->curPos.x, actor->curPos.y, actor->curPos.z, 0.1f, &battleStatus->cloudNineEffect);
script->functionTemp[0] = 1;
break;
case 1:
@ -742,7 +742,7 @@ API_CALLABLE(N(InitHurricane)) {
target = &partner->targetData[targetIdx];
actor = get_actor(target->actorID);
part = get_actor_part(actor, target->partID);
hpMissingPercent = 100 - ((actor->currentHP * 100) / actor->maxHP);
hpMissingPercent = 100 - ((actor->curHP * 100) / actor->maxHP);
hurricaneChance = actor->actorBlueprint->hurricaneChance;
if (hurricaneChance > 0) {
hurricaneChance += hurricaneChance * hpMissingPercent / 100;
@ -1455,15 +1455,15 @@ API_CALLABLE(N(ProcessHurricane)) {
}
sHuffPuffBreathEffect->data.huffPuffBreath->scale = sBreathSizeIncrease / 50.0 + 1.0;
x = partner->currentPos.x;
y = partner->currentPos.y;
x = partner->curPos.x;
y = partner->curPos.y;
rand_int(1000);
tempF1 = 5.0f;
switch (sHuffPuffBreathState) {
case STATE_INHALE:
x = partner->currentPos.x;
y = partner->currentPos.y + 15.0f;
z = partner->currentPos.z + tempF1;
x = partner->curPos.x;
y = partner->curPos.y + 15.0f;
z = partner->curPos.z + tempF1;
add_vec2D_polar(&x, &y, 12.0f, 90.0f);
sHuffPuffBreathEffect->data.huffPuffBreath->pos.x = x;
sHuffPuffBreathEffect->data.huffPuffBreath->pos.y = y;
@ -1476,7 +1476,7 @@ API_CALLABLE(N(ProcessHurricane)) {
sHuffPuffBreathEffect->data.huffPuffBreath->pos.z = NPC_DISPOSE_POS_Z;
if (script->functionTemp[2] != 0) {
sfx_play_sound_at_position(SOUND_201E, SOUND_SPACE_MODE_0, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z);
sfx_play_sound_at_position(SOUND_201E, SOUND_SPACE_MODE_0, partner->curPos.x, partner->curPos.y, partner->curPos.z);
}
script->functionTemp[2] = 0;
@ -1489,9 +1489,9 @@ API_CALLABLE(N(ProcessHurricane)) {
sHuffPuffBreathEffect->data.huffPuffBreath->pos.z = NPC_DISPOSE_POS_Z;
break;
case STATE_EXHALE:
x = partner->currentPos.x;
y = partner->currentPos.y + 15.0f;
z = partner->currentPos.z + tempF1;
x = partner->curPos.x;
y = partner->curPos.y + 15.0f;
z = partner->curPos.z + tempF1;
add_vec2D_polar(&x, &y, 12.0f, 90.0f);
sHuffPuffBreathEffect->data.huffPuffBreath->pos.x = x;
sHuffPuffBreathEffect->data.huffPuffBreath->pos.y = y;
@ -1499,7 +1499,7 @@ API_CALLABLE(N(ProcessHurricane)) {
sHuffPuffBreathEffect->data.huffPuffBreath->speedX = 2.0f;
if (script->functionTemp[2] == 0) {
sfx_play_sound_at_position(SOUND_201F, SOUND_SPACE_MODE_0, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z);
sfx_play_sound_at_position(SOUND_201F, SOUND_SPACE_MODE_0, partner->curPos.x, partner->curPos.y, partner->curPos.z);
}
script->functionTemp[2] = 1;
@ -1653,33 +1653,33 @@ API_CALLABLE(N(BlowTargetAway)) {
switch (script->functionTemp[0]) {
case 0:
target->state.moveTime = 0;
target->state.currentPos.x = target->currentPos.x;
target->state.currentPos.y = target->currentPos.y;
target->state.currentPos.z = target->currentPos.z;
target->state.curPos.x = target->curPos.x;
target->state.curPos.y = target->curPos.y;
target->state.curPos.z = target->curPos.z;
target->state.speed = 5.5f;
sNumEnemiesBeingBlown += 1;
battleStatus->currentAttackElement = 0;
battleStatus->curAttackElement = 0;
dispatch_event_actor(target, EVENT_BLOW_AWAY);
script->functionTemp[0] = 1;
break;
case 1:
target->state.currentPos.x += target->state.speed;
temp_f20 = target->state.currentPos.y;
target->state.currentPos.y =
target->state.curPos.x += target->state.speed;
temp_f20 = target->state.curPos.y;
target->state.curPos.y =
temp_f20 + ((sin_rad(2.0f * sin_rad(DEG_TO_RAD(target->state.moveTime)) * PI_S) * 1.4) + 0.5);
target->state.moveTime += 6;
target->state.moveTime = clamp_angle(target->state.moveTime);
target->yaw += 33.0f;
target->yaw = clamp_angle(target->yaw);
if (target->state.currentPos.x > 240.0f) {
if (target->state.curPos.x > 240.0f) {
sNumEnemiesBeingBlown -= 1;
return ApiStatus_DONE2;
}
break;
}
target->currentPos.x = state->currentPos.x;
target->currentPos.y = state->currentPos.y;
target->currentPos.z = state->currentPos.z;
target->curPos.x = state->curPos.x;
target->curPos.y = state->curPos.y;
target->curPos.z = state->curPos.z;
return ApiStatus_BLOCK;
}

View File

@ -148,22 +148,22 @@ API_CALLABLE(N(ShellShotActionCommand)) {
state->goalPos.z = state->goalPos.z;
state->unk_24 = (targetActorPart->size.y + targetActorPart->size.x) / 2 / 24.0;
hud_element_set_scale(hudTarget, state->unk_24 * targetActor->scalingFactor);
state->currentPos.x = parakarry->currentPos.x + 8.0f;
state->currentPos.y = parakarry->currentPos.y + 16.0f;
state->currentPos.z = parakarry->currentPos.z;
state->angle = atan2(state->currentPos.x, state->currentPos.y, state->goalPos.x, state->goalPos.y);
state->curPos.x = parakarry->curPos.x + 8.0f;
state->curPos.y = parakarry->curPos.y + 16.0f;
state->curPos.z = parakarry->curPos.z;
state->angle = atan2(state->curPos.x, state->curPos.y, state->goalPos.x, state->goalPos.y);
state->bounceDivisor = state->angle;
state->distance = 116.0f;
state->dist = 116.0f;
state->unk_18.x = state->angle;
i = 0;
for (i = 0; i < 30; i++) {
state->unk_18.x -= 1.0f;
aimAngle = clamp_angle(state->unk_18.x);
x = state->currentPos.x;
y = state->currentPos.y;
z = state->currentPos.z;
clampedAngleDiff = state->distance;
x = state->curPos.x;
y = state->curPos.y;
z = state->curPos.z;
clampedAngleDiff = state->dist;
add_vec2D_polar(&x, &y, clampedAngleDiff, aimAngle);
get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
if (screenY > 180) {
@ -177,10 +177,10 @@ API_CALLABLE(N(ShellShotActionCommand)) {
for (i = 0; i < 30; i++) {
state->unk_18.y += 1.0f;
aimAngle = clamp_angle(state->unk_18.y);
x = state->currentPos.x;
y = state->currentPos.y;
z = state->currentPos.z;
add_vec2D_polar(&x, &y, state->distance, aimAngle);
x = state->curPos.x;
y = state->curPos.y;
z = state->curPos.z;
add_vec2D_polar(&x, &y, state->dist, aimAngle);
get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
if (screenY < 30) {
break;
@ -192,9 +192,9 @@ API_CALLABLE(N(ShellShotActionCommand)) {
hudTargetRotation = 0;
shellShotTimer = 90;
#if VERSION_PAL
state->velocity = 4.0f;
state->vel = 4.0f;
#else
state->velocity = 3.0f;
state->vel = 3.0f;
#endif
battleStatus->unk_86 = 0;
action_command_init_status();
@ -202,7 +202,7 @@ API_CALLABLE(N(ShellShotActionCommand)) {
script->functionTemp[0] = 1;
break;
case 1:
if (gActionCommandStatus.autoSucceed || battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) {
if (gActionCommandStatus.autoSucceed || battleStatus->curButtonsDown & BUTTON_STICK_LEFT) {
shellShotTimer = 0;
}
@ -225,7 +225,7 @@ API_CALLABLE(N(ShellShotActionCommand)) {
break;
case 2:
if (!(gActionCommandStatus.autoSucceed)) {
if (!(battleStatus->currentButtonsDown & BUTTON_STICK_LEFT)) {
if (!(battleStatus->curButtonsDown & BUTTON_STICK_LEFT)) {
script->functionTemp[0] = 3;
break;
}
@ -243,16 +243,16 @@ API_CALLABLE(N(ShellShotActionCommand)) {
}
}
state->angle += state->velocity;
state->angle += state->vel;
if (state->angle <= state->unk_18.x) {
state->angle = state->unk_18.x;
state->velocity = 0.0f - state->velocity;
state->vel = 0.0f - state->vel;
}
if (state->angle >= state->unk_18.y) {
state->angle = state->unk_18.y;
state->velocity = 0.0f - state->velocity;
state->vel = 0.0f - state->vel;
}
break;
case 3:
@ -260,7 +260,7 @@ API_CALLABLE(N(ShellShotActionCommand)) {
clampedAngleDiff = get_clamped_angle_diff(state->angle, state->bounceDivisor);
aimAngle = fabsf(clampedAngleDiff) / state->unk_24 * targetActor->scalingFactor;
if (state->velocity >= 0.0f) {
if (state->vel >= 0.0f) {
if (clampedAngleDiff < 0.0f) {
battleStatus->unk_86 = 0;
} else {
@ -326,18 +326,18 @@ API_CALLABLE(N(ShellShotActionCommand)) {
if (script->functionTemp[0] >= 2) {
if (script->functionTemp[0] < 3) {
aimAngle = clamp_angle(state->angle);
aimX = state->currentPos.x;
aimY = state->currentPos.y;
aimZ = state->currentPos.z;
add_vec2D_polar(&aimX, &aimY, state->distance, aimAngle);
z = state->currentPos.z;
x = state->currentPos.x;
y = state->currentPos.y;
aimX = state->curPos.x;
aimY = state->curPos.y;
aimZ = state->curPos.z;
add_vec2D_polar(&aimX, &aimY, state->dist, aimAngle);
z = state->curPos.z;
x = state->curPos.x;
y = state->curPos.y;
for (i = 0; i < ARRAY_COUNT(hudShimmers); i++) {
x += (aimX - state->currentPos.x) / 6.0f;
y += (aimY - state->currentPos.y) / 6.0f;
z += (aimZ - state->currentPos.z) / 6.0f;
x += (aimX - state->curPos.x) / 6.0f;
y += (aimY - state->curPos.y) / 6.0f;
z += (aimZ - state->curPos.z) / 6.0f;
get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ);
hud_element_set_render_pos(hudMarkers[i], screenX, screenY);
hudID = hudShimmers[i];
@ -378,7 +378,7 @@ API_CALLABLE(N(AirLiftChance)) {
Actor* targetActor = get_actor(partnerActor->targetActorID);
ActorPart* targetActorPart = get_actor_part(targetActor, partnerActor->targetPartIndex);
s32 airLiftChance = targetActor->actorBlueprint->airLiftChance;
s32 hpPercentLost = 100 - targetActor->currentHP * 100 / targetActor->maxHP;
s32 hpPercentLost = 100 - targetActor->curHP * 100 / targetActor->maxHP;
if (targetActor->transparentStatus == STATUS_KEY_TRANSPARENT) {
airLiftChance = 0;
@ -428,39 +428,39 @@ API_CALLABLE(N(CarryAway)) {
switch (script->functionTemp[0]) {
case 0:
parakarry->state.goalPos.x = targetActor->currentPos.x - parakarry->currentPos.x;
parakarry->state.goalPos.y = targetActor->currentPos.y - parakarry->currentPos.y;
parakarry->state.goalPos.z = targetActor->currentPos.z - parakarry->currentPos.z;
parakarry->state.goalPos.x = targetActor->curPos.x - parakarry->curPos.x;
parakarry->state.goalPos.y = targetActor->curPos.y - parakarry->curPos.y;
parakarry->state.goalPos.z = targetActor->curPos.z - parakarry->curPos.z;
parakarry->state.speed = 2.0f;
parakarry->state.moveTime = 0;
script->functionTemp[0] = 1;
break;
case 1:
parakarry->state.currentPos.x += parakarry->state.speed;
parakarry->state.curPos.x += parakarry->state.speed;
*animationRatePtr = 1.0f;
y = parakarry->state.currentPos.y;
parakarry->state.currentPos.y = y + (sin_rad(2.0f * sin_rad(DEG_TO_RAD(parakarry->state.moveTime)) * PI_S) * 1.4 + 0.5);
y = parakarry->state.curPos.y;
parakarry->state.curPos.y = y + (sin_rad(2.0f * sin_rad(DEG_TO_RAD(parakarry->state.moveTime)) * PI_S) * 1.4 + 0.5);
parakarry->state.moveTime += 6;
parakarry->state.moveTime = clamp_angle(parakarry->state.moveTime);
if (gGameStatusPtr->frameCounter % 10 == 0) {
sfx_play_sound_at_position(SOUND_2009, SOUND_SPACE_MODE_0, parakarry->state.currentPos.x, parakarry->state.currentPos.y, parakarry->state.currentPos.z);
sfx_play_sound_at_position(SOUND_2009, SOUND_SPACE_MODE_0, parakarry->state.curPos.x, parakarry->state.curPos.y, parakarry->state.curPos.z);
}
if (parakarry->state.currentPos.x > 240.0f) {
if (parakarry->state.curPos.x > 240.0f) {
battleStatus->actionResult = temp_s4;
return ApiStatus_DONE2;
}
break;
}
parakarry->currentPos.x = actorState->currentPos.x;
parakarry->currentPos.y = actorState->currentPos.y;
parakarry->currentPos.z = actorState->currentPos.z;
parakarry->curPos.x = actorState->curPos.x;
parakarry->curPos.y = actorState->curPos.y;
parakarry->curPos.z = actorState->curPos.z;
targetActor->currentPos.x = actorState->currentPos.x + actorState->goalPos.x;
targetActor->currentPos.y = actorState->currentPos.y + actorState->goalPos.y;
targetActor->currentPos.z = actorState->currentPos.z + actorState->goalPos.z;
targetActor->curPos.x = actorState->curPos.x + actorState->goalPos.x;
targetActor->curPos.y = actorState->curPos.y + actorState->goalPos.y;
targetActor->curPos.z = actorState->curPos.z + actorState->goalPos.z;
return ApiStatus_BLOCK;
}
@ -474,9 +474,9 @@ API_CALLABLE(N(FlyAround)) {
switch (script->functionTemp[0]) {
case 0:
state->currentPos.x = partner->currentPos.x;
state->currentPos.y = partner->currentPos.y;
state->currentPos.z = partner->currentPos.z;
state->curPos.x = partner->curPos.x;
state->curPos.y = partner->curPos.y;
state->curPos.z = partner->curPos.z;
state->angle = 60 - rand_int(10);
state->bounceDivisor = 0.0f;
state->moveTime = 90;
@ -484,15 +484,15 @@ API_CALLABLE(N(FlyAround)) {
script->functionTemp[1] = 0;
script->functionTemp[2] = 0;
script->functionTemp[3] = 0;
airRaidEffect = fx_effect_65(0, state->currentPos.x, state->currentPos.y, state->currentPos.z, 1.0f, 0);
airRaidEffect = fx_effect_65(0, state->curPos.x, state->curPos.y, state->curPos.z, 1.0f, 0);
script->functionTemp[0] = 1;
break;
case 1:
add_vec2D_polar(&state->currentPos.x, &state->currentPos.y, state->speed, state->angle);
airRaidEffect->data.unk_65->pos.x = state->currentPos.x;
airRaidEffect->data.unk_65->pos.y = state->currentPos.y;
airRaidEffect->data.unk_65->pos.z = state->currentPos.z;
if (state->currentPos.x < -190.0f) {
add_vec2D_polar(&state->curPos.x, &state->curPos.y, state->speed, state->angle);
airRaidEffect->data.unk_65->pos.x = state->curPos.x;
airRaidEffect->data.unk_65->pos.y = state->curPos.y;
airRaidEffect->data.unk_65->pos.z = state->curPos.z;
if (state->curPos.x < -190.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -507,14 +507,14 @@ API_CALLABLE(N(FlyAround)) {
}
if (script->functionTemp[3] != 0) {
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
} else {
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
}
script->functionTemp[3] = 1 - script->functionTemp[3];
}
if (state->currentPos.x > 190.0f) {
if (state->curPos.x > 190.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -529,14 +529,14 @@ API_CALLABLE(N(FlyAround)) {
} while (0);
if (script->functionTemp[3] != 0) {
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
} else {
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
}
script->functionTemp[3] = 1 - script->functionTemp[3];
}
if (state->currentPos.y < -30.0f) {
if (state->curPos.y < -30.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -551,14 +551,14 @@ API_CALLABLE(N(FlyAround)) {
} while (0); // TODO macro?
if (script->functionTemp[3] != 0) {
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
} else {
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
}
script->functionTemp[3] = 1 - script->functionTemp[3];
}
if (state->currentPos.y > 160.0f) {
if (state->curPos.y > 160.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -573,9 +573,9 @@ API_CALLABLE(N(FlyAround)) {
} while (0); // TODO macro?
if (script->functionTemp[3] != 0) {
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200A, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
} else {
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_200B, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
}
script->functionTemp[3] = 1 - script->functionTemp[3];
}
@ -596,17 +596,17 @@ API_CALLABLE(N(FlyAround)) {
airRaidEffect->flags |= FX_INSTANCE_FLAG_DISMISS;
// fallthrough
case 3:
add_vec2D_polar(&state->currentPos.x, &state->currentPos.y, state->speed, state->angle);
add_vec2D_polar(&state->curPos.x, &state->curPos.y, state->speed, state->angle);
if (state->moveTime == 0) {
partner->rotation.z = 0.0f;
partner->rot.z = 0.0f;
return ApiStatus_DONE2;
}
state->moveTime--;
// fallthrough
default:
partner->currentPos.x = state->currentPos.x;
partner->currentPos.y = state->currentPos.y;
partner->currentPos.z = state->currentPos.z;
partner->curPos.x = state->curPos.x;
partner->curPos.y = state->curPos.y;
partner->curPos.z = state->curPos.z;
return ApiStatus_BLOCK;
}
}

View File

@ -41,19 +41,19 @@ API_CALLABLE(N(SetSquirtAngle)) {
partner->state.goalPos.y += targetPart->projectileTargetOffset.y;
partner->state.goalPos.z = partner->state.goalPos.z; // required to match
partner->state.currentPos.x = partner->currentPos.x + 8.0f;
partner->state.currentPos.y = partner->currentPos.y + 16.0f;
partner->state.currentPos.z = partner->currentPos.z;
partner->state.curPos.x = partner->curPos.x + 8.0f;
partner->state.curPos.y = partner->curPos.y + 16.0f;
partner->state.curPos.z = partner->curPos.z;
partner->state.angle = atan2(
partner->state.currentPos.x, partner->state.currentPos.y,
partner->state.curPos.x, partner->state.curPos.y,
partner->state.goalPos.x, partner->state.goalPos.y
);
partner->rotation.z = (partner->state.angle - 90.0f) * 0.25f;
partner->rot.z = (partner->state.angle - 90.0f) * 0.25f;
if (partner->rotation.z < 0.0f) {
partner->rotation.z = 0.0f;
if (partner->rot.z < 0.0f) {
partner->rot.z = 0.0f;
}
return ApiStatus_DONE2;
@ -177,7 +177,7 @@ API_CALLABLE(N(PlaySquirtFX)) {
Actor* partnerActor = battleStatus->partnerActor;
Actor* playerActor = battleStatus->playerActor;
sEffect = fx_squirt(1, partnerActor->currentPos.x - 5.5, partnerActor->currentPos.y + 15.5, partnerActor->currentPos.z + 5, playerActor->currentPos.x, playerActor->currentPos.y, playerActor->currentPos.z, (rand_int(10) * 0.1) + 1, 30);
sEffect = fx_squirt(1, partnerActor->curPos.x - 5.5, partnerActor->curPos.y + 15.5, partnerActor->curPos.z + 5, playerActor->curPos.x, playerActor->curPos.y, playerActor->curPos.z, (rand_int(10) * 0.1) + 1, 30);
return ApiStatus_DONE2;
}
@ -210,24 +210,24 @@ API_CALLABLE(N(ProcessTidalWave)) {
switch (script->functionTemp[0]) {
case 0:
state->currentPos.x = partner->currentPos.x;
state->currentPos.y = partner->currentPos.y;
state->currentPos.z = partner->currentPos.z;
state->curPos.x = partner->curPos.x;
state->curPos.y = partner->curPos.y;
state->curPos.z = partner->curPos.z;
state->angle = 315.0f;
state->bounceDivisor = 0.0f;
state->moveTime = 90;
state->speed = 32.0f;
script->functionTemp[1] = 0;
script->functionTemp[2] = 0;
sEffect = fx_water_fountain(1, state->currentPos.x, state->currentPos.y, state->currentPos.z, 1.0f, 0);
sEffect = fx_water_fountain(1, state->curPos.x, state->curPos.y, state->curPos.z, 1.0f, 0);
sEffect->data.waterFountain->unk_38 = state->angle;
sEffect->data.waterFountain->unk_3C = partner->scale.x;
sEffect->data.waterFountain->unk_40 = partner->scale.x;
script->functionTemp[0] = 1;
break;
case 1:
add_vec2D_polar(&state->currentPos.x, &state->currentPos.y, state->speed, state->angle);
if (state->currentPos.x < -160.0f) {
add_vec2D_polar(&state->curPos.x, &state->curPos.y, state->speed, state->angle);
if (state->curPos.x < -160.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -242,7 +242,7 @@ API_CALLABLE(N(ProcessTidalWave)) {
}
}
if (state->currentPos.x > 160.0f) {
if (state->curPos.x > 160.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -259,14 +259,14 @@ API_CALLABLE(N(ProcessTidalWave)) {
} while (0);
if (script->functionTemp[2] != 0) {
sfx_play_sound_at_position(SOUND_29B, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_29B, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
} else {
sfx_play_sound_at_position(SOUND_29C, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_29C, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
}
script->functionTemp[2] = 1 - script->functionTemp[2];
}
if (state->currentPos.y < 0.0f) {
if (state->curPos.y < 0.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -283,14 +283,14 @@ API_CALLABLE(N(ProcessTidalWave)) {
} while (0); // TODO macro?
if (script->functionTemp[2] != 0) {
sfx_play_sound_at_position(SOUND_29B, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_29B, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
} else {
sfx_play_sound_at_position(SOUND_29C, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_29C, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
}
script->functionTemp[2] = 1 - script->functionTemp[2];
}
if (state->currentPos.y > 130.0f) {
if (state->curPos.y > 130.0f) {
if (script->functionTemp[1] != 0) {
script->functionTemp[0] = 2;
break;
@ -307,15 +307,15 @@ API_CALLABLE(N(ProcessTidalWave)) {
} while (0); // TODO macro?
if (script->functionTemp[2] != 0) {
sfx_play_sound_at_position(SOUND_29B, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_29B, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
} else {
sfx_play_sound_at_position(SOUND_29C, SOUND_SPACE_MODE_0, state->currentPos.x, state->currentPos.y, state->currentPos.z);
sfx_play_sound_at_position(SOUND_29C, SOUND_SPACE_MODE_0, state->curPos.x, state->curPos.y, state->curPos.z);
}
script->functionTemp[2] = 1 - script->functionTemp[2];
}
state->angle = clamp_angle(state->angle + (state->bounceDivisor * 0.5));
partner->rotation.z = clamp_angle(state->angle - 315.0f);
partner->rot.z = clamp_angle(state->angle - 315.0f);
partner->scale.z = partner->scale.y = partner->scale.x = partner->scale.x - 0.06;
if (partner->scale.x < 1.0) {
partner->scale.x = 1.0f;
@ -325,9 +325,9 @@ API_CALLABLE(N(ProcessTidalWave)) {
x = 0.0f;
y = 0.0f;
add_vec2D_polar(&x, &y, partner->scale.x * -15.0f, state->angle);
sEffect->data.waterFountain->pos.x = state->currentPos.x + x;
sEffect->data.waterFountain->pos.y = state->currentPos.y + y;
sEffect->data.waterFountain->pos.z = state->currentPos.z + 5.0f;
sEffect->data.waterFountain->pos.x = state->curPos.x + x;
sEffect->data.waterFountain->pos.y = state->curPos.y + y;
sEffect->data.waterFountain->pos.z = state->curPos.z + 5.0f;
sEffect->data.waterFountain->unk_38 = state->angle;
sEffect->data.waterFountain->unk_3C = partner->scale.x;
sEffect->data.waterFountain->unk_40 = partner->scale.x;
@ -349,24 +349,24 @@ API_CALLABLE(N(ProcessTidalWave)) {
state->moveTime = 5;
script->functionTemp[0] = 3;
case 3:
add_vec2D_polar(&state->currentPos.x, &state->currentPos.y, state->speed, state->angle);
sEffect->data.waterFountain->pos.x = state->currentPos.x;
sEffect->data.waterFountain->pos.y = state->currentPos.y;
sEffect->data.waterFountain->pos.z = state->currentPos.z;
add_vec2D_polar(&state->curPos.x, &state->curPos.y, state->speed, state->angle);
sEffect->data.waterFountain->pos.x = state->curPos.x;
sEffect->data.waterFountain->pos.y = state->curPos.y;
sEffect->data.waterFountain->pos.z = state->curPos.z;
sEffect->data.waterFountain->unk_38 = state->angle;
sEffect->data.waterFountain->unk_3C = partner->scale.x;
sEffect->data.waterFountain->unk_40 = partner->scale.x;
if (state->moveTime == 0) {
partner->rotation.z = 0.0f;
partner->rot.z = 0.0f;
sEffect->flags |= FX_INSTANCE_FLAG_DISMISS;
return ApiStatus_DONE2;
}
state->moveTime--;
default:
partner->currentPos.x = state->currentPos.x;
partner->currentPos.y = state->currentPos.y;
partner->currentPos.z = state->currentPos.z;
fx_water_splash(3, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z, 1.0f, 10);
partner->curPos.x = state->curPos.x;
partner->curPos.y = state->curPos.y;
partner->curPos.z = state->curPos.z;
fx_water_splash(3, partner->curPos.x, partner->curPos.y, partner->curPos.z, 1.0f, 10);
break;
}
return ApiStatus_BLOCK;

View File

@ -54,8 +54,8 @@ API_CALLABLE(N(WattFXUpdate)) {
sWattEffectData_bouncePhase = 0;
sWattEffectData_isActive = TRUE;
sWattEffectData_currentEffectIndex = 0;
sWattEffectData_effect1 = fx_static_status(0, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z, 1.0f, 5, 0);
sWattEffectData_effect2 = fx_static_status(1, partner->currentPos.x, NPC_DISPOSE_POS_Y, partner->currentPos.z, 1.0f, 5, 0);
sWattEffectData_effect1 = fx_static_status(0, partner->curPos.x, partner->curPos.y, partner->curPos.z, 1.0f, 5, 0);
sWattEffectData_effect2 = fx_static_status(1, partner->curPos.x, NPC_DISPOSE_POS_Y, partner->curPos.z, 1.0f, 5, 0);
sWattEffectData_initialized = TRUE;
}
@ -69,9 +69,9 @@ API_CALLABLE(N(WattFXUpdate)) {
}
partner->verticalRenderOffset = sin_rad(DEG_TO_RAD(sWattEffectData_bouncePhase)) * 3.0f;
x = partner->currentPos.x + partner->headOffset.x;
y = partner->currentPos.y + partner->headOffset.y + partner->verticalRenderOffset + 12.0f;
z = partner->currentPos.z + partner->headOffset.z;
x = partner->curPos.x + partner->headOffset.x;
y = partner->curPos.y + partner->headOffset.y + partner->verticalRenderOffset + 12.0f;
z = partner->curPos.z + partner->headOffset.z;
if ((gBattleStatus.flags2 & (BS_FLAGS2_10 | BS_FLAGS2_4)) == BS_FLAGS2_4) {
y = NPC_DISPOSE_POS_Y;
}
@ -197,9 +197,9 @@ API_CALLABLE(N(PowerShockFX)) {
API_CALLABLE(N(PowerShockDischargeFX)) {
Bytecode* args = script->ptrReadPos;
Actor* partner = gBattleStatus.partnerActor;
f32 x = partner->currentPos.x + partner->headOffset.x;
f32 y = partner->currentPos.y + partner->headOffset.y + partner->verticalRenderOffset + 12.0f;
f32 z = partner->currentPos.z + partner->headOffset.z;
f32 x = partner->curPos.x + partner->headOffset.x;
f32 y = partner->curPos.y + partner->headOffset.y + partner->verticalRenderOffset + 12.0f;
f32 z = partner->curPos.z + partner->headOffset.z;
if (isInitialCall) {
script->functionTemp[0] = evt_get_variable(script, *args++);
@ -254,18 +254,18 @@ API_CALLABLE(N(TurboChargeUnwindWatt)) {
switch (script->functionTemp[0]) {
case 0:
script->functionTemp[2] = evt_get_variable(script, *args++);
partner->state.distance = dist2D(player->currentPos.x, player->currentPos.y, partner->currentPos.x, partner->currentPos.y);
partner->state.dist = dist2D(player->curPos.x, player->curPos.y, partner->curPos.x, partner->curPos.y);
partner->state.goalPos.x = player->currentPos.x;
partner->state.goalPos.y = player->currentPos.y + 36.0f;
partner->state.goalPos.z = player->currentPos.z;
partner->state.goalPos.x = player->curPos.x;
partner->state.goalPos.y = player->curPos.y + 36.0f;
partner->state.goalPos.z = player->curPos.z;
partner->state.currentPos.x = partner->currentPos.x;
partner->state.currentPos.y = partner->currentPos.y;
partner->state.currentPos.z = partner->currentPos.z;
partner->state.curPos.x = partner->curPos.x;
partner->state.curPos.y = partner->curPos.y;
partner->state.curPos.z = partner->curPos.z;
partner->state.angle = 90.0f;
partner->state.velocity = 5.0f;
partner->state.vel = 5.0f;
partner->state.acceleration = 0.5f;
partner->state.moveTime = 90;
script->functionTemp[1] = 10;
@ -275,13 +275,13 @@ API_CALLABLE(N(TurboChargeUnwindWatt)) {
theta = DEG_TO_RAD(partner->state.angle);
sinTheta = sin_rad(theta);
cosTheta = cos_rad(theta);
partner->state.velocity += partner->state.acceleration;
partner->state.vel += partner->state.acceleration;
angle = partner->state.angle;
angle += partner->state.velocity;
deltaX = partner->state.distance * sinTheta;
deltaY = -partner->state.distance * cosTheta;
partner->state.currentPos.x = partner->state.goalPos.x + deltaX;
partner->state.currentPos.y = partner->state.goalPos.y + deltaY;
angle += partner->state.vel;
deltaX = partner->state.dist * sinTheta;
deltaY = -partner->state.dist * cosTheta;
partner->state.curPos.x = partner->state.goalPos.x + deltaX;
partner->state.curPos.y = partner->state.goalPos.y + deltaY;
partner->state.angle = angle;
partner->state.angle = clamp_angle(angle);
@ -294,13 +294,13 @@ API_CALLABLE(N(TurboChargeUnwindWatt)) {
theta = DEG_TO_RAD(partner->state.angle);
sinTheta = sin_rad(theta);
cosTheta = cos_rad(theta);
distance = partner->state.distance;
distance = partner->state.dist;
angle = partner->state.angle;
angle += partner->state.velocity;
deltaX = partner->state.distance * sinTheta;
deltaY = -partner->state.distance * cosTheta;
partner->state.currentPos.x = partner->state.goalPos.x + deltaX;
partner->state.currentPos.y = partner->state.goalPos.y + deltaY;
angle += partner->state.vel;
deltaX = partner->state.dist * sinTheta;
deltaY = -partner->state.dist * cosTheta;
partner->state.curPos.x = partner->state.goalPos.x + deltaX;
partner->state.curPos.y = partner->state.goalPos.y + deltaY;
partner->state.angle = angle;
partner->state.angle = clamp_angle(angle);
if (partner->state.angle < 45.0f) {
@ -319,9 +319,9 @@ API_CALLABLE(N(TurboChargeUnwindWatt)) {
partner->yaw = 180.0f;
}
partner->currentPos.x = partnerState->currentPos.x;
partner->currentPos.y = partnerState->currentPos.y;
partner->currentPos.z = partnerState->currentPos.z;
partner->curPos.x = partnerState->curPos.x;
partner->curPos.y = partnerState->curPos.y;
partner->curPos.z = partnerState->curPos.z;
if (script->functionTemp[2] == 0) {
player->yaw += script->functionTemp[1];
script->functionTemp[1]++;

View File

@ -170,14 +170,14 @@ API_CALLABLE(LoadMysteryItemScript) {
s32* itemPtr;
s32 i;
battleStatus->currentTargetListFlags = item->targetFlags | TARGET_FLAG_8000;
battleStatus->currentAttackElement = 0;
battleStatus->curTargetListFlags = item->targetFlags | TARGET_FLAG_8000;
battleStatus->curAttackElement = 0;
player_create_target_list(actor);
target = &actor->targetData[actor->targetIndexList[0]];
battleStatus->currentTargetID = target->actorID;
battleStatus->currentTargetPart = target->partID;
battleStatus->curTargetID = target->actorID;
battleStatus->curTargetPart = target->partID;
itemPtr = &ItemKeys[0];
for (i = 0; *itemPtr != ITEM_NONE; i++, itemPtr++) {

View File

@ -167,9 +167,9 @@ s32 CamPresetUpdate_F(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -180,9 +180,9 @@ s32 CamPresetUpdate_F(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) / 2;
middlePosX = x + (targetX - x) / 2;
@ -206,9 +206,9 @@ s32 CamPresetUpdate_F(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -219,9 +219,9 @@ s32 CamPresetUpdate_F(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) /2;
middlePosX = x + (targetX - x) / 2;
@ -241,9 +241,9 @@ s32 CamPresetUpdate_F(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -254,9 +254,9 @@ s32 CamPresetUpdate_F(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) / 2;
middlePosX = x + (targetX - x) / 2;
@ -381,9 +381,9 @@ s32 CamPresetUpdate_M(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -394,9 +394,9 @@ s32 CamPresetUpdate_M(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) / 2;
middlePosX = x + (targetX - x) / 2;
@ -420,9 +420,9 @@ s32 CamPresetUpdate_M(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -433,9 +433,9 @@ s32 CamPresetUpdate_M(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) /2;
middlePosX = x + (targetX - x) / 2;
@ -455,9 +455,9 @@ s32 CamPresetUpdate_M(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -468,9 +468,9 @@ s32 CamPresetUpdate_M(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) / 2;
middlePosX = x + (targetX - x) / 2;
@ -592,9 +592,9 @@ s32 CamPresetUpdate_G(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -604,9 +604,9 @@ s32 CamPresetUpdate_G(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) / 2;
middlePosX = x + (targetX - x) / 2;
@ -626,9 +626,9 @@ s32 CamPresetUpdate_G(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2 + actor->size.y / 4;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -638,9 +638,9 @@ s32 CamPresetUpdate_G(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) / 2;
middlePosX = x + (targetX - x) / 2;
@ -661,9 +661,9 @@ s32 CamPresetUpdate_G(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
actorPart = get_actor_part(targetActor, BattleCam_TargetActorPart);
x = actorPart->absolutePosition.x;
y = actorPart->absolutePosition.y + actorPart->size.y / 2 + actorPart->size.y / 4;
z = actorPart->absolutePosition.z;
x = actorPart->absolutePos.x;
y = actorPart->absolutePos.y + actorPart->size.y / 2 + actorPart->size.y / 4;
z = actorPart->absolutePos.z;
sizeY = actorPart->size.y;
sizeX = actorPart->size.x;
@ -673,9 +673,9 @@ s32 CamPresetUpdate_G(Evt* script, s32 isInitialCall) {
return ApiStatus_BLOCK;
}
targetX = targetActor->currentPos.x;
targetY = targetActor->currentPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->currentPos.z;
targetX = targetActor->curPos.x;
targetY = targetActor->curPos.y + targetActor->size.y / 2 + targetActor->size.y / 4;
targetZ = targetActor->curPos.z;
targetAverageSize = (targetActor->size.y + targetActor->size.x) / 2;
middlePosX = x + (targetX - x) / 2;
@ -786,9 +786,9 @@ s32 CamPresetUpdate_I(Evt* script, s32 isInitialCall) {
btl_cam_use_preset(BTL_CAM_DEFAULT);
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + playerStatus->colliderHeight / 2;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + playerStatus->colliderHeight / 2;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -800,9 +800,9 @@ s32 CamPresetUpdate_I(Evt* script, s32 isInitialCall) {
btl_cam_use_preset(BTL_CAM_DEFAULT);
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -814,9 +814,9 @@ s32 CamPresetUpdate_I(Evt* script, s32 isInitialCall) {
btl_cam_use_preset(BTL_CAM_DEFAULT);
return ApiStatus_BLOCK;
}
x = actor->currentPos.x;
y = actor->currentPos.y + actor->size.y / 2;
z = actor->currentPos.z;
x = actor->curPos.x;
y = actor->curPos.y + actor->size.y / 2;
z = actor->curPos.z;
sizeY = actor->size.y;
sizeX = actor->size.x;
@ -908,36 +908,36 @@ s32 CamPresetUpdate_H(Evt* script, s32 isInitialCall) {
if (actor == NULL) {
return ApiStatus_BLOCK;
}
currentX = actor->currentPos.x;
currentX = actor->curPos.x;
x = actor->state.goalPos.x;
y = actor->state.goalPos.y;
z = actor->state.goalPos.z;
averageSize = (actor->size.y + actor->size.x) / 2;
currentY = actor->currentPos.y + playerStatus->colliderHeight / 2;
currentY = actor->curPos.y + playerStatus->colliderHeight / 2;
break;
case ACTOR_CLASS_PARTNER:
actor = battleStatus->partnerActor;
if (actor == NULL) {
return ApiStatus_BLOCK;
}
currentX = actor->currentPos.x;
currentX = actor->curPos.x;
x = actor->state.goalPos.x;
y = actor->state.goalPos.y;
z = actor->state.goalPos.z;
averageSize = (actor->size.y + actor->size.x) / 2;
currentY = actor->currentPos.y + actor->size.y / 2;
currentY = actor->curPos.y + actor->size.y / 2;
break;
case ACTOR_CLASS_ENEMY:
actor = battleStatus->enemyActors[actorID];
if (actor == NULL) {
return ApiStatus_BLOCK;
}
currentX = actor->currentPos.x;
currentX = actor->curPos.x;
x = actor->state.goalPos.x;
y = actor->state.goalPos.y;
z = actor->state.goalPos.z;
averageSize = (actor->size.y + actor->size.x) / 2;
currentY = actor->currentPos.y + actor->size.y / 2;
currentY = actor->curPos.y + actor->size.y / 2;
break;
default:
return ApiStatus_DONE2;
@ -1297,19 +1297,19 @@ ApiStatus CamPresetUpdate_K(Evt* script, s32 isInitialCall) {
if (battleStatus->playerActor == NULL) {
return ApiStatus_BLOCK;
}
y = battleStatus->playerActor->currentPos.y + (playerStatus->colliderHeight / 2);
y = battleStatus->playerActor->curPos.y + (playerStatus->colliderHeight / 2);
break;
case ACTOR_CLASS_PARTNER:
if (battleStatus->partnerActor == NULL) {
return ApiStatus_BLOCK;
}
y = battleStatus->partnerActor->currentPos.y;
y = battleStatus->partnerActor->curPos.y;
break;
case ACTOR_CLASS_ENEMY:
if (battleStatus->enemyActors[actorID] == NULL) {
return ApiStatus_BLOCK;
}
y = battleStatus->enemyActors[actorID]->currentPos.y;
y = battleStatus->enemyActors[actorID]->curPos.y;
break;
}
@ -1350,26 +1350,26 @@ ApiStatus CamPresetUpdate_L(Evt* script, s32 isInitialCall) {
if (battleStatus->playerActor == NULL) {
return ApiStatus_BLOCK;
}
x = battleStatus->playerActor->currentPos.x;
y = battleStatus->playerActor->currentPos.y + (playerStatus->colliderHeight / 2);
z = battleStatus->playerActor->currentPos.z;
x = battleStatus->playerActor->curPos.x;
y = battleStatus->playerActor->curPos.y + (playerStatus->colliderHeight / 2);
z = battleStatus->playerActor->curPos.z;
break;
case ACTOR_CLASS_PARTNER:
if (battleStatus->partnerActor == NULL) {
return ApiStatus_BLOCK;
}
x = battleStatus->partnerActor->currentPos.x;
y = battleStatus->partnerActor->currentPos.y;
z = battleStatus->partnerActor->currentPos.z;
x = battleStatus->partnerActor->curPos.x;
y = battleStatus->partnerActor->curPos.y;
z = battleStatus->partnerActor->curPos.z;
break;
case ACTOR_CLASS_ENEMY:
default:
if (battleStatus->enemyActors[actorID] == NULL) {
return ApiStatus_BLOCK;
}
x = battleStatus->enemyActors[actorID]->currentPos.x;
y = battleStatus->enemyActors[actorID]->currentPos.y;
z = battleStatus->enemyActors[actorID]->currentPos.z;
x = battleStatus->enemyActors[actorID]->curPos.x;
y = battleStatus->enemyActors[actorID]->curPos.y;
z = battleStatus->enemyActors[actorID]->curPos.z;
break;
}

View File

@ -259,7 +259,7 @@ void func_80032970(Camera* camera, f32 arg1) {
s32 flags = camera->flags & CAMERA_FLAG_1000;
s32 a2 = flags != 0;
if (camera->currentController != NULL && camera->currentController->type == CAM_CONTROL_FIXED_POS_AND_ORIENTATION) {
if (camera->curController != NULL && camera->curController->type == CAM_CONTROL_FIXED_POS_AND_ORIENTATION) {
a2 = TRUE;
}
@ -368,7 +368,7 @@ void func_80032C64(Camera* camera) {
f32 deltaPosX, deltaPosZ;
f32 f24, f22, cosYaw, sinYaw;
rotationRad = camera->trueRotation.x / 180.0f * PI;
rotationRad = camera->trueRot.x / 180.0f * PI;
leadAmount = camera->leadAmount;
s2 = 0;
cos_rad(rotationRad);
@ -399,8 +399,8 @@ void func_80032C64(Camera* camera) {
} else {
f24 = cosYaw = camera->targetPos.x - camera->unk_524;
f22 = camera->targetPos.z - camera->unk_528;
cosYaw = -cos_deg(camera->currentYaw);
sinYaw = -sin_deg(camera->currentYaw);
cosYaw = -cos_deg(camera->curYaw);
sinYaw = -sin_deg(camera->curYaw);
product = f24 * cosYaw + f22 * sinYaw;
camera->unk_52C = (product > 0) ? -1 : (product < 0) ? 1 : 0;
}

Some files were not shown because too many files have changed in this diff Show More