12extern Addr btl_states_menus_ROM_START;
13extern Addr btl_states_menus_ROM_END;
14extern Addr btl_states_menus_VRAM;
55 if (currentEncounter->
curEnemy != NULL) {
60 }
else if (temp <= 90) {
65 }
else if (temp <= 30) {
67 }
else if (temp <= 60) {
69 }
else if (temp <= 80) {
74 }
else if (temp <= 30) {
76 }
else if (temp <= 60) {
78 }
else if (temp <= 80) {
111 if (currentEncounter->
curEnemy != NULL) {
116 }
else if (temp <= 90) {
121 }
else if (temp <= 30) {
123 }
else if (temp <= 60) {
125 }
else if (temp <= 80) {
130 }
else if (temp <= 30) {
132 }
else if (temp <= 60) {
134 }
else if (temp <= 80) {
173 switch (battleState) {
198 void* compressedAsset;
216 stage = battle->
stage;
238 if (rootModel != NULL) {
243 if (stage->
bg != NULL) {
316 for (i = 0; i <
ARRAY_COUNT(battleStatus->varTable); i++) {
317 battleStatus->varTable[i] = 0;
322 battleStatus->
buffEffect = fx_partner_buff(0, 0.0f, 0.0f, 0.0f, 0.0f, 0);
342 statusBar->
hidden = FALSE;
407 enemyNotDone = FALSE;
468 if (currentEncounter->
curEnemy != NULL
544 battleStatus->
flags2 &= ~BS_FLAGS2_PLAYER_TURN_USED;
545 battleStatus->
flags2 &= ~BS_FLAGS2_PARTNER_TURN_USED;
546 battleStatus->
flags2 &= ~BS_FLAGS2_OVERRIDE_INACTIVE_PLAYER;
547 battleStatus->
flags2 &= ~BS_FLAGS2_OVERRIDE_INACTIVE_PARTNER;
550 battleStatus->
flags2 &= ~BS_FLAGS2_IS_FIRST_STRIKE;
554 if (partner != NULL) {
575 for (i = 0; i < numEnemyActors - 1; i++) {
576 for (j = i + 1; j < numEnemyActors; j++) {
653 if (partner != NULL) {
738 if (partner != NULL) {
777 fx_water_splash(0, player->
curPos.
x - 10.0f, player->
curPos.
y + 5.0f, player->
curPos.
z + 5.0f, 1.0f, 24);
778 fx_water_splash(0, player->
curPos.
x - 15.0f, player->
curPos.
y + 32.0f, player->
curPos.
z + 5.0f, 1.0f, 24);
779 fx_water_splash(1, player->
curPos.
x + 15.0f, player->
curPos.
y + 22.0f, player->
curPos.
z + 5.0f, 1.0f, 24);
889 if (player->
debuff != 0) {
925 part->
flags &= ~ACTOR_PART_FLAG_TRANSPARENT;
930 if (player->
debuff != 0) {
954 if (debuffDuration > 0) {
957 }
else if (temp != debuffDuration) {
996 script->varTable[0] = temp;
1010 script->varTable[0] = temp;
1024 script->varTable[0] = temp;
1072 if (partner != NULL) {
1079 if (enemy != NULL) {
1100 if (partner == NULL) {
1146 if (enemy != NULL) {
1155 if (partner != NULL) {
1222 if (enemy != NULL) {
1242 s32 waitingForScript;
1253 if (partner != NULL) {
1260 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1262 if (partner != NULL) {
1263 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1276 waitingForScript = FALSE;
1281 waitingForScript = TRUE;
1288 if (!waitingForScript) {
1293 if (actor != NULL) {
1295 actor->
flags &= ~ACTOR_FLAG_SKIP_TURN;
1297 if (actor->
debuff != 0) {
1347 }
else if (oldKoDuration != actor->
koDuration) {
1370 if (partner != NULL) {
1378 waitingForScript = FALSE;
1384 waitingForScript = TRUE;
1391 if (waitingForScript) {
1405 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1406 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1409 state = &partner->
state;
1424 state->
angle = 0.0f;
1478 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1480 if (partner != NULL) {
1481 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1510 waitingForScript = FALSE;
1515 waitingForScript = TRUE;
1518 if (!waitingForScript) {
1608 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1609 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
1660 if (partner != NULL) {
1745 if (partner != NULL) {
1776 if (partner != NULL) {
1798 if (partner != NULL) {
1818 if (partner != NULL) {
1949 if (partner != NULL) {
1969 if (partner != NULL) {
1989 if (partner != NULL) {
2089 stage = battle->
stage;
2166 camera->
params.basic.offsetY += 256;
2205 f32 totalEscapeChance;
2224 totalEscapeChance = 0.0f;
2228 if (enemy != NULL) {
2241 escapeChance = 100.0f;
2243 totalEscapeChance += escapeChance;
2249 player->
state.varTable[0] = totalEscapeChance / enemyCount;
2252 player->
state.varTable[0] = 100;
2260 if (partner != NULL && partner->
koStatus == 0) {
2342 if (partner != NULL && partner->
koStatus == 0) {
2377 battleStatus->
flags1 &= ~BS_FLAGS1_SHOW_PLAYER_DECORATIONS;
2384 if (player->
debuff != 0) {
2406 if (partner != NULL) {
2451API_CALLABLE(EnablePartnerBlur) {
2456API_CALLABLE(DisablePartnerBlur) {
2473 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
2474 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
2485 if (enemyActor != NULL) {
2486 enemyActor->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
2487 enemyActor->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
2531 if (partner != NULL) {
2549 if (partner != NULL) {
2562 if (partner != NULL) {
2615 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
2616 if (partner != NULL) {
2617 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
2627 if (actor != NULL) {
2634 if (actor != NULL) {
2635 actor->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
2636 actor->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
2671 if (tipIndex >= 0) {
2724 if (partner != NULL) {
2732 enemyNotDone = FALSE;
2737 enemyNotDone = TRUE;
2748 enemyNotDone = FALSE;
2753 enemyNotDone = TRUE;
2765 if (actor != NULL) {
2766 actor->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
2818 enemyNotDone = FALSE;
2821 if (actor != NULL) {
2823 enemyNotDone = TRUE;
2829 if (!enemyNotDone) {
2867 if (actor != NULL) {
2979 s32 prevHPDrainCount = 0;
2998 if (prevHPDrainCount + hpRecovery + fpRecovery == 0) {
3010 script->varTable[10] = prevHPDrainCount;
3011 script->varTable[11] = hpRecovery;
3012 script->varTable[12] = fpRecovery;
3014 if (script->varTable[10] > 99) {
3015 script->varTable[10] = 99;
3017 if (script->varTable[11] > 99) {
3018 script->varTable[11] = 99;
3020 if (script->varTable[12] > 99) {
3021 script->varTable[12] = 99;
3090 if (battleStatus->
unk_94 < 0) {
3091 battleStatus->
unk_94 = 0;
3161 if (partner == NULL) {
3173 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3174 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3182 if (enemyActor != NULL) {
3192 if (enemyActor != NULL) {
3193 enemyActor->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
3194 enemyActor->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3260 if (enemyActor != NULL) {
3261 enemyActor->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
3286 if (enemyActor != NULL) {
3329 if (enemyActor != NULL) {
3342 switch (switchCondition) {
3378 if (enemyActor != NULL) {
3422 battleStatus->
flags1 &= ~BS_FLAGS1_PARTNER_ACTING;
3423 battleStatus->
flags2 &= ~BS_FLAGS2_OVERRIDE_INACTIVE_PARTNER;
3425 if (battleStatus->
unk_94 < 0) {
3426 battleStatus->
unk_94 = 0;
3458 if (battleStatus->
enemyIDs[i] >= 0) {
3459 u16 enemyID = battleStatus->
enemyIDs[i];
3461 enemy = battleStatus->
enemyActors[enemyID & 0xFF];
3462 if (enemy != NULL) {
3522 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3525 if (partner != NULL) {
3526 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3536 Evt* onTurnChanceScript;
3554 if (battleStatus->
unk_94 < 0) {
3555 battleStatus->
unk_94 = 0;
3579 s32 waitingForEnemyScript;
3586 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3587 if (partner != NULL) {
3588 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3599 if (partner != NULL) {
3606 if (enemy != NULL) {
3607 enemy->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
3613 if (enemy != NULL) {
3615 enemy->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
3642 if (partner != NULL) {
3649 waitingForEnemyScript = FALSE;
3654 waitingForEnemyScript = TRUE;
3661 if (waitingForEnemyScript) {
3673 waitingForEnemyScript = TRUE;
3700 if (partner != NULL) {
3759 if (partner != NULL) {
3837 switch (encounterStatus->
hitType) {
3919 if (partner != NULL) {
3927 enemyNotDone = FALSE;
3932 enemyNotDone = TRUE;
3943 enemyNotDone = FALSE;
3948 enemyNotDone = TRUE;
3960 if (enemy != NULL) {
3961 enemy->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
3975 if (target != NULL) {
3991 enemyNotDone = FALSE;
3996 enemyNotDone = TRUE;
4121 enemyNotDone = FALSE;
4126 enemyNotDone = TRUE;
4137 enemyNotDone = FALSE;
4142 enemyNotDone = TRUE;
4154 if (actor != NULL) {
4155 actor->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
4166 if (actor != NULL) {
4179 enemyNotDone = FALSE;
4184 enemyNotDone = TRUE;
4190 if (!enemyNotDone) {
4220 s16 activeEnemyActorID;
4224 s32 waitingForScript;
4234 battleStatus->
flags1 &= ~BS_FLAGS1_MENU_OPEN;
4236 player->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
4237 if (partner != NULL) {
4238 partner->
flags &= ~ACTOR_FLAG_SHOW_STATUS_ICONS;
4246 if (actor != NULL) {
4255 for (i = 0; i < count - 1; i++) {
4256 for (j = i + 1; j < count; j++) {
4257 s32 iVal = enemyIDs[i];
4258 s32 jVal = enemyIDs[j];
4275 if (actor == NULL || (actor->
flags &
flags)) {
4285 activeEnemyActorID = battleStatus->
enemyIDs[nextEnemyIdx];
4325 if (partner != NULL) {
4333 waitingForScript = FALSE;
4339 waitingForScript = TRUE;
4346 if (waitingForScript) {
4351 waitingForScript = FALSE;
4357 waitingForScript = TRUE;
4364 if (waitingForScript) {
4372 if (actor != NULL) {
4373 actor->
flags &= ~ACTOR_FLAG_HEALTH_BAR_HIDDEN;
4440 stage = battle->
stage;
4465 if (enemy != NULL) {
Actor * create_actor(Formation formation)
@ ACTION_COMMAND_MODE_NOT_LEARNED
@ ACTION_COMMAND_MODE_LEARNED
BSS Battle * gCurrentBattlePtr
void btl_state_draw_switch_to_partner(void)
void btl_state_update_end_battle(void)
void btl_state_update_end_turn(void)
void btl_state_draw_9(void)
void btl_state_update_end_training_battle(void)
BSS s32 BattleEnemiesCreated
void btl_state_update_prepare_menu(void)
b32 dispatch_damage_tick_event_player(s32 damageAmount, s32 event)
void btl_state_update_end_player_turn(void)
void btl_state_update_enemy_move(void)
BSS s32 RunAwayRewardStep
void btl_state_update_first_strike(void)
BSS s32 RunAwayRewardIncrement
void btl_state_draw_partner_striking_first(void)
void btl_state_update_enemy_striking_first(void)
void btl_state_draw_prepare_menu(void)
void btl_state_draw_1C(void)
void btl_state_update_normal_start(void)
void btl_state_draw_begin_player_turn(void)
void btl_state_update_begin_player_turn(void)
void btl_state_draw_defend(void)
void btl_state_update_defeat(void)
void btl_state_update_next_enemy(void)
void btl_state_update_1C(void)
void btl_state_draw_end_player_turn(void)
void btl_state_draw_victory(void)
void btl_state_update_victory(void)
void btl_state_draw_end_demo_battle(void)
void btl_state_update_9(void)
void btl_state_update_partner_striking_first(void)
void btl_state_draw_end_turn(void)
void btl_state_draw_partner_move(void)
void btl_state_update_change_partner(void)
void btl_state_update_partner_move(void)
void btl_state_update_begin_partner_turn(void)
void btl_merlee_on_first_strike(void)
EvtScript EVS_Peach_OnActorCreate
void btl_state_update_switch_to_player(void)
StageListRow * gCurrentStagePtr
BSS s32 BattleSubStateDelay
BSS s32 RunAwayRewardTotal
void btl_state_update_begin_turn(void)
void btl_state_draw_begin_partner_turn(void)
void btl_state_draw_player_move(void)
void btl_state_draw_end_partner_turn(void)
void btl_state_draw_begin_turn(void)
void btl_state_update_defend(void)
void btl_state_draw_enemy_move(void)
s32 bActorsIgnoreDuringCount[]
void btl_state_draw_switch_to_player(void)
EvtScript EVS_OnBattleInit
void btl_state_draw_next_enemy(void)
void btl_set_state(s32 battleState)
void btl_state_draw_normal_start(void)
EvtScript EVS_Mario_OnActorCreate
void btl_state_draw_run_away(void)
void btl_state_update_end_partner_turn(void)
void btl_merlee_on_start_turn(void)
void btl_state_draw_end_training_battle(void)
void btl_state_draw_defeat(void)
void btl_state_draw_end_battle(void)
void btl_state_update_end_demo_battle(void)
void btl_state_update_player_move(void)
void btl_state_draw_change_partner(void)
void btl_state_draw_enemy_striking_first(void)
void btl_state_draw_first_stike(void)
void btl_state_update_run_away(void)
void btl_state_update_switch_to_partner(void)
struct EffectInstance * disableEffect
struct Evt * handlePhaseScript
struct Evt * takeTurnScript
EvtScript * handleEventSource
struct ActorBlueprint * actorBlueprint
struct Evt * handleEventScript
struct ActorPart * partsTable
struct SelectableTarget targetData[24]
EvtScript * handlePhaseSource
struct EffectInstance * icePillarEffect
union Evt::@8 owner1
Initially -1.
EvtScript * takeTurnSource
s32 handleBatttlePhaseScriptID
struct DisableXFXData * disableX
struct PartnerBuffFXData * partnerBuff
@ FX_BUFF_DATA_TURBO_CHARGE
@ FX_BUFF_DATA_CLOUD_NINE
@ FX_BUFF_DATA_WATER_BLOCK
#define ASSERT(condition)
@ FX_INSTANCE_FLAG_DISMISS
@ MERLEE_SPELL_COIN_BOOST
@ BS_FLAGS1_PLAYER_IN_BACK
@ BS_FLAGS1_DISABLE_CELEBRATION
@ BS_FLAGS1_STAR_POINTS_DROPPED
@ BS_FLAGS1_SORT_ENEMIES_BY_POSX
@ BS_FLAGS1_PARTNER_ACTING
@ BS_FLAGS1_TRIGGER_EVENTS
@ BS_FLAGS1_HAMMER_CHARGED
@ BS_FLAGS1_SHOW_PLAYER_DECORATIONS
@ BS_FLAGS1_ACTORS_VISIBLE
@ BS_FLAGS1_EXECUTING_MOVE
@ BTL_MSG_PLAYER_POISONED
@ BTL_MSG_TURBO_CHARGE_END
@ BTL_MSG_PLAYER_PARALYZED
@ BTL_MSG_ENEMY_CANT_MOVE
@ BTL_MSG_ENEMY_PARALYZED
@ BTL_MSG_WATER_BLOCK_END
@ BTL_MSG_FIRST_ACTION_TIP
@ BTL_MSG_PARTNER_INJURED
@ BTL_MSG_ENEMY_ELECTRIFIED
@ DEBUG_CONTACT_DIE_IN_BATTLE
@ DEBUG_CONTACT_DIE_ON_TOUCH
@ DEBUG_CONTACT_AUTO_FLEE
@ PHASE_MERLEE_ATTACK_BONUS
@ PHASE_MERLEE_DEFENSE_BONUS
@ BTL_MENU_TYPE_CHANGE_PARTNER
@ BS_FLAGS2_OVERRIDE_INACTIVE_PARTNER
@ BS_FLAGS2_STORED_TURBO_CHARGE_TURN
@ BS_FLAGS2_IS_FIRST_STRIKE
@ BS_FLAGS2_PLAYER_TURN_USED
@ BS_FLAGS2_HAS_DRAINED_HP
@ BS_FLAGS2_OVERRIDE_INACTIVE_PLAYER
@ BS_FLAGS2_PARTNER_TURN_USED
@ BS_FLAGS2_DONT_STOP_MUSIC
@ BS_FLAGS2_IGNORE_DARKNESS
@ BS_FLAGS2_HIDE_BUFF_COUNTERS
@ BS_FLAGS2_DROP_WHACKA_BUMP
@ ENCOUNTER_TRIGGER_HAMMER
@ ENCOUNTER_TRIGGER_PARTNER
@ BTL_CAM_PARTNER_INJURED
@ BTL_CAM_PLAYER_STATUS_AFFLICTED
@ BTL_SUBSTATE_FIRST_STRIKE_AWAIT_ENEMY_READY
@ BTL_SUBSTATE_PARTNER_MOVE_EXECUTE_MOVE
@ BTL_SUBSTATE_END_TRAINING_DONE
@ BTL_SUBSTATE_PARTNER_FIRST_STRIKE_AWAIT_ENEMY_DONE
@ BTL_SUBSTATE_PLAYER_MOVE_EXECUTE_MOVE
@ BTL_SUBSTATE_FIRST_STRIKE_AWAIT_SCRIPTS
@ BTL_SUBSTATE_CHANGE_PARTNER_EXEC_PUT_AWAY
@ BTL_SUBSTATE_END_TURN_PERFORM_SWAP
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_CHECK_CLOUD_NINE
@ BTL_SUBSTATE_BEGIN_PARTNER_TURN_AWAIT_TURN_SCRIPT
@ BTL_SUBSTATE_DEFEAT_INIT
@ BTL_SUBSTATE_DEFEAT_CHECK_LIFE_SHROOM
@ BTL_SUBSTATE_END_DEMO_BATTLE_EXEC_STAGE_SCRIPT
@ BTL_SUBSTATE_END_BATTLE_CLEANUP
@ BTL_SUBSTATE_NORMAL_START_FADE_IN
@ BTL_SUBSTATE_VICTORY_DONE
@ BTL_SUBSTATE_BEGIN_PARTNER_TURN_EXEC_TURN_SCRIPT
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_RESET_STATE
@ BTL_SUBSTATE_NEXT_ENEMY_DONE
@ BTL_SUBSTATE_PARTNER_FIRST_STRIKE_AWAIT_ENEMY_READY
@ BTL_SUBSTATE_NORMAL_START_CREATE_ENEMIES
@ BTL_SUBSTATE_END_BATTLE_INIT
@ BTL_SUBSTATE_BEGIN_PARTNER_TURN_INIT
@ BTL_SUBSTATE_PARTNER_MOVE_AWAIT_ENEMY_STATUS_POPUP
@ BTL_SUBSTATE_RUN_AWAY_EXEC_SCRIPT
@ BTL_SUBSTATE_ENEMY_FIRST_STRIKE_INIT
@ BTL_SUBSTATE_CHANGE_PARTNER_EXEC_PHASE
@ BTL_SUBSTATE_PLAYER_MOVE_POST_PLAYER_STATUS_POPUP
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_WATER_BLOCK
@ BTL_SUBSTATE_BEGIN_PARTNER_TURN_END_DELAY
@ BTL_SUBSTATE_END_TURN_CHECK_FOR_SWAP
@ BTL_SUBSTATE_PARTNER_MOVE_AWAIT_PARTNER_STATUS_POPUP
@ BTL_SUBSTATE_RUN_AWAY_GIVE_STAR_POINTS
@ BTL_SUBSTATE_NEXT_ENEMY_UNUSED_1
@ BTL_SUBSTATE_FIRST_STRIKE_AWAIT_ENEMY_DONE
@ BTL_SUBSTATE_PARTNER_FIRST_STRIKE_AWAIT_SCRIPTS
@ BTL_SUBSTATE_RUN_AWAY_AWAIT_SCRIPT
@ BTL_SUBSTATE_END_TRAINING_CHECK_OUTTA_SIGHT
@ BTL_SUBSTATE_ENEMY_MOVE_AWAIT_PLAYER_POPUP_DONE
@ BTL_SUBSTATE_VICTORY_AWAIT_SWAP
@ BTL_SUBSTATE_ENEMY_MOVE_EXECUTE
@ BTL_SUBSTATE_END_DEMO_BATTLE_CLEANUP
@ BTL_SUBSTATE_PARTNER_FIRST_STRIKE_INIT
@ BTL_SUBSTATE_ENEMY_MOVE_POST_PARTNER_POPUP_DELAY
@ BTL_SUBSTATE_ENEMY_MOVE_UNUSED_1
@ BTL_SUBSTATE_PARTNER_MOVE_DONE
@ BTL_SUBSTATE_BEGIN_PARTNER_TURN_AWAIT_RECOVER_DONE
@ BTL_SUBSTATE_CHANGE_PARTNER_INIT
@ BTL_SUBSTATE_END_TRAINING_AWAIT_OUTTA_SIGHT
@ BTL_SUBSTATE_END_BATTLE_EXEC_STAGE_SCRIPT
@ BTL_SUBSTATE_END_PLAYER_TURN_AWAIT_HAPPY
@ BTL_SUBSTATE_VICTORY_AWAIT_RECOVER_KO
@ BTL_SUBSTATE_ENEMY_MOVE_AWAIT_PARTNER_POPUP_DONE
@ BTL_SUBSTATE_END_TRAINING_INIT
@ BTL_SUBSTATE_PARTNER_MOVE_POST_ENEMY_STATUS_POPUP
@ BTL_SUBSTATE_BEGIN_TURN_INIT
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_TRY_STATUS_RECOVER
@ BTL_SUBSTATE_END_TURN_AWAIT_SCRIPTS
@ BTL_SUBSTATE_END_TURN_INIT
@ BTL_SUBSTATE_END_DEMO_BATTLE_FADE_OUT
@ BTL_SUBSTATE_END_BATTLE_FADE_OUT
@ BTL_SUBSTATE_PLAYER_MOVE_SHOW_TIP_DELAY
@ BTL_SUBSTATE_END_PLAYER_TURN_AWAIT_SWAP
@ BTL_SUBSTATE_DEFEND_AWAIT_SCRIPT
@ BTL_SUBSTATE_PARTNER_MOVE_POST_PARTNER_STATUS_POPUP
@ BATTLE_SUBSTATE_PREPARE_MENU_DIPPING
@ BTL_SUBSTATE_VICTORY_CHECK_SWAP
@ BTL_SUBSTATE_PLAYER_MOVE_AWAIT_PLAYER_STATUS_POPUP
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_TRY_COMMAND_RECOVER
@ BTL_SUBSTATE_CHANGE_PARTNER_DONE
@ BTL_SUBSTATE_RUN_AWAY_DONE
@ BTL_SUBSTATE_PLAYER_MOVE_AWAIT_DONE
@ BTL_SUBSTATE_END_TRAINING_RESET_CAM
@ BTL_SUBSTATE_NORMAL_START_CHECK_FIRST_STRIKE
@ BTL_SUBSTATE_END_TURN_UNUSED_4
@ BTL_SUBSTATE_FIRST_STRIKE_INIT
@ BTL_SUBSTATE_END_TURN_START_SCRIPTS
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_END_DELAY
@ BTL_SUBSTATE_RUN_AWAY_AWAIT_POST_FAILURE
@ BTL_SUBSTATE_VICTORY_CHECK_OUTTA_SIGHT
@ BTL_SUBSTATE_PARTNER_MOVE_HANDLE_RESULTS
@ BTL_SUBSTATE_END_TRAINING_AWAIT_RECOVERING
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_INIT
@ BTL_SUBSTATE_END_BATTLE_AWAIT_STAGE_SCRIPT
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_TRY_STATUS_DAMAGE
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_CHECK_TURBO_CHARGE
@ BTL_SUBSTATE_NORMAL_START_INIT
@ BTL_SUBSTATE_PLAYER_MOVE_CHECK_PLAYER_STATUS
@ BTL_SUBSTATE_VICTORY_CHECK_MERLEE
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_CHECK_WATER_BLOCK
@ BTL_SUBSTATE_CHANGE_PARTNER_LOAD_NEW_PARTNER
@ BTL_SUBSTATE_PARTNER_MOVE_CHECK_ENEMY_STATUS
@ BTL_SUBSTATE_NEXT_ENEMY_INIT
@ BTL_SUBSTATE_END_DEMO_BATTLE_AWAIT_STAGE_SCRIPT
@ BTL_SUBSTATE_PARTNER_MOVE_INIT
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_TURBO_CHARGE
@ BTL_SUBSTATE_VICTORY_AWAIT_OUTTA_SIGHT
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_OUTTA_SIGHT
@ BTL_SUBSTATE_BEGIN_PARTNER_TURN_RESET_STATE
@ BTL_SUBSTATE_CHANGE_PARTNER_EXEC_BRING_OUT
@ BTL_SUBSTATE_END_PLAYER_TURN_DONE
@ BTL_SUBSTATE_END_TURN_BEGIN_NEXT
@ BTL_SUBSTATE_VICTORY_RECOVER_STATUS
@ BTL_SUBSTATE_BEGIN_TURN_AWAIT_ENEMY_DEATH
@ BTL_SUBSTATE_ENEMY_MOVE_POST_PLAYER_POPUP_DELAY
@ BTL_SUBSTATE_PLAYER_MOVE_POST_ENEMY_STATUS_POPUP
@ BTL_SUBSTATE_BEGIN_TURN_AWAIT_ENEMY_SCRIPTS
@ BTL_SUBSTATE_ENEMY_MOVE_AWAIT_SCRIPTS
@ BTL_SUBSTATE_PLAYER_MOVE_INIT
@ BTL_SUBSTATE_DEFEAT_DONE
@ BTL_SUBSTATE_ENEMY_MOVE_DONE
@ BTL_SUBSTATE_RUN_AWAY_EXEC_POST_FAILURE
@ BTL_SUBSTATE_END_PLAYER_TURN_CHECK_HAPPY
@ BTL_SUBSTATE_ENEMY_MOVE_CHECK_PARTNER
@ BTL_SUBSTATE_NORMAL_START_DONE
@ BTL_SUBSTATE_DEFEND_INIT
@ BTL_SUBSTATE_ENEMY_FIRST_STRIKE_AWAIT_SCRIPTS
@ BTL_SUBSTATE_VICTORY_AWAIT_MERLEE
@ BTL_SUBSTATE_END_DEMO_BATTLE_INIT
@ BTL_SUBSTATE_PLAYER_MOVE_BEGIN_SHOW_TIP
@ BTL_SUBSTATE_BEGIN_PLAYER_TURN_AWAIT_CLOUD_NINE
@ BTL_SUBSTATE_DEFEAT_AWAIT_LIFE_SHROOM
@ BTL_SUBSTATE_PLAYER_MOVE_AWAIT_ENEMY_STATUS_POPUP
@ BTL_SUBSTATE_CHANGE_PARTNER_AWAIT_PHASE
@ BTL_SUBSTATE_PLAYER_MOVE_HANDLE_RESULTS
@ BATTLE_STATE_BEGIN_PARTNER_TURN
@ BATTLE_STATE_ENEMY_MOVE
@ BATTLE_STATE_NEXT_ENEMY
@ BATTLE_STATE_ENEMY_FIRST_STRIKE
@ BATTLE_STATE_FIRST_STRIKE
@ BATTLE_STATE_PREPARE_MENU
@ BATTLE_STATE_SWITCH_TO_PARTNER
@ BATTLE_STATE_PLAYER_MENU
@ BATTLE_STATE_END_DEMO_BATTLE
@ BATTLE_STATE_CELEBRATION
@ BATTLE_STATE_SWITCH_TO_PLAYER
@ BATTLE_STATE_BEGIN_TURN
@ BATTLE_STATE_PARTNER_FIRST_STRIKE
@ BATTLE_STATE_END_PARTNER_TURN
@ BATTLE_STATE_END_PLAYER_TURN
@ BATTLE_STATE_PEACH_MENU
@ BATTLE_STATE_PARTNER_MENU
@ BATTLE_STATE_BEGIN_PLAYER_TURN
@ BATTLE_STATE_TWINK_MENU
@ BATTLE_STATE_END_BATTLE
@ SOUND_DESTROY_WATER_BLOCK
@ ACTOR_FLAG_HEALTH_BAR_HIDDEN
@ ACTOR_FLAG_SHOW_STATUS_ICONS
@ ACTOR_FLAG_TARGET_ONLY
Battle ends even if undefeated. No turn.
@ ACTOR_FLAG_NO_HEALTH_BAR
@ ACTOR_FLAG_NO_DMG_APPLY
Damage is not applied to actor HP.
@ ACTOR_FLAG_NO_ATTACK
Skip attack turn.
@ ACTOR_FLAG_USING_IDLE_ANIM
@ BTL_MENU_IDX_STAR_POWER
@ EVENT_BEGIN_FIRST_STRIKE
@ ACTOR_PART_FLAG_TRANSPARENT
@ BTL_SUBSTATE_PLAYER_MENU_DIPPING_1
@ BTL_DARKNESS_STATE_NONE
@ EVT_FLAG_RUN_IMMEDIATELY
don't wait for next update_scripts call
void load_partner_actor(void)
void disable_partner_blur(void)
void set_screen_overlay_params_back(u8, f32)
s32 btl_are_all_enemies_defeated(void)
s32 is_ability_active(s32 arg0)
s32 player_team_is_ability_active(Actor *actor, s32 ability)
void kill_all_scripts(void)
void get_map_IDs_by_name_checked(const char *mapName, s16 *areaID, s16 *mapID)
Same as get_map_IDs_by_name, but will panic if the map doesn't exist.
s32 bgm_set_song(s32 playerIndex, s32 songID, s32 variation, s32 fadeOutTime, s16 volume)
void setup_status_bar_for_battle(void)
void * load_asset_by_name(const char *assetName, u32 *decompressedSize)
void remove_status_debuff(s32)
void reset_all_actor_sounds(Actor *)
s32 btl_check_player_defeated(void)
void set_background(BackgroundHeader *)
void decrement_status_bar_disabled(void)
void btl_cam_set_zoom(s16)
void dispatch_event_actor(Actor *, s32)
void load_battle_hit_asset(const char *hitName)
void load_data_for_models(struct ModelNode *model, s32 romOffset, s32 size)
void btl_update_ko_status(void)
void remove_status_static(s32)
void enable_partner_blur(void)
void reset_actor_turn_info(void)
void btl_cam_set_target_pos(f32, f32, f32)
void set_screen_overlay_params_front(u8, f32)
void close_action_command_instruction_popup(void)
void load_map_bg(char *optAssetName)
s32 get_asset_offset(char *, s32 *)
void remove_all_effects(void)
void remove_status_transparent(s32)
void dispatch_event_player(s32)
void btl_set_player_idle_anims(void)
void status_bar_stop_blinking_starpoints(void)
void btl_cam_use_preset(s32)
void btl_cam_target_actor(s32)
Evt * start_script(EvtScript *source, s32 priority, s32 initialState)
s32 find_item(s32)
Search player inventory for itemID and return first matching array index.
void btl_cam_set_zoffset(s16)
s32 func_80263230(Actor *, Actor *)
void status_bar_start_blinking_starpoints(void)
void set_screen_overlay_center(s32, s32, s32, s32)
Actor * get_actor(s32 actorID)
void set_screen_overlay_color(s32, u8, u8, u8)
void btl_show_battle_message(s32 messageIndex, s32 duration)
s32 general_heap_free(void *data)
void deduct_current_move_fp(void)
void btl_delete_player_actor(Actor *player)
s32 btl_cam_is_moving_done(void)
void decode_yay0(void *src, void *dst)
void set_windows_visible(s32 groupIdx)
s32 dispatch_damage_event_actor_0(Actor *actor, s32 damageAmount, s32 event)
s32 inflict_status_set_duration(Actor *actor, s32 statusTypeKey, s32 statusDurationKey, s32 duration)
s32 does_script_exist(s32 id)
void load_player_actor(void)
void btl_delete_actor(Actor *actor)
s32 btl_is_popup_displayed(void)
void create_current_pos_target_list(Actor *actor)
void btl_cam_unfreeze(void)
s32 btl_check_enemies_defeated(void)
void set_curtain_scale_goal(f32 scale)
void remove_status_chill_out(s32)
void increment_status_bar_disabled(void)
void dispatch_event_partner(s32)
void set_game_mode(s32 modeID)
EvtScript BtlPutPartnerAway
EvtScript EVS_PeachEnterStage
EvtScript EVS_ApplyDizzyAttack
EvtScript EVS_PlayerRegainAbility
EvtScript EVS_Peach_HandlePhase
EvtScript BtlBringPartnerOut
EvtScript EVS_Mario_HandlePhase
EvtScript EVS_MarioEnterStage
void func_8003E514(s8 arg0)
EncounterStatus gCurrentEncounter
void sfx_play_sound(s32 soundID)
#define DMA_COPY_SEGMENT(segment)
#define LAST_DEMO_SCENE_IDX
Formation * stageFormation
EvtScript * onBattleStart
void(* initBattleCallback)(void)
s8 incrementStarPointDelay
struct Evt * camMovementScript
s8 moveCategory
0 = jump, 1 = hammer, 5 = partner, ...
s8 lastPlayerMenuSelection[16]
struct EffectInstance * waterBlockEffect
void(* preUpdateCallback)(void)
struct EffectInstance * cloudNineEffect
struct Actor * curTurnEnemy
struct Actor * partnerActor
struct Evt * controlScript
struct Actor * playerActor
s8 lastPartnerMenuSelection[16]
struct Actor * enemyActors[24]
struct EffectInstance * buffEffect
s32 enabledStarPowersFlags
u8 Addr[]
Linker symbol address, as in ld_addrs.h.
BackgroundHeader gBackgroundImage
GameStatus * gGameStatusPtr
struct Battle * gOverrideBattlePtr
BattleStatus gBattleStatus