49 {
70 s32 wasStatusInflicted;
72
79 wasStatusInflicted =
FALSE;
80
83 }
84
88 }
89
90 target->lastDamageTaken = 0;
93 state = &player->
state;
94 } else {
96 }
97
101 }
105 }
109 }
113 }
114
119 ) {
121 }
122 }
123
130 }
132 }
133
136 } else {
138 }
139
142 }
143
147 }
148
152 }
155 }
156
158 target->hpChangeCounter = 0;
159
161 target->hpChangeCounter = 0;
163
168 } else {
171 }
172 } else {
178
182 ) {
187 }
188 }
191 target->hpChangeCounter = 0;
192 }
193
199 }
200
205 }
206
210 }
213 }
216 }
219 }
220
226 wasStatusInflicted =
TRUE;
227 }
230 wasStatusInflicted =
TRUE;
231 }
234 }
236 }
237 }
238
241 if ((
target->attackBoost > 0 ||
target->defenseBoost > 0) ||
242 ((
target->staticStatus == 0 &&
target->transparentStatus != 0) ||
target->staticStatus != 0))
243 {
248 if (
target->staticStatus != 0) {
250 target->staticDuration = 0;
252 }
253 if (
target->transparentStatus != 0) {
254 target->transparentStatus = 0;
255 target->transparentDuration = 0;
257 }
258 wasStatusInflicted =
TRUE;
260 }
261 }
262 }
263
269 wasStatusInflicted =
TRUE;
270 }
273 wasStatusInflicted =
TRUE;
274 }
275 }
276 }
277
282 }
285 }
286 }
287 }
288
292 ) {
295 }
298 }
299 }
300
304 ) {
307 }
310 }
311 }
312
316 ) {
319 }
322 }
323 }
324
329 }
332 }
334 }
335 }
336
342 ) {
343
344
345 #define INFLICT_STATUS(STATUS_TYPE) \
346 if ((battleStatus->curAttackStatus & STATUS_FLAG_##STATUS_TYPE) && \
347 try_inflict_status(target, STATUS_KEY_##STATUS_TYPE, STATUS_TURN_MOD_##STATUS_TYPE)) { \
348 wasStatusInflicted = TRUE; \
349 } \
350
360
361 #undef INFLICT_STATUS
362
363 if (wasStatusInflicted) {
366 }
369 }
370 }
371 }
372
375
385 {
391 wasStatusInflicted =
TRUE;
393 } else {
396 }
397 }
398
400
403 ) {
406 }
407
411 } else {
413 }
414 }
415 }
416
419 }
420
422
426 }
427 }
428
433 }
437 } else {
439 }
442 }
443 }
444 }
445
454 } else {
456 }
457 }
458
461 }
462
469 }
476 }
483 }
490 }
497 }
505 }
513 }
516 }
517
519
523 }
526 }
527 }
528
530}
#define INFLICT_STATUS(STATUS_TYPE)
@ ACTION_RATING_SUPER
sets nice hits = 2
@ ACTION_RATING_NICE
sets nice hits = 1
@ BS_FLAGS1_PARTNER_ACTING
@ BS_FLAGS1_TRIGGER_EVENTS
@ BS_FLAGS1_SHOW_PLAYER_DECORATIONS
@ BS_FLAGS1_INCLUDE_POWER_UPS
@ BS_FLAGS1_ACTORS_VISIBLE
@ ACTOR_EVENT_FLAG_RIDING_BROOMSTICK
Actor is on Magikoopa Broomstick, effect seems to be redundant.
@ ACTOR_EVENT_FLAG_STAR_ROD_ENCHANTED
Actor glows and listens for Star Beam and Peach Beam events.
@ ACTOR_EVENT_FLAG_GROUNDABLE
Actor can be knocked down from flight; triggered by jump attacks.
@ ACTOR_EVENT_FLAG_ATTACK_CHARGED
Actor has charged an attack that can be removed with Star Beam.
@ ACTOR_EVENT_FLAG_BURIED
Actor can only by hit by quake-element attacks.
@ ACTOR_EVENT_FLAG_FLIPABLE
Actor can be flipped; triggered by jump and quake attacks.
@ ACTOR_EVENT_FLAG_ENCHANTED
Actor glows and listens for the Star Beam event.
@ ACTOR_PART_TARGET_NO_DAMAGE
@ HIT_RESULT_NICE_NO_DAMAGE
@ ACTOR_FLAG_DAMAGE_IMMUNE
@ ACTOR_FLAG_NO_DMG_POPUP
Hide damage popup.
@ ACTOR_FLAG_FLIPPED
Actor has been flipped over.
@ EVENT_INVUNERABLE_TAUNT
@ ACTOR_PART_FLAG_DAMAGE_IMMUNE
electrified Plays extra hurt SFX?
@ DAMAGE_TYPE_STATUS_ALWAYS_HITS
@ DAMAGE_TYPE_IGNORE_DEFENSE
@ DAMAGE_TYPE_REMOVE_BUFFS
@ DAMAGE_TYPE_MULTIPLE_POPUPS
void show_primary_damage_popup(f32 x, f32 y, f32 z, s32 attack, s32 a)
void show_immune_bonk(f32 x, f32 y, f32 z, s32, s32, s32)
void dispatch_event_actor(Actor *, s32)
void show_actor_health_bar(Actor *)
void remove_status_static(s32)
void remove_status_transparent(s32)
void set_actor_flash_mode(Actor *actor, s32 arg1)
void show_damage_fx(Actor *actor, f32 x, f32 y, f32 z, s32 damage)
Evt * start_script(EvtScript *source, s32 priority, s32 initialState)
s32 inflict_status(Actor *, s32, s32)
s32 get_defense(Actor *actor, s32 *defenseTable, s32 elementFlags)
void func_80266970(Actor *)
void show_next_damage_popup(f32 x, f32 y, f32 z, s32 damageAmount, s32)
void apply_shock_effect(Actor *)
void show_action_rating(s32, Actor *, f32, f32, f32)
EvtScript EVS_PlayStopHitFX
EvtScript EVS_PlayFreezeHitFX
EvtScript EVS_PlayShrinkHitFX
EvtScript EVS_PlayParalyzeHitFX
EvtScript EVS_PlayPoisonHitFX
EvtScript EVS_PlaySleepHitFX
EvtScript EVS_PlayDizzyHitFX