summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMaciek Baron <1668712+MaciekBaron@users.noreply.github.com>2025-07-11 23:04:02 +0100
committerGitHub <noreply@github.com>2025-07-11 16:04:02 -0600
commit7bb37c6ace16f1006fbeeafc42f01967debaf0c0 (patch)
tree6612b7fbaa0c6f70232f291a525fce76cfff32ee /include
parent6a8baf89369374a4e3bbccb5b45d5de36eb7e843 (diff)
Add kartPropulsionStrength and waterInteractionFlags (#425)
* Add kartPropulsionStrength and waterInteractionFlags * Add reset_player_speed_and_velocity * Fix merge * Reorder and cleanup * Document hopVerticalOffset and hopFrameCounter * Fix missed variabled * Further things * Use constant --------- Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
Diffstat (limited to 'include')
-rw-r--r--include/common_structs.h8
-rw-r--r--include/defines.h12
2 files changed, 16 insertions, 4 deletions
diff --git a/include/common_structs.h b/include/common_structs.h
index 058bb3770..4691e3310 100644
--- a/include/common_structs.h
+++ b/include/common_structs.h
@@ -289,12 +289,12 @@ typedef struct {
/* 0x0070 */ f32 boundingBoxSize;
/* 0x0074 */ f32 unk_074;
/* 0x0078 */ s16 unk_078;
- /* 0x007A */ s16 unk_07A;
+ /* 0x007A */ s16 hopFrameCounter;
/* 0x007C */ s32 unk_07C;
/* 0x0080 */ f32 boostPower;
/* 0x0084 */ f32 unk_084;
/* 0x0088 */ f32 unk_088;
- /* 0x008C */ f32 unk_08C;
+ /* 0x008C */ f32 kartPropulsionStrength;
/* 0x0090 */ f32 unk_090;
/* 0x0094 */ f32 speed;
/* 0x0098 */ f32 unk_098;
@@ -320,7 +320,7 @@ typedef struct {
/* 0x00CC */ Vec4s unk_0CC;
/* 0x00D4 */ Vec4s unk_0D4;
/* 0x00DC */ s16 boostTimer;
- /* 0x00DE */ u16 unk_0DE;
+ /* 0x00DE */ u16 waterInteractionFlags;
/* 0x00E0 */ s16 unk_0E0;
/* 0x00E2 */ s16 unk_0E2;
/* 0x00E4 */ f32 unk_0E4;
@@ -333,7 +333,7 @@ typedef struct {
/* 0x00FC */ f32 kartFriction;
/* 0x0100 */ f32 kartGravity;
/* 0x0104 */ f32 unk_104;
- /* 0x0108 */ f32 unk_108;
+ /* 0x0108 */ f32 hopVerticalOffset;
/* 0x010C */ s16 unk_10C;
/* 0x010E */ char unk_10E[0x2];
/* 0x0110 */ Collision collision;
diff --git a/include/defines.h b/include/defines.h
index 594d43f46..b33633404 100644
--- a/include/defines.h
+++ b/include/defines.h
@@ -430,6 +430,18 @@ enum PLACE { FIRST_PLACE, SECOND_PLACE, THIRD_PLACE, FOURTH_PLACE };
#define COLOR_LAVA GPACK_RGB888(0x34, 0x00, 0x00)
#define COLOR_BLACK GPACK_RGB888(0, 0, 0)
+
+/**
+ * @brief player water interaction flags (player->unk_0DE)
+ *
+ */
+
+#define WATER_NO_INTERACTION 0x0000 // No water interaction
+#define WATER_IS_FULLY_SUBMERGED 0x0001 // Kart is completely underwater
+#define WATER_IS_PARTIALLY_SUBMERGED 0x0002 // Kart is partially in the water
+#define WATER_IN_DEEP_LIQUID_STATE 0x0004 // Persistent flag for being in a deep liquid state?
+#define WATER_JUST_ENTERED_DEEP_LIQUID 0x0008 // Momentary flag for the instant of entering deep liquid
+
/**
*
* Collision mesh flags