Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
misc.c File Reference

Go to the source code of this file.

Functions

void action_update_ride (void)
 
void action_update_state_23 (void)
 
void action_update_launch (void)
 
void action_update_first_strike (void)
 
void action_update_raise_arms (void)
 
void action_update_pushing_block (void)
 
void action_update_talk (void)
 

Variables

BSS f32 D_802B6770_E27C80
 

Function Documentation

◆ action_update_ride()

void action_update_ride ( void )

Definition at line 9 of file misc.c.

9 {
12
15 playerStatus->actionSubstate = 0;
16 playerStatus->curStateTime = 0;
17 playerStatus->timeInAir = 0;
18 playerStatus->peakJumpTime = 0;
19 playerStatus->curSpeed = 0.0f;
20 playerStatus->pitch = 0.0f;
21 }
22
23 if (playerStatus->animFlags & PA_FLAG_RIDING_PARTNER) {
24 if (partnerStatus->actingPartner == PARTNER_LAKILESTER) {
26 } else if (partnerStatus->actingPartner == PARTNER_SUSHIE) {
28 }
29 }
30}
BSS s32 PopupMenu_SelectedIndex
@ PS_FLAG_ACTION_STATE_CHANGED
Definition enums.h:3084
@ PS_FLAG_ARMS_RAISED
Definition enums.h:3063
@ PS_FLAG_AIRBORNE
Definition enums.h:3033
@ PA_FLAG_RIDING_PARTNER
Definition enums.h:3116
@ PARTNER_LAKILESTER
Definition enums.h:2893
@ PARTNER_SUSHIE
Definition enums.h:2892
void world_lakilester_sync_player_position(void)
void world_sushie_sync_player_position(void)
PartnerStatus gPartnerStatus
Definition partners.c:42
PlayerStatus gPlayerStatus
Definition 77480.c:38

◆ action_update_state_23()

void action_update_state_23 ( void )

Definition at line 32 of file misc.c.

32 {
36 f32 hitRz;
37 f32 hitRx;
39 f32 outZ;
40 f32 outY;
41 f32 outX;
47 f32 zDelta;
49
52 playerStatus->actionSubstate = 0;
53 playerStatus->curStateTime = 0;
54 playerStatus->timeInAir = 0;
55 playerStatus->peakJumpTime = 0;
56 playerStatus->curSpeed = 0.0f;
57 playerStatus->pitch = 0.0f;
59 }
60
61 switch (playerStatus->actionSubstate) {
62 case 0:
63 playerStatus->actionSubstate++;
64 case 1:
65 break;
66 default:
67 return;
68 }
69
71
72 miscTempVariable = 3.0f;
74
76
79
80 if (fabs(playerXOffset) < 0.1) {
82 if (playerXOffset < 0.0f) {
83 playerOffsetTempVar = -0.1f;
84 }
86 }
87
88 if (fabs(playerZOffset) < 0.1) {
90 if (playerZOffset < 0.0f) {
91 playerOffsetTempVar = -0.1f;
92 }
94 }
95
98 outX = playerStatus->pos.x;
99 outY = playerStatus->pos.y;
100 outZ = playerStatus->pos.z;
101 outLength = 5.0f;
103 playerStatus->pos.y = outY;
104 }
105
107 miscTempVariable = 30.0f;
108 } else {
109 miscTempVariable = 60.0f;
110 }
111
115 }
116}
@ AREA_SBK
Definition enums.h:2970
@ ACTION_STATE_FALLING
Definition enums.h:2435
f64 fabs(f64 f)
HitID player_raycast_below_cam_relative(PlayerStatus *playerStatus, f32 *outX, f32 *outY, f32 *outZ, f32 *outLength, f32 *hitRx, f32 *hitRz, f32 *hitDirX, f32 *hitDirZ)
Definition 77480.c:192
void gravity_use_fall_parms(void)
Definition 7BB60.c:301
void set_action_state(s32 actionState)
Definition 7E9D0.c:209
void sin_cos_rad(f32 rad, f32 *outSinTheta, f32 *outCosTheta)
Definition 43F0.c:704
BSS f32 D_802B6770_E27C80
Definition misc.c:7
#define DEG_TO_RAD(deg)
Definition macros.h:138
GameStatus * gGameStatusPtr
Definition main_loop.c:31
f32 PlayerNormalPitch
Definition 7B440.c:9
f32 PlayerNormalYaw
Definition 7B440.c:8

◆ action_update_launch()

void action_update_launch ( void )

Definition at line 118 of file misc.c.

118 {
120
123 playerStatus->actionSubstate = 0;
124 playerStatus->curStateTime = 0;
125 playerStatus->timeInAir = 0;
126 playerStatus->peakJumpTime = 0;
127 playerStatus->curSpeed = 0.0f;
128 playerStatus->pitch = 0.0f;
129
130 if (playerStatus->animFlags & PA_FLAG_USING_PEACH_PHYSICS) {
131 return;
132 }
133 playerStatus->curStateTime = 5;
134 }
135
136 playerStatus->curStateTime--;
137 if (playerStatus->curStateTime == 0) {
139 }
140}
@ PA_FLAG_USING_PEACH_PHYSICS
Definition enums.h:3103
@ ACTION_STATE_IDLE
Definition enums.h:2426

◆ action_update_first_strike()

void action_update_first_strike ( void )

Definition at line 142 of file misc.c.

142 {
144
147 playerStatus->actionSubstate = 0;
148 playerStatus->timeInAir = 0;
149 playerStatus->peakJumpTime = 0;
150 playerStatus->curSpeed = 0.0f;
151 playerStatus->pitch = 0.0f;
153 playerStatus->curStateTime = 30;
154 }
155
156 if (playerStatus->curStateTime != 0) {
157 playerStatus->curStateTime--;
158 } else if (gGameStatusPtr->context == CONTEXT_WORLD) {
160 }
161}
@ CONTEXT_WORLD
Definition enums.h:3528
void suggest_player_anim_always_forward(AnimID anim)
Definition 77480.c:912

◆ action_update_raise_arms()

void action_update_raise_arms ( void )

Definition at line 163 of file misc.c.

163 {
165
169 playerStatus->curStateTime = 0;
170 playerStatus->actionSubstate = 0;
171 playerStatus->curSpeed = 0.0f;
172 playerStatus->pitch = 0.0f;
174 }
175
176 if (!(playerStatus->animFlags & PA_FLAG_RAISED_ARMS)) {
179 }
180}
@ PA_FLAG_RAISED_ARMS
Sets action state to ACTION_STATE_RAISE_ARMS on idle.
Definition enums.h:3100

◆ action_update_pushing_block()

void action_update_pushing_block ( void )

Definition at line 182 of file misc.c.

182 {
184
186 f32 angle;
188
190 playerStatus->curSpeed = 0.0f;
191 playerStatus->unk_60 = 0;
192 playerStatus->curStateTime = 5;
194
195 if (((angle >= 45.0f) && (angle <= 135.0f)) || ((angle >= 225.0f) && (angle <= 315.0f))) {
197 } else {
199 }
200 }
201
203
204 if (playerStatus->animFlags & PA_FLAG_ABORT_PUSHING_BLOCK) {
205 if (playerStatus->curStateTime != 0) {
206 playerStatus->curStateTime--;
207 if (playerStatus->curStateTime == 0) {
209 }
210 }
211 }
212}
@ PA_FLAG_ABORT_PUSHING_BLOCK
Definition enums.h:3117
void player_input_to_move_vector(f32 *angle, f32 *magnitude)
Definition 7B440.c:139
void suggest_player_anim_allow_backward(AnimID anim)
Definition 77480.c:893
b32 check_input_jump(void)
Definition 7E9D0.c:344

◆ action_update_talk()

void action_update_talk ( void )

Definition at line 214 of file misc.c.

214 {
216
219 playerStatus->curSpeed = 0.0f;
220 playerStatus->unk_60 = 0;
221
222 if (!(playerStatus->animFlags & PA_FLAG_USING_PEACH_PHYSICS)) {
224 } else if (playerStatus->peachItemHeld == PEACH_BAKING_NONE) {
225 if (!(playerStatus->animFlags & PA_FLAG_INVISIBLE)) {
227 } else {
229 }
230 }
231 playerStatus->curStateTime = 30;
232 }
233
234 if (playerStatus->animFlags & PA_FLAG_USING_PEACH_PHYSICS) {
235 if (playerStatus->curStateTime != 0) {
236 playerStatus->curStateTime--;
237 } else if (playerStatus->peachItemHeld == PEACH_BAKING_NONE) {
238 if (!(playerStatus->animFlags & PA_FLAG_INVISIBLE)) {
240 } else {
242 }
243 }
244 }
245}
DisguiseAnims BasicPeachDisguiseAnims[]
Definition 7E9D0.c:464
@ PA_FLAG_INVISIBLE
Definition enums.h:3104
@ PEACH_BAKING_NONE
Definition enums.h:2496
void peach_set_disguise_anim(AnimID)
Definition 7E9D0.c:506

Variable Documentation

◆ D_802B6770_E27C80

BSS f32 D_802B6770_E27C80

Definition at line 7 of file misc.c.

Referenced by action_update_state_23().