mirror of
https://github.com/pmret/papermario.git
synced 2024-11-09 12:32:38 +01:00
battles organization (#1065)
* sbk * pokey * bandit * check * missing part ID refs * nok progress * area headers * actors moved to common * dedupe all stages * couple missing actors and simplified includes * separated stages by world area * stage cleanup I * stage cleanup II * done stage cleanup --------- Co-authored-by: HailSanta <Hail2Santa@gmail.com>
This commit is contained in:
parent
edd9111b63
commit
c3690e380e
@ -3573,14 +3573,23 @@ enum StatusFlags {
|
|||||||
STATUS_FLAG_80000000 = 0x80000000,
|
STATUS_FLAG_80000000 = 0x80000000,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// general combination of flags for checking if an enemy is immobilized
|
||||||
#define STATUS_FLAGS_IMMOBILIZED \
|
#define STATUS_FLAGS_IMMOBILIZED \
|
||||||
(STATUS_FLAG_STONE \
|
(STATUS_FLAG_SLEEP \
|
||||||
| STATUS_FLAG_STOP \
|
|
||||||
| STATUS_FLAG_DIZZY \
|
|
||||||
| STATUS_FLAG_PARALYZE \
|
|
||||||
| STATUS_FLAG_FEAR \
|
|
||||||
| STATUS_FLAG_FROZEN \
|
| STATUS_FLAG_FROZEN \
|
||||||
| STATUS_FLAG_SLEEP)
|
| STATUS_FLAG_FEAR \
|
||||||
|
| STATUS_FLAG_PARALYZE \
|
||||||
|
| STATUS_FLAG_DIZZY \
|
||||||
|
| STATUS_FLAG_STONE \
|
||||||
|
| STATUS_FLAG_STOP)
|
||||||
|
|
||||||
|
// common set of flags used in checks throughout Dojo fights
|
||||||
|
#define STATUS_FLAGS_DOJO \
|
||||||
|
(STATUS_FLAG_SLEEP \
|
||||||
|
| STATUS_FLAG_PARALYZE \
|
||||||
|
| STATUS_FLAG_DIZZY \
|
||||||
|
| STATUS_FLAG_STONE \
|
||||||
|
| STATUS_FLAG_STOP)
|
||||||
|
|
||||||
enum DamageTypes {
|
enum DamageTypes {
|
||||||
DAMAGE_TYPE_FIRE = 0x00000002,
|
DAMAGE_TYPE_FIRE = 0x00000002,
|
||||||
@ -3610,7 +3619,7 @@ enum DamageTypes {
|
|||||||
DAMAGE_TYPE_SPIN_SMASH = 0x04000000,
|
DAMAGE_TYPE_SPIN_SMASH = 0x04000000,
|
||||||
DAMAGE_TYPE_IGNORE_DEFENSE = 0x08000000,
|
DAMAGE_TYPE_IGNORE_DEFENSE = 0x08000000,
|
||||||
DAMAGE_TYPE_NO_CONTACT = 0x10000000,
|
DAMAGE_TYPE_NO_CONTACT = 0x10000000,
|
||||||
DAMAGE_TYPE_MULTIPLE_POPUPS = 0x20000000,
|
DAMAGE_TYPE_MULTIPLE_POPUPS = 0x20000000, // part of an attack that hits multiple opponents
|
||||||
DAMAGE_TYPE_STATUS_ALWAYS_HITS = 0x40000000,
|
DAMAGE_TYPE_STATUS_ALWAYS_HITS = 0x40000000,
|
||||||
DAMAGE_TYPE_TRIGGER_LUCKY = 0x80000000,
|
DAMAGE_TYPE_TRIGGER_LUCKY = 0x80000000,
|
||||||
};
|
};
|
||||||
|
@ -249,7 +249,7 @@ ApiStatus SetProjectileTargetOffset(Evt* script, s32 isInitialCall);
|
|||||||
ApiStatus EnableActorBlur(Evt* script, s32 isInitialCall);
|
ApiStatus EnableActorBlur(Evt* script, s32 isInitialCall);
|
||||||
ApiStatus AfflictActor(Evt* script, s32 isInitialCall);
|
ApiStatus AfflictActor(Evt* script, s32 isInitialCall);
|
||||||
ApiStatus GetInstigatorValue(Evt* script, s32 isInitialCall);
|
ApiStatus GetInstigatorValue(Evt* script, s32 isInitialCall);
|
||||||
ApiStatus GetEncounterState(Evt* script, s32 isInitialCall);
|
ApiStatus GetEncounterTrigger(Evt* script, s32 isInitialCall);
|
||||||
ApiStatus YieldTurn(Evt* script, s32 isInitialCall);
|
ApiStatus YieldTurn(Evt* script, s32 isInitialCall);
|
||||||
ApiStatus SetActorSize(Evt* script, s32 isInitialCall);
|
ApiStatus SetActorSize(Evt* script, s32 isInitialCall);
|
||||||
ApiStatus GetActorSize(Evt* script, s32 isInitialCall);
|
ApiStatus GetActorSize(Evt* script, s32 isInitialCall);
|
||||||
|
@ -3045,9 +3045,9 @@ void btl_state_update_end_player_turn(void) {
|
|||||||
partner->currentPos.x += (player->state.currentPos.x - partner->currentPos.x) / 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;
|
partner->currentPos.z += (player->state.currentPos.z - partner->currentPos.z) / player->state.moveTime;
|
||||||
}
|
}
|
||||||
player->currentPos.z += sin_rad((player->state.angle * TAU) / 360.0f) * 16.0f;
|
player->currentPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
|
||||||
player->yaw = clamp_angle(-player->state.angle);
|
player->yaw = clamp_angle(-player->state.angle);
|
||||||
partner->currentPos.z -= sin_rad((player->state.angle * TAU) / 360.0f) * 16.0f;
|
partner->currentPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
|
||||||
partner->yaw = clamp_angle(-player->state.angle);
|
partner->yaw = clamp_angle(-player->state.angle);
|
||||||
player->state.angle += 90.0f;
|
player->state.angle += 90.0f;
|
||||||
|
|
||||||
|
16
src/17D6A0.c
16
src/17D6A0.c
@ -245,8 +245,8 @@ s32 bActorNames[ACTOR_TYPE_COUNT] = {
|
|||||||
[ACTOR_TYPE_SIGNAL_GUY] MSG_EnemyName_ShyGuy,
|
[ACTOR_TYPE_SIGNAL_GUY] MSG_EnemyName_ShyGuy,
|
||||||
[ACTOR_TYPE_SHY_SQUAD_DUP] MSG_EnemyName_ShySquadDup,
|
[ACTOR_TYPE_SHY_SQUAD_DUP] MSG_EnemyName_ShySquadDup,
|
||||||
[ACTOR_TYPE_SHY_GUY_DUP] MSG_EnemyName_ShyGuy,
|
[ACTOR_TYPE_SHY_GUY_DUP] MSG_EnemyName_ShyGuy,
|
||||||
[ACTOR_TYPE_ANTI_GUY] MSG_EnemyName_AntiGuy,
|
[ACTOR_TYPE_ANTI_GUY_OMO] MSG_EnemyName_AntiGuy,
|
||||||
[ACTOR_TYPE_ANTI_GUY_DUP] MSG_EnemyName_AntiGuy,
|
[ACTOR_TYPE_ANTI_GUY_KPA] MSG_EnemyName_AntiGuy,
|
||||||
[ACTOR_TYPE_BIG_LANTERN_GHOST] MSG_EnemyName_BigLanternGhost,
|
[ACTOR_TYPE_BIG_LANTERN_GHOST] MSG_EnemyName_BigLanternGhost,
|
||||||
[ACTOR_TYPE_GOOMBA_KING_DUP] MSG_EnemyName_GoombaKing,
|
[ACTOR_TYPE_GOOMBA_KING_DUP] MSG_EnemyName_GoombaKing,
|
||||||
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] MSG_EnemyName_LavaPiranha,
|
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] MSG_EnemyName_LavaPiranha,
|
||||||
@ -1519,14 +1519,14 @@ ActorSounds bActorSoundTable[ACTOR_TYPE_COUNT] = {
|
|||||||
.hurt = SOUND_10F,
|
.hurt = SOUND_10F,
|
||||||
.delay = { 30, 30 }
|
.delay = { 30, 30 }
|
||||||
},
|
},
|
||||||
[ACTOR_TYPE_ANTI_GUY] = {
|
[ACTOR_TYPE_ANTI_GUY_OMO] = {
|
||||||
.walk = { SOUND_20BA, SOUND_3B4 },
|
.walk = { SOUND_20BA, SOUND_3B4 },
|
||||||
.fly = { NULL, NULL },
|
.fly = { NULL, NULL },
|
||||||
.jump = SOUND_JUMP_3E2,
|
.jump = SOUND_JUMP_3E2,
|
||||||
.hurt = SOUND_10F,
|
.hurt = SOUND_10F,
|
||||||
.delay = { 30, 30 }
|
.delay = { 30, 30 }
|
||||||
},
|
},
|
||||||
[ACTOR_TYPE_ANTI_GUY_DUP] = {
|
[ACTOR_TYPE_ANTI_GUY_KPA] = {
|
||||||
.walk = { SOUND_20BA, SOUND_3B4 },
|
.walk = { SOUND_20BA, SOUND_3B4 },
|
||||||
.fly = { NULL, NULL },
|
.fly = { NULL, NULL },
|
||||||
.jump = SOUND_JUMP_3E2,
|
.jump = SOUND_JUMP_3E2,
|
||||||
@ -1956,8 +1956,8 @@ s32 bActorTattles[ACTOR_TYPE_COUNT] = {
|
|||||||
[ACTOR_TYPE_SIGNAL_GUY] = MSG_EnemyTattle_ShyGuy,
|
[ACTOR_TYPE_SIGNAL_GUY] = MSG_EnemyTattle_ShyGuy,
|
||||||
[ACTOR_TYPE_SHY_SQUAD_DUP] = NULL,
|
[ACTOR_TYPE_SHY_SQUAD_DUP] = NULL,
|
||||||
[ACTOR_TYPE_SHY_GUY_DUP] = MSG_EnemyTattle_ShyGuy,
|
[ACTOR_TYPE_SHY_GUY_DUP] = MSG_EnemyTattle_ShyGuy,
|
||||||
[ACTOR_TYPE_ANTI_GUY] = MSG_EnemyTattle_AntiGuy,
|
[ACTOR_TYPE_ANTI_GUY_OMO] = MSG_EnemyTattle_AntiGuy,
|
||||||
[ACTOR_TYPE_ANTI_GUY_DUP] = MSG_EnemyTattle_AntiGuy,
|
[ACTOR_TYPE_ANTI_GUY_KPA] = MSG_EnemyTattle_AntiGuy,
|
||||||
[ACTOR_TYPE_BIG_LANTERN_GHOST] = MSG_EnemyTattle_BigLanternGhost,
|
[ACTOR_TYPE_BIG_LANTERN_GHOST] = MSG_EnemyTattle_BigLanternGhost,
|
||||||
[ACTOR_TYPE_GOOMBA_KING_DUP] = MSG_EnemyTattle_GoombaKing,
|
[ACTOR_TYPE_GOOMBA_KING_DUP] = MSG_EnemyTattle_GoombaKing,
|
||||||
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] = MSG_EnemyTattle_LavaPiranhaPhase1,
|
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] = MSG_EnemyTattle_LavaPiranhaPhase1,
|
||||||
@ -2171,8 +2171,8 @@ ActorOffsets bActorOffsets[ACTOR_TYPE_COUNT] = {
|
|||||||
[ACTOR_TYPE_SIGNAL_GUY] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
[ACTOR_TYPE_SIGNAL_GUY] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
||||||
[ACTOR_TYPE_SHY_SQUAD_DUP] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
[ACTOR_TYPE_SHY_SQUAD_DUP] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
||||||
[ACTOR_TYPE_SHY_GUY_DUP] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
[ACTOR_TYPE_SHY_GUY_DUP] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
||||||
[ACTOR_TYPE_ANTI_GUY] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
[ACTOR_TYPE_ANTI_GUY_OMO] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
||||||
[ACTOR_TYPE_ANTI_GUY_DUP] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
[ACTOR_TYPE_ANTI_GUY_KPA] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
||||||
[ACTOR_TYPE_BIG_LANTERN_GHOST] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
[ACTOR_TYPE_BIG_LANTERN_GHOST] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
||||||
[ACTOR_TYPE_GOOMBA_KING_DUP] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
[ACTOR_TYPE_GOOMBA_KING_DUP] = { .tattleCam = { 0, 0, 0 }, .shadow = 0 },
|
||||||
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] = { .tattleCam = { 25, 250, 60 }, .shadow = 0 },
|
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] = { .tattleCam = { 25, 250, 60 }, .shadow = 0 },
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "script_api/battle.h"
|
#include "script_api/battle.h"
|
||||||
#include "effects.h"
|
#include "effects.h"
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
|
|
||||||
BSS char D_8029F660[0x400]; // unused?
|
BSS char D_8029F660[0x400]; // unused?
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "script_api/battle.h"
|
#include "script_api/battle.h"
|
||||||
#include "effects.h"
|
#include "effects.h"
|
||||||
@ -3200,7 +3199,7 @@ ApiStatus GetInstigatorValue(Evt* script, s32 isInitialCall) {
|
|||||||
return ApiStatus_DONE2;
|
return ApiStatus_DONE2;
|
||||||
}
|
}
|
||||||
|
|
||||||
ApiStatus GetEncounterState(Evt* script, s32 isInitialCall) {
|
ApiStatus GetEncounterTrigger(Evt* script, s32 isInitialCall) {
|
||||||
evt_set_variable(script, *script->ptrReadPos, gCurrentEncounter.hitType);
|
evt_set_variable(script, *script->ptrReadPos, gCurrentEncounter.hitType);
|
||||||
return ApiStatus_DONE2;
|
return ApiStatus_DONE2;
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "script_api/battle.h"
|
#include "script_api/battle.h"
|
||||||
#include "effects.h"
|
#include "effects.h"
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "hud_element.h"
|
#include "hud_element.h"
|
||||||
#include "battle/action_cmd.h"
|
#include "battle/action_cmd.h"
|
||||||
@ -4727,9 +4726,9 @@ void btl_state_update_twink_menu(void) {
|
|||||||
partner->currentPos.x += (player->state.currentPos.x - partner->currentPos.x) / 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;
|
partner->currentPos.z += (player->state.currentPos.z - partner->currentPos.z) / player->state.moveTime;
|
||||||
}
|
}
|
||||||
player->currentPos.z += sin_rad((player->state.angle * TAU) / 360.0f) * 16.0f;
|
player->currentPos.z += sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
|
||||||
player->yaw = clamp_angle(-player->state.angle);
|
player->yaw = clamp_angle(-player->state.angle);
|
||||||
partner->currentPos.z -= sin_rad((player->state.angle * TAU) / 360.0f) * 16.0f;
|
partner->currentPos.z -= sin_rad(DEG_TO_RAD(player->state.angle)) * 16.0f;
|
||||||
partner->yaw = clamp_angle(-player->state.angle);
|
partner->yaw = clamp_angle(-player->state.angle);
|
||||||
player->state.angle += 90.0f;
|
player->state.angle += 90.0f;
|
||||||
if (player->state.moveTime != 0) {
|
if (player->state.moveTime != 0) {
|
||||||
|
@ -2044,7 +2044,7 @@ ApiStatus SummonEnemy(Evt* script, s32 isInitialCall) {
|
|||||||
s32 i, j;
|
s32 i, j;
|
||||||
u16 enemyID1, enemyID2;
|
u16 enemyID1, enemyID2;
|
||||||
s32 priority1, priority2;
|
s32 priority1, priority2;
|
||||||
s32 tempPriority;
|
s32 basePriority;
|
||||||
|
|
||||||
if (isInitialCall) {
|
if (isInitialCall) {
|
||||||
script->functionTemp[0] = 0;
|
script->functionTemp[0] = 0;
|
||||||
@ -2053,7 +2053,7 @@ ApiStatus SummonEnemy(Evt* script, s32 isInitialCall) {
|
|||||||
switch (script->functionTemp[0]) {
|
switch (script->functionTemp[0]) {
|
||||||
case 0:
|
case 0:
|
||||||
script->functionTempPtr[1] = create_actor((FormationRow*)evt_get_variable(script, *args++));
|
script->functionTempPtr[1] = create_actor((FormationRow*)evt_get_variable(script, *args++));
|
||||||
script->functionTemp[2] = evt_get_variable(script, *args++);
|
script->functionTemp[2] = evt_get_variable(script, *args++); // isLowPriority
|
||||||
script->functionTemp[0] = 1;
|
script->functionTemp[0] = 1;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@ -2071,25 +2071,25 @@ ApiStatus SummonEnemy(Evt* script, s32 isInitialCall) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
battleStatus->numEnemyActors = numEnemies;
|
battleStatus->numEnemyActors = numEnemies;
|
||||||
if (script->functionTemp[2] != 0) {
|
if (script->functionTemp[2]) {
|
||||||
tempPriority = -1000;
|
basePriority = -1000;
|
||||||
} else {
|
} else {
|
||||||
tempPriority = 1000;
|
basePriority = 1000;
|
||||||
}
|
}
|
||||||
enemyIDs = battleStatus->enemyIDs;
|
enemyIDs = battleStatus->enemyIDs;
|
||||||
for (i = 0; i < numEnemies - 1; i++) {
|
for (i = 0; i < numEnemies - 1; i++) {
|
||||||
for (j = i + 1; j < numEnemies; j++) {
|
for (j = i + 1; j < numEnemies; j++) {
|
||||||
enemyID1 = enemyIDs[i];
|
enemyID1 = enemyIDs[i];
|
||||||
actor1 = battleStatus->enemyActors[(u8) enemyID1];
|
actor1 = battleStatus->enemyActors[enemyID1 & 0xFF];
|
||||||
priority1 = actor1->turnPriority;
|
priority1 = actor1->turnPriority;
|
||||||
if (actor1 == actor2) {
|
if (actor1 == actor2) {
|
||||||
priority1 += tempPriority;
|
priority1 += basePriority;
|
||||||
}
|
}
|
||||||
enemyID2 = enemyIDs[j];
|
enemyID2 = enemyIDs[j];
|
||||||
actor1 = battleStatus->enemyActors[(u8) enemyID2];
|
actor1 = battleStatus->enemyActors[enemyID2 & 0xFF];
|
||||||
priority2 = actor1->turnPriority;
|
priority2 = actor1->turnPriority;
|
||||||
if (actor1 == actor2) {
|
if (actor1 == actor2) {
|
||||||
priority2 += tempPriority;
|
priority2 += basePriority;
|
||||||
}
|
}
|
||||||
if (priority1 < priority2) {
|
if (priority1 < priority2) {
|
||||||
enemyIDs[i] = enemyID2;
|
enemyIDs[i] = enemyID2;
|
||||||
@ -2100,7 +2100,7 @@ ApiStatus SummonEnemy(Evt* script, s32 isInitialCall) {
|
|||||||
} else {
|
} else {
|
||||||
numEnemies = battleStatus->numEnemyActors;
|
numEnemies = battleStatus->numEnemyActors;
|
||||||
for (i = 0; i < numEnemies; i++){
|
for (i = 0; i < numEnemies; i++){
|
||||||
if (battleStatus->enemyActors[(u8) enemyIDs[i]] == actor2) {
|
if (battleStatus->enemyActors[enemyIDs[i] & 0xFF] == actor2) {
|
||||||
enemyIDs[i] = -1;
|
enemyIDs[i] = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2133,21 +2133,21 @@ ApiStatus SetOwnerID(Evt* script, s32 isInitialCall) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ApiStatus ActorExists(Evt* script, s32 isInitialCall) {
|
ApiStatus ActorExists(Evt* script, s32 isInitialCall) {
|
||||||
Bytecode isExist;
|
|
||||||
Actor* partner = gBattleStatus.partnerActor;
|
Actor* partner = gBattleStatus.partnerActor;
|
||||||
Bytecode* args = script->ptrReadPos;
|
Bytecode* args = script->ptrReadPos;
|
||||||
s32 actorID = evt_get_variable(script, *args++);
|
s32 actorID = evt_get_variable(script, *args++);
|
||||||
|
b32 exists;
|
||||||
|
|
||||||
if (actorID == ACTOR_SELF) {
|
if (actorID == ACTOR_SELF) {
|
||||||
actorID = script->owner1.actorID;
|
actorID = script->owner1.actorID;
|
||||||
}
|
}
|
||||||
|
|
||||||
isExist = get_actor(actorID) != NULL;
|
exists = get_actor(actorID) != NULL;
|
||||||
if ((actorID == ACTOR_PARTNER) && (partner == NULL)) {
|
if ((actorID == ACTOR_PARTNER) && (partner == NULL)) {
|
||||||
isExist = FALSE;
|
exists = FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
evt_set_variable(script, *args++, isExist);
|
evt_set_variable(script, *args++, exists);
|
||||||
return ApiStatus_DONE2;
|
return ApiStatus_DONE2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "battle/action_cmd.h"
|
#include "battle/action_cmd.h"
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "battle/action_cmd.h"
|
#include "battle/action_cmd.h"
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include "common.h"
|
|
||||||
#include "battle/battle.h"
|
#include "battle/battle.h"
|
||||||
#include "battle/action_cmd.h"
|
#include "battle/action_cmd.h"
|
||||||
|
|
||||||
|
@ -1,844 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "effects.h"
|
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/Cleft.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_hyper_cleft
|
#include "battle/common/actor/hyper_cleft.inc.c"
|
||||||
|
|
||||||
extern s32 N(IdleAnimations_80221CD4)[];
|
|
||||||
extern EvtScript N(EVS_Init);
|
|
||||||
extern EvtScript N(idle_80221DD0);
|
|
||||||
extern EvtScript N(handleEvent_80222140);
|
|
||||||
extern EvtScript N(takeTurn_80221A58);
|
|
||||||
extern EvtScript N(takeTurn_80223B5C);
|
|
||||||
extern EvtScript N(nextTurn_80220D3C);
|
|
||||||
extern EvtScript N(80222F1C);
|
|
||||||
extern EvtScript N(80223310);
|
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
|
||||||
PRT_MAIN = 1,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(DefenseTable_80220B40)[] = {
|
|
||||||
ELEMENT_NORMAL, 3,
|
|
||||||
ELEMENT_FIRE, 99,
|
|
||||||
ELEMENT_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(DefenseTable_80220B54)[] = {
|
|
||||||
ELEMENT_NORMAL, 1,
|
|
||||||
ELEMENT_FIRE, 99,
|
|
||||||
ELEMENT_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(StatusTable)[] = {
|
|
||||||
STATUS_KEY_NORMAL, 0,
|
|
||||||
STATUS_KEY_DEFAULT, 0,
|
|
||||||
STATUS_KEY_SLEEP, 40,
|
|
||||||
STATUS_KEY_POISON, 50,
|
|
||||||
STATUS_KEY_FROZEN, 0,
|
|
||||||
STATUS_KEY_DIZZY, 50,
|
|
||||||
STATUS_KEY_FEAR, 0,
|
|
||||||
STATUS_KEY_STATIC, 50,
|
|
||||||
STATUS_KEY_PARALYZE, 50,
|
|
||||||
STATUS_KEY_SHRINK, 90,
|
|
||||||
STATUS_KEY_STOP, 90,
|
|
||||||
STATUS_TURN_MOD_DEFAULT, 0,
|
|
||||||
STATUS_TURN_MOD_SLEEP, -1,
|
|
||||||
STATUS_TURN_MOD_POISON, 0,
|
|
||||||
STATUS_TURN_MOD_FROZEN, 0,
|
|
||||||
STATUS_TURN_MOD_DIZZY, -1,
|
|
||||||
STATUS_TURN_MOD_FEAR, 0,
|
|
||||||
STATUS_TURN_MOD_STATIC, 0,
|
|
||||||
STATUS_TURN_MOD_PARALYZE, 0,
|
|
||||||
STATUS_TURN_MOD_SHRINK, 0,
|
|
||||||
STATUS_TURN_MOD_STOP, 0,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorPartBlueprint N(ActorParts)[] = {
|
|
||||||
{
|
|
||||||
.flags = ACTOR_PART_FLAG_MULTI_TARGET,
|
|
||||||
.index = PRT_MAIN,
|
|
||||||
.posOffset = { 0, 0, 0 },
|
|
||||||
.targetOffset = { 0, 22 },
|
|
||||||
.opacity = 255,
|
|
||||||
.idleAnimations = N(IdleAnimations_80221CD4),
|
|
||||||
.defenseTable = N(DefenseTable_80220B40),
|
|
||||||
.eventFlags = ACTOR_EVENT_FLAG_SPIKY_TOP,
|
|
||||||
.elementImmunityFlags = 0,
|
|
||||||
.projectileTargetOffset = { 0, -10 },
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorBlueprint NAMESPACE = {
|
|
||||||
.flags = 0,
|
|
||||||
.type = ACTOR_TYPE_HYPER_CLEFT,
|
|
||||||
.level = 15,
|
|
||||||
.maxHP = 4,
|
|
||||||
.partCount = ARRAY_COUNT(N(ActorParts)),
|
|
||||||
.partsData = N(ActorParts),
|
|
||||||
.initScript = &N(EVS_Init),
|
|
||||||
.statusTable = N(StatusTable),
|
|
||||||
.escapeChance = 70,
|
|
||||||
.airLiftChance = 30,
|
|
||||||
.hurricaneChance = 30,
|
|
||||||
.spookChance = 30,
|
|
||||||
.upAndAwayChance = 95,
|
|
||||||
.spinSmashReq = 0,
|
|
||||||
.powerBounceChance = 95,
|
|
||||||
.coinReward = 2,
|
|
||||||
.size = { 44, 36 },
|
|
||||||
.healthBarOffset = { 0, 0 },
|
|
||||||
.statusIconOffset = { -10, 20 },
|
|
||||||
.statusTextOffset = { 10, 20 },
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations_80220C60)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Cleft_Hyper_Anim04,
|
|
||||||
STATUS_KEY_STONE, ANIM_Cleft_Hyper_Anim00,
|
|
||||||
STATUS_KEY_SLEEP, ANIM_Cleft_Hyper_Anim0C,
|
|
||||||
STATUS_KEY_POISON, ANIM_Cleft_Hyper_Anim04,
|
|
||||||
STATUS_KEY_STOP, ANIM_Cleft_Hyper_Anim00,
|
|
||||||
STATUS_KEY_STATIC, ANIM_Cleft_Hyper_Anim04,
|
|
||||||
STATUS_KEY_PARALYZE, ANIM_Cleft_Hyper_Anim00,
|
|
||||||
STATUS_KEY_DIZZY, ANIM_Cleft_Hyper_Anim0E,
|
|
||||||
STATUS_KEY_FEAR, ANIM_Cleft_Hyper_Anim0E,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_Init) = {
|
|
||||||
EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle_80221DD0)))
|
|
||||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent_80222140)))
|
|
||||||
EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn_80221A58)))
|
|
||||||
EVT_CALL(BindNextTurn, ACTOR_SELF, EVT_PTR(N(nextTurn_80220D3C)))
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 2, 0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(nextTurn_80220D3C) = {
|
|
||||||
EVT_CALL(GetBattlePhase, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_EQ(PHASE_PLAYER_BEGIN)
|
|
||||||
EVT_CASE_EQ(PHASE_ENEMY_BEGIN)
|
|
||||||
EVT_CASE_EQ(PHASE_ENEMY_END)
|
|
||||||
EVT_CALL(SetBattleVar, 1, 0)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 2, 1)
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
#include "common/StartRumbleWithParams.inc.c"
|
|
||||||
|
|
||||||
EvtScript N(80220DC0) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 0)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_14)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 20)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_POWER_UP)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 10)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_ENERGY_IN_OUT, 6, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 45, 0)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim04)
|
|
||||||
EVT_WAIT(30)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 20)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.0))
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 15, FALSE, TRUE, FALSE)
|
|
||||||
EVT_CALL(N(StartRumbleWithParams), 200, 10)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(ShakeCam, CAM_BATTLE, 0, 5, EVT_FLOAT(1.5))
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_2D9)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_LANDING_DUST, 4, LVar0, LVar1, LVar2, 0, 0)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(ShakeCam, CAM_BATTLE, 0, 5, EVT_FLOAT(1.0))
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 2)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80220C60)))
|
|
||||||
EVT_CALL(EnableActorGlow, ACTOR_SELF, TRUE)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_ATTACK_CHARGED, TRUE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_ENEMY_APPROACH)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(func_8024ECF8, BTL_CAM_MODEY_MINUS_1, BTL_CAM_MODEX_1, FALSE)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 30)
|
|
||||||
EVT_LOOP(20)
|
|
||||||
EVT_CALL(SetActorDispOffset, ACTOR_SELF, 1, 0, 0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_CALL(SetActorDispOffset, ACTOR_SELF, -1, 0, 0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_2DA)
|
|
||||||
EVT_CALL(SetActorSounds, ACTOR_SELF, ACTOR_SOUND_WALK, SOUND_0, SOUND_0)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, 0, 0, 3, BS_FLAGS1_10)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_MISS)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_LUCKY)
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_LOOP(0)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar0, 30)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar3, LVar4, LVar5)
|
|
||||||
EVT_IF_GT(LVar0, LVar3)
|
|
||||||
EVT_BREAK_LOOP
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_01)
|
|
||||||
EVT_IF_EQ(LVarA, HIT_RESULT_LUCKY)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_TRIGGER_LUCKY, 0, 0, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(15)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_LOOP(30)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_WALKING_DUST, 2, LVar0, LVar1, LVar2, 0, 0, 0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim11)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, -200, 0, 0)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(12.0))
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_WAIT(15)
|
|
||||||
EVT_CALL(EnableActorGlow, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_ATTACK_CHARGED, FALSE)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(ResetAllActorSounds, ACTOR_SELF)
|
|
||||||
EVT_CALL(SetActorPos, ACTOR_SELF, 300, 0, 0)
|
|
||||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, PRT_MAIN, 0, ACTOR_DECORATION_SWEAT)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim07)
|
|
||||||
EVT_CALL(SetGoalToHome, ACTOR_SELF)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(8.0))
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_CALL(RemoveActorDecoration, ACTOR_SELF, PRT_MAIN, 0)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80221CD4)))
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_LOOP(25)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_WALKING_DUST, 2, LVar0, LVar1, LVar2, 0, 0, 0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim11)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(12.0))
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(ResetAllActorSounds, ACTOR_SELF)
|
|
||||||
EVT_WAIT(2)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 8, BS_FLAGS1_SP_EVT_ACTIVE)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_HIT)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_NO_DAMAGE)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 16, 0)
|
|
||||||
EVT_SET(LVar0, 0)
|
|
||||||
EVT_LOOP(60)
|
|
||||||
EVT_ADD(LVar0, 18)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.0))
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 50)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 30, FALSE, TRUE, FALSE)
|
|
||||||
EVT_SUB(LVar0, 40)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 20, FALSE, TRUE, FALSE)
|
|
||||||
EVT_SUB(LVar0, 30)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 10, FALSE, TRUE, FALSE)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(EnableActorGlow, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_ATTACK_CHARGED, FALSE)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim07)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(8.0))
|
|
||||||
EVT_CALL(SetGoalToHome, ACTOR_SELF)
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80221CD4)))
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(takeTurn_80221A58) = {
|
|
||||||
EVT_CALL(GetBattlePhase, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, PHASE_FIRST_STRIKE)
|
|
||||||
EVT_CALL(SetBattleVar, 1, 1)
|
|
||||||
EVT_EXEC_WAIT(N(80223310))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_EXEC_WAIT(N(80222F1C))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 2)
|
|
||||||
EVT_EXEC_WAIT(N(80220DC0))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(GetBattleVar, 1, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_EQ(0)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 2, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 0)
|
|
||||||
EVT_CALL(RandInt, 1000, LVar0)
|
|
||||||
EVT_IF_LT(LVar0, 750)
|
|
||||||
EVT_CALL(SetBattleVar, 1, 2)
|
|
||||||
EVT_EXEC_WAIT(N(80220DC0))
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetBattleVar, 1, 1)
|
|
||||||
EVT_EXEC_WAIT(N(80223310))
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(RandInt, 1000, LVar0)
|
|
||||||
EVT_IF_LT(LVar0, 500)
|
|
||||||
EVT_CALL(SetBattleVar, 1, 2)
|
|
||||||
EVT_EXEC_WAIT(N(80220DC0))
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetBattleVar, 1, 1)
|
|
||||||
EVT_EXEC_WAIT(N(80223310))
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(1)
|
|
||||||
EVT_EXEC_WAIT(N(80223310))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(2)
|
|
||||||
EVT_EXEC_WAIT(N(80220DC0))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations_80221CD4)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Cleft_Hyper_Anim02,
|
|
||||||
STATUS_KEY_STONE, ANIM_Cleft_Hyper_Anim00,
|
|
||||||
STATUS_KEY_SLEEP, ANIM_Cleft_Hyper_Anim0C,
|
|
||||||
STATUS_KEY_POISON, ANIM_Cleft_Hyper_Anim02,
|
|
||||||
STATUS_KEY_STOP, ANIM_Cleft_Hyper_Anim00,
|
|
||||||
STATUS_KEY_STATIC, ANIM_Cleft_Hyper_Anim02,
|
|
||||||
STATUS_KEY_PARALYZE, ANIM_Cleft_Hyper_Anim00,
|
|
||||||
STATUS_KEY_DIZZY, ANIM_Cleft_Hyper_Anim0E,
|
|
||||||
STATUS_KEY_FEAR, ANIM_Cleft_Hyper_Anim0E,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations_80221D20)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Cleft_Hyper_Anim05,
|
|
||||||
STATUS_KEY_STONE, ANIM_Cleft_Hyper_Anim01,
|
|
||||||
STATUS_KEY_SLEEP, ANIM_Cleft_Hyper_Anim0D,
|
|
||||||
STATUS_KEY_POISON, ANIM_Cleft_Hyper_Anim05,
|
|
||||||
STATUS_KEY_STOP, ANIM_Cleft_Hyper_Anim01,
|
|
||||||
STATUS_KEY_STATIC, ANIM_Cleft_Hyper_Anim05,
|
|
||||||
STATUS_KEY_PARALYZE, ANIM_Cleft_Hyper_Anim01,
|
|
||||||
STATUS_KEY_DIZZY, ANIM_Cleft_Hyper_Anim0F,
|
|
||||||
STATUS_KEY_FEAR, ANIM_Cleft_Hyper_Anim0F,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(80221D6C) = {
|
|
||||||
EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle_80221DD0)))
|
|
||||||
EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn_80223B5C)))
|
|
||||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent_80222140)))
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(idle_80221DD0) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
#include "common/SetSpinSmashable.inc.c"
|
|
||||||
|
|
||||||
EvtScript N(80221DE0) = {
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 1, 2)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim07)
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 16, 0)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_SET(LVar0, 0)
|
|
||||||
EVT_LOOP(5)
|
|
||||||
EVT_ADD(LVar0, -36)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.3))
|
|
||||||
EVT_SUB(LVar1, 6)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 20, FALSE, TRUE, FALSE)
|
|
||||||
EVT_CALL(N(StartRumbleWithParams), 200, 10)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(ShakeCam, CAM_BATTLE, 0, 5, EVT_FLOAT(1.0))
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_SMOKE_IMPACT, 0, LVar0, LVar1, LVar2, 40, 8, EVT_FLOAT(0.0), 20, 0)
|
|
||||||
EVT_CALL(SetActorPos, ACTOR_SELF, LVar0, 0, LVar2)
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim03)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80221D20)))
|
|
||||||
EVT_CALL(SetDefenseTable, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(DefenseTable_80220B54)))
|
|
||||||
EVT_CALL(SetTargetOffset, ACTOR_SELF, PRT_MAIN, 0, 15)
|
|
||||||
EVT_CALL(SetProjectileTargetOffset, ACTOR_SELF, PRT_MAIN, 0, -7)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_SPIKY_TOP, FALSE)
|
|
||||||
EVT_CALL(N(SetSpinSmashable), 0)
|
|
||||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_FLIPPED, TRUE)
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(EnableActorGlow, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_ATTACK_CHARGED, FALSE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(handleEvent_80222140) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(GetLastEvent, ACTOR_SELF, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
|
||||||
EVT_CALL(GetLastElement, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_FLAG(DAMAGE_TYPE_BLAST)
|
|
||||||
EVT_EXEC_WAIT(N(80221DE0))
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
|
||||||
EVT_CALL(GetLastElement, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_FLAG(DAMAGE_TYPE_BLAST)
|
|
||||||
EVT_EXEC_WAIT(N(80221DE0))
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_EXPLODE_ON_IGNITION, TRUE)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_SET_CONST(LVar2, -1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_SET_CONST(LVar2, -1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_EXPLODE_ON_IGNITION, FALSE)
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_SET_CONST(LVar2, -1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_SET_CONST(LVar2, -1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(EnableActorGlow, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_ATTACK_CHARGED, FALSE)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80221CD4)))
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 5, FALSE, TRUE, FALSE)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim07)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ReturnHome)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.6))
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 5, FALSE, TRUE, FALSE)
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(EnableActorGlow, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_ATTACK_CHARGED, FALSE)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80221CD4)))
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_STAR_BEAM)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 2)
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(EnableActorGlow, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_ATTACK_CHARGED, FALSE)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80221CD4)))
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim03)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
|
||||||
EVT_CASE_EQ(EVENT_SPIKE_TAUNT)
|
|
||||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar0)
|
|
||||||
EVT_IF_NOT_FLAG(LVar0, STATUS_FLAGS_IMMOBILIZED)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim18)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar3)
|
|
||||||
EVT_IF_FLAG(LVar3, STATUS_FLAG_SHRINK)
|
|
||||||
EVT_ADD(LVar0, -3)
|
|
||||||
EVT_ADD(LVar1, 10)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_ADD(LVar0, -8)
|
|
||||||
EVT_ADD(LVar1, 27)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_LENS_FLARE, 0, LVar0, LVar1, LVar2, 20, 0)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim03)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim09)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 0)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(EVENT_SCARE_AWAY)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim03)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim07)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ScareAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim0F)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim0F)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(80222F1C) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, PRT_MAIN, 0, ACTOR_DECORATION_SWEAT)
|
|
||||||
EVT_CALL(SetAnimationRate, ACTOR_SELF, PRT_MAIN, EVT_FLOAT(3.0))
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim03)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(SetAnimationRate, ACTOR_SELF, PRT_MAIN, EVT_FLOAT(1.0))
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim05)
|
|
||||||
EVT_CALL(RemoveActorDecoration, ACTOR_SELF, PRT_MAIN, 0)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 1, LVar0)
|
|
||||||
EVT_IF_GT(LVar0, 0)
|
|
||||||
EVT_SUB(LVar0, 1)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 1, LVar0)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 16, 0)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim03)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_WAIT(3)
|
|
||||||
EVT_LOOP(5)
|
|
||||||
EVT_ADD(LVar0, 36)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar1, 6)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.3))
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 10, FALSE, TRUE, FALSE)
|
|
||||||
EVT_CALL(N(StartRumbleWithParams), 200, 10)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(ShakeCam, CAM_BATTLE, 0, 5, EVT_FLOAT(1.0))
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorPos, ACTOR_SELF, LVar0, 0, LVar2)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_80221CD4)))
|
|
||||||
EVT_CALL(SetDefenseTable, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(DefenseTable_80220B40)))
|
|
||||||
EVT_CALL(SetTargetOffset, ACTOR_SELF, PRT_MAIN, 0, 22)
|
|
||||||
EVT_CALL(SetProjectileTargetOffset, ACTOR_SELF, PRT_MAIN, 0, -10)
|
|
||||||
EVT_CALL(SetPartEventBits, ACTOR_SELF, PRT_MAIN, ACTOR_EVENT_FLAG_SPIKY_TOP, TRUE)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_CALL(N(SetSpinSmashable), 1)
|
|
||||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_FLIPPED, FALSE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(80223310) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_ENEMY_APPROACH)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(func_8024ECF8, BTL_CAM_MODEY_MINUS_1, BTL_CAM_MODEX_1, FALSE)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 30)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_SMOKE_IMPACT, 1, LVar0, LVar1, LVar2, 32, 4, 0, 10, 0)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_SMOKE_IMPACT, 1, LVar0, LVar1, LVar2, 32, 4, 0, 10, 0)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_SMOKE_IMPACT, 1, LVar0, LVar1, LVar2, 32, 4, 0, 10, 0)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim10)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim11)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, 50, 0, -5)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(4.0))
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim00)
|
|
||||||
EVT_WAIT(8)
|
|
||||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_20D1)
|
|
||||||
EVT_CALL(SetActorSounds, ACTOR_SELF, ACTOR_SOUND_WALK, SOUND_0, SOUND_0)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, 0, 0, 3, BS_FLAGS1_10)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_MISS)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_LUCKY)
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_IF_EQ(LVarA, HIT_RESULT_LUCKY)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_TRIGGER_LUCKY, 0, 0, 0)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim11)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 100)
|
|
||||||
EVT_SET(LVar1, 0)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(8.0))
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(SetPartRotation, ACTOR_SELF, PRT_MAIN, 0, 0, 45)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim08)
|
|
||||||
EVT_WAIT(15)
|
|
||||||
EVT_WAIT(8)
|
|
||||||
EVT_CALL(ResetAllActorSounds, ACTOR_SELF)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(SetPartRotation, ACTOR_SELF, PRT_MAIN, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, PRT_MAIN, 0, ACTOR_DECORATION_SWEAT)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim07)
|
|
||||||
EVT_CALL(SetGoalToHome, ACTOR_SELF)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(8.0))
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_CALL(RemoveActorDecoration, ACTOR_SELF, PRT_MAIN, 0)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim11)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar0, 20)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(8.0))
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(ResetAllActorSounds, ACTOR_SELF)
|
|
||||||
EVT_WAIT(2)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 3, BS_FLAGS1_SP_EVT_ACTIVE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_HIT)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_NO_DAMAGE)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar0, 15)
|
|
||||||
EVT_SET(LVar1, 0)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(2.4))
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 6, FALSE, TRUE, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim07)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(8.0))
|
|
||||||
EVT_CALL(SetGoalToHome, ACTOR_SELF)
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Cleft_Hyper_Anim02)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(takeTurn_80223B5C) = {
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, 1)
|
|
||||||
EVT_EXEC_WAIT(N(80222F1C))
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_EXEC_WAIT(N(80223310))
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
3
src/battle/area/arn/actor/hyper_goomba.c
Normal file
3
src/battle/area/arn/actor/hyper_goomba.c
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
#include "../area.h"
|
||||||
|
|
||||||
|
#include "battle/common/actor/hyper_goomba.inc.c"
|
File diff suppressed because it is too large
Load Diff
@ -1,10 +1,7 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "effects.h"
|
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/BattleTubba.h"
|
#include "sprite/npc/BattleTubba.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_tubba_blubba
|
#define NAMESPACE A(tubba_blubba)
|
||||||
|
|
||||||
extern EvtScript N(init_80225D98);
|
extern EvtScript N(init_80225D98);
|
||||||
extern EvtScript N(takeTurn_802264AC);
|
extern EvtScript N(takeTurn_802264AC);
|
||||||
@ -181,65 +178,65 @@ EvtScript N(handleEvent_802260D0) = {
|
|||||||
EVT_SWITCH(LVarA)
|
EVT_SWITCH(LVarA)
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
EVT_CASE_OR_EQ(EVENT_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
EVT_CASE_EQ(EVENT_BURN_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_SET_CONST(LVar2, -1)
|
EVT_SET_CONST(LVar2, -1)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_SET_CONST(LVar2, -1)
|
EVT_SET_CONST(LVar2, -1)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_EXEC_WAIT(N(80227878))
|
EVT_EXEC_WAIT(N(80227878))
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
||||||
EVT_CALL(MoveBattleCamOver, 20)
|
EVT_CALL(MoveBattleCamOver, 20)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
||||||
EVT_EXEC_WAIT(N(80225FD4))
|
EVT_EXEC_WAIT(N(80225FD4))
|
||||||
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
||||||
EVT_CALL(MoveBattleCamOver, 20)
|
EVT_CALL(MoveBattleCamOver, 20)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
||||||
EVT_EXEC_WAIT(N(80227878))
|
EVT_EXEC_WAIT(N(80227878))
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
EVT_CASE_EQ(EVENT_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(80227878))
|
EVT_EXEC_WAIT(N(80227878))
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_EXEC_WAIT(N(80227878))
|
EVT_EXEC_WAIT(N(80227878))
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
||||||
EVT_CASE_DEFAULT
|
EVT_CASE_DEFAULT
|
||||||
|
@ -1,11 +1,8 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "effects.h"
|
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/BattleBow.h"
|
#include "sprite/npc/BattleBow.h"
|
||||||
#include "sprite/npc/TubbasHeart.h"
|
#include "sprite/npc/TubbasHeart.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_tubbas_heart
|
#define NAMESPACE A(tubbas_heart)
|
||||||
|
|
||||||
extern EvtScript N(init_80223DA0);
|
extern EvtScript N(init_80223DA0);
|
||||||
extern EvtScript N(takeTurn_802245C8);
|
extern EvtScript N(takeTurn_802245C8);
|
||||||
@ -206,28 +203,28 @@ EvtScript N(handleEvent_80224038) = {
|
|||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
EVT_CASE_OR_EQ(EVENT_HIT)
|
||||||
EVT_EXEC_WAIT(N(80223FD8))
|
EVT_EXEC_WAIT(N(80223FD8))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_FIRST_STRIKE)
|
EVT_CASE_EQ(EVENT_BEGIN_FIRST_STRIKE)
|
||||||
EVT_CASE_OR_EQ(EVENT_BURN_HIT)
|
EVT_CASE_OR_EQ(EVENT_BURN_HIT)
|
||||||
EVT_CASE_OR_EQ(EVENT_BURN_DEATH)
|
EVT_CASE_OR_EQ(EVENT_BURN_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_TubbasHeart_Anim10)
|
EVT_SET_CONST(LVar1, ANIM_TubbasHeart_Anim10)
|
||||||
EVT_SET_CONST(LVar2, ANIM_TubbasHeart_Anim11)
|
EVT_SET_CONST(LVar2, ANIM_TubbasHeart_Anim11)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
||||||
EVT_EXEC_WAIT(N(80223FD8))
|
EVT_EXEC_WAIT(N(80223FD8))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_CASE_OR_EQ(EVENT_SHOCK_HIT)
|
EVT_CASE_OR_EQ(EVENT_SHOCK_HIT)
|
||||||
EVT_CASE_OR_EQ(EVENT_SHOCK_DEATH)
|
EVT_CASE_OR_EQ(EVENT_SHOCK_DEATH)
|
||||||
EVT_EXEC_WAIT(N(80223FD8))
|
EVT_EXEC_WAIT(N(80223FD8))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
||||||
EVT_EXEC_WAIT(N(80223FD8))
|
EVT_EXEC_WAIT(N(80223FD8))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_TubbasHeart_Anim03)
|
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_TubbasHeart_Anim03)
|
||||||
EVT_EXEC_WAIT(N(802244DC))
|
EVT_EXEC_WAIT(N(802244DC))
|
||||||
@ -240,17 +237,17 @@ EvtScript N(handleEvent_80224038) = {
|
|||||||
EVT_IF_NE(LVar0, 0)
|
EVT_IF_NE(LVar0, 0)
|
||||||
EVT_SET(LVar1, 7077899)
|
EVT_SET(LVar1, 7077899)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_OR_EQ(EVENT_DEATH)
|
EVT_CASE_OR_EQ(EVENT_DEATH)
|
||||||
EVT_EXEC_WAIT(N(80223FD8))
|
EVT_EXEC_WAIT(N(80223FD8))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
||||||
EVT_EXEC_WAIT(N(80223FD8))
|
EVT_EXEC_WAIT(N(80223FD8))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_CASE_EQ(EVENT_SPIKE_CONTACT)
|
EVT_CASE_EQ(EVENT_SPIKE_CONTACT)
|
||||||
EVT_CASE_EQ(EVENT_BURN_CONTACT)
|
EVT_CASE_EQ(EVENT_BURN_CONTACT)
|
||||||
@ -259,7 +256,7 @@ EvtScript N(handleEvent_80224038) = {
|
|||||||
EVT_EXEC_WAIT(N(802244DC))
|
EVT_EXEC_WAIT(N(802244DC))
|
||||||
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_TubbasHeart_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_TubbasHeart_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
||||||
EVT_CASE_DEFAULT
|
EVT_CASE_DEFAULT
|
||||||
|
@ -1,145 +1,142 @@
|
|||||||
#include "common.h"
|
#include "area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn
|
extern ActorBlueprint A(hyper_cleft);
|
||||||
|
extern ActorBlueprint A(hyper_goomba);
|
||||||
|
extern ActorBlueprint A(hyper_paragoomba);
|
||||||
|
extern ActorBlueprint A(tubba_blubba);
|
||||||
|
extern ActorBlueprint A(tubbas_heart);
|
||||||
|
|
||||||
extern ActorBlueprint N(hyper_cleft);
|
extern Stage A(arn_01);
|
||||||
extern ActorBlueprint N(hypergoomba);
|
extern Stage A(arn_02);
|
||||||
extern ActorBlueprint N(hyper_paragoomba);
|
extern Stage A(arn_03);
|
||||||
extern ActorBlueprint N(tubba_blubba);
|
extern Stage A(arn_04);
|
||||||
extern ActorBlueprint N(tubbas_heart);
|
extern Stage A(arn_05);
|
||||||
|
extern Stage A(arn_06);
|
||||||
|
|
||||||
extern Stage N(arn_01);
|
Formation A(Formation_00) = {
|
||||||
extern Stage N(arn_02);
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_B, 10),
|
||||||
extern Stage N(arn_03);
|
|
||||||
extern Stage N(arn_04);
|
|
||||||
extern Stage N(arn_05);
|
|
||||||
extern Stage N(arn_06);
|
|
||||||
|
|
||||||
Formation N(Formation_00) = {
|
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_B, 10),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_01) = {
|
Formation A(Formation_01) = {
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_02) = {
|
Formation A(Formation_02) = {
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_03) = {
|
Formation A(Formation_03) = {
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_04) = {
|
Formation A(Formation_04) = {
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_D, 7),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_05) = {
|
Formation A(Formation_05) = {
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_06) = {
|
Formation A(Formation_06) = {
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_B, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_07) = {
|
Formation A(Formation_07) = {
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_C, 9),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_08) = {
|
Formation A(Formation_08) = {
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_09) = {
|
Formation A(Formation_09) = {
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_C, 8),
|
||||||
ACTOR_BY_IDX(N(hyper_paragoomba), BTL_POS_AIR_D, 7),
|
ACTOR_BY_IDX(A(hyper_paragoomba), BTL_POS_AIR_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0A) = {
|
Formation A(Formation_0A) = {
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_B, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0B) = {
|
Formation A(Formation_0B) = {
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0C) = {
|
Formation A(Formation_0C) = {
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0D) = {
|
Formation A(Formation_0D) = {
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0E) = {
|
Formation A(Formation_0E) = {
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(hyper_cleft), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(hyper_cleft), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(hypergoomba), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(hyper_goomba), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Vec3i N(vector3D_802280C0) = { 90, 20, 0 };
|
Vec3i A(vector3D_802280C0) = { 90, 20, 0 };
|
||||||
|
|
||||||
Formation N(Formation_0F) = {
|
Formation A(Formation_0F) = {
|
||||||
ACTOR_BY_POS(N(tubbas_heart), N(vector3D_802280C0), 10),
|
ACTOR_BY_POS(A(tubbas_heart), A(vector3D_802280C0), 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
Vec3i N(vector3D_802280E8) = { 75, 0, 10 };
|
Vec3i A(vector3D_802280E8) = { 75, 0, 10 };
|
||||||
|
|
||||||
Formation N(Formation_10) = {
|
Formation A(Formation_10) = {
|
||||||
ACTOR_BY_POS(N(tubba_blubba), N(vector3D_802280E8), 10),
|
ACTOR_BY_POS(A(tubba_blubba), A(vector3D_802280E8), 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
BattleList N(Formations) = {
|
BattleList A(Formations) = {
|
||||||
BATTLE(N(Formation_00), N(arn_01), "ハイパークリボー"),
|
BATTLE(A(Formation_00), A(arn_01), "ハイパークリボー"),
|
||||||
BATTLE(N(Formation_01), N(arn_01), "ハイパークリボーx2"),
|
BATTLE(A(Formation_01), A(arn_01), "ハイパークリボーx2"),
|
||||||
BATTLE(N(Formation_02), N(arn_01), "ハイパークリボーx3"),
|
BATTLE(A(Formation_02), A(arn_01), "ハイパークリボーx3"),
|
||||||
BATTLE(N(Formation_03), N(arn_01), "ハイパークリボーx2,ハイパーパタクリボー"),
|
BATTLE(A(Formation_03), A(arn_01), "ハイパークリボーx2,ハイパーパタクリボー"),
|
||||||
BATTLE(N(Formation_04), N(arn_01), "ハイパークリボーx3,ハイパーパタクリボー"),
|
BATTLE(A(Formation_04), A(arn_01), "ハイパークリボーx3,ハイパーパタクリボー"),
|
||||||
BATTLE(N(Formation_05), N(arn_01), "ハイパークリボーx2,ハイパーパタクリボー,ハイパークリボー"),
|
BATTLE(A(Formation_05), A(arn_01), "ハイパークリボーx2,ハイパーパタクリボー,ハイパークリボー"),
|
||||||
BATTLE(N(Formation_06), N(arn_01), "ハイパーパタクリボー"),
|
BATTLE(A(Formation_06), A(arn_01), "ハイパーパタクリボー"),
|
||||||
BATTLE(N(Formation_07), N(arn_01), "ハイパーパタクリボーx2"),
|
BATTLE(A(Formation_07), A(arn_01), "ハイパーパタクリボーx2"),
|
||||||
BATTLE(N(Formation_08), N(arn_01), "ハイパーパタクリボーx3"),
|
BATTLE(A(Formation_08), A(arn_01), "ハイパーパタクリボーx3"),
|
||||||
BATTLE(N(Formation_09), N(arn_01), "ハイパーパタクリボーx4"),
|
BATTLE(A(Formation_09), A(arn_01), "ハイパーパタクリボーx4"),
|
||||||
BATTLE(N(Formation_0A), N(arn_01), "ハイパーシンエモン"),
|
BATTLE(A(Formation_0A), A(arn_01), "ハイパーシンエモン"),
|
||||||
BATTLE(N(Formation_0B), N(arn_01), "ハイパーシンエモンx2"),
|
BATTLE(A(Formation_0B), A(arn_01), "ハイパーシンエモンx2"),
|
||||||
BATTLE(N(Formation_0C), N(arn_01), "ハイパーシンエモンx3"),
|
BATTLE(A(Formation_0C), A(arn_01), "ハイパーシンエモンx3"),
|
||||||
BATTLE(N(Formation_0D), N(arn_01), "ハイパーシンエモン,ハイパークリボーx2"),
|
BATTLE(A(Formation_0D), A(arn_01), "ハイパーシンエモン,ハイパークリボーx2"),
|
||||||
BATTLE(N(Formation_0E), N(arn_01), "ハイパーシンエモンx2,ハイパークリボーx2"),
|
BATTLE(A(Formation_0E), A(arn_01), "ハイパーシンエモンx2,ハイパークリボーx2"),
|
||||||
BATTLE(N(Formation_0F), N(arn_06), "ドガボンしんぞう"),
|
BATTLE(A(Formation_0F), A(arn_06), "ドガボンしんぞう"),
|
||||||
BATTLE(N(Formation_10), N(arn_01), "ドガボン"),
|
BATTLE(A(Formation_10), A(arn_01), "ドガボン"),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
|
||||||
StageList N(Stages) = {
|
StageList A(Stages) = {
|
||||||
STAGE("arn_01", N(arn_01)),
|
STAGE("arn_01", A(arn_01)),
|
||||||
STAGE("arn_02", N(arn_02)),
|
STAGE("arn_02", A(arn_02)),
|
||||||
STAGE("arn_03", N(arn_03)),
|
STAGE("arn_03", A(arn_03)),
|
||||||
STAGE("arn_04", N(arn_04)),
|
STAGE("arn_04", A(arn_04)),
|
||||||
STAGE("arn_05", N(arn_05)),
|
STAGE("arn_05", A(arn_05)),
|
||||||
STAGE("arn_06", N(arn_06)),
|
STAGE("arn_06", A(arn_06)),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
6
src/battle/area/arn/area.h
Normal file
6
src/battle/area/arn/area.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "effects.h"
|
||||||
|
#include "battle/battle.h"
|
||||||
|
#include "script_api/battle.h"
|
||||||
|
|
||||||
|
#define AREA b_area_arn
|
@ -1,32 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/arn_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_arn_01
|
#include "battle/common/stage/area_arn/arn_01.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
-1,
|
|
||||||
MODEL_iwa4,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "arn_tex",
|
|
||||||
.shape = "arn_bt01_shape",
|
|
||||||
.hit = "arn_bt01_hit",
|
|
||||||
.bg = "arn_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,49 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/arn_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_arn_02
|
#include "battle/common/stage/area_arn/arn_02.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_RotateWindmill) = {
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_SET(LVar0, 0)
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_ADD(LVar0, 1)
|
|
||||||
EVT_IF_GT(LVar0, 359)
|
|
||||||
EVT_SUB(LVar0, 360)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(RotateModel, LVarA, LVar0, 0, 0, 1)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_SET(LVar0, MODEL_o332)
|
|
||||||
EVT_EXEC_WAIT(N(EVS_RotateWindmill))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
-1,
|
|
||||||
MODEL_iwa4,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "arn_tex",
|
|
||||||
.shape = "arn_bt02_shape",
|
|
||||||
.hit = "arn_bt02_hit",
|
|
||||||
.bg = "arn_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,32 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/arn_bt03_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_arn_03
|
#include "battle/common/stage/area_arn/arn_03.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
-1,
|
|
||||||
MODEL_iwa4,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "arn_tex",
|
|
||||||
.shape = "arn_bt03_shape",
|
|
||||||
.hit = "arn_bt03_hit",
|
|
||||||
.bg = "arn_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,31 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/arn_bt04_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_arn_04
|
#include "battle/common/stage/area_arn/arn_04.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_CALL(SetCamBGColor, CAM_BATTLE, 0, 0, 0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_o349,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "arn_tex",
|
|
||||||
.shape = "arn_bt04_shape",
|
|
||||||
.hit = "arn_bt04_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,31 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/arn_bt05_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_arn_05
|
#include "battle/common/stage/area_arn/arn_05.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_CALL(SetCamBGColor, CAM_BATTLE, 0, 0, 0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_o354,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "arn_tex",
|
|
||||||
.shape = "arn_bt05_shape",
|
|
||||||
.hit = "arn_bt05_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,30 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/arn_bt06_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_arn_arn_06
|
#include "battle/common/stage/area_arn/arn_06.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_kabe3,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "arn_tex",
|
|
||||||
.shape = "arn_bt06_shape",
|
|
||||||
.hit = "arn_bt06_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb_clubba
|
|
||||||
|
|
||||||
#include "battle/common/actor/clubba.inc.c"
|
#include "battle/common/actor/clubba.inc.c"
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "effects.h"
|
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/BattleTubba.h"
|
#include "sprite/npc/BattleTubba.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb_tubba_blubba
|
#define NAMESPACE A(tubba_blubba)
|
||||||
|
|
||||||
extern EvtScript N(EVS_Init);
|
extern EvtScript N(EVS_Init);
|
||||||
extern EvtScript N(takeTurn_80219750);
|
extern EvtScript N(takeTurn_80219750);
|
||||||
@ -222,7 +219,7 @@ EvtScript N(handleEvent_80219338) = {
|
|||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
EVT_CASE_OR_EQ(EVENT_HIT)
|
||||||
EVT_EXEC_WAIT(N(802192E0))
|
EVT_EXEC_WAIT(N(802192E0))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim02)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
@ -234,7 +231,7 @@ EvtScript N(handleEvent_80219338) = {
|
|||||||
EVT_WAIT(15)
|
EVT_WAIT(15)
|
||||||
EVT_IF_EQ(LVar0, EVENT_BURN_DEATH)
|
EVT_IF_EQ(LVar0, EVENT_BURN_DEATH)
|
||||||
EVT_WAIT(10)
|
EVT_WAIT(10)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
@ -242,14 +239,14 @@ EvtScript N(handleEvent_80219338) = {
|
|||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
||||||
EVT_EXEC_WAIT(N(802192E0))
|
EVT_EXEC_WAIT(N(802192E0))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
||||||
EVT_EXEC_WAIT(N(80219238))
|
EVT_EXEC_WAIT(N(80219238))
|
||||||
@ -257,26 +254,26 @@ EvtScript N(handleEvent_80219338) = {
|
|||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
||||||
EVT_EXEC_WAIT(N(802192E0))
|
EVT_EXEC_WAIT(N(802192E0))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim02)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_OR_EQ(EVENT_SHOCK_DEATH)
|
EVT_CASE_OR_EQ(EVENT_SHOCK_DEATH)
|
||||||
EVT_CASE_OR_EQ(EVENT_DEATH)
|
EVT_CASE_OR_EQ(EVENT_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_WAIT(10)
|
EVT_WAIT(10)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim14)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
@ -286,7 +283,7 @@ EvtScript N(handleEvent_80219338) = {
|
|||||||
EVT_EXEC_WAIT(N(80219238))
|
EVT_EXEC_WAIT(N(80219238))
|
||||||
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_BattleTubba_Anim02)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
||||||
EVT_CASE_DEFAULT
|
EVT_CASE_DEFAULT
|
||||||
|
@ -1,64 +1,61 @@
|
|||||||
#include "common.h"
|
#include "area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb
|
extern ActorBlueprint A(clubba);
|
||||||
|
extern ActorBlueprint A(tubba_blubba);
|
||||||
|
|
||||||
extern ActorBlueprint N(clubba);
|
extern Stage A(dgb_01);
|
||||||
extern ActorBlueprint N(tubba_blubba);
|
extern Stage A(dgb_02);
|
||||||
|
extern Stage A(dgb_03);
|
||||||
|
extern Stage A(dgb_04);
|
||||||
|
extern Stage A(dgb_05);
|
||||||
|
|
||||||
extern Stage N(dgb_01);
|
Formation A(Formation_00) = {
|
||||||
extern Stage N(dgb_02);
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_B, 10),
|
||||||
extern Stage N(dgb_03);
|
|
||||||
extern Stage N(dgb_04);
|
|
||||||
extern Stage N(dgb_05);
|
|
||||||
|
|
||||||
Formation N(Formation_00) = {
|
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_B, 10),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_01) = {
|
Formation A(Formation_01) = {
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_02) = {
|
Formation A(Formation_02) = {
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_03) = {
|
Formation A(Formation_03) = {
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(clubba), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(clubba), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Vec3i N(vector3D_8021B348) = { 75, 0, 10 };
|
Vec3i A(vector3D_8021B348) = { 75, 0, 10 };
|
||||||
|
|
||||||
Formation N(Formation_04) = {
|
Formation A(Formation_04) = {
|
||||||
ACTOR_BY_POS(N(tubba_blubba), N(vector3D_8021B348), 10),
|
ACTOR_BY_POS(A(tubba_blubba), A(vector3D_8021B348), 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_05) = {
|
Formation A(Formation_05) = {
|
||||||
ACTOR_BY_POS(N(tubba_blubba), N(vector3D_8021B348), 10, 1),
|
ACTOR_BY_POS(A(tubba_blubba), A(vector3D_8021B348), 10, 1),
|
||||||
};
|
};
|
||||||
|
|
||||||
BattleList N(Formations) = {
|
BattleList A(Formations) = {
|
||||||
BATTLE(N(Formation_00), N(dgb_01), "ガボンへい"),
|
BATTLE(A(Formation_00), A(dgb_01), "ガボンへい"),
|
||||||
BATTLE(N(Formation_01), N(dgb_01), "ガボンへいx2"),
|
BATTLE(A(Formation_01), A(dgb_01), "ガボンへいx2"),
|
||||||
BATTLE(N(Formation_02), N(dgb_01), "ガボンへいx3"),
|
BATTLE(A(Formation_02), A(dgb_01), "ガボンへいx3"),
|
||||||
BATTLE(N(Formation_03), N(dgb_01), "ガボンへいx4"),
|
BATTLE(A(Formation_03), A(dgb_01), "ガボンへいx4"),
|
||||||
BATTLE(N(Formation_04), N(dgb_01), "むてきドガボン"),
|
BATTLE(A(Formation_04), A(dgb_01), "むてきドガボン"),
|
||||||
BATTLE(N(Formation_05), N(dgb_01), "むてきドガボンせりふなし"),
|
BATTLE(A(Formation_05), A(dgb_01), "むてきドガボンせりふなし"),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
|
||||||
StageList N(Stages) = {
|
StageList A(Stages) = {
|
||||||
STAGE("dgb_01", N(dgb_01)),
|
STAGE("dgb_01", A(dgb_01)),
|
||||||
STAGE("dgb_02", N(dgb_02)),
|
STAGE("dgb_02", A(dgb_02)),
|
||||||
STAGE("dgb_03", N(dgb_03)),
|
STAGE("dgb_03", A(dgb_03)),
|
||||||
STAGE("dgb_04", N(dgb_04)),
|
STAGE("dgb_04", A(dgb_04)),
|
||||||
STAGE("dgb_05", N(dgb_05)),
|
STAGE("dgb_05", A(dgb_05)),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
6
src/battle/area/dgb/area.h
Normal file
6
src/battle/area/dgb/area.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "effects.h"
|
||||||
|
#include "battle/battle.h"
|
||||||
|
#include "script_api/battle.h"
|
||||||
|
|
||||||
|
#define AREA b_area_dgb
|
@ -1,24 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/dgb_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb_dgb_01
|
#include "battle/common/stage/area_dgb/dgb_01.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "dgb_tex",
|
|
||||||
.shape = "dgb_bt01_shape",
|
|
||||||
.hit = "dgb_bt01_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
};
|
|
||||||
|
@ -1,24 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/dgb_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb_dgb_02
|
#include "battle/common/stage/area_dgb/dgb_02.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "dgb_tex",
|
|
||||||
.shape = "dgb_bt02_shape",
|
|
||||||
.hit = "dgb_bt02_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
};
|
|
||||||
|
@ -1,24 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/dgb_bt03_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb_dgb_03
|
#include "battle/common/stage/area_dgb/dgb_03.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "dgb_tex",
|
|
||||||
.shape = "dgb_bt03_shape",
|
|
||||||
.hit = "dgb_bt03_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
};
|
|
||||||
|
@ -1,30 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/dgb_bt04_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb_dgb_04
|
#include "battle/common/stage/area_dgb/dgb_04.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_kumo1,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "dgb_tex",
|
|
||||||
.shape = "dgb_bt04_shape",
|
|
||||||
.hit = "dgb_bt04_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,24 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/dgb_bt05_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dgb_dgb_05
|
#include "battle/common/stage/area_dgb/dgb_05.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "dgb_tex",
|
|
||||||
.shape = "dgb_bt05_shape",
|
|
||||||
.hit = "dgb_bt05_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
};
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_bandit
|
|
||||||
|
|
||||||
#include "battle/common/actor/bandit.inc.c"
|
#include "battle/common/actor/bandit.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_fuzzy
|
|
||||||
|
|
||||||
#include "battle/common/actor/fuzzy.inc.c"
|
#include "battle/common/actor/fuzzy.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_koopa_troopa
|
|
||||||
|
|
||||||
#include "battle/common/actor/koopa_troopa.inc.c"
|
#include "battle/common/actor/koopa_troopa.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_monty_mole
|
|
||||||
|
|
||||||
#include "battle/common/actor/monty_mole.inc.c"
|
#include "battle/common/actor/monty_mole.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_pokey
|
|
||||||
|
|
||||||
#include "battle/common/actor/pokey.inc.c"
|
#include "battle/common/actor/pokey.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_red_shy_guy
|
|
||||||
|
|
||||||
#include "battle/common/actor/red_shy_guy.inc.c"
|
#include "battle/common/actor/red_shy_guy.inc.c"
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "effects.h"
|
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/BattleTubba.h"
|
#include "sprite/npc/BattleTubba.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_tubba_blubba
|
#define NAMESPACE A(tubba_blubba)
|
||||||
|
|
||||||
extern EvtScript N(init);
|
extern EvtScript N(init);
|
||||||
extern EvtScript N(takeTurn);
|
extern EvtScript N(takeTurn);
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_whacka
|
|
||||||
|
|
||||||
#include "battle/common/actor/whacka.inc.c"
|
#include "battle/common/actor/whacka.inc.c"
|
||||||
|
@ -1,72 +1,68 @@
|
|||||||
#include "common.h"
|
#include "area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig
|
extern ActorBlueprint A(fuzzy);
|
||||||
|
extern ActorBlueprint A(monty_mole);
|
||||||
|
extern ActorBlueprint A(pokey);
|
||||||
|
extern ActorBlueprint A(bandit);
|
||||||
|
extern ActorBlueprint A(red_shy_guy);
|
||||||
|
extern ActorBlueprint A(tubba_blubba);
|
||||||
|
|
||||||
extern ActorBlueprint N(fuzzy);
|
extern Stage A(nok_04);
|
||||||
extern ActorBlueprint N(monty_mole);
|
extern Stage A(iwa_01b);
|
||||||
extern ActorBlueprint N(pokey);
|
extern Stage A(sbk_02);
|
||||||
extern ActorBlueprint N(bandit);
|
extern Stage A(omo_04);
|
||||||
extern ActorBlueprint N(red_shy_guy);
|
extern Stage A(dgb_05);
|
||||||
extern ActorBlueprint N(tubba_blubba);
|
|
||||||
|
|
||||||
extern Stage N(dig_01);
|
extern EvtScript A(dig_01_script);
|
||||||
extern Stage N(dig_02);
|
extern EvtScript A(dig_02_script);
|
||||||
extern Stage N(dig_03);
|
extern EvtScript A(dig_03_script);
|
||||||
extern Stage N(dig_04);
|
extern EvtScript A(dig_04_script);
|
||||||
extern Stage N(dig_05);
|
extern EvtScript A(dig_05_script);
|
||||||
|
|
||||||
extern EvtScript N(dig_01_script);
|
Formation A(Formation_00) = {
|
||||||
extern EvtScript N(dig_02_script);
|
ACTOR_BY_IDX(A(fuzzy), BTL_POS_GROUND_A, 10),
|
||||||
extern EvtScript N(dig_03_script);
|
ACTOR_BY_IDX(A(fuzzy), BTL_POS_GROUND_B, 9),
|
||||||
extern EvtScript N(dig_04_script);
|
ACTOR_BY_IDX(A(fuzzy), BTL_POS_GROUND_C, 8),
|
||||||
extern EvtScript N(dig_05_script);
|
ACTOR_BY_IDX(A(fuzzy), BTL_POS_GROUND_D, 7),
|
||||||
|
|
||||||
Formation N(Formation_00) = {
|
|
||||||
ACTOR_BY_IDX(N(fuzzy), BTL_POS_GROUND_A, 10),
|
|
||||||
ACTOR_BY_IDX(N(fuzzy), BTL_POS_GROUND_B, 9),
|
|
||||||
ACTOR_BY_IDX(N(fuzzy), BTL_POS_GROUND_C, 8),
|
|
||||||
ACTOR_BY_IDX(N(fuzzy), BTL_POS_GROUND_D, 7),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_01) = {
|
Formation A(Formation_01) = {
|
||||||
ACTOR_BY_IDX(N(monty_mole), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(monty_mole), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(monty_mole), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(monty_mole), BTL_POS_GROUND_C, 9),
|
||||||
ACTOR_BY_IDX(N(monty_mole), BTL_POS_GROUND_D, 8),
|
ACTOR_BY_IDX(A(monty_mole), BTL_POS_GROUND_D, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_02) = {
|
Formation A(Formation_02) = {
|
||||||
ACTOR_BY_IDX(N(pokey), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(pokey), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(bandit), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(bandit), BTL_POS_GROUND_C, 9),
|
||||||
ACTOR_BY_IDX(N(pokey), BTL_POS_GROUND_D, 8),
|
ACTOR_BY_IDX(A(pokey), BTL_POS_GROUND_D, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_03) = {
|
Formation A(Formation_03) = {
|
||||||
ACTOR_BY_IDX(N(red_shy_guy), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(red_shy_guy), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(red_shy_guy), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(red_shy_guy), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(red_shy_guy), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(red_shy_guy), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(red_shy_guy), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(red_shy_guy), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_04) = {
|
Formation A(Formation_04) = {
|
||||||
ACTOR_BY_IDX(N(tubba_blubba), BTL_POS_GROUND_C, 10),
|
ACTOR_BY_IDX(A(tubba_blubba), BTL_POS_GROUND_C, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
BattleList N(Formations) = {
|
BattleList A(Formations) = {
|
||||||
BATTLE_WITH_SCRIPT(N(Formation_00), N(dig_01), N(dig_01_script), "ダイジェスト01"),
|
BATTLE_WITH_SCRIPT(A(Formation_00), A(nok_04), A(dig_01_script), "ダイジェスト01"),
|
||||||
BATTLE_WITH_SCRIPT(N(Formation_01), N(dig_02), N(dig_02_script), "ダイジェスト02"),
|
BATTLE_WITH_SCRIPT(A(Formation_01), A(iwa_01b), A(dig_02_script), "ダイジェスト02"),
|
||||||
BATTLE_WITH_SCRIPT(N(Formation_02), N(dig_03), N(dig_03_script), "ダイジェスト03"),
|
BATTLE_WITH_SCRIPT(A(Formation_02), A(sbk_02), A(dig_03_script), "ダイジェスト03"),
|
||||||
BATTLE_WITH_SCRIPT(N(Formation_03), N(dig_04), N(dig_04_script), "ダイジェスト04"),
|
BATTLE_WITH_SCRIPT(A(Formation_03), A(omo_04), A(dig_04_script), "ダイジェスト04"),
|
||||||
BATTLE_WITH_SCRIPT(N(Formation_04), N(dig_05), N(dig_05_script), "ダイジェスト05"),
|
BATTLE_WITH_SCRIPT(A(Formation_04), A(dgb_05), A(dig_05_script), "ダイジェスト05"),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
|
||||||
StageList N(Stages) = {
|
StageList A(Stages) = {
|
||||||
STAGE("dig_01", N(dig_01)),
|
STAGE("dig_01", A(nok_04)),
|
||||||
STAGE("dig_02", N(dig_02)),
|
STAGE("dig_02", A(iwa_01b)),
|
||||||
STAGE("dig_03", N(dig_03)),
|
STAGE("dig_03", A(sbk_02)),
|
||||||
STAGE("dig_04", N(dig_04)),
|
STAGE("dig_04", A(omo_04)),
|
||||||
STAGE("dig_05", N(dig_05)),
|
STAGE("dig_05", A(dgb_05)),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
6
src/battle/area/dig/area.h
Normal file
6
src/battle/area/dig/area.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "effects.h"
|
||||||
|
#include "battle/battle.h"
|
||||||
|
#include "script_api/battle.h"
|
||||||
|
|
||||||
|
#define AREA b_area_dig
|
@ -1,7 +1,6 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "script_api/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_01_script
|
#define NAMESPACE A(dig_01_script)
|
||||||
|
|
||||||
#include "common/SetDemoBattleBeginDelay.inc.c"
|
#include "common/SetDemoBattleBeginDelay.inc.c"
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "script_api/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_02_script
|
#define NAMESPACE A(dig_02_script)
|
||||||
|
|
||||||
API_CALLABLE(N(SetupDemoPlayerMove)) {
|
API_CALLABLE(N(SetupDemoPlayerMove)) {
|
||||||
BattleStatus* battleStatus = &gBattleStatus;
|
BattleStatus* battleStatus = &gBattleStatus;
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "script_api/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_03_script
|
#define NAMESPACE A(dig_03_script)
|
||||||
|
|
||||||
API_CALLABLE(N(SetupDemoPlayerMove)) {
|
API_CALLABLE(N(SetupDemoPlayerMove)) {
|
||||||
BattleStatus* battleStatus = &gBattleStatus;
|
BattleStatus* battleStatus = &gBattleStatus;
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "script_api/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_04_script
|
#define NAMESPACE A(dig_04_script)
|
||||||
|
|
||||||
API_CALLABLE(N(SetupDemoPlayerMove)) {
|
API_CALLABLE(N(SetupDemoPlayerMove)) {
|
||||||
BattleStatus* battleStatus = &gBattleStatus;
|
BattleStatus* battleStatus = &gBattleStatus;
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "script_api/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_05_script
|
#define NAMESPACE A(dig_05_script)
|
||||||
|
|
||||||
#include "common/SetDemoBattleBeginDelay.inc.c"
|
#include "common/SetDemoBattleBeginDelay.inc.c"
|
||||||
|
|
||||||
|
@ -1,35 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/nok_bt04_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_01
|
#include "battle/common/stage/area_nok/nok_04.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_ueki2,
|
|
||||||
MODEL_ueki1,
|
|
||||||
MODEL_kabu2,
|
|
||||||
MODEL_kabu1,
|
|
||||||
MODEL_kusa3,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "nok_tex",
|
|
||||||
.shape = "nok_bt04_shape",
|
|
||||||
.hit = "nok_bt04_hit",
|
|
||||||
.bg = "nok_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,34 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "mapfs/iwa_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_02
|
#include "battle/common/stage/area_iwa/iwa_01b.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_CALL(SetGroupVisibility, MODEL_a, MODEL_GROUP_HIDDEN)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_iwa1,
|
|
||||||
MODEL_o331,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "iwa_tex",
|
|
||||||
.shape = "iwa_bt01_shape",
|
|
||||||
.hit = "iwa_bt01_hit",
|
|
||||||
.bg = "iwa_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,67 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "effects.h"
|
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "mapfs/sbk_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_03
|
#include "battle/common/stage/area_sbk/sbk_02.inc.c"
|
||||||
|
|
||||||
#include "common/UpdateSunPos.inc.c"
|
|
||||||
#include "common/GetModelPos.inc.c"
|
|
||||||
|
|
||||||
EvtScript N(EVS_UpdateSunPos) = {
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_SET(LVar7, LVar1)
|
|
||||||
EVT_MUL(LVar7, 10)
|
|
||||||
EVT_CALL(N(GetModelPos))
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_ADD(LVar7, 1)
|
|
||||||
EVT_IF_GT(LVar7, 3599)
|
|
||||||
EVT_SUB(LVar7, 3600)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(N(UpdateSunPos), LVar7, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(TranslateModel, LVarA, LVar0, LVar1, LVar2)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_SET(LVar0, MODEL_g60)
|
|
||||||
EVT_SET(LVar1, 0)
|
|
||||||
EVT_EXEC(N(EVS_UpdateSunPos))
|
|
||||||
EVT_SET(LVar0, MODEL_g63)
|
|
||||||
EVT_SET(LVar1, 120)
|
|
||||||
EVT_EXEC(N(EVS_UpdateSunPos))
|
|
||||||
EVT_SET(LVar0, MODEL_g62)
|
|
||||||
EVT_SET(LVar1, 240)
|
|
||||||
EVT_EXEC(N(EVS_UpdateSunPos))
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_SUN, 0, 0, 0, 0, 0, 0, 0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_o322,
|
|
||||||
MODEL_o321,
|
|
||||||
MODEL_o320,
|
|
||||||
MODEL_o319,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "sbk_tex",
|
|
||||||
.shape = "sbk_bt02_shape",
|
|
||||||
.hit = "sbk_bt02_hit",
|
|
||||||
.bg = "sbk_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
@ -1,64 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "mapfs/omo_bt04_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_04
|
#include "battle/common/stage/area_omo/omo_04.inc.c"
|
||||||
|
|
||||||
extern Formation N(Formation_SlotMachine);
|
|
||||||
extern ActorBlueprint N(slot_machine_stop);
|
|
||||||
extern ActorBlueprint N(slot_machine_start);
|
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_CALL(SetCamBGColor, CAM_BATTLE, 0, 0, 0)
|
|
||||||
EVT_CALL(SetTexPanner, 29, TEX_PANNER_A)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_SET(LVarE, 0)
|
|
||||||
EVT_LOOP(0)
|
|
||||||
EVT_ADD(LVarE, 0x8000)
|
|
||||||
EVT_CALL(SetTexPanOffset, TEX_PANNER_A, TEX_PANNER_MAIN, LVarE, 0)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_itigo,
|
|
||||||
MODEL_kisya,
|
|
||||||
MODEL_kusari,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "omo_tex",
|
|
||||||
.shape = "omo_bt04_shape",
|
|
||||||
.hit = "omo_bt04_hit",
|
|
||||||
.bg = "omo_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
.stageEnemyCount = 4,
|
|
||||||
.stageFormation = &N(Formation_SlotMachine),
|
|
||||||
};
|
|
||||||
|
|
||||||
Vec3i N(slot_machine_pos1) = { -49, 56, -68 };
|
|
||||||
Vec3i N(slot_machine_pos2) = { -13, 56, -68 };
|
|
||||||
Vec3i N(slot_machine_pos3) = { 20, 56, -68 };
|
|
||||||
Vec3i N(slot_machine_pos4) = { 53, 56, -68 };
|
|
||||||
|
|
||||||
Formation N(Formation_SlotMachine) = {
|
|
||||||
ACTOR_BY_POS(N(slot_machine_start), N(slot_machine_pos1), 0, 0),
|
|
||||||
ACTOR_BY_POS(N(slot_machine_stop), N(slot_machine_pos2), 0, 1),
|
|
||||||
ACTOR_BY_POS(N(slot_machine_stop), N(slot_machine_pos3), 0, 2),
|
|
||||||
ACTOR_BY_POS(N(slot_machine_stop), N(slot_machine_pos4), 0, 3),
|
|
||||||
};
|
|
||||||
|
|
||||||
#include "battle/common/actor/slot_machine.inc.c"
|
|
||||||
|
@ -1,23 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_dig_dig_05
|
#include "battle/common/stage/area_dgb/dgb_05.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "dgb_tex",
|
|
||||||
.shape = "dgb_bt05_shape",
|
|
||||||
.hit = "dgb_bt05_hit",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
};
|
|
||||||
|
@ -1,380 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/Dayzee.h"
|
|
||||||
#include "effects.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_amazy_dayzee
|
#include "battle/common/actor/amazy_dayzee.inc.c"
|
||||||
|
|
||||||
extern EvtScript N(init);
|
|
||||||
extern EvtScript N(takeTurn);
|
|
||||||
extern EvtScript N(idle);
|
|
||||||
extern EvtScript N(handleEvent);
|
|
||||||
extern s32 N(IdleAnimations)[];
|
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
|
||||||
PRT_MAIN = 1,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(DefenseTable)[] = {
|
|
||||||
ELEMENT_NORMAL, 1,
|
|
||||||
ELEMENT_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(StatusTable)[] = {
|
|
||||||
STATUS_KEY_NORMAL, 0,
|
|
||||||
STATUS_KEY_DEFAULT, 0,
|
|
||||||
STATUS_KEY_SLEEP, 10,
|
|
||||||
STATUS_KEY_POISON, 0,
|
|
||||||
STATUS_KEY_FROZEN, 0,
|
|
||||||
STATUS_KEY_DIZZY, 10,
|
|
||||||
STATUS_KEY_FEAR, 0,
|
|
||||||
STATUS_KEY_STATIC, 0,
|
|
||||||
STATUS_KEY_PARALYZE, 10,
|
|
||||||
STATUS_KEY_SHRINK, 10,
|
|
||||||
STATUS_KEY_STOP, 10,
|
|
||||||
STATUS_TURN_MOD_DEFAULT, 0,
|
|
||||||
STATUS_TURN_MOD_SLEEP, -1,
|
|
||||||
STATUS_TURN_MOD_POISON, 0,
|
|
||||||
STATUS_TURN_MOD_FROZEN, 0,
|
|
||||||
STATUS_TURN_MOD_DIZZY, -1,
|
|
||||||
STATUS_TURN_MOD_FEAR, 0,
|
|
||||||
STATUS_TURN_MOD_STATIC, 0,
|
|
||||||
STATUS_TURN_MOD_PARALYZE, -1,
|
|
||||||
STATUS_TURN_MOD_SHRINK, 0,
|
|
||||||
STATUS_TURN_MOD_STOP, -2,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorPartBlueprint N(ActorParts)[] = {
|
|
||||||
{
|
|
||||||
.flags = ACTOR_PART_FLAG_MULTI_TARGET,
|
|
||||||
.index = PRT_MAIN,
|
|
||||||
.posOffset = { 0, 0, 0 },
|
|
||||||
.targetOffset = { -2, 30 },
|
|
||||||
.opacity = 255,
|
|
||||||
.idleAnimations = N(IdleAnimations),
|
|
||||||
.defenseTable = N(DefenseTable),
|
|
||||||
.eventFlags = 0,
|
|
||||||
.elementImmunityFlags = 0,
|
|
||||||
.projectileTargetOffset = { 0, -8 },
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorBlueprint NAMESPACE = {
|
|
||||||
.flags = 0,
|
|
||||||
.type = ACTOR_TYPE_AMAZY_DAYZEE,
|
|
||||||
.level = 100,
|
|
||||||
.maxHP = 20,
|
|
||||||
.partCount = ARRAY_COUNT(N(ActorParts)),
|
|
||||||
.partsData = N(ActorParts),
|
|
||||||
.initScript = &N(init),
|
|
||||||
.statusTable = N(StatusTable),
|
|
||||||
.escapeChance = 90,
|
|
||||||
.airLiftChance = 85,
|
|
||||||
.hurricaneChance = 80,
|
|
||||||
.spookChance = 100,
|
|
||||||
.upAndAwayChance = 95,
|
|
||||||
.spinSmashReq = 0,
|
|
||||||
.powerBounceChance = 70,
|
|
||||||
.coinReward = 5,
|
|
||||||
.size = { 32, 34 },
|
|
||||||
.healthBarOffset = { 0, 0 },
|
|
||||||
.statusIconOffset = { -14, 17 },
|
|
||||||
.statusTextOffset = { 9, 25 },
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Dayzee_Amazy_Anim01,
|
|
||||||
STATUS_KEY_STONE, ANIM_Dayzee_Amazy_Anim00,
|
|
||||||
STATUS_KEY_SLEEP, ANIM_Dayzee_Amazy_Anim0C,
|
|
||||||
STATUS_KEY_POISON, ANIM_Dayzee_Amazy_Anim01,
|
|
||||||
STATUS_KEY_STOP, ANIM_Dayzee_Amazy_Anim00,
|
|
||||||
STATUS_KEY_STATIC, ANIM_Dayzee_Amazy_Anim01,
|
|
||||||
STATUS_KEY_PARALYZE, ANIM_Dayzee_Amazy_Anim00,
|
|
||||||
STATUS_KEY_DIZZY, ANIM_Dayzee_Amazy_Anim0B,
|
|
||||||
STATUS_KEY_FEAR, ANIM_Dayzee_Amazy_Anim0B,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(init) = {
|
|
||||||
EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn)))
|
|
||||||
EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle)))
|
|
||||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent)))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(idle) = {
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 15)
|
|
||||||
EVT_SUB(LVar2, 2)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_SPARKLES, 2, LVar0, LVar1, LVar2, 30, 0)
|
|
||||||
EVT_WAIT(15)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(returnHome) = {
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim03)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ReturnHome)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(handleEvent) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(GetLastEvent, ACTOR_SELF, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim09)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Dayzee_Amazy_Anim0A)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim09)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Dayzee_Amazy_Anim0A)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim0A)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim01)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim01)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
|
||||||
EVT_CASE_EQ(EVENT_SCARE_AWAY)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim04)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ScareAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
|
||||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar0)
|
|
||||||
EVT_IF_NOT_FLAG(LVar0, STATUS_FLAGS_IMMOBILIZED)
|
|
||||||
EVT_IF_FLAG(LVar0, STATUS_FLAG_SHRINK)
|
|
||||||
EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 1, 0)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 3, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Amazy_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(attackPainfulSong) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(GetBattlePhase, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, PHASE_FIRST_STRIKE)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorPos, ACTOR_SELF, -20, LVar1, LVar2)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_ENEMY_APPROACH)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(func_8024ECF8, BTL_CAM_MODEY_MINUS_1, BTL_CAM_MODEX_1, FALSE)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 70)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_IF_EQ(LFlag0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim0E)
|
|
||||||
EVT_SET(LFlag0, TRUE)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim0F)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(0.5))
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 15, FALSE, TRUE, FALSE)
|
|
||||||
EVT_IF_GT(LVar0, 0)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_IF_EQ(LFlag0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim0E)
|
|
||||||
EVT_SET(LFlag0, TRUE)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim0F)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(0.5))
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, -35, 0, 10)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 15, FALSE, TRUE, FALSE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim01)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim06)
|
|
||||||
EVT_WAIT(40)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim07)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_DAYZEE_SONG)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 25)
|
|
||||||
EVT_ADD(LVar2, 2)
|
|
||||||
EVT_LOOP(13)
|
|
||||||
EVT_CALL(RandInt, 30, LVar3)
|
|
||||||
EVT_SUB(LVar3, 15)
|
|
||||||
EVT_ADD(LVar3, LVar0)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_MUSIC_NOTE, 1, LVar3, LVar1, LVar2, 0)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim01)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, 0, 0, 1, BS_FLAGS1_10)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_MISS)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_LUCKY)
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_IF_EQ(LVarA, HIT_RESULT_LUCKY)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_TRIGGER_LUCKY, 0, 0, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_WAIT(15)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, PRT_MAIN, 0, ACTOR_DECORATION_SWEAT)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CALL(RemoveActorDecoration, ACTOR_SELF, PRT_MAIN, 0)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_WAIT(2)
|
|
||||||
EVT_CALL(EnemyDamageTarget, ACTOR_SELF, LVarF, DAMAGE_TYPE_NO_CONTACT, 0, DMG_STATUS_KEY(STATUS_FLAG_SLEEP, 3, 15), 20, BS_FLAGS1_SP_EVT_ACTIVE)
|
|
||||||
EVT_SWITCH(LVarF)
|
|
||||||
EVT_CASE_OR_EQ(0)
|
|
||||||
EVT_CASE_OR_EQ(2)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 10)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(flee) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19)
|
|
||||||
EVT_CALL(SetBattleCamZoom, 300)
|
|
||||||
EVT_CALL(SetBattleCamOffsetZ, 30)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(SetBattleCamTarget, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 30)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim03)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(1.0))
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Amazy_Anim04)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(12.0))
|
|
||||||
EVT_ADD(LVar0, 200)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_BATTLE_FLED, TRUE)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_CALL(RemoveActor, ACTOR_SELF)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(takeTurn) = {
|
|
||||||
EVT_CALL(GetBattlePhase, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, PHASE_FIRST_STRIKE)
|
|
||||||
EVT_EXEC_WAIT(N(attackPainfulSong))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(RandInt, 1000, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_LT(850)
|
|
||||||
EVT_EXEC_WAIT(N(flee))
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_EXEC_WAIT(N(attackPainfulSong))
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_bzzap
|
|
||||||
|
|
||||||
#include "battle/common/actor/bzzap.inc.c"
|
#include "battle/common/actor/bzzap.inc.c"
|
||||||
|
@ -1,391 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/Dayzee.h"
|
|
||||||
#include "effects.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_crazee_dayzee
|
#include "battle/common/actor/crazee_dayzee.inc.c"
|
||||||
|
|
||||||
extern EvtScript N(EVS_Init);
|
|
||||||
extern EvtScript N(takeTurn);
|
|
||||||
extern EvtScript N(idle);
|
|
||||||
extern EvtScript N(handleEvent);
|
|
||||||
extern s32 N(IdleAnimations)[];
|
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
|
||||||
PRT_MAIN = 1,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(DefenseTable)[] = {
|
|
||||||
ELEMENT_NORMAL, 0,
|
|
||||||
ELEMENT_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(StatusTable)[] = {
|
|
||||||
STATUS_KEY_NORMAL, 0,
|
|
||||||
STATUS_KEY_DEFAULT, 0,
|
|
||||||
STATUS_KEY_SLEEP, 95,
|
|
||||||
STATUS_KEY_POISON, 50,
|
|
||||||
STATUS_KEY_FROZEN, 0,
|
|
||||||
STATUS_KEY_DIZZY, 30,
|
|
||||||
STATUS_KEY_FEAR, 0,
|
|
||||||
STATUS_KEY_STATIC, 50,
|
|
||||||
STATUS_KEY_PARALYZE, 30,
|
|
||||||
STATUS_KEY_SHRINK, 30,
|
|
||||||
STATUS_KEY_STOP, 30,
|
|
||||||
STATUS_TURN_MOD_DEFAULT, 0,
|
|
||||||
STATUS_TURN_MOD_SLEEP, 0,
|
|
||||||
STATUS_TURN_MOD_POISON, 0,
|
|
||||||
STATUS_TURN_MOD_FROZEN, 0,
|
|
||||||
STATUS_TURN_MOD_DIZZY, 0,
|
|
||||||
STATUS_TURN_MOD_FEAR, 0,
|
|
||||||
STATUS_TURN_MOD_STATIC, 0,
|
|
||||||
STATUS_TURN_MOD_PARALYZE, 1,
|
|
||||||
STATUS_TURN_MOD_SHRINK, 0,
|
|
||||||
STATUS_TURN_MOD_STOP, 0,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorPartBlueprint N(ActorParts)[] = {
|
|
||||||
{
|
|
||||||
.flags = ACTOR_PART_FLAG_MULTI_TARGET,
|
|
||||||
.index = PRT_MAIN,
|
|
||||||
.posOffset = { 0, 0, 0 },
|
|
||||||
.targetOffset = { -2, 30 },
|
|
||||||
.opacity = 255,
|
|
||||||
.idleAnimations = N(IdleAnimations),
|
|
||||||
.defenseTable = N(DefenseTable),
|
|
||||||
.eventFlags = 0,
|
|
||||||
.elementImmunityFlags = 0,
|
|
||||||
.projectileTargetOffset = { 0, -8 },
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorBlueprint NAMESPACE = {
|
|
||||||
.flags = 0,
|
|
||||||
.type = ACTOR_TYPE_CRAZEE_DAYZEE,
|
|
||||||
.level = 19,
|
|
||||||
.maxHP = 8,
|
|
||||||
.partCount = ARRAY_COUNT(N(ActorParts)),
|
|
||||||
.partsData = N(ActorParts),
|
|
||||||
.initScript = &N(EVS_Init),
|
|
||||||
.statusTable = N(StatusTable),
|
|
||||||
.escapeChance = 50,
|
|
||||||
.airLiftChance = 85,
|
|
||||||
.hurricaneChance = 80,
|
|
||||||
.spookChance = 100,
|
|
||||||
.upAndAwayChance = 95,
|
|
||||||
.spinSmashReq = 0,
|
|
||||||
.powerBounceChance = 75,
|
|
||||||
.coinReward = 2,
|
|
||||||
.size = { 32, 34 },
|
|
||||||
.healthBarOffset = { 0, 0 },
|
|
||||||
.statusIconOffset = { -14, 17 },
|
|
||||||
.statusTextOffset = { 9, 25 },
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Dayzee_Anim01,
|
|
||||||
STATUS_KEY_STONE, ANIM_Dayzee_Anim00,
|
|
||||||
STATUS_KEY_SLEEP, ANIM_Dayzee_Anim0C,
|
|
||||||
STATUS_KEY_POISON, ANIM_Dayzee_Anim01,
|
|
||||||
STATUS_KEY_STOP, ANIM_Dayzee_Anim00,
|
|
||||||
STATUS_KEY_STATIC, ANIM_Dayzee_Anim01,
|
|
||||||
STATUS_KEY_PARALYZE, ANIM_Dayzee_Anim00,
|
|
||||||
STATUS_KEY_DIZZY, ANIM_Dayzee_Anim0B,
|
|
||||||
STATUS_KEY_FEAR, ANIM_Dayzee_Anim0B,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_Init) = {
|
|
||||||
EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn)))
|
|
||||||
EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle)))
|
|
||||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent)))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(idle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(returnHome) = {
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim03)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ReturnHome)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(handleEvent) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(GetLastEvent, ACTOR_SELF, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim09)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Dayzee_Anim0A)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim09)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Dayzee_Anim0A)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim0A)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim01)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim01)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
|
||||||
EVT_CASE_EQ(EVENT_SCARE_AWAY)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim04)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ScareAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
|
||||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar0)
|
|
||||||
EVT_IF_NOT_FLAG(LVar0, STATUS_FLAGS_IMMOBILIZED)
|
|
||||||
EVT_IF_FLAG(LVar0, STATUS_FLAG_SHRINK)
|
|
||||||
EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 1, 0)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 3, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Dayzee_Anim08)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(attackPainfulSong) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(GetBattlePhase, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, PHASE_FIRST_STRIKE)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorPos, ACTOR_SELF, -20, LVar1, LVar2)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_ENEMY_APPROACH)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(func_8024ECF8, BTL_CAM_MODEY_MINUS_1, BTL_CAM_MODEX_1, FALSE)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 70)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_IF_EQ(LFlag0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim0E)
|
|
||||||
EVT_SET(LFlag0, TRUE)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim0F)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(0.5))
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 15, FALSE, TRUE, FALSE)
|
|
||||||
EVT_IF_GT(LVar0, 0)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_IF_EQ(LFlag0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim0E)
|
|
||||||
EVT_SET(LFlag0, TRUE)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim0F)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(0.5))
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, -35, 0, 10)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 15, FALSE, TRUE, FALSE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim01)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim06)
|
|
||||||
EVT_WAIT(40)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim07)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_DAYZEE_SONG)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 25)
|
|
||||||
EVT_ADD(LVar2, 2)
|
|
||||||
EVT_LOOP(13)
|
|
||||||
EVT_CALL(RandInt, 30, LVar3)
|
|
||||||
EVT_SUB(LVar3, 15)
|
|
||||||
EVT_ADD(LVar3, LVar0)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_MUSIC_NOTE, 1, LVar3, LVar1, LVar2, 0)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim01)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, 0, 0, 1, BS_FLAGS1_10)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_MISS)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_LUCKY)
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_IF_EQ(LVarA, HIT_RESULT_LUCKY)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_TRIGGER_LUCKY, 0, 0, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_WAIT(15)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, PRT_MAIN, 0, ACTOR_DECORATION_SWEAT)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CALL(RemoveActorDecoration, ACTOR_SELF, PRT_MAIN, 0)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_WAIT(2)
|
|
||||||
EVT_CALL(EnemyDamageTarget, ACTOR_SELF, LVarF, DAMAGE_TYPE_NO_CONTACT, 0, DMG_STATUS_KEY(STATUS_FLAG_SLEEP, 3, 20), 4, BS_FLAGS1_SP_EVT_ACTIVE)
|
|
||||||
EVT_SWITCH(LVarF)
|
|
||||||
EVT_CASE_OR_EQ(0)
|
|
||||||
EVT_CASE_OR_EQ(2)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 10)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(flee) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19)
|
|
||||||
EVT_CALL(SetBattleCamZoom, 300)
|
|
||||||
EVT_CALL(SetBattleCamOffsetZ, 30)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(SetBattleCamTarget, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(MoveBattleCamOver, 30)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim03)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(1.0))
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Dayzee_Anim04)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(12.0))
|
|
||||||
EVT_ADD(LVar0, 200)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_BATTLE_FLED, TRUE)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_CALL(RemoveActor, ACTOR_SELF)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(takeTurn) = {
|
|
||||||
EVT_CALL(GetBattlePhase, LVar0)
|
|
||||||
EVT_IF_EQ(LVar0, PHASE_FIRST_STRIKE)
|
|
||||||
EVT_EXEC_WAIT(N(attackPainfulSong))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(GetActorHP, ACTOR_SELF, LVar0)
|
|
||||||
EVT_CALL(RandInt, 100, LVar1)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_EQ(1)
|
|
||||||
EVT_IF_LT(LVar1, 80)
|
|
||||||
EVT_EXEC_WAIT(N(flee))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(2)
|
|
||||||
EVT_IF_LT(LVar1, 40)
|
|
||||||
EVT_EXEC_WAIT(N(flee))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(3)
|
|
||||||
EVT_IF_LT(LVar1, 20)
|
|
||||||
EVT_EXEC_WAIT(N(flee))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(4)
|
|
||||||
EVT_IF_LT(LVar1, 10)
|
|
||||||
EVT_EXEC_WAIT(N(flee))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_EXEC_WAIT(N(attackPainfulSong))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_green_magikoopa
|
|
||||||
|
|
||||||
#include "battle/common/actor/green_magikoopa.inc.c"
|
#include "battle/common/actor/green_magikoopa.inc.c"
|
||||||
|
@ -1,610 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/Spiny.h"
|
|
||||||
#include "sprite/npc/Lakitu.h"
|
|
||||||
#include "effects.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_lakitu
|
#include "battle/common/actor/lakitu.inc.c"
|
||||||
|
|
||||||
extern ActorBlueprint b_area_flo_spiny;
|
|
||||||
|
|
||||||
extern EvtScript N(init);
|
|
||||||
extern EvtScript N(takeTurn);
|
|
||||||
extern EvtScript N(idle);
|
|
||||||
extern EvtScript N(handleEvent);
|
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
|
||||||
PRT_MAIN = 1,
|
|
||||||
PRT_2 = 2,
|
|
||||||
PRT_3 = 3,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Lakitu_Anim01,
|
|
||||||
STATUS_KEY_STONE, ANIM_Lakitu_Anim00,
|
|
||||||
STATUS_KEY_SLEEP, ANIM_Lakitu_Anim08,
|
|
||||||
STATUS_KEY_POISON, ANIM_Lakitu_Anim01,
|
|
||||||
STATUS_KEY_STOP, ANIM_Lakitu_Anim00,
|
|
||||||
STATUS_KEY_STATIC, ANIM_Lakitu_Anim01,
|
|
||||||
STATUS_KEY_PARALYZE, ANIM_Lakitu_Anim00,
|
|
||||||
STATUS_KEY_DIZZY, ANIM_Lakitu_Anim09,
|
|
||||||
STATUS_KEY_FEAR, ANIM_Lakitu_Anim09,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations2)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Lakitu_Anim0B,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations3)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_Spiny_Anim01,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(DefenseTable)[] = {
|
|
||||||
ELEMENT_NORMAL, 0,
|
|
||||||
ELEMENT_MYSTERY, 0,
|
|
||||||
ELEMENT_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(StatusTable)[] = {
|
|
||||||
STATUS_KEY_NORMAL, 0,
|
|
||||||
STATUS_KEY_DEFAULT, 0,
|
|
||||||
STATUS_KEY_SLEEP, 50,
|
|
||||||
STATUS_KEY_POISON, 50,
|
|
||||||
STATUS_KEY_FROZEN, 0,
|
|
||||||
STATUS_KEY_DIZZY, 100,
|
|
||||||
STATUS_KEY_FEAR, 0,
|
|
||||||
STATUS_KEY_STATIC, 50,
|
|
||||||
STATUS_KEY_PARALYZE, 50,
|
|
||||||
STATUS_KEY_SHRINK, 75,
|
|
||||||
STATUS_KEY_STOP, 80,
|
|
||||||
STATUS_TURN_MOD_DEFAULT, 0,
|
|
||||||
STATUS_TURN_MOD_SLEEP, 0,
|
|
||||||
STATUS_TURN_MOD_POISON, 0,
|
|
||||||
STATUS_TURN_MOD_FROZEN, 0,
|
|
||||||
STATUS_TURN_MOD_DIZZY, 1,
|
|
||||||
STATUS_TURN_MOD_FEAR, 0,
|
|
||||||
STATUS_TURN_MOD_STATIC, 0,
|
|
||||||
STATUS_TURN_MOD_PARALYZE, -1,
|
|
||||||
STATUS_TURN_MOD_SHRINK, 0,
|
|
||||||
STATUS_TURN_MOD_STOP, 0,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorPartBlueprint N(ActorParts)[] = {
|
|
||||||
{
|
|
||||||
.flags = ACTOR_PART_FLAG_MULTI_TARGET,
|
|
||||||
.index = PRT_MAIN,
|
|
||||||
.posOffset = { 0, 0, 0 },
|
|
||||||
.targetOffset = { -5, 35 },
|
|
||||||
.opacity = 255,
|
|
||||||
.idleAnimations = N(IdleAnimations),
|
|
||||||
.defenseTable = N(DefenseTable),
|
|
||||||
.eventFlags = 0,
|
|
||||||
.elementImmunityFlags = 0,
|
|
||||||
.projectileTargetOffset = { 0, -13 },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.flags = ACTOR_PART_FLAG_INVISIBLE | ACTOR_PART_FLAG_NO_TARGET | ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION,
|
|
||||||
.index = PRT_2,
|
|
||||||
.posOffset = { 0, 0, 0 },
|
|
||||||
.targetOffset = { 0, 0 },
|
|
||||||
.opacity = 255,
|
|
||||||
.idleAnimations = N(IdleAnimations2),
|
|
||||||
.defenseTable = N(DefenseTable),
|
|
||||||
.eventFlags = 0,
|
|
||||||
.elementImmunityFlags = 0,
|
|
||||||
.projectileTargetOffset = { 0, 0 },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.flags = ACTOR_PART_FLAG_INVISIBLE | ACTOR_PART_FLAG_NO_TARGET | ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION,
|
|
||||||
.index = PRT_3,
|
|
||||||
.posOffset = { 0, 0, 0 },
|
|
||||||
.targetOffset = { 0, 0 },
|
|
||||||
.opacity = 255,
|
|
||||||
.idleAnimations = N(IdleAnimations3),
|
|
||||||
.defenseTable = N(DefenseTable),
|
|
||||||
.eventFlags = 0,
|
|
||||||
.elementImmunityFlags = 0,
|
|
||||||
.projectileTargetOffset = { 0, 0 },
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorBlueprint NAMESPACE = {
|
|
||||||
.flags = ACTOR_FLAG_FLYING,
|
|
||||||
.type = ACTOR_TYPE_LAKITU,
|
|
||||||
.level = 20,
|
|
||||||
.maxHP = 12,
|
|
||||||
.partCount = ARRAY_COUNT(N(ActorParts)),
|
|
||||||
.partsData = N(ActorParts),
|
|
||||||
.initScript = &N(init),
|
|
||||||
.statusTable = N(StatusTable),
|
|
||||||
.escapeChance = 40,
|
|
||||||
.airLiftChance = 90,
|
|
||||||
.hurricaneChance = 90,
|
|
||||||
.spookChance = 50,
|
|
||||||
.upAndAwayChance = 95,
|
|
||||||
.spinSmashReq = 0,
|
|
||||||
.powerBounceChance = 85,
|
|
||||||
.coinReward = 2,
|
|
||||||
.size = { 32, 38 },
|
|
||||||
.healthBarOffset = { 0, 0 },
|
|
||||||
.statusIconOffset = { -11, 20 },
|
|
||||||
.statusTextOffset = { 10, 34 },
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(init) = {
|
|
||||||
EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn)))
|
|
||||||
EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle)))
|
|
||||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent)))
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(idle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(returnHome) = {
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim03)
|
|
||||||
EVT_CALL(SetGoalToHome, ACTOR_SELF)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(7.0))
|
|
||||||
EVT_CALL(FlyToGoal, ACTOR_SELF, 0, 0, EASING_SIN_OUT)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim01)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(handleEvent) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(GetLastEvent, ACTOR_SELF, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim05)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Lakitu_Anim06)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim05)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Lakitu_Anim06)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim06)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim01)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_FIRST_STRIKE)
|
|
||||||
EVT_CALL(SetActorPos, ACTOR_SELF, 20, 0, 0)
|
|
||||||
EVT_CALL(HPBarToCurrent, ACTOR_SELF)
|
|
||||||
EVT_CASE_EQ(EVENT_END_FIRST_STRIKE)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim01)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
|
||||||
EVT_CASE_EQ(EVENT_SCARE_AWAY)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim03)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ScareAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_Lakitu_Anim04)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(attackSpinyFlip) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_ENEMY_APPROACH)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(func_8024ECF8, BTL_CAM_MODEY_MINUS_1, BTL_CAM_MODEX_1, FALSE)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(6.0))
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim03)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, -20, LVar1, LVar2)
|
|
||||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim01)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_2, ANIM_Lakitu_Anim0B)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim12)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim13)
|
|
||||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVarA)
|
|
||||||
EVT_IF_FLAG(LVarA, STATUS_FLAG_SHRINK)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar0, -3)
|
|
||||||
EVT_ADD(LVar1, 16)
|
|
||||||
EVT_ADD(LVar2, 2)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_ENERGY_IN_OUT, 0, LVar0, LVar1, LVar2, EVT_FLOAT(0.4), 10, 0)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 12)
|
|
||||||
EVT_ADD(LVar2, 0)
|
|
||||||
EVT_CALL(SetPartPos, ACTOR_SELF, PRT_2, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetPartScale, ACTOR_SELF, PRT_2, EVT_FLOAT(0.4), EVT_FLOAT(0.4), EVT_FLOAT(0.4))
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar0, -8)
|
|
||||||
EVT_ADD(LVar1, 40)
|
|
||||||
EVT_ADD(LVar2, 5)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_ENERGY_IN_OUT, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 10, 0)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 30)
|
|
||||||
EVT_ADD(LVar2, 2)
|
|
||||||
EVT_CALL(SetPartPos, ACTOR_SELF, PRT_2, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetPartScale, ACTOR_SELF, PRT_2, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0))
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_2, ACTOR_PART_FLAG_INVISIBLE, FALSE)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim15)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim01)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_2, ANIM_Lakitu_Anim0C)
|
|
||||||
EVT_CALL(PlaySoundAtPart, ACTOR_SELF, PRT_2, SOUND_20D2)
|
|
||||||
EVT_CALL(SetPartSounds, ACTOR_SELF, PRT_2, ACTOR_SOUND_JUMP, 0, 0)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, 0, 0, 1, BS_FLAGS1_10)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_MISS)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_LUCKY)
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_CALL(SetPartJumpGravity, ACTOR_SELF, PRT_2, EVT_FLOAT(1.0))
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 40)
|
|
||||||
EVT_SET(LVar1, 0)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 20, TRUE)
|
|
||||||
EVT_SUB(LVar0, 30)
|
|
||||||
EVT_IF_EQ(LVarA, HIT_RESULT_LUCKY)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVarA, DAMAGE_TYPE_TRIGGER_LUCKY, 0, 0, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(ResetAllActorSounds, ACTOR_SELF)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 10, TRUE)
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 5, TRUE)
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_2, ACTOR_PART_FLAG_INVISIBLE, TRUE)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, PRT_MAIN, 0, ACTOR_DECORATION_SWEAT)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(RemoveActorDecoration, ACTOR_SELF, PRT_MAIN, 0)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(SetPartJumpGravity, ACTOR_SELF, PRT_2, EVT_FLOAT(1.0))
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, LVar1, LVar2, 20, TRUE)
|
|
||||||
EVT_CALL(ResetAllActorSounds, ACTOR_SELF)
|
|
||||||
EVT_WAIT(2)
|
|
||||||
EVT_CALL(EnemyDamageTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_NO_CONTACT, 0, 0, 3, BS_FLAGS1_SP_EVT_ACTIVE)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(0)
|
|
||||||
EVT_CASE_OR_EQ(2)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetPartJumpGravity, ACTOR_SELF, PRT_2, EVT_FLOAT(1.0))
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 40)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 20, TRUE)
|
|
||||||
EVT_SUB(LVar0, 30)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 10, TRUE)
|
|
||||||
EVT_SUB(LVar0, 20)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 5, TRUE)
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_2, ACTOR_PART_FLAG_INVISIBLE, TRUE)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Vec3i N(spiny_pos) = { NPC_DISPOSE_LOCATION };
|
|
||||||
|
|
||||||
Formation N(formation_spiny) = {
|
|
||||||
ACTOR_BY_POS(b_area_flo_spiny, N(spiny_pos), 100, 1),
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(summonSpiny) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_14)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_spiny)), 0)
|
|
||||||
EVT_CALL(CopyStatusEffects, ACTOR_SELF, LVar0)
|
|
||||||
EVT_SET(LVarB, LVar0)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_2, ANIM_Lakitu_Anim0B)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim12)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim13)
|
|
||||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar0)
|
|
||||||
EVT_IF_FLAG(LVar0, STATUS_FLAG_SHRINK)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar0, -3)
|
|
||||||
EVT_ADD(LVar1, 16)
|
|
||||||
EVT_ADD(LVar2, 2)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_ENERGY_IN_OUT, 0, LVar0, LVar1, LVar2, EVT_FLOAT(0.4), 10, 0)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 12)
|
|
||||||
EVT_ADD(LVar2, 0)
|
|
||||||
EVT_CALL(SetPartPos, ACTOR_SELF, PRT_2, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetPartScale, ACTOR_SELF, PRT_2, EVT_FLOAT(0.4), EVT_FLOAT(0.4), EVT_FLOAT(0.4))
|
|
||||||
EVT_CALL(SetPartScale, ACTOR_SELF, PRT_3, EVT_FLOAT(0.4), EVT_FLOAT(0.4), EVT_FLOAT(0.4))
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar0, -8)
|
|
||||||
EVT_ADD(LVar1, 40)
|
|
||||||
EVT_ADD(LVar2, 5)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_ENERGY_IN_OUT, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 10, 0)
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_ADD(LVar1, 30)
|
|
||||||
EVT_ADD(LVar2, 2)
|
|
||||||
EVT_CALL(SetPartPos, ACTOR_SELF, PRT_2, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetPartScale, ACTOR_SELF, PRT_2, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0))
|
|
||||||
EVT_CALL(SetPartScale, ACTOR_SELF, PRT_3, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0))
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_2, ACTOR_PART_FLAG_INVISIBLE, FALSE)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim15)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_Lakitu_Anim01)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(PlaySoundAtPart, ACTOR_SELF, PRT_2, SOUND_20D2)
|
|
||||||
EVT_CALL(SetPartSounds, ACTOR_SELF, PRT_2, ACTOR_SOUND_JUMP, 0, 0)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_2, ANIM_Lakitu_Anim0C)
|
|
||||||
EVT_CALL(SetPartJumpGravity, ACTOR_SELF, PRT_2, EVT_FLOAT(1.6))
|
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_SUB(LVar0, 40)
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 12, TRUE)
|
|
||||||
EVT_CALL(SetPartPos, ACTOR_SELF, PRT_3, LVar0, 0, LVar2)
|
|
||||||
EVT_SUB(LVar0, 30)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetPartRotationOffset, ACTOR_SELF, PRT_3, 0, 16, 0)
|
|
||||||
EVT_SET(LVar0, 0)
|
|
||||||
EVT_SET(LVar1, 0)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_LOOP(12)
|
|
||||||
EVT_ADD(LVar0, 30)
|
|
||||||
EVT_CALL(SetPartRotation, ACTOR_SELF, PRT_3, 0, 0, LVar0)
|
|
||||||
EVT_ADD(LVar1, 1)
|
|
||||||
EVT_IF_GE(LVar1, 6)
|
|
||||||
EVT_IF_EQ(LFlag0, TRUE)
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_2, ACTOR_PART_FLAG_INVISIBLE, FALSE)
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_3, ACTOR_PART_FLAG_INVISIBLE, TRUE)
|
|
||||||
EVT_SET(LFlag0, FALSE)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_2, ACTOR_PART_FLAG_INVISIBLE, TRUE)
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_3, ACTOR_PART_FLAG_INVISIBLE, FALSE)
|
|
||||||
EVT_SET(LFlag0, TRUE)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetPartJumpGravity, ACTOR_SELF, PRT_3, EVT_FLOAT(1.3))
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_3, LVar0, 0, LVar2, 12, TRUE)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_CALL(ResetAllActorSounds, ACTOR_SELF)
|
|
||||||
EVT_CALL(SetPartJumpGravity, ACTOR_SELF, PRT_2, EVT_FLOAT(1.3))
|
|
||||||
EVT_CALL(JumpPartTo, ACTOR_SELF, PRT_2, LVar0, 0, LVar2, 12, TRUE)
|
|
||||||
EVT_PLAY_EFFECT(EFFECT_LANDING_DUST, 1, LVar0, 0, LVar2, 0, 0)
|
|
||||||
EVT_CALL(GetPartOffset, ACTOR_SELF, PRT_2, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetActorPos, LVarB, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_2, ACTOR_PART_FLAG_INVISIBLE, TRUE)
|
|
||||||
EVT_CALL(SetPartFlagBits, ACTOR_SELF, PRT_3, ACTOR_PART_FLAG_INVISIBLE, TRUE)
|
|
||||||
EVT_CALL(SetAnimation, LVarB, 1, ANIM_Spiny_Anim01)
|
|
||||||
EVT_WAIT(20)
|
|
||||||
EVT_CALL(SetAnimation, LVarB, 1, ANIM_Spiny_Anim04)
|
|
||||||
EVT_CALL(SetGoalToIndex, LVarB, LVarA)
|
|
||||||
EVT_CALL(GetGoalPos, LVarB, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(GetActorPos, LVarB, LVar3, LVar4, LVar5)
|
|
||||||
EVT_IF_LT(LVar0, LVar3)
|
|
||||||
EVT_CALL(SetActorYaw, LVarB, 0)
|
|
||||||
EVT_ELSE
|
|
||||||
EVT_CALL(SetActorYaw, LVarB, 180)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CALL(SetActorSpeed, LVarB, EVT_FLOAT(4.0))
|
|
||||||
EVT_CALL(RunToGoal, LVarB, 0, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, LVarB, 1, ANIM_Spiny_Anim01)
|
|
||||||
EVT_CALL(SetActorYaw, LVarB, 0)
|
|
||||||
EVT_CALL(GetActorPos, LVarB, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(ForceHomePos, LVarB, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(HPBarToHome, LVarB)
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_ADD(LVar0, 1)
|
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(findPlacesForSummon) = {
|
|
||||||
EVT_CALL(EnemyCreateTargetList, TARGET_FLAG_2 | TARGET_FLAG_8000)
|
|
||||||
EVT_CALL(InitTargetIterator)
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_CALL(GetOwnerTarget, LVar0, LVar5)
|
|
||||||
EVT_CALL(GetIndexFromHome, LVar0, LVar5)
|
|
||||||
EVT_MOD(LVar5, 4)
|
|
||||||
EVT_SWITCH(LVar5)
|
|
||||||
EVT_CASE_EQ(0)
|
|
||||||
EVT_SET(LFlag1, TRUE)
|
|
||||||
EVT_CASE_EQ(1)
|
|
||||||
EVT_SET(LFlag2, TRUE)
|
|
||||||
EVT_CASE_EQ(2)
|
|
||||||
EVT_SET(LFlag3, TRUE)
|
|
||||||
EVT_CASE_EQ(3)
|
|
||||||
EVT_SET(LFlag4, TRUE)
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(ChooseNextTarget, ITER_NEXT, LVar0)
|
|
||||||
EVT_IF_NE(LVar0, -1)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_IF_EQ(LFlag1, FALSE)
|
|
||||||
EVT_SET(LVarA, 0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_IF_EQ(LFlag2, FALSE)
|
|
||||||
EVT_SET(LVarA, 1)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_IF_EQ(LFlag3, FALSE)
|
|
||||||
EVT_SET(LVarA, 2)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_IF_EQ(LFlag4, FALSE)
|
|
||||||
EVT_SET(LVarA, 3)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_SET(LVarA, -1)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(calcSummonChance) = {
|
|
||||||
EVT_SET(LVar9, 0)
|
|
||||||
EVT_CALL(EnemyCreateTargetList, TARGET_FLAG_2 | TARGET_FLAG_8000)
|
|
||||||
EVT_CALL(InitTargetIterator)
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_CALL(GetOwnerTarget, LVar0, LVar1)
|
|
||||||
EVT_CALL(GetOriginalActorType, LVar0, LVar2)
|
|
||||||
EVT_SWITCH(LVar2)
|
|
||||||
EVT_CASE_EQ(ACTOR_TYPE_LAKITU)
|
|
||||||
EVT_CALL(GetStatusFlags, LVar0, LVar3)
|
|
||||||
EVT_IF_NOT_FLAG(LVar3, STATUS_FLAGS_IMMOBILIZED)
|
|
||||||
EVT_CALL(GetActorVar, LVar0, 0, LVar3)
|
|
||||||
EVT_IF_LT(LVar3, 3)
|
|
||||||
EVT_ADD(LVar9, 1)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(ChooseNextTarget, ITER_NEXT, LVar0)
|
|
||||||
EVT_IF_NE(LVar0, -1)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(takeTurn) = {
|
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
|
||||||
EVT_IF_GE(LVar0, 3)
|
|
||||||
EVT_EXEC_WAIT(N(attackSpinyFlip))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_EXEC_WAIT(N(findPlacesForSummon))
|
|
||||||
EVT_IF_EQ(LVarA, -1)
|
|
||||||
EVT_EXEC_WAIT(N(attackSpinyFlip))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_EXEC_WAIT(N(calcSummonChance))
|
|
||||||
EVT_SWITCH(LVar9)
|
|
||||||
EVT_CASE_EQ(1)
|
|
||||||
EVT_CALL(RandInt, 1000, LVar0)
|
|
||||||
EVT_IF_LT(LVar0, 500)
|
|
||||||
EVT_EXEC_WAIT(N(summonSpiny))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(2)
|
|
||||||
EVT_CALL(RandInt, 1000, LVar0)
|
|
||||||
EVT_IF_LT(LVar0, 250)
|
|
||||||
EVT_EXEC_WAIT(N(summonSpiny))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_CASE_EQ(3)
|
|
||||||
EVT_CALL(RandInt, 1000, LVar0)
|
|
||||||
EVT_IF_LT(LVar0, 150)
|
|
||||||
EVT_EXEC_WAIT(N(summonSpiny))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_EXEC_WAIT(N(attackSpinyFlip))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_medi_guy
|
|
||||||
|
|
||||||
#include "battle/common/actor/medi_guy.inc.c"
|
#include "battle/common/actor/medi_guy.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_red_magikoopa
|
|
||||||
|
|
||||||
#include "battle/common/actor/red_magikoopa.inc.c"
|
#include "battle/common/actor/red_magikoopa.inc.c"
|
||||||
|
@ -1,347 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/TuffPuff.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_ruff_puff
|
#include "battle/common/actor/ruff_puff.inc.c"
|
||||||
|
|
||||||
extern EvtScript N(EVS_Init);
|
|
||||||
extern EvtScript N(takeTurn);
|
|
||||||
extern EvtScript N(idle);
|
|
||||||
extern EvtScript N(handleEvent);
|
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
|
||||||
PRT_MAIN = 1,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(IdleAnimations)[] = {
|
|
||||||
STATUS_KEY_NORMAL, ANIM_TuffPuff_Idle,
|
|
||||||
STATUS_KEY_STONE, ANIM_TuffPuff_Still,
|
|
||||||
STATUS_KEY_SLEEP, ANIM_TuffPuff_Sleep,
|
|
||||||
STATUS_KEY_POISON, ANIM_TuffPuff_Idle,
|
|
||||||
STATUS_KEY_STOP, ANIM_TuffPuff_Still,
|
|
||||||
STATUS_KEY_STATIC, ANIM_TuffPuff_Idle,
|
|
||||||
STATUS_KEY_PARALYZE, ANIM_TuffPuff_Still,
|
|
||||||
STATUS_KEY_DIZZY, ANIM_TuffPuff_Dizzy,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(DefenseTable)[] = {
|
|
||||||
ELEMENT_NORMAL, 0,
|
|
||||||
ELEMENT_MYSTERY, 0,
|
|
||||||
ELEMENT_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(StatusTable)[] = {
|
|
||||||
STATUS_KEY_NORMAL, 0,
|
|
||||||
STATUS_KEY_DEFAULT, 0,
|
|
||||||
STATUS_KEY_SLEEP, 50,
|
|
||||||
STATUS_KEY_POISON, 90,
|
|
||||||
STATUS_KEY_FROZEN, 0,
|
|
||||||
STATUS_KEY_DIZZY, 100,
|
|
||||||
STATUS_KEY_FEAR, 0,
|
|
||||||
STATUS_KEY_STATIC, 70,
|
|
||||||
STATUS_KEY_PARALYZE, 40,
|
|
||||||
STATUS_KEY_SHRINK, 75,
|
|
||||||
STATUS_KEY_STOP, 80,
|
|
||||||
STATUS_TURN_MOD_DEFAULT, 0,
|
|
||||||
STATUS_TURN_MOD_SLEEP, 0,
|
|
||||||
STATUS_TURN_MOD_POISON, 0,
|
|
||||||
STATUS_TURN_MOD_FROZEN, 0,
|
|
||||||
STATUS_TURN_MOD_DIZZY, 0,
|
|
||||||
STATUS_TURN_MOD_FEAR, 0,
|
|
||||||
STATUS_TURN_MOD_STATIC, 0,
|
|
||||||
STATUS_TURN_MOD_PARALYZE, 0,
|
|
||||||
STATUS_TURN_MOD_SHRINK, 0,
|
|
||||||
STATUS_TURN_MOD_STOP, -1,
|
|
||||||
STATUS_END,
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorPartBlueprint N(ActorParts)[] = {
|
|
||||||
{
|
|
||||||
.flags = ACTOR_PART_FLAG_MULTI_TARGET,
|
|
||||||
.index = PRT_MAIN,
|
|
||||||
.posOffset = { 0, 0, 0 },
|
|
||||||
.targetOffset = { -2, 26 },
|
|
||||||
.opacity = 255,
|
|
||||||
.idleAnimations = N(IdleAnimations),
|
|
||||||
.defenseTable = N(DefenseTable),
|
|
||||||
.eventFlags = 0,
|
|
||||||
.elementImmunityFlags = 0,
|
|
||||||
.projectileTargetOffset = { 0, -13 },
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
ActorBlueprint NAMESPACE = {
|
|
||||||
.flags = ACTOR_FLAG_FLYING,
|
|
||||||
.type = ACTOR_TYPE_RUFF_PUFF,
|
|
||||||
.level = 19,
|
|
||||||
.maxHP = 10,
|
|
||||||
.partCount = ARRAY_COUNT(N(ActorParts)),
|
|
||||||
.partsData = N(ActorParts),
|
|
||||||
.initScript = &N(EVS_Init),
|
|
||||||
.statusTable = N(StatusTable),
|
|
||||||
.escapeChance = 50,
|
|
||||||
.airLiftChance = 90,
|
|
||||||
.hurricaneChance = 90,
|
|
||||||
.spookChance = 40,
|
|
||||||
.upAndAwayChance = 95,
|
|
||||||
.spinSmashReq = 0,
|
|
||||||
.powerBounceChance = 80,
|
|
||||||
.coinReward = 2,
|
|
||||||
.size = { 32, 32 },
|
|
||||||
.healthBarOffset = { 0, 0 },
|
|
||||||
.statusIconOffset = { -10, 20 },
|
|
||||||
.statusTextOffset = { 10, 20 },
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_Init) = {
|
|
||||||
EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn)))
|
|
||||||
EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle)))
|
|
||||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent)))
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
#include "common/CosInterpMinMax.inc.c"
|
|
||||||
|
|
||||||
EvtScript N(idle) = {
|
|
||||||
EVT_SET(LVarF, 0)
|
|
||||||
EVT_LOOP(0)
|
|
||||||
EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.97), EVT_FLOAT(1.03), 15, 0, 0)
|
|
||||||
EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.03), EVT_FLOAT(0.97), 15, 0, 0)
|
|
||||||
EVT_ADD(LVarF, 1)
|
|
||||||
EVT_CALL(SetActorScale, ACTOR_SELF, LVar1, LVar0, EVT_FLOAT(1.0))
|
|
||||||
EVT_IF_GE(LVarF, 30)
|
|
||||||
EVT_SET(LVarF, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(returnHome) = {
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_TuffPuff_Run)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(8.0))
|
|
||||||
EVT_CALL(SetGoalToHome, ACTOR_SELF)
|
|
||||||
EVT_CALL(FlyToGoal, ACTOR_SELF, 0, -10, EASING_SIN_OUT)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(handleEvent) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(GetLastEvent, ACTOR_SELF, LVar0)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_BurnHurt)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_TuffPuff_BurnStill)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_BurnHurt)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_TuffPuff_BurnStill)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_BurnStill)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Idle)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_FIRST_STRIKE)
|
|
||||||
EVT_CALL(SetActorPos, ACTOR_SELF, 20, 0, 0)
|
|
||||||
EVT_CALL(HPBarToCurrent, ACTOR_SELF)
|
|
||||||
EVT_CASE_EQ(EVENT_END_FIRST_STRIKE)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Idle)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
|
||||||
EVT_CASE_EQ(EVENT_SCARE_AWAY)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Run)
|
|
||||||
EVT_SET_CONST(LVar2, ANIM_TuffPuff_Hurt)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ScareAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Run)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
|
||||||
EVT_SET_CONST(LVar0, 1)
|
|
||||||
EVT_SET_CONST(LVar1, ANIM_TuffPuff_Run)
|
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_CASE_DEFAULT
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(takeTurn) = {
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(SetTargetActor, ACTOR_SELF, ACTOR_PLAYER)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_ENEMY_APPROACH)
|
|
||||||
EVT_CALL(BattleCamTargetActor, ACTOR_SELF)
|
|
||||||
EVT_CALL(func_8024ECF8, BTL_CAM_MODEY_MINUS_1, BTL_CAM_MODEX_1, FALSE)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_TuffPuff_Run)
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, 50, 0, 0)
|
|
||||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(6.0))
|
|
||||||
EVT_CALL(FlyToGoal, ACTOR_SELF, 0, -10, EASING_SIN_OUT)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_TuffPuff_Idle)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_TuffPuff_Grin)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVar0, 0, 0, 1, BS_FLAGS1_10)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_MISS)
|
|
||||||
EVT_CASE_OR_EQ(HIT_RESULT_LUCKY)
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.2))
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
|
||||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, 0, LVar2)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 16, 0)
|
|
||||||
EVT_SETF(LVar0, EVT_FLOAT(0.0))
|
|
||||||
EVT_LOOP(15)
|
|
||||||
EVT_ADDF(LVar0, EVT_FLOAT(12.0))
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, -10, 0, 0)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 20, FALSE, TRUE, FALSE)
|
|
||||||
EVT_IF_EQ(LVarA, HIT_RESULT_LUCKY)
|
|
||||||
EVT_CALL(EnemyTestTarget, ACTOR_SELF, LVarA, DAMAGE_TYPE_TRIGGER_LUCKY, 0, 0, 0)
|
|
||||||
EVT_END_IF
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 16, 0)
|
|
||||||
EVT_SETF(LVar0, EVT_FLOAT(180.0))
|
|
||||||
EVT_LOOP(10)
|
|
||||||
EVT_ADDF(LVar0, EVT_FLOAT(18.0))
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, -30, 0, 0)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 15, FALSE, TRUE, FALSE)
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, -20, 0, 0)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 10, FALSE, TRUE, FALSE)
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, -10, 0, 0)
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 5, FALSE, TRUE, FALSE)
|
|
||||||
EVT_WAIT(15)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 180)
|
|
||||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, PRT_MAIN, 0, ACTOR_DECORATION_SWEAT)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_CALL(RemoveActorDecoration, ACTOR_SELF, PRT_MAIN, 0)
|
|
||||||
EVT_CALL(SetActorYaw, ACTOR_SELF, 0)
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 13, 0)
|
|
||||||
EVT_SETF(LVar0, EVT_FLOAT(0.0))
|
|
||||||
EVT_LOOP(8)
|
|
||||||
EVT_ADDF(LVar0, EVT_FLOAT(22.5))
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.2))
|
|
||||||
EVT_CALL(JumpToGoal, ACTOR_SELF, 8, FALSE, TRUE, FALSE)
|
|
||||||
EVT_WAIT(2)
|
|
||||||
EVT_CALL(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, SUPPRESS_EVENT_ALL, 0, 4, BS_FLAGS1_SP_EVT_ACTIVE)
|
|
||||||
EVT_SWITCH(LVar0)
|
|
||||||
EVT_CASE_OR_EQ(0)
|
|
||||||
EVT_CASE_OR_EQ(2)
|
|
||||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_DEFAULT)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 16, 0)
|
|
||||||
EVT_SETF(LVar0, EVT_FLOAT(180.0))
|
|
||||||
EVT_LOOP(10)
|
|
||||||
EVT_SUBF(LVar0, EVT_FLOAT(22.5))
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0)
|
|
||||||
EVT_WAIT(1)
|
|
||||||
EVT_END_LOOP
|
|
||||||
EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0)
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, 30, 0, 0)
|
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(0.8))
|
|
||||||
EVT_CALL(JumpWithBounce, ACTOR_SELF, 10, EVT_FLOAT(5.0))
|
|
||||||
EVT_WAIT(10)
|
|
||||||
EVT_CALL(YieldTurn)
|
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
|
||||||
EVT_END_CASE_GROUP
|
|
||||||
EVT_END_SWITCH
|
|
||||||
EVT_CALL(EnableIdleScript, ACTOR_SELF, 1)
|
|
||||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_spiny
|
|
||||||
|
|
||||||
#include "battle/common/actor/spiny.inc.c"
|
#include "battle/common/actor/spiny.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_white_magikoopa
|
|
||||||
|
|
||||||
#include "battle/common/actor/white_magikoopa.inc.c"
|
#include "battle/common/actor/white_magikoopa.inc.c"
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_yellow_magikoopa
|
|
||||||
|
|
||||||
#include "battle/common/actor/yellow_magikoopa.inc.c"
|
#include "battle/common/actor/yellow_magikoopa.inc.c"
|
||||||
|
@ -1,297 +1,294 @@
|
|||||||
#include "common.h"
|
#include "area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo
|
extern ActorBlueprint A(lakitu);
|
||||||
|
extern ActorBlueprint A(ruff_puff);
|
||||||
|
extern ActorBlueprint A(bzzap);
|
||||||
|
extern ActorBlueprint A(crazee_dayzee);
|
||||||
|
extern ActorBlueprint A(spiny);
|
||||||
|
extern ActorBlueprint A(white_magikoopa);
|
||||||
|
extern ActorBlueprint A(red_magikoopa);
|
||||||
|
extern ActorBlueprint A(yellow_magikoopa);
|
||||||
|
extern ActorBlueprint A(medi_guy);
|
||||||
|
extern ActorBlueprint A(amazy_dayzee);
|
||||||
|
extern ActorBlueprint A(green_magikoopa_flying);
|
||||||
|
extern ActorBlueprint A(yellow_magikoopa_flying);
|
||||||
|
|
||||||
extern ActorBlueprint N(lakitu);
|
extern Stage A(flo_01);
|
||||||
extern ActorBlueprint N(ruff_puff);
|
extern Stage A(flo_01b);
|
||||||
extern ActorBlueprint N(bzzap);
|
extern Stage A(flo_01c);
|
||||||
extern ActorBlueprint N(crazee_dayzee);
|
extern Stage A(flo_02);
|
||||||
extern ActorBlueprint N(spiny);
|
extern Stage A(flo_02b);
|
||||||
extern ActorBlueprint N(white_magikoopa);
|
extern Stage A(flo_02c);
|
||||||
extern ActorBlueprint N(red_magikoopa);
|
extern Stage A(flo_03);
|
||||||
extern ActorBlueprint N(yellow_magikoopa);
|
extern Stage A(flo_04);
|
||||||
extern ActorBlueprint N(medi_guy);
|
extern Stage A(flo_05);
|
||||||
extern ActorBlueprint N(amazy_dayzee);
|
extern Stage A(flo_06);
|
||||||
extern ActorBlueprint N(green_magikoopa_flying);
|
|
||||||
extern ActorBlueprint N(yellow_magikoopa_flying);
|
|
||||||
|
|
||||||
extern Stage N(flo_01);
|
Formation A(Formation_00) = {
|
||||||
extern Stage N(flo_01b);
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 10),
|
||||||
extern Stage N(flo_01c);
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_C, 9),
|
||||||
extern Stage N(flo_02);
|
|
||||||
extern Stage N(flo_02b);
|
|
||||||
extern Stage N(flo_02c);
|
|
||||||
extern Stage N(flo_03);
|
|
||||||
extern Stage N(flo_04);
|
|
||||||
extern Stage N(flo_05);
|
|
||||||
extern Stage N(flo_06);
|
|
||||||
|
|
||||||
Formation N(Formation_00) = {
|
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 10),
|
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_C, 9),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_01) = {
|
Formation A(Formation_01) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_02) = {
|
Formation A(Formation_02) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_C, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_03) = {
|
Formation A(Formation_03) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_04) = {
|
Formation A(Formation_04) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_C, 8),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_D, 7),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_05) = {
|
Formation A(Formation_05) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_06) = {
|
Formation A(Formation_06) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_07) = {
|
Formation A(Formation_07) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_08) = {
|
Formation A(Formation_08) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_C, 8),
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_09) = {
|
Formation A(Formation_09) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(white_magikoopa), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(white_magikoopa), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0A) = {
|
Formation A(Formation_0A) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(red_magikoopa), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(red_magikoopa), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0B) = {
|
Formation A(Formation_0B) = {
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_C, 8),
|
||||||
ACTOR_BY_IDX(N(yellow_magikoopa), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(yellow_magikoopa), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0C) = {
|
Formation A(Formation_0C) = {
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0D) = {
|
Formation A(Formation_0D) = {
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0E) = {
|
Formation A(Formation_0E) = {
|
||||||
ACTOR_BY_IDX(N(spiny), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(spiny), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(medi_guy), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(medi_guy), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_0F) = {
|
Formation A(Formation_0F) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_10) = {
|
Formation A(Formation_10) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_11) = {
|
Formation A(Formation_11) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_12) = {
|
Formation A(Formation_12) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_13) = {
|
Formation A(Formation_13) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_14) = {
|
Formation A(Formation_14) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_15) = {
|
Formation A(Formation_15) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_16) = {
|
Formation A(Formation_16) = {
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(amazy_dayzee), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(amazy_dayzee), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_17) = {
|
Formation A(Formation_17) = {
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_18) = {
|
Formation A(Formation_18) = {
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_19) = {
|
Formation A(Formation_19) = {
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(green_magikoopa_flying), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(green_magikoopa_flying), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_1A) = {
|
Formation A(Formation_1A) = {
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_C, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_1B) = {
|
Formation A(Formation_1B) = {
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_1C) = {
|
Formation A(Formation_1C) = {
|
||||||
ACTOR_BY_IDX(N(amazy_dayzee), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(amazy_dayzee), BTL_POS_GROUND_B, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_1D) = {
|
Formation A(Formation_1D) = {
|
||||||
ACTOR_BY_IDX(N(amazy_dayzee), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(amazy_dayzee), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_1E) = {
|
Formation A(Formation_1E) = {
|
||||||
ACTOR_BY_IDX(N(amazy_dayzee), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(amazy_dayzee), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(amazy_dayzee), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(amazy_dayzee), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(amazy_dayzee), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(amazy_dayzee), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(amazy_dayzee), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(amazy_dayzee), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_1F) = {
|
Formation A(Formation_1F) = {
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_C, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_20) = {
|
Formation A(Formation_20) = {
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_C, 8),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_D, 7),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_21) = {
|
Formation A(Formation_21) = {
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_B, 10),
|
||||||
ACTOR_BY_IDX(N(lakitu), BTL_POS_AIR_C, 9),
|
ACTOR_BY_IDX(A(lakitu), BTL_POS_AIR_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_22) = {
|
Formation A(Formation_22) = {
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(bzzap), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(bzzap), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_23) = {
|
Formation A(Formation_23) = {
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(crazee_dayzee), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(crazee_dayzee), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_24) = {
|
Formation A(Formation_24) = {
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_A, 10),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_A, 10),
|
||||||
ACTOR_BY_IDX(N(ruff_puff), BTL_POS_AIR_B, 9),
|
ACTOR_BY_IDX(A(ruff_puff), BTL_POS_AIR_B, 9),
|
||||||
ACTOR_BY_IDX(N(yellow_magikoopa_flying), BTL_POS_AIR_C, 8),
|
ACTOR_BY_IDX(A(yellow_magikoopa_flying), BTL_POS_AIR_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
BattleList N(Formations) = {
|
BattleList A(Formations) = {
|
||||||
BATTLE(N(Formation_00), N(flo_01), "ジュゲムx2"),
|
BATTLE(A(Formation_00), A(flo_01), "ジュゲムx2"),
|
||||||
BATTLE(N(Formation_01), N(flo_01), "ジュゲムx3"),
|
BATTLE(A(Formation_01), A(flo_01), "ジュゲムx3"),
|
||||||
BATTLE(N(Formation_02), N(flo_01), "ジュゲム,クモクモーン"),
|
BATTLE(A(Formation_02), A(flo_01), "ジュゲム,クモクモーン"),
|
||||||
BATTLE(N(Formation_03), N(flo_01), "ジュゲム,ハッチーx2"),
|
BATTLE(A(Formation_03), A(flo_01), "ジュゲム,ハッチーx2"),
|
||||||
BATTLE(N(Formation_04), N(flo_01), "ジュゲム,ハッチー,ジュゲム,ハッチー"),
|
BATTLE(A(Formation_04), A(flo_01), "ジュゲム,ハッチー,ジュゲム,ハッチー"),
|
||||||
BATTLE(N(Formation_05), N(flo_01), "ジュゲム,パンジー"),
|
BATTLE(A(Formation_05), A(flo_01), "ジュゲム,パンジー"),
|
||||||
BATTLE(N(Formation_06), N(flo_01), "ジュゲム,トゲゾー"),
|
BATTLE(A(Formation_06), A(flo_01), "ジュゲム,トゲゾー"),
|
||||||
BATTLE(N(Formation_07), N(flo_01), "ジュゲムx2,トゲゾーx2"),
|
BATTLE(A(Formation_07), A(flo_01), "ジュゲムx2,トゲゾーx2"),
|
||||||
BATTLE(N(Formation_08), N(flo_01), "ジュゲムx3,トゲゾー"),
|
BATTLE(A(Formation_08), A(flo_01), "ジュゲムx3,トゲゾー"),
|
||||||
BATTLE(N(Formation_09), N(flo_01), "ジュゲムx2,ホワイトカメック"),
|
BATTLE(A(Formation_09), A(flo_01), "ジュゲムx2,ホワイトカメック"),
|
||||||
BATTLE(N(Formation_0A), N(flo_01), "ジュゲムx2,レッドカメック"),
|
BATTLE(A(Formation_0A), A(flo_01), "ジュゲムx2,レッドカメック"),
|
||||||
BATTLE(N(Formation_0B), N(flo_01), "ジュゲムx3,イエローカメック"),
|
BATTLE(A(Formation_0B), A(flo_01), "ジュゲムx3,イエローカメック"),
|
||||||
BATTLE(N(Formation_0C), N(flo_01), "トゲゾーx2"),
|
BATTLE(A(Formation_0C), A(flo_01), "トゲゾーx2"),
|
||||||
BATTLE(N(Formation_0D), N(flo_01), "トゲゾーx3"),
|
BATTLE(A(Formation_0D), A(flo_01), "トゲゾーx3"),
|
||||||
BATTLE(N(Formation_0E), N(flo_01), "トゲゾー,パンジーさん,かいふくヘイホー"),
|
BATTLE(A(Formation_0E), A(flo_01), "トゲゾー,パンジーさん,かいふくヘイホー"),
|
||||||
BATTLE(N(Formation_0F), N(flo_01), "パンジーさん"),
|
BATTLE(A(Formation_0F), A(flo_01), "パンジーさん"),
|
||||||
BATTLE(N(Formation_10), N(flo_01), "パンジーさんx2"),
|
BATTLE(A(Formation_10), A(flo_01), "パンジーさんx2"),
|
||||||
BATTLE(N(Formation_11), N(flo_01), "パンジーさんx3"),
|
BATTLE(A(Formation_11), A(flo_01), "パンジーさんx3"),
|
||||||
BATTLE(N(Formation_12), N(flo_01), "パンジーさんx4"),
|
BATTLE(A(Formation_12), A(flo_01), "パンジーさんx4"),
|
||||||
BATTLE(N(Formation_13), N(flo_01), "パンジーさん,ハッチー"),
|
BATTLE(A(Formation_13), A(flo_01), "パンジーさん,ハッチー"),
|
||||||
BATTLE(N(Formation_14), N(flo_01), "パンジーさん,ハッチーx2"),
|
BATTLE(A(Formation_14), A(flo_01), "パンジーさん,ハッチーx2"),
|
||||||
BATTLE(N(Formation_15), N(flo_01), "パンジーさんx2,ハッチー"),
|
BATTLE(A(Formation_15), A(flo_01), "パンジーさんx2,ハッチー"),
|
||||||
BATTLE(N(Formation_16), N(flo_01), "パンジーさんx2,きらめくパンジーさん"),
|
BATTLE(A(Formation_16), A(flo_01), "パンジーさんx2,きらめくパンジーさん"),
|
||||||
BATTLE(N(Formation_17), N(flo_01), "ハッチーx2"),
|
BATTLE(A(Formation_17), A(flo_01), "ハッチーx2"),
|
||||||
BATTLE(N(Formation_18), N(flo_01), "ハッチーx3"),
|
BATTLE(A(Formation_18), A(flo_01), "ハッチーx3"),
|
||||||
BATTLE(N(Formation_19), N(flo_01), "ハッチーx2,グリーンカメック(そら)"),
|
BATTLE(A(Formation_19), A(flo_01), "ハッチーx2,グリーンカメック(そら)"),
|
||||||
BATTLE(N(Formation_1A), N(flo_01), "ハッチー,クモクモーン"),
|
BATTLE(A(Formation_1A), A(flo_01), "ハッチー,クモクモーン"),
|
||||||
BATTLE(N(Formation_1B), N(flo_01), "ハッチー,クモクモーン,ハッチー"),
|
BATTLE(A(Formation_1B), A(flo_01), "ハッチー,クモクモーン,ハッチー"),
|
||||||
BATTLE(N(Formation_1C), N(flo_01), "きらめくパンジーさん"),
|
BATTLE(A(Formation_1C), A(flo_01), "きらめくパンジーさん"),
|
||||||
BATTLE(N(Formation_1D), N(flo_01), "きらめくパンジーさん,ハッチーx2"),
|
BATTLE(A(Formation_1D), A(flo_01), "きらめくパンジーさん,ハッチーx2"),
|
||||||
BATTLE(N(Formation_1E), N(flo_01), "きらめくパンジーさんx4"),
|
BATTLE(A(Formation_1E), A(flo_01), "きらめくパンジーさんx4"),
|
||||||
BATTLE(N(Formation_1F), N(flo_01), "クモクモーンx2"),
|
BATTLE(A(Formation_1F), A(flo_01), "クモクモーンx2"),
|
||||||
BATTLE(N(Formation_20), N(flo_01), "クモクモーンx4"),
|
BATTLE(A(Formation_20), A(flo_01), "クモクモーンx4"),
|
||||||
BATTLE(N(Formation_21), N(flo_01), "クモクモーン,ジュゲム"),
|
BATTLE(A(Formation_21), A(flo_01), "クモクモーン,ジュゲム"),
|
||||||
BATTLE(N(Formation_22), N(flo_01), "クモクモーンx2,ハッチー"),
|
BATTLE(A(Formation_22), A(flo_01), "クモクモーンx2,ハッチー"),
|
||||||
BATTLE(N(Formation_23), N(flo_01), "クモクモーンx2,パンジー"),
|
BATTLE(A(Formation_23), A(flo_01), "クモクモーンx2,パンジー"),
|
||||||
BATTLE(N(Formation_24), N(flo_01), "クモクモーンx2,イエローカメック(そら)"),
|
BATTLE(A(Formation_24), A(flo_01), "クモクモーンx2,イエローカメック(そら)"),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
|
||||||
StageList N(Stages) = {
|
StageList A(Stages) = {
|
||||||
STAGE("flo_01", N(flo_01)),
|
STAGE("flo_01", A(flo_01)),
|
||||||
STAGE("flo_01b", N(flo_01b)),
|
STAGE("flo_01b", A(flo_01b)),
|
||||||
STAGE("flo_01c", N(flo_01c)),
|
STAGE("flo_01c", A(flo_01c)),
|
||||||
STAGE("flo_02", N(flo_02)),
|
STAGE("flo_02", A(flo_02)),
|
||||||
STAGE("flo_02b", N(flo_02b)),
|
STAGE("flo_02b", A(flo_02b)),
|
||||||
STAGE("flo_02c", N(flo_02c)),
|
STAGE("flo_02c", A(flo_02c)),
|
||||||
STAGE("flo_03", N(flo_03)),
|
STAGE("flo_03", A(flo_03)),
|
||||||
STAGE("flo_04", N(flo_04)),
|
STAGE("flo_04", A(flo_04)),
|
||||||
STAGE("flo_05", N(flo_05)),
|
STAGE("flo_05", A(flo_05)),
|
||||||
STAGE("flo_06", N(flo_06)),
|
STAGE("flo_06", A(flo_06)),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
6
src/battle/area/flo/area.h
Normal file
6
src/battle/area/flo/area.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "effects.h"
|
||||||
|
#include "battle/battle.h"
|
||||||
|
#include "script_api/battle.h"
|
||||||
|
|
||||||
|
#define AREA b_area_flo
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_01
|
#include "battle/common/stage/area_flo/flo_01.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_01.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_01b
|
#include "battle/common/stage/area_flo/flo_01b.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_01b.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_01c
|
#include "battle/common/stage/area_flo/flo_01c.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_01c.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_02
|
#include "battle/common/stage/area_flo/flo_02.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_02.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_02b
|
#include "battle/common/stage/area_flo/flo_02b.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_02b.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_02c
|
#include "battle/common/stage/area_flo/flo_02c.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_02c.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt03_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_03
|
#include "battle/common/stage/area_flo/flo_03.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_03.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt04_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_04
|
#include "battle/common/stage/area_flo/flo_04.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_04.inc.c"
|
|
||||||
|
@ -1,6 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_05
|
#include "battle/common/stage/area_flo/flo_05.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_05.inc.c"
|
|
||||||
|
@ -1,6 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo_flo_06
|
#include "battle/common/stage/area_flo/flo_06.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_06.inc.c"
|
|
||||||
|
@ -1,13 +1,10 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/HuffNPuff.h"
|
#include "sprite/npc/HuffNPuff.h"
|
||||||
#include "sprite/npc/RuffPuff.h"
|
#include "sprite/npc/RuffPuff.h"
|
||||||
#include "effects.h"
|
|
||||||
#include "battle/action_cmd/whirlwind.h"
|
#include "battle/action_cmd/whirlwind.h"
|
||||||
#include "battle/action_cmd/stop_leech.h"
|
#include "battle/action_cmd/stop_leech.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_huff_n_puff
|
#define NAMESPACE A(huff_n_puff)
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
enum N(ActorPartIDs) {
|
||||||
PRT_MAIN = 1,
|
PRT_MAIN = 1,
|
||||||
@ -38,7 +35,7 @@ enum N(Flags) {
|
|||||||
N(FLAG_SPEAK_4) = 0x80,
|
N(FLAG_SPEAK_4) = 0x80,
|
||||||
};
|
};
|
||||||
|
|
||||||
extern ActorBlueprint b_area_flo2_tuff_puff;
|
extern ActorBlueprint A(tuff_puff);
|
||||||
|
|
||||||
extern EvtScript N(EVS_Init);
|
extern EvtScript N(EVS_Init);
|
||||||
extern EvtScript N(takeTurn);
|
extern EvtScript N(takeTurn);
|
||||||
@ -548,11 +545,11 @@ EvtScript N(idle) = {
|
|||||||
Vec3i N(tuff_puff_pos) = { NPC_DISPOSE_LOCATION };
|
Vec3i N(tuff_puff_pos) = { NPC_DISPOSE_LOCATION };
|
||||||
|
|
||||||
Formation N(formation_tuff_puff_small) = {
|
Formation N(formation_tuff_puff_small) = {
|
||||||
ACTOR_BY_POS(b_area_flo2_tuff_puff, N(tuff_puff_pos), 0),
|
ACTOR_BY_POS(A(tuff_puff), N(tuff_puff_pos), 0),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(formation_tuff_puff_large) = {
|
Formation N(formation_tuff_puff_large) = {
|
||||||
ACTOR_BY_POS(b_area_flo2_tuff_puff, N(tuff_puff_pos), 0, 1),
|
ACTOR_BY_POS(A(tuff_puff), N(tuff_puff_pos), 0, 1),
|
||||||
};
|
};
|
||||||
|
|
||||||
EvtScript N(spawnTuffPuff) = {
|
EvtScript N(spawnTuffPuff) = {
|
||||||
@ -611,10 +608,10 @@ EvtScript N(spawnTuffPuff) = {
|
|||||||
EVT_CALL(SetTuffPuffPriority)
|
EVT_CALL(SetTuffPuffPriority)
|
||||||
EVT_IF_GT(LVarA, 0)
|
EVT_IF_GT(LVarA, 0)
|
||||||
EVT_SUB(LVarA, 1)
|
EVT_SUB(LVarA, 1)
|
||||||
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_tuff_puff_large)), 0)
|
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_tuff_puff_large)), FALSE)
|
||||||
EVT_CALL(SetActorVar, LVar0, 5, 2)
|
EVT_CALL(SetActorVar, LVar0, 5, 2)
|
||||||
EVT_ELSE
|
EVT_ELSE
|
||||||
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_tuff_puff_small)), 0)
|
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_tuff_puff_small)), FALSE)
|
||||||
EVT_CALL(SetActorVar, LVar0, 5, 1)
|
EVT_CALL(SetActorVar, LVar0, 5, 1)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_TUFF_PUFF_BIT_ARRAY), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_TUFF_PUFF_BIT_ARRAY), LVar1)
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/MontyMole.h"
|
#include "sprite/npc/MontyMole.h"
|
||||||
#include "effects.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_monty_mole_boss
|
#define NAMESPACE A(monty_mole_boss)
|
||||||
|
|
||||||
extern s32 N(IdleAnimations)[];
|
extern s32 N(IdleAnimations)[];
|
||||||
extern s32 N(IdleAnimations2)[];
|
extern s32 N(IdleAnimations2)[];
|
||||||
@ -201,9 +198,9 @@ Formation N(formation_hole_2) = {
|
|||||||
EvtScript N(onDeath) = {
|
EvtScript N(onDeath) = {
|
||||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar0)
|
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar0)
|
||||||
EVT_IF_FLAG(LVar0, STATUS_FLAG_SHRINK)
|
EVT_IF_FLAG(LVar0, STATUS_FLAG_SHRINK)
|
||||||
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_hole_2)), 0)
|
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_hole_2)), FALSE)
|
||||||
EVT_ELSE
|
EVT_ELSE
|
||||||
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_hole_1)), 0)
|
EVT_CALL(SummonEnemy, EVT_PTR(N(formation_hole_1)), FALSE)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar1, LVar2, LVar3)
|
EVT_CALL(GetActorPos, ACTOR_SELF, LVar1, LVar2, LVar3)
|
||||||
EVT_SUB(LVar3, 1)
|
EVT_SUB(LVar3, 1)
|
||||||
@ -239,29 +236,29 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_WAIT(8)
|
EVT_WAIT(8)
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim07)
|
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim07)
|
||||||
EVT_END_CHILD_THREAD
|
EVT_END_CHILD_THREAD
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim06)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim06)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim08)
|
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim08)
|
||||||
EVT_WAIT(10)
|
EVT_WAIT(10)
|
||||||
EVT_ELSE
|
EVT_ELSE
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim05)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim05)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
EVT_CASE_EQ(EVENT_BURN_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim0A)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim0A)
|
||||||
EVT_SET_CONST(LVar2, ANIM_MontyMole_Dark_Anim0B)
|
EVT_SET_CONST(LVar2, ANIM_MontyMole_Dark_Anim0B)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim0A)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim0A)
|
||||||
EVT_SET_CONST(LVar2, ANIM_MontyMole_Dark_Anim0B)
|
EVT_SET_CONST(LVar2, ANIM_MontyMole_Dark_Anim0B)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_EXEC_WAIT(N(onDeath))
|
EVT_EXEC_WAIT(N(onDeath))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim0C)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim0C)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
@ -280,19 +277,19 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim14)
|
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim14)
|
||||||
EVT_WAIT(20)
|
EVT_WAIT(20)
|
||||||
EVT_ELSE
|
EVT_ELSE
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
EVT_CASE_EQ(EVENT_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim05)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim05)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim06)
|
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_MAIN, ANIM_MontyMole_Dark_Anim06)
|
||||||
EVT_WAIT(10)
|
EVT_WAIT(10)
|
||||||
EVT_EXEC_WAIT(N(onDeath))
|
EVT_EXEC_WAIT(N(onDeath))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim09)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim09)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
@ -314,7 +311,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_hole)))
|
EVT_CALL(SetIdleAnimations, ACTOR_SELF, PRT_MAIN, EVT_PTR(N(IdleAnimations_hole)))
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim05)
|
EVT_SET_CONST(LVar1, ANIM_MontyMole_Dark_Anim05)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/BattleLakilester.h"
|
#include "sprite/npc/BattleLakilester.h"
|
||||||
#include "effects.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_spike
|
#define NAMESPACE A(spike)
|
||||||
|
|
||||||
extern EvtScript N(init);
|
extern EvtScript N(init);
|
||||||
extern EvtScript N(takeTurn);
|
extern EvtScript N(takeTurn);
|
||||||
@ -144,65 +141,65 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_SWITCH(LVar0)
|
EVT_SWITCH(LVar0)
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
EVT_CASE_OR_EQ(EVENT_HIT_COMBO)
|
||||||
EVT_CASE_OR_EQ(EVENT_HIT)
|
EVT_CASE_OR_EQ(EVENT_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
EVT_CASE_EQ(EVENT_BURN_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnHurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnHurt)
|
||||||
EVT_SET_CONST(LVar2, ANIM_BattleLakilester_BurnStill)
|
EVT_SET_CONST(LVar2, ANIM_BattleLakilester_BurnStill)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
EVT_CASE_EQ(EVENT_BURN_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnHurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnHurt)
|
||||||
EVT_SET_CONST(LVar2, ANIM_BattleLakilester_BurnStill)
|
EVT_SET_CONST(LVar2, ANIM_BattleLakilester_BurnStill)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnStill)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnStill)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
EVT_CASE_EQ(EVENT_SPIN_SMASH_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Dead)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Dead)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
EVT_CASE_EQ(EVENT_SHOCK_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
EVT_EXEC_WAIT(EVS_Enemy_JumpBack)
|
||||||
EVT_EXEC_WAIT(N(returnHome))
|
EVT_EXEC_WAIT(N(returnHome))
|
||||||
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
EVT_CASE_EQ(EVENT_SHOCK_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
EVT_EXEC_WAIT(EVS_Enemy_ShockHit)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Dead)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Dead)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
EVT_CASE_OR_EQ(EVENT_ZERO_DAMAGE)
|
||||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
||||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Idle)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Idle)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
EVT_CASE_EQ(EVENT_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_WAIT(10)
|
EVT_WAIT(10)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Dead)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Dead)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
@ -213,21 +210,21 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_EXEC_WAIT(N(returnHome))
|
EVT_EXEC_WAIT(N(returnHome))
|
||||||
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Idle)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Idle)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
||||||
EVT_CASE_EQ(EVENT_SCARE_AWAY)
|
EVT_CASE_EQ(EVENT_SCARE_AWAY)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Run)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Run)
|
||||||
EVT_SET_CONST(LVar2, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar2, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_ScareAway)
|
EVT_EXEC_WAIT(EVS_Enemy_ScareAway)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/RuffPuff.h"
|
#include "sprite/npc/RuffPuff.h"
|
||||||
#include "effects.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_tuff_puff
|
#define NAMESPACE A(tuff_puff)
|
||||||
|
|
||||||
extern EvtScript N(init);
|
extern EvtScript N(init);
|
||||||
extern EvtScript N(takeTurn);
|
extern EvtScript N(takeTurn);
|
||||||
@ -251,7 +248,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_CALL(GetLastEvent, ACTOR_SELF, LVar0)
|
EVT_CALL(GetLastEvent, ACTOR_SELF, LVar0)
|
||||||
EVT_SWITCH(LVar0)
|
EVT_SWITCH(LVar0)
|
||||||
EVT_CASE_EQ(EVENT_HIT_COMBO)
|
EVT_CASE_EQ(EVENT_HIT_COMBO)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
||||||
@ -260,7 +257,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_CASE_EQ(EVENT_HIT)
|
EVT_CASE_EQ(EVENT_HIT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
||||||
@ -299,7 +296,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_EXEC_WAIT(N(onDeath))
|
EVT_EXEC_WAIT(N(onDeath))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0F)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0F)
|
||||||
@ -309,7 +306,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_ZERO_DAMAGE)
|
EVT_CASE_EQ(EVENT_ZERO_DAMAGE)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
||||||
@ -318,7 +315,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CASE_EQ(EVENT_IMMUNE)
|
EVT_CASE_EQ(EVENT_IMMUNE)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
||||||
@ -327,7 +324,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CASE_EQ(EVENT_DEATH)
|
EVT_CASE_EQ(EVENT_DEATH)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
||||||
@ -336,7 +333,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(onDeath))
|
EVT_EXEC_WAIT(N(onDeath))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
||||||
@ -346,7 +343,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
EVT_CASE_EQ(EVENT_RECOVER_STATUS)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
||||||
@ -355,7 +352,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
||||||
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
EVT_CASE_EQ(EVENT_BEGIN_AIR_LIFT)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim06)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim06)
|
||||||
@ -365,7 +362,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
||||||
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
EVT_CASE_EQ(EVENT_BLOW_AWAY)
|
||||||
EVT_EXEC_WAIT(N(onDeath))
|
EVT_EXEC_WAIT(N(onDeath))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim0C)
|
||||||
@ -375,7 +372,7 @@ EvtScript N(handleEvent) = {
|
|||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(EVENT_AIR_LIFT_FAILED)
|
EVT_CASE_EQ(EVENT_AIR_LIFT_FAILED)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_IS_BIG), LVar1)
|
||||||
EVT_IF_EQ(LVar1, 0)
|
EVT_IF_EQ(LVar1, 0)
|
||||||
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_RuffPuff_Anim02)
|
||||||
|
@ -1,75 +1,72 @@
|
|||||||
#include "common.h"
|
#include "area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2
|
extern ActorBlueprint A(huff_n_puff);
|
||||||
|
extern ActorBlueprint A(monty_mole_boss);
|
||||||
|
extern ActorBlueprint A(spike);
|
||||||
|
|
||||||
extern ActorBlueprint N(huff_n_puff);
|
extern Stage A(flo_01);
|
||||||
extern ActorBlueprint N(monty_mole_boss);
|
extern Stage A(flo_01b);
|
||||||
extern ActorBlueprint N(spike);
|
extern Stage A(flo_01c);
|
||||||
|
extern Stage A(flo_02);
|
||||||
|
extern Stage A(flo_02b);
|
||||||
|
extern Stage A(flo_02c);
|
||||||
|
extern Stage A(flo_03);
|
||||||
|
extern Stage A(flo_04);
|
||||||
|
extern Stage A(flo_05);
|
||||||
|
extern Stage A(flo_06);
|
||||||
|
|
||||||
extern Stage N(flo_01);
|
Vec3i A(huff_n_puff_pos) = { 80, 80, 0 };
|
||||||
extern Stage N(flo_01b);
|
|
||||||
extern Stage N(flo_01c);
|
|
||||||
extern Stage N(flo_02);
|
|
||||||
extern Stage N(flo_02b);
|
|
||||||
extern Stage N(flo_02c);
|
|
||||||
extern Stage N(flo_03);
|
|
||||||
extern Stage N(flo_04);
|
|
||||||
extern Stage N(flo_05);
|
|
||||||
extern Stage N(flo_06);
|
|
||||||
|
|
||||||
Vec3i N(huff_n_puff_pos) = { 80, 80, 0 };
|
Formation A(Formation_01) = {
|
||||||
|
ACTOR_BY_POS(A(huff_n_puff), A(huff_n_puff_pos), 10),
|
||||||
Formation N(Formation_01) = {
|
|
||||||
ACTOR_BY_POS(N(huff_n_puff), N(huff_n_puff_pos), 10),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_02) = {
|
Formation A(Formation_02) = {
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_B, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_03) = {
|
Formation A(Formation_03) = {
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_04) = {
|
Formation A(Formation_04) = {
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_05) = {
|
Formation A(Formation_05) = {
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_C, 8),
|
||||||
ACTOR_BY_IDX(N(monty_mole_boss), BTL_POS_GROUND_D, 7),
|
ACTOR_BY_IDX(A(monty_mole_boss), BTL_POS_GROUND_D, 7),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_06) = {
|
Formation A(Formation_06) = {
|
||||||
ACTOR_BY_IDX(N(spike), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(spike), BTL_POS_AIR_B, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
BattleList N(Formations) = {
|
BattleList A(Formations) = {
|
||||||
BATTLE(N(Formation_01), N(flo_04), "オズモーン"),
|
BATTLE(A(Formation_01), A(flo_04), "オズモーン"),
|
||||||
BATTLE(N(Formation_02), N(flo_01), "フラワーチョロプー"),
|
BATTLE(A(Formation_02), A(flo_01), "フラワーチョロプー"),
|
||||||
BATTLE(N(Formation_03), N(flo_01), "フラワーチョロプーx2"),
|
BATTLE(A(Formation_03), A(flo_01), "フラワーチョロプーx2"),
|
||||||
BATTLE(N(Formation_04), N(flo_01), "フラワーチョロプーx3"),
|
BATTLE(A(Formation_04), A(flo_01), "フラワーチョロプーx3"),
|
||||||
BATTLE(N(Formation_05), N(flo_01), "フラワーチョロプーx4"),
|
BATTLE(A(Formation_05), A(flo_01), "フラワーチョロプーx4"),
|
||||||
BATTLE(N(Formation_06), N(flo_01), "ジョナサン?"),
|
BATTLE(A(Formation_06), A(flo_01), "ジョナサン?"),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
|
||||||
StageList N(Stages) = {
|
StageList A(Stages) = {
|
||||||
STAGE("flo_01", N(flo_01)),
|
STAGE("flo_01", A(flo_01)),
|
||||||
STAGE("flo_01b", N(flo_01b)),
|
STAGE("flo_01b", A(flo_01b)),
|
||||||
STAGE("flo_01c", N(flo_01c)),
|
STAGE("flo_01c", A(flo_01c)),
|
||||||
STAGE("flo_02", N(flo_02)),
|
STAGE("flo_02", A(flo_02)),
|
||||||
STAGE("flo_02b", N(flo_02b)),
|
STAGE("flo_02b", A(flo_02b)),
|
||||||
STAGE("flo_02c", N(flo_02c)),
|
STAGE("flo_02c", A(flo_02c)),
|
||||||
STAGE("flo_03", N(flo_03)),
|
STAGE("flo_03", A(flo_03)),
|
||||||
STAGE("flo_04", N(flo_04)),
|
STAGE("flo_04", A(flo_04)),
|
||||||
STAGE("flo_05", N(flo_05)),
|
STAGE("flo_05", A(flo_05)),
|
||||||
STAGE("flo_06", N(flo_06)),
|
STAGE("flo_06", A(flo_06)),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
6
src/battle/area/flo2/area.h
Normal file
6
src/battle/area/flo2/area.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "effects.h"
|
||||||
|
#include "battle/battle.h"
|
||||||
|
#include "script_api/battle.h"
|
||||||
|
|
||||||
|
#define AREA b_area_flo2
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_01
|
#include "battle/common/stage/area_flo/flo_01.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_01.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt01_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_01b
|
#include "battle/common/stage/area_flo/flo_01b.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_01b.inc.c"
|
|
||||||
|
@ -1,8 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt01_shape.h"
|
|
||||||
#include "effects.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_01c
|
#include "battle/common/stage/area_flo/flo_01c.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_01c.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_02
|
#include "battle/common/stage/area_flo/flo_02.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_02.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_02b
|
#include "battle/common/stage/area_flo/flo_02b.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_02b.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_02c
|
#include "battle/common/stage/area_flo/flo_02c.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_02c.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt03_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_03
|
#include "battle/common/stage/area_flo/flo_03.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_03.inc.c"
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/flo_bt04_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_04
|
#include "battle/common/stage/area_flo/flo_04.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_04.inc.c"
|
|
||||||
|
@ -1,6 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_05
|
#include "battle/common/stage/area_flo/flo_05.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_05.inc.c"
|
|
||||||
|
@ -1,6 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_flo2_flo_06
|
#include "battle/common/stage/area_flo/flo_06.inc.c"
|
||||||
|
|
||||||
#include "battle/common/stage/flo_06.inc.c"
|
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_hos_ember
|
|
||||||
|
|
||||||
#include "battle/common/actor/ember.inc.c"
|
#include "battle/common/actor/ember.inc.c"
|
||||||
|
@ -1,12 +1,10 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "battle/action_cmd/jump.h"
|
#include "battle/action_cmd/jump.h"
|
||||||
#include "battle/action_cmd.h"
|
#include "battle/action_cmd.h"
|
||||||
#include "sprite/npc/BattleGoombario.h"
|
#include "sprite/npc/BattleGoombario.h"
|
||||||
#include "sprite/npc/Twink.h"
|
#include "sprite/npc/Twink.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_hos_goombario_tutor
|
#define NAMESPACE A(goombario_tutor)
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
enum N(ActorPartIDs) {
|
||||||
PRT_MAIN = 1,
|
PRT_MAIN = 1,
|
||||||
@ -140,18 +138,18 @@ EvtScript N(handleEvent_802191E0) = {
|
|||||||
EVT_SWITCH(LVar0)
|
EVT_SWITCH(LVar0)
|
||||||
EVT_CASE_OR_EQ(9)
|
EVT_CASE_OR_EQ(9)
|
||||||
EVT_CASE_OR_EQ(10)
|
EVT_CASE_OR_EQ(10)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill)
|
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_OR_EQ(23)
|
EVT_CASE_OR_EQ(23)
|
||||||
EVT_CASE_OR_EQ(25)
|
EVT_CASE_OR_EQ(25)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_Idle)
|
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_Idle)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(48)
|
EVT_CASE_EQ(48)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill)
|
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_WAIT(1000)
|
EVT_WAIT(1000)
|
||||||
@ -190,7 +188,7 @@ EvtScript N(takeTurn_80219444) = {
|
|||||||
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
EVT_CALL(SetGoalToTarget, ACTOR_SELF)
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, -10, 0, 0)
|
EVT_CALL(AddGoalPos, ACTOR_SELF, -10, 0, 0)
|
||||||
EVT_CALL(GetBattleFlags2, LVar0)
|
EVT_CALL(GetBattleFlags2, LVar0)
|
||||||
EVT_IF_FLAG(LVar0, 0x200)
|
EVT_IF_FLAG(LVar0, BS_FLAGS2_200)
|
||||||
EVT_CALL(AddGoalPos, ACTOR_SELF, 5, 10, 0)
|
EVT_CALL(AddGoalPos, ACTOR_SELF, 5, 10, 0)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.1))
|
EVT_CALL(SetActorJumpGravity, ACTOR_SELF, EVT_FLOAT(1.1))
|
||||||
|
@ -1,10 +1,8 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "script_api/battle.h"
|
|
||||||
#include "sprite/npc/FlyingMagikoopa.h"
|
#include "sprite/npc/FlyingMagikoopa.h"
|
||||||
#include "sprite/npc/Magikoopa.h"
|
#include "sprite/npc/Magikoopa.h"
|
||||||
|
|
||||||
#define NAMESPACE b_area_hos_magikoopa
|
#define NAMESPACE A(magikoopa)
|
||||||
|
|
||||||
enum N(ActorPartIDs) {
|
enum N(ActorPartIDs) {
|
||||||
PRT_MAIN = 1,
|
PRT_MAIN = 1,
|
||||||
@ -473,52 +471,52 @@ EvtScript N(handleEvent_8021E6D8) = {
|
|||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
||||||
EVT_BITWISE_OR_CONST(LVar0, 1)
|
EVT_BITWISE_OR_CONST(LVar0, 1)
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, LVar0)
|
EVT_CALL(SetActorVar, ACTOR_SELF, 0, LVar0)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_CASE_OR_EQ(10)
|
EVT_CASE_OR_EQ(10)
|
||||||
EVT_CASE_OR_EQ(61)
|
EVT_CASE_OR_EQ(61)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(14)
|
EVT_CASE_EQ(14)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim05)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim05)
|
||||||
EVT_SET_CONST(LVar2, ANIM_Magikoopa_Anim06)
|
EVT_SET_CONST(LVar2, ANIM_Magikoopa_Anim06)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_CASE_EQ(36)
|
EVT_CASE_EQ(36)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim05)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim05)
|
||||||
EVT_SET_CONST(LVar2, ANIM_Magikoopa_Anim06)
|
EVT_SET_CONST(LVar2, ANIM_Magikoopa_Anim06)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim06)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim06)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(11)
|
EVT_CASE_EQ(11)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_CASE_EQ(33)
|
EVT_CASE_EQ(33)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(23)
|
EVT_CASE_EQ(23)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CASE_EQ(25)
|
EVT_CASE_EQ(25)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
||||||
@ -531,17 +529,17 @@ EvtScript N(handleEvent_8021E6D8) = {
|
|||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_CASE_EQ(32)
|
EVT_CASE_EQ(32)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_WAIT(10)
|
EVT_WAIT(10)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(49)
|
EVT_CASE_EQ(49)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
||||||
EVT_CASE_EQ(57)
|
EVT_CASE_EQ(57)
|
||||||
@ -556,7 +554,7 @@ EvtScript N(handleEvent_8021E6D8) = {
|
|||||||
EVT_EXEC_WAIT(N(runAway))
|
EVT_EXEC_WAIT(N(runAway))
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(58)
|
EVT_CASE_EQ(58)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim02)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
||||||
EVT_CASE_EQ(22)
|
EVT_CASE_EQ(22)
|
||||||
@ -569,16 +567,16 @@ EvtScript N(handleEvent_8021E6D8) = {
|
|||||||
EVT_CALL(SetPartDispOffset, ACTOR_SELF, PRT_MAIN, -4, 5, 0)
|
EVT_CALL(SetPartDispOffset, ACTOR_SELF, PRT_MAIN, -4, 5, 0)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(31)
|
EVT_CASE_EQ(31)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CASE_EQ(19)
|
EVT_CASE_EQ(19)
|
||||||
EVT_SET_CONST(LVar0, 1)
|
EVT_SET_CONST(LVar0, PRT_MAIN)
|
||||||
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_Magikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
@ -601,27 +599,27 @@ EvtScript N(handleEvent_8021EDF0) = {
|
|||||||
EVT_BITWISE_OR_CONST(LVar0, 1)
|
EVT_BITWISE_OR_CONST(LVar0, 1)
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, LVar0)
|
EVT_CALL(SetActorVar, ACTOR_SELF, 0, LVar0)
|
||||||
EVT_EXEC_WAIT(N(8021D784))
|
EVT_EXEC_WAIT(N(8021D784))
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_CASE_OR_EQ(10)
|
EVT_CASE_OR_EQ(10)
|
||||||
EVT_CASE_OR_EQ(12)
|
EVT_CASE_OR_EQ(12)
|
||||||
EVT_EXEC_WAIT(N(8021D784))
|
EVT_EXEC_WAIT(N(8021D784))
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_EXEC_WAIT(N(8021D890))
|
EVT_EXEC_WAIT(N(8021D890))
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(61)
|
EVT_CASE_EQ(61)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_CASE_OR_EQ(14)
|
EVT_CASE_OR_EQ(14)
|
||||||
EVT_CASE_OR_EQ(15)
|
EVT_CASE_OR_EQ(15)
|
||||||
EVT_EXEC_WAIT(N(8021D784))
|
EVT_EXEC_WAIT(N(8021D784))
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim05)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim05)
|
||||||
EVT_SET_CONST(LVar2, ANIM_FlyingMagikoopa_Anim06)
|
EVT_SET_CONST(LVar2, ANIM_FlyingMagikoopa_Anim06)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
@ -629,35 +627,35 @@ EvtScript N(handleEvent_8021EDF0) = {
|
|||||||
EVT_EXEC_WAIT(N(8021D890))
|
EVT_EXEC_WAIT(N(8021D890))
|
||||||
EVT_END_CASE_GROUP
|
EVT_END_CASE_GROUP
|
||||||
EVT_CASE_EQ(36)
|
EVT_CASE_EQ(36)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim05)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim05)
|
||||||
EVT_SET_CONST(LVar2, ANIM_FlyingMagikoopa_Anim06)
|
EVT_SET_CONST(LVar2, ANIM_FlyingMagikoopa_Anim06)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
EVT_EXEC_WAIT(EVS_Enemy_BurnHit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim06)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim06)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(11)
|
EVT_CASE_EQ(11)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_CASE_EQ(33)
|
EVT_CASE_EQ(33)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
EVT_EXEC_WAIT(EVS_Enemy_SpinSmashHit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(23)
|
EVT_CASE_EQ(23)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CASE_EQ(25)
|
EVT_CASE_EQ(25)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
||||||
@ -670,12 +668,12 @@ EvtScript N(handleEvent_8021EDF0) = {
|
|||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_CASE_EQ(32)
|
EVT_CASE_EQ(32)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
EVT_WAIT(10)
|
EVT_WAIT(10)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
EVT_EXEC_WAIT(EVS_Enemy_Death)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
@ -690,7 +688,7 @@ EvtScript N(handleEvent_8021EDF0) = {
|
|||||||
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_2, ANIM_FlyingMagikoopa_Anim01)
|
EVT_CALL(SetAnimation, ACTOR_SELF, PRT_2, ANIM_FlyingMagikoopa_Anim01)
|
||||||
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
EVT_CALL(HPBarToHome, ACTOR_SELF)
|
||||||
EVT_CASE_EQ(49)
|
EVT_CASE_EQ(49)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
EVT_EXEC_WAIT(EVS_Enemy_Recover)
|
||||||
EVT_CASE_EQ(57)
|
EVT_CASE_EQ(57)
|
||||||
@ -705,7 +703,7 @@ EvtScript N(handleEvent_8021EDF0) = {
|
|||||||
EVT_EXEC_WAIT(N(runAway))
|
EVT_EXEC_WAIT(N(runAway))
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(58)
|
EVT_CASE_EQ(58)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim02)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim02)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
EVT_EXEC_WAIT(EVS_Enemy_AirLift)
|
||||||
EVT_CASE_EQ(22)
|
EVT_CASE_EQ(22)
|
||||||
@ -718,16 +716,16 @@ EvtScript N(handleEvent_8021EDF0) = {
|
|||||||
EVT_CALL(SetPartDispOffset, ACTOR_SELF, PRT_2, -15, 0, 0)
|
EVT_CALL(SetPartDispOffset, ACTOR_SELF, PRT_2, -15, 0, 0)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
EVT_EXEC_WAIT(EVS_Enemy_BlowAway)
|
||||||
EVT_RETURN
|
EVT_RETURN
|
||||||
EVT_CASE_EQ(31)
|
EVT_CASE_EQ(31)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim01)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
EVT_EXEC_WAIT(EVS_Enemy_NoDamageHit)
|
||||||
EVT_CASE_EQ(19)
|
EVT_CASE_EQ(19)
|
||||||
EVT_SET_CONST(LVar0, 2)
|
EVT_SET_CONST(LVar0, PRT_2)
|
||||||
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
EVT_SET_CONST(LVar1, ANIM_FlyingMagikoopa_Anim04)
|
||||||
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
EVT_EXEC_WAIT(EVS_Enemy_Hit)
|
||||||
EVT_EXEC_WAIT(N(8021E46C))
|
EVT_EXEC_WAIT(N(8021E46C))
|
||||||
@ -1370,9 +1368,9 @@ EvtScript N(makeCopy) = {
|
|||||||
EVT_SET(LFlag0, TRUE)
|
EVT_SET(LFlag0, TRUE)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_IF_EQ(LFlag0, FALSE)
|
EVT_IF_EQ(LFlag0, FALSE)
|
||||||
EVT_CALL(SummonEnemy, EVT_PTR(N(specialFormation_802216C8)), 0)
|
EVT_CALL(SummonEnemy, EVT_PTR(N(specialFormation_802216C8)), FALSE)
|
||||||
EVT_ELSE
|
EVT_ELSE
|
||||||
EVT_CALL(SummonEnemy, EVT_PTR(N(specialFormation_802216E4)), 0)
|
EVT_CALL(SummonEnemy, EVT_PTR(N(specialFormation_802216E4)), FALSE)
|
||||||
EVT_END_IF
|
EVT_END_IF
|
||||||
EVT_CALL(SetActorVar, ACTOR_SELF, 9, LVar0)
|
EVT_CALL(SetActorVar, ACTOR_SELF, 9, LVar0)
|
||||||
EVT_SET(LVarA, LVar0)
|
EVT_SET(LVarA, LVar0)
|
||||||
|
@ -1,46 +1,43 @@
|
|||||||
#include "common.h"
|
#include "area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_hos
|
extern ActorBlueprint A(ember);
|
||||||
|
extern ActorBlueprint A(goombario_tutor);
|
||||||
|
extern ActorBlueprint A(magikoopa_flying);
|
||||||
|
|
||||||
extern ActorBlueprint N(goombario_tutor);
|
extern Stage A(hos_00);
|
||||||
extern ActorBlueprint N(ember);
|
extern Stage A(hos_01);
|
||||||
extern ActorBlueprint N(magikoopa_flying);
|
extern Stage A(hos_02);
|
||||||
|
|
||||||
extern Stage N(hos_00);
|
Formation A(Formation_00) = {
|
||||||
extern Stage N(hos_01);
|
ACTOR_BY_IDX(A(goombario_tutor), BTL_POS_GROUND_B, 10),
|
||||||
extern Stage N(hos_02);
|
|
||||||
|
|
||||||
Formation N(Formation_00) = {
|
|
||||||
ACTOR_BY_IDX(N(goombario_tutor), BTL_POS_GROUND_B, 10),
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_01) = {
|
Formation A(Formation_01) = {
|
||||||
ACTOR_BY_IDX(N(ember), BTL_POS_GROUND_B, 10),
|
ACTOR_BY_IDX(A(ember), BTL_POS_GROUND_B, 10),
|
||||||
ACTOR_BY_IDX(N(ember), BTL_POS_GROUND_C, 9),
|
ACTOR_BY_IDX(A(ember), BTL_POS_GROUND_C, 9),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_02) = {
|
Formation A(Formation_02) = {
|
||||||
ACTOR_BY_IDX(N(ember), BTL_POS_GROUND_A, 10),
|
ACTOR_BY_IDX(A(ember), BTL_POS_GROUND_A, 10),
|
||||||
ACTOR_BY_IDX(N(ember), BTL_POS_GROUND_B, 9),
|
ACTOR_BY_IDX(A(ember), BTL_POS_GROUND_B, 9),
|
||||||
ACTOR_BY_IDX(N(ember), BTL_POS_GROUND_C, 8),
|
ACTOR_BY_IDX(A(ember), BTL_POS_GROUND_C, 8),
|
||||||
};
|
};
|
||||||
|
|
||||||
Formation N(Formation_03) = {
|
Formation A(Formation_03) = {
|
||||||
ACTOR_BY_IDX(N(magikoopa_flying), BTL_POS_AIR_B, 10),
|
ACTOR_BY_IDX(A(magikoopa_flying), BTL_POS_AIR_B, 10),
|
||||||
};
|
};
|
||||||
|
|
||||||
BattleList N(Formations) = {
|
BattleList A(Formations) = {
|
||||||
BATTLE(N(Formation_00), N(hos_02), "クリオ(ACヘルプ)"),
|
BATTLE(A(Formation_00), A(hos_02), "クリオ(ACヘルプ)"),
|
||||||
BATTLE(N(Formation_01), N(hos_01), "エルモスx2"),
|
BATTLE(A(Formation_01), A(hos_01), "エルモスx2"),
|
||||||
BATTLE(N(Formation_02), N(hos_01), "エルモスx3"),
|
BATTLE(A(Formation_02), A(hos_01), "エルモスx3"),
|
||||||
BATTLE(N(Formation_03), N(hos_02), "カメック(ACヘルプご)"),
|
BATTLE(A(Formation_03), A(hos_02), "カメック(ACヘルプご)"),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
|
||||||
StageList N(Stages) = {
|
StageList A(Stages) = {
|
||||||
STAGE("hos_00", N(hos_00)),
|
STAGE("hos_00", A(hos_00)),
|
||||||
STAGE("hos_01", N(hos_01)),
|
STAGE("hos_01", A(hos_01)),
|
||||||
STAGE("hos_02", N(hos_02)),
|
STAGE("hos_02", A(hos_02)),
|
||||||
{},
|
{},
|
||||||
};
|
};
|
||||||
|
6
src/battle/area/hos/area.h
Normal file
6
src/battle/area/hos/area.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#include "common.h"
|
||||||
|
#include "effects.h"
|
||||||
|
#include "battle/battle.h"
|
||||||
|
#include "script_api/battle.h"
|
||||||
|
|
||||||
|
#define AREA b_area_hos
|
@ -1,82 +1,3 @@
|
|||||||
#include "common.h"
|
#include "../area.h"
|
||||||
#include "battle/battle.h"
|
|
||||||
#include "mapfs/nok_bt02_shape.h"
|
|
||||||
|
|
||||||
#define NAMESPACE b_area_hos_hos_00
|
#include "battle/common/stage/area_hos/hos_00.inc.c"
|
||||||
|
|
||||||
EvtScript N(EVS_AnimateFlower) = {
|
|
||||||
EVT_SET(LVarA, LVar0)
|
|
||||||
EVT_LABEL(0)
|
|
||||||
EVT_CALL(TranslateModel, LVarA, 0, 2, 0)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_CALL(TranslateModel, LVarA, 0, 0, 0)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_CALL(TranslateModel, LVarA, 0, 2, 0)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_CALL(TranslateModel, LVarA, 0, 0, 0)
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_CALL(RandInt, 30, LVar0)
|
|
||||||
EVT_ADD(LVar0, 30)
|
|
||||||
EVT_WAIT(LVar0)
|
|
||||||
EVT_GOTO(0)
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PreBattle) = {
|
|
||||||
EVT_CALL(SetSpriteShading, SHADING_NONE)
|
|
||||||
EVT_THREAD
|
|
||||||
EVT_SET(LVar0, MODEL_h1)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h3)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h4)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h5)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h6)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h7)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h9)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h10)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h11)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_WAIT(5)
|
|
||||||
EVT_SET(LVar0, MODEL_h12)
|
|
||||||
EVT_EXEC(N(EVS_AnimateFlower))
|
|
||||||
EVT_END_THREAD
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
EvtScript N(EVS_PostBattle) = {
|
|
||||||
EVT_RETURN
|
|
||||||
EVT_END
|
|
||||||
};
|
|
||||||
|
|
||||||
s32 N(ForegroundModels)[] = {
|
|
||||||
MODEL_hap,
|
|
||||||
MODEL_kusa3,
|
|
||||||
STAGE_MODEL_LIST_END
|
|
||||||
};
|
|
||||||
|
|
||||||
Stage NAMESPACE = {
|
|
||||||
.texture = "nok_tex",
|
|
||||||
.shape = "nok_bt02_shape",
|
|
||||||
.hit = "nok_bt02_hit",
|
|
||||||
.bg = "nok_bg",
|
|
||||||
.preBattle = &N(EVS_PreBattle),
|
|
||||||
.postBattle = &N(EVS_PostBattle),
|
|
||||||
.foregroundModelList = N(ForegroundModels),
|
|
||||||
};
|
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user