From 5e16385d6b15921fdc31518715a7cade636a1684 Mon Sep 17 00:00:00 2001 From: mrshigure Date: Sun, 19 May 2024 05:56:26 -0700 Subject: [PATCH] [JP] Battle Code and Battle Areas --- src/battle/16C8E0.c | 8 + src/battle/actors.c | 7 +- src/battle/actors_jp.yaml | 2336 +++++++++++++++++ .../area/kmr_part_3/actor/final_jr_troopa.c | 8 + src/battle/area/kpa2/actor/hallway_bowser.c | 4 + src/battle/area/tik2/actor/super_blooper.c | 4 + src/battle/btl_states_actions.c | 6 + src/battle/common/actor/duplighost.inc.c | 2 +- .../actor/duplighost/ghost_bombette.inc.c | 4 + .../actor/duplighost/ghost_kooper.inc.c | 8 + .../actor/duplighost/ghost_parakarry.inc.c | 4 + .../common/actor/duplighost/ghost_watt.inc.c | 12 + src/battle/dmg_player.c | 2 + src/battle/level_up.c | 25 + src/battle/popup_messages.c | 380 ++- tools/build/configure.py | 32 +- tools/splat_ext/msg_jp.yaml | 588 +++++ ver/jp/splat.yaml | 1068 +++++++- ver/jp/symbol_addrs.txt | 7 + ver/jp/undefined_syms.txt | 365 +-- 20 files changed, 4366 insertions(+), 504 deletions(-) create mode 100644 src/battle/actors_jp.yaml diff --git a/src/battle/16C8E0.c b/src/battle/16C8E0.c index 0228cb0d8b3..c6b99343258 100644 --- a/src/battle/16C8E0.c +++ b/src/battle/16C8E0.c @@ -66,7 +66,11 @@ EvtScript BtlPutPartnerAway = { Add(LVar1, 25) Call(SetActorJumpGravity, ACTOR_PARTNER, Float(1.0)) Call(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) +#if VERSION_JP + Call(JumpToGoal, ACTOR_PARTNER, 10, 0, 1, 1) +#else Call(JumpToGoal, ACTOR_PARTNER, 10, 0, 0, 1) +#endif Call(DisablePartnerBlur) Return End @@ -88,7 +92,11 @@ EvtScript BtlBringPartnerOut = { IfEq(LVar1, 0) Call(JumpToGoal, ACTOR_PARTNER, 20, 0, 0, 1) Else +#if VERSION_JP + Call(JumpToGoal, ACTOR_PARTNER, 20, 0, 1, 1) +#else Call(JumpToGoal, ACTOR_PARTNER, 20, 0, 0, 1) +#endif EndIf Call(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) Call(ForceHomePos, ACTOR_PARTNER, LVar0, LVar1, LVar2) diff --git a/src/battle/actors.c b/src/battle/actors.c index 7095ceef924..85ce1ac6747 100644 --- a/src/battle/actors.c +++ b/src/battle/actors.c @@ -206,8 +206,11 @@ Vec3s StandardActorHomePositions[] = { }; // TODO: what is this, and look into warnings that are silenced via casts +// Note: check D_8028358C_2 in battle/popup_messages.c (file split might be incorrect) s32* D_8028358C[] = { (s32*)-1, (s32*)-1, (s32*)-1, (s32*)-1, (s32*)-1, (s32*)-1, (s32*)-1, (s32*)-1, - (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, - (s32*)D_8028358C, (s32*)D_8028358C, 0 + (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, +#if !VERSION_JP + (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C, 0 +#endif }; diff --git a/src/battle/actors_jp.yaml b/src/battle/actors_jp.yaml new file mode 100644 index 00000000000..75b24cbed86 --- /dev/null +++ b/src/battle/actors_jp.yaml @@ -0,0 +1,2336 @@ +- RedGoomba: + level: 6 + nameMsg: MSG_EnemyName_RedGoomba + tattleMsg: MSG_EnemyTattle_RedGoomba + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- RedParagoomba: + level: 6 + nameMsg: MSG_EnemyName_RedParagoomba + tattleMsg: MSG_EnemyTattle_RedParagoomba + walkSound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + flySound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Gloomba: + level: 11 + nameMsg: MSG_EnemyName_Gloomba + tattleMsg: MSG_EnemyTattle_Gloomba + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- Paragloomba: + level: 11 + nameMsg: MSG_EnemyName_Paragloomba + tattleMsg: MSG_EnemyTattle_Paragloomba + walkSound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + flySound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- SpikedGloomba: + level: 12 + nameMsg: MSG_EnemyName_SpikedGloomba + tattleMsg: MSG_EnemyTattle_SpikedGloomba + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- DarkKoopa: + level: 18 + nameMsg: MSG_EnemyName_DarkKoopa + tattleMsg: MSG_EnemyTattle_DarkKoopa + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 2, 0 ] + shadowOffset: 0 +- DarkParatroopa: + level: 18 + nameMsg: MSG_EnemyName_DarkParatroopa + tattleMsg: MSG_EnemyTattle_DarkParatroopa + walkSound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + flySound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 3, 0 ] + shadowOffset: 0 +- Goomba: + level: 5 + nameMsg: MSG_EnemyName_Goomba + tattleMsg: MSG_EnemyTattle_Goomba + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- Paragoomba: + level: 6 + nameMsg: MSG_EnemyName_Paragoomba + tattleMsg: MSG_EnemyTattle_Paragoomba + walkSound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + flySound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- SpikedGoomba: + level: 6 + nameMsg: MSG_EnemyName_SpikedGoomba + tattleMsg: MSG_EnemyTattle_SpikedGoomba + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- Fuzzy: + level: 6 + nameMsg: MSG_EnemyName_Fuzzy + tattleMsg: MSG_EnemyTattle_Fuzzy + walkSound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + flySound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + jumpSound: SOUND_FUZZY_HOP_A + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- KoopaTroopa: + level: 6 + nameMsg: MSG_EnemyName_KoopaTroopa + tattleMsg: MSG_EnemyTattle_KoopaTroopa + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 2, 0 ] + shadowOffset: 0 +- Paratroopa: + level: 6 + nameMsg: MSG_EnemyName_Paratroopa + tattleMsg: MSG_EnemyTattle_Paratroopa + walkSound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + flySound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 3, 0 ] + shadowOffset: 0 +- BobOmb: + level: 6 + nameMsg: MSG_EnemyName_BobOmb + tattleMsg: MSG_EnemyTattle_BobOmb + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- BobOmb_Dup: + level: 6 + nameMsg: MSG_EnemyName_BobOmb + tattleMsg: MSG_EnemyTattle_BobOmb + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- BulletBill: + level: 5 + nameMsg: MSG_EnemyName_BulletBill + tattleMsg: MSG_EnemyTattle_BulletBill + walkSound: [ SOUND_BULLET_BILL_MOTION, SOUND_BULLET_BILL_MOTION ] + flySound: [ SOUND_BULLET_BILL_MOTION, SOUND_BULLET_BILL_MOTION ] + jumpSound: SOUND_BULLET_BILL_MOTION + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- BillBlaster: + level: 10 + nameMsg: MSG_EnemyName_BillBlaster + tattleMsg: MSG_EnemyTattle_BillBlaster + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- Cleft: + level: 10 + nameMsg: MSG_EnemyName_Cleft + tattleMsg: MSG_EnemyTattle_Cleft + walkSound: [ SOUND_CLEFT_STEP, SOUND_CLEFT_STEP ] + flySound: [ SOUND_CLEFT_STEP, SOUND_CLEFT_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 254, 241 ] + shadowOffset: 0 +- MontyMole: + level: 8 + nameMsg: MSG_EnemyName_MontyMole + tattleMsg: MSG_EnemyTattle_MontyMole + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 14, 0 ] + shadowOffset: 0 +- Bandit: + level: 9 + nameMsg: MSG_EnemyName_Bandit + tattleMsg: MSG_EnemyTattle_Bandit + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- Pokey: + level: 9 + nameMsg: MSG_EnemyName_Pokey + tattleMsg: MSG_EnemyTattle_Pokey + walkSound: [ SOUND_POKEY_WALK, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- PokeyMummy: + level: 10 + nameMsg: MSG_EnemyName_PokeyMummy + tattleMsg: MSG_EnemyTattle_PokeyMummy + walkSound: [ SOUND_POKEY_WALK, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Swooper: + level: 10 + nameMsg: MSG_EnemyName_Swooper + tattleMsg: MSG_EnemyTattle_Swooper + walkSound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- BuzzyBeetle: + level: 10 + nameMsg: MSG_EnemyName_BuzzyBeetle + tattleMsg: MSG_EnemyTattle_BuzzyBeetle + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 10, 0 ] + shadowOffset: 0 +- StoneChomp: + level: 14 + nameMsg: MSG_EnemyName_StoneChomp + tattleMsg: MSG_EnemyTattle_StoneChomp + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- PiranhaPlant: + level: 11 + nameMsg: MSG_EnemyName_PiranhaPlant + tattleMsg: MSG_EnemyTattle_PiranhaPlant + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ForestFuzzy: + level: 11 + nameMsg: MSG_EnemyName_ForestFuzzy + tattleMsg: MSG_EnemyTattle_ForestFuzzy + walkSound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + flySound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + jumpSound: SOUND_FUZZY_HOP_A + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- HyperGoomba: + level: 12 + nameMsg: MSG_EnemyName_HyperGoomba + tattleMsg: MSG_EnemyTattle_HyperGoomba + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- HyperParagoomba: + level: 12 + nameMsg: MSG_EnemyName_HyperParagoomba + tattleMsg: MSG_EnemyTattle_HyperParagoomba + walkSound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + flySound: [ SOUND_PARAGOOMBA_FLY, SOUND_PARAGOOMBA_FLY ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- HyperCleft: + level: 15 + nameMsg: MSG_EnemyName_HyperCleft + tattleMsg: MSG_EnemyTattle_HyperCleft + walkSound: [ SOUND_CLEFT_STEP, SOUND_CLEFT_STEP ] + flySound: [ SOUND_CLEFT_STEP, SOUND_CLEFT_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 254, 241 ] + shadowOffset: 0 +- Clubba: + level: 13 + nameMsg: MSG_EnemyName_Clubba + tattleMsg: MSG_EnemyTattle_Clubba + walkSound: [ SOUND_CLUBBA_STEP, SOUND_CLUBBA_STEP ] + flySound: [ SOUND_CLUBBA_STEP, SOUND_CLUBBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ShyGuy: + level: 14 + nameMsg: MSG_EnemyName_ShyGuy + tattleMsg: MSG_EnemyTattle_ShyGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- GrooveGuy: + level: 15 + nameMsg: MSG_EnemyName_GrooveGuy + tattleMsg: MSG_EnemyTattle_GrooveGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- SkyGuy: + level: 14 + nameMsg: MSG_EnemyName_SkyGuy + tattleMsg: MSG_EnemyTattle_SkyGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 15, 23 ] + shadowOffset: 0 +- MediGuy: + level: 14 + nameMsg: MSG_EnemyName_MediGuy + tattleMsg: MSG_EnemyTattle_MediGuy + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_SHY_GUY_FLY, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- PyroGuy: + level: 15 + nameMsg: MSG_EnemyName_PyroGuy + tattleMsg: MSG_EnemyTattle_PyroGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SpyGuy: + level: 15 + nameMsg: MSG_EnemyName_SpyGuy + tattleMsg: MSG_EnemyTattle_SpyGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 3, 0 ] + shadowOffset: 0 +- Fuzzipede: + level: 43 + nameMsg: MSG_EnemyName_Fuzzipede + tattleMsg: MSG_EnemyTattle_Fuzzipede + walkSound: [ SOUND_FUZZIPEDE_MOTION, SOUND_FUZZIPEDE_MOTION ] + flySound: [ SOUND_FUZZIPEDE_MOTION, SOUND_FUZZIPEDE_MOTION ] + jumpSound: SOUND_FUZZIPEDE_MOTION + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- HurtPlant: + level: 16 + nameMsg: MSG_EnemyName_HurtPlant + tattleMsg: MSG_EnemyTattle_HurtPlant + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- MBush: + level: 16 + nameMsg: MSG_EnemyName_MBush + tattleMsg: MSG_EnemyTattle_MBush + walkSound: [ SOUND_MBUSH_STEP, SOUND_MBUSH_STEP ] + flySound: [ SOUND_MBUSH_STEP, SOUND_MBUSH_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 7, 0 ] + shadowOffset: 0 +- AquaFuzzy: + level: 16 + nameMsg: MSG_EnemyName_AquaFuzzy + tattleMsg: MSG_EnemyTattle_AquaFuzzy + walkSound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + flySound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + jumpSound: SOUND_FUZZY_HOP_A + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- JungleFuzzy: + level: 16 + nameMsg: MSG_EnemyName_JungleFuzzy + tattleMsg: MSG_EnemyTattle_JungleFuzzy + walkSound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + flySound: [ SOUND_FUZZY_HOP_A, SOUND_FUZZY_HOP_A ] + jumpSound: SOUND_FUZZY_HOP_A + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- SpearGuy: + level: 16 + nameMsg: MSG_EnemyName_SpearGuy + tattleMsg: MSG_EnemyTattle_SpearGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- LavaBubble: + level: 17 + nameMsg: MSG_EnemyName_LavaBubble + tattleMsg: MSG_EnemyTattle_LavaBubble + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SpikeTop: + level: 17 + nameMsg: MSG_EnemyName_SpikeTop + tattleMsg: MSG_EnemyTattle_SpikeTop + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- PutridPiranha: + level: 17 + nameMsg: MSG_EnemyName_PutridPiranha + tattleMsg: MSG_EnemyTattle_PutridPiranha + walkSound: [ SOUND_PIRANHA_STEP, SOUND_PIRANHA_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Lakitu: + level: 20 + nameMsg: MSG_EnemyName_Lakitu + tattleMsg: MSG_EnemyTattle_Lakitu + walkSound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + flySound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ -5, -5 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Spiny: + level: 19 + nameMsg: MSG_EnemyName_Spiny + tattleMsg: MSG_EnemyTattle_Spiny + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- MontyMoleBoss: + level: 19 + nameMsg: MSG_EnemyName_MontyMoleBoss + tattleMsg: MSG_EnemyTattle_MontyMoleBoss + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 14, 0 ] + shadowOffset: 0 +- Bzzap: + level: 19 + nameMsg: MSG_EnemyName_Bzzap + tattleMsg: MSG_EnemyTattle_Bzzap + walkSound: [ SOUND_BZZAP_BUZZ, SOUND_NONE ] + flySound: [ SOUND_BZZAP_BUZZ, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- CrazeeDayzee: + level: 19 + nameMsg: MSG_EnemyName_CrazeeDayzee + tattleMsg: MSG_EnemyTattle_CrazeeDayzee + walkSound: [ SOUND_DAYZEE_STEP, SOUND_DAYZEE_STEP ] + flySound: [ SOUND_DAYZEE_STEP, SOUND_DAYZEE_STEP ] + jumpSound: SOUND_DAYZEE_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 2, 0 ] + shadowOffset: 0 +- AmazyDayzee: + level: 100 + nameMsg: MSG_EnemyName_AmazyDayzee + tattleMsg: MSG_EnemyTattle_AmazyDayzee + walkSound: [ SOUND_DAYZEE_STEP, SOUND_DAYZEE_STEP ] + flySound: [ SOUND_DAYZEE_STEP, SOUND_DAYZEE_STEP ] + jumpSound: SOUND_DAYZEE_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 2, 0 ] + shadowOffset: 0 +- RuffPuff: + level: 19 + nameMsg: MSG_EnemyName_RuffPuff + tattleMsg: MSG_EnemyTattle_RuffPuff + walkSound: [ SOUND_FLIGHT, SOUND_NONE ] + flySound: [ SOUND_FLIGHT, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Spike: + level: 40 + nameMsg: MSG_EnemyName_Spike + tattleMsg: MSG_EnemyTattle_Spike + walkSound: [ SOUND_FLIGHT, SOUND_NONE ] + flySound: [ SOUND_FLIGHT, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Gulpit: + level: 22 + nameMsg: MSG_EnemyName_Gulpit + tattleMsg: MSG_EnemyTattle_Gulpit + walkSound: [ SOUND_CLUBBA_STEP, SOUND_CLUBBA_STEP ] + flySound: [ SOUND_CLUBBA_STEP, SOUND_CLUBBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GulpitRocks: + level: 0 + nameMsg: MSG_EnemyName_GulpitRocks + tattleMsg: MSG_EnemyTattle_GulpitRocks + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- WhiteClubba: + level: 23 + nameMsg: MSG_EnemyName_WhiteClubba + tattleMsg: MSG_EnemyTattle_WhiteClubba + walkSound: [ SOUND_CLUBBA_STEP, SOUND_CLUBBA_STEP ] + flySound: [ SOUND_CLUBBA_STEP, SOUND_CLUBBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FrostPiranha: + level: 22 + nameMsg: MSG_EnemyName_FrostPiranha + tattleMsg: MSG_EnemyTattle_FrostPiranha + walkSound: [ SOUND_PIRANHA_STEP, SOUND_PIRANHA_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Swoopula: + level: 22 + nameMsg: MSG_EnemyName_Swoopula + tattleMsg: MSG_EnemyTattle_Swoopula + walkSound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- AlbinoDino: + level: 23 + nameMsg: MSG_EnemyName_AlbinoDino + tattleMsg: MSG_EnemyTattle_AlbinoDino + walkSound: [ SOUND_ALBINO_DINO_STEP_A, SOUND_ALBINO_DINO_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Duplighost: + level: 23 + nameMsg: MSG_EnemyName_Duplighost + tattleMsg: MSG_EnemyTattle_Duplighost + walkSound: [ SOUND_DUPLIGHOST_STEP, SOUND_DUPLIGHOST_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GhostGoombario: + level: 23 + nameMsg: MSG_EnemyName_GhostGoombario + tattleMsg: MSG_EnemyTattle_GhostGoombario + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- GhostKooper: + level: 23 + nameMsg: MSG_EnemyName_GhostKooper + tattleMsg: MSG_EnemyTattle_GhostKooper + walkSound: [ SOUND_KOOPER_STEP, SOUND_KOOPER_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 2, 0 ] + shadowOffset: 0 +- GhostBombette: + level: 23 + nameMsg: MSG_EnemyName_GhostBombette + tattleMsg: MSG_EnemyTattle_GhostBombette + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- GhostParakarry: + level: 23 + nameMsg: MSG_EnemyName_GhostParakarry + tattleMsg: MSG_EnemyTattle_GhostParakarry + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GhostBow: + level: 23 + nameMsg: MSG_EnemyName_GhostBow + tattleMsg: MSG_EnemyTattle_GhostBow + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GhostWatt: + level: 23 + nameMsg: MSG_EnemyName_GhostWatt + tattleMsg: MSG_EnemyTattle_GhostWatt + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GhostSushie: + level: 23 + nameMsg: MSG_EnemyName_GhostSushie + tattleMsg: MSG_EnemyTattle_GhostSushie + walkSound: [ SOUND_SUSHIE_STEP, SOUND_SUSHIE_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 8, 0 ] + shadowOffset: 0 +- GhostLakilester: + level: 23 + nameMsg: MSG_EnemyName_GhostLakilester + tattleMsg: MSG_EnemyTattle_GhostLakilester + walkSound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + flySound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ -5, -5 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Ember: + level: 24 + nameMsg: MSG_EnemyName_Ember + tattleMsg: MSG_EnemyTattle_Ember + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- BonyBeetle: + level: 25 + nameMsg: MSG_EnemyName_BonyBeetle + tattleMsg: MSG_EnemyTattle_BonyBeetle + walkSound: [ SOUND_BONY_BEETLE_STEP, SOUND_BONY_BEETLE_STEP ] + flySound: [ SOUND_BONY_BEETLE_STEP, SOUND_BONY_BEETLE_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- DryBones: + level: 30 + nameMsg: MSG_EnemyName_DryBones + tattleMsg: MSG_EnemyTattle_DryBones + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 3, 0 ] + shadowOffset: 0 +- DryBones2: + level: 30 + nameMsg: MSG_EnemyName_DryBones + tattleMsg: MSG_EnemyTattle_DryBones + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 3, 0 ] + shadowOffset: 0 +- BombshellBlaster: + level: 27 + nameMsg: MSG_EnemyName_BombshellBlaster + tattleMsg: MSG_EnemyTattle_BombshellBlaster + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- BombshellBill: + level: 24 + nameMsg: MSG_EnemyName_BombshellBill + tattleMsg: MSG_EnemyTattle_BombshellBill + walkSound: [ SOUND_BULLET_BILL_MOTION, SOUND_BULLET_BILL_MOTION ] + flySound: [ SOUND_BULLET_BILL_MOTION, SOUND_BULLET_BILL_MOTION ] + jumpSound: SOUND_BULLET_BILL_MOTION + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- HammerBros: + level: 27 + nameMsg: MSG_EnemyName_HammerBros + tattleMsg: MSG_EnemyTattle_HammerBros + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 2, 0 ] + shadowOffset: 0 +- Koopatrol: + level: 25 + nameMsg: MSG_EnemyName_Koopatrol + tattleMsg: MSG_EnemyTattle_Koopatrol + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Magikoopa: + level: 26 + nameMsg: MSG_EnemyName_Magikoopa + tattleMsg: MSG_EnemyTattle_Magikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingMagikoopa: + level: 26 + nameMsg: MSG_EnemyName_FlyingMagikoopa + tattleMsg: MSG_EnemyTattle_MagikoopaDup + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Magiclone: + level: 26 + nameMsg: MSG_EnemyName_Magiclone + tattleMsg: MSG_EnemyTattle_Magiclone + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingMagiclone: + level: 26 + nameMsg: MSG_EnemyName_FlyingMagiclone + tattleMsg: MSG_EnemyTattle_MagicloneDup + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- RedMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_RedMagikoopa + tattleMsg: MSG_EnemyTattle_RedMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingRedMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_FlyingRedMagikoopa + tattleMsg: MSG_EnemyTattle_FlyingRedMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GreenMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_GreenMagikoopa + tattleMsg: MSG_EnemyTattle_GreenMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingGreenMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_FlyingGreenMagikoopa + tattleMsg: MSG_EnemyTattle_FlyingGreenMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- YellowMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_YellowMagikoopa + tattleMsg: MSG_EnemyTattle_YellowMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingYellowMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_FlyingYellowMagikoopa + tattleMsg: MSG_EnemyTattle_FlyingYellowMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GrayMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_GrayMagikoopa + tattleMsg: MSG_EnemyTattle_GrayMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingGrayMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_FlyingGrayMagikoopa + tattleMsg: MSG_EnemyTattle_FlyingGrayMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- WhiteMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_WhiteMagikoopa + tattleMsg: MSG_EnemyTattle_FlyingWhiteMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingWhiteMagikoopa: + level: 21 + nameMsg: MSG_EnemyName_FlyingWhiteMagikoopa + tattleMsg: MSG_EnemyTattle_WhiteMagikoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_5b: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_5c: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_5d: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_5e: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_5f: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_60: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_61: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_62: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_63: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_64: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_65: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_66: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + flySound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ -5, -5 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_67: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- Unused_68: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_69: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_6a: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- MontyHole: + level: 9 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_6c: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_6d: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Player: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Goombario: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Kooper: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_KOOPER_STEP, SOUND_KOOPER_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Bombette: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Parakarry: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Bow: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Watt: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Sushie: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_SUSHIE_STEP, SOUND_SUSHIE_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Lakilester: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + flySound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ -5, -5 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Twink: + level: 0 + nameMsg: MSG_EnemyName_Twink + tattleMsg: MSG_EnemyTattle_Twink + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ -5, -5 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_78: + ignoreDuringCount: TRUE + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Unused_79: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- TheMaster_1: + level: 0 + nameMsg: MSG_EnemyName_TheMaster1 + tattleMsg: MSG_EnemyTattle_TheMaster1 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- TheMaster_2: + level: 0 + nameMsg: MSG_EnemyName_TheMaster2 + tattleMsg: MSG_EnemyTattle_TheMaster2 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- TheMaster_3: + level: 0 + nameMsg: MSG_EnemyName_TheMaster3 + tattleMsg: MSG_EnemyTattle_TheMaster3 + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- Chan: + level: 0 + nameMsg: MSG_EnemyName_Chan + tattleMsg: MSG_EnemyTattle_Chan + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 10, 0 ] + shadowOffset: 0 +- Lee: + level: 0 + nameMsg: MSG_EnemyName_Lee + tattleMsg: MSG_EnemyTattle_Lee + walkSound: [ SOUND_DUPLIGHOST_STEP, SOUND_DUPLIGHOST_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- LeeGoombario: + level: 0 + nameMsg: MSG_EnemyName_LeeGoombario + tattleMsg: MSG_EnemyTattle_LeeGoombario + walkSound: [ SOUND_GOOMBA_STEP, SOUND_GOOMBA_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 6, 0 ] + shadowOffset: 0 +- LeeKooper: + level: 0 + nameMsg: MSG_EnemyName_LeeKooper + tattleMsg: MSG_EnemyTattle_LeeKooper + walkSound: [ SOUND_KOOPER_STEP, SOUND_KOOPER_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 2, 0 ] + shadowOffset: 0 +- LeeBombette: + level: 0 + nameMsg: MSG_EnemyName_LeeBombette + tattleMsg: MSG_EnemyTattle_LeeBombette + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- LeeParakarry: + level: 0 + nameMsg: MSG_EnemyName_LeeParakarry + tattleMsg: MSG_EnemyTattle_LeeParakarry + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- LeeBow: + level: 0 + nameMsg: MSG_EnemyName_LeeBow + tattleMsg: MSG_EnemyTattle_LeeBow + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- LeeWatt: + level: 0 + nameMsg: MSG_EnemyName_LeeWatt + tattleMsg: MSG_EnemyTattle_LeeWatt + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- LeeSushie: + level: 0 + nameMsg: MSG_EnemyName_LeeSushie + tattleMsg: MSG_EnemyTattle_LeeSushie + walkSound: [ SOUND_SUSHIE_STEP, SOUND_SUSHIE_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 8, 0 ] + shadowOffset: 0 +- LeeLakilester: + level: 0 + nameMsg: MSG_EnemyName_LeeLakilester + tattleMsg: MSG_EnemyTattle_LeeLakilester + walkSound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + flySound: [ SOUND_FLIGHT, SOUND_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ -5, -5 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- KammyKoopa: + level: 99 + nameMsg: MSG_EnemyName_KammyKoopa + tattleMsg: MSG_EnemyTattle_KammyKoopa + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- JrTroopa_1: + level: 41 + nameMsg: MSG_EnemyName_JrTroopa1 + tattleMsg: MSG_EnemyTattle_JrTroopa1 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- JrTroopa_2: + level: 44 + nameMsg: MSG_EnemyName_JrTroopa2 + tattleMsg: MSG_EnemyTattle_JrTroopa2 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- JrTroopa_3: + level: 52 + nameMsg: MSG_EnemyName_JrTroopa3 + tattleMsg: MSG_EnemyTattle_JrTroopa3 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- JrTroopa_4: + level: 59 + nameMsg: MSG_EnemyName_JrTroopa4 + tattleMsg: MSG_EnemyTattle_JrTroopa4 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- JrTroopa_5: + level: 65 + nameMsg: MSG_EnemyName_JrTroopa5 + tattleMsg: MSG_EnemyTattle_JrTroopa5 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- JrTroopa_6: + level: 74 + nameMsg: MSG_EnemyName_JrTroopa6 + tattleMsg: MSG_EnemyTattle_JrTroopa6 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- JrTroopaDup1: + level: 74 + nameMsg: MSG_EnemyName_JrTroopa6 + tattleMsg: MSG_EnemyTattle_JrTroopa6 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- JrTroopaDup2: + level: 74 + nameMsg: MSG_EnemyName_JrTroopa6 + tattleMsg: MSG_EnemyTattle_JrTroopa6 + walkSound: [ SOUND_SMALL_NPC_STEP, SOUND_SMALL_NPC_STEP ] + flySound: [ SOUND_ACTOR_FLIGHT, SOUND_ACTOR_FLIGHT ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- BlueGoombaBoss: + level: 20 + nameMsg: MSG_EnemyName_BlueGoombaBoss + tattleMsg: MSG_EnemyTattle_BlueGoombaBoss + walkSound: [ SOUND_GOOMBA_BROS_STEP, SOUND_GOOMBA_BROS_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_HURT + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- RedGoombaBoss: + level: 20 + nameMsg: MSG_EnemyName_RedGoombaBoss + tattleMsg: MSG_EnemyTattle_RedGoombaBoss + walkSound: [ SOUND_GOOMBA_BROS_STEP, SOUND_GOOMBA_BROS_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_HURT + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- GoombaKing: + level: 49 + nameMsg: MSG_EnemyName_GoombaKing + tattleMsg: MSG_EnemyTattle_GoombaKing + walkSound: [ SOUND_HEAVY_NPC_STEP_A, SOUND_HEAVY_NPC_STEP_A ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 22, 30 ] + tattleCamOffset: [ 0, 6, 10 ] + shadowOffset: 0 +- GoomnutTree: + ignoreDuringCount: TRUE + level: 1 + nameMsg: MSG_EnemyName_GoomnutTree + tattleMsg: MSG_EnemyTattle_GoomnutTree + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 8, 12, 17 ] + shadowOffset: 0 +- GoombarioTutor1: + level: 99 + nameMsg: MSG_EnemyName_GoombarioTutor + tattleMsg: MSG_EnemyTattle_GoombarioTutor + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- MagikoopaBoss: + level: 32 + nameMsg: MSG_EnemyName_MagikoopaBoss + tattleMsg: MSG_EnemyTattle_MagikoopaBoss + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FlyingMagikoopaBoss: + level: 32 + nameMsg: MSG_EnemyName_FlyingMagikoopaBoss + tattleMsg: MSG_EnemyTattle_MagikoopaBossDup + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- MagikoopaDup1: + level: 0 + nameMsg: MSG_EnemyName_MagikoopaBoss + tattleMsg: MSG_EnemyTattle_MagikoopaBoss + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- MagikoopaDup2: + level: 0 + nameMsg: MSG_EnemyName_FlyingMagikoopaBoss + tattleMsg: MSG_EnemyTattle_MagikoopaBossDup + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- FakeBowser: + ignoreDuringCount: TRUE + level: 0 + nameMsg: MSG_EnemyName_FakeBowser + tattleMsg: MSG_EnemyTattle_FakeBowser + walkSound: [ SOUND_FAKE_BOWSER_STEP, SOUND_FAKE_BOWSER_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- KoopaBros: + level: 0 + nameMsg: MSG_EnemyName_KoopaBros + tattleMsg: MSG_EnemyTattle_KoopaBros + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 26 ] + shadowOffset: 26 +- GreenNinjakoopa: + level: 16 + nameMsg: MSG_EnemyName_GreenNinjakoopa + tattleMsg: MSG_EnemyTattle_GreenNinjakoopa + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- RedNinjakoopa: + level: 17 + nameMsg: MSG_EnemyName_RedNinjakoopa + tattleMsg: MSG_EnemyTattle_RedNinjakoopa + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- BlackNinjakoopa: + level: 17 + nameMsg: MSG_EnemyName_BlackNinjakoopa + tattleMsg: MSG_EnemyTattle_BlackNinjakoopa + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- YellowNinjakoopa: + level: 16 + nameMsg: MSG_EnemyName_YellowNinjakoopa + tattleMsg: MSG_EnemyTattle_YellowNinjakoopa + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 4, 0 ] + shadowOffset: 0 +- Eldstar: + level: 99 + nameMsg: MSG_EnemyName_GoombarioTutor + tattleMsg: MSG_EnemyTattle_GoombarioTutor + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Buzzar: + level: 35 + nameMsg: MSG_EnemyName_Buzzar + tattleMsg: MSG_EnemyTattle_Buzzar + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_BUZZAR_FLAP, SOUND_BUZZAR_FLAP ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ -14, -14 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Tutankoopa: + level: 55 + nameMsg: MSG_EnemyName_Tutankoopa + tattleMsg: MSG_EnemyTattle_Tutankoopa + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ -3, -3 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Chomp: + level: 14 + nameMsg: MSG_EnemyName_Chomp + tattleMsg: MSG_EnemyTattle_Chomp + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- TubbaBlubbaInvincible: + level: 70 + nameMsg: MSG_EnemyName_TubbaBlubbaInvincible + tattleMsg: MSG_EnemyTattle_TubbaBlubba + walkSound: [ SOUND_HEAVY_NPC_STEP_C, SOUND_HEAVY_NPC_STEP_C ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- TubbaBlubba: + level: 0 + nameMsg: MSG_EnemyName_TubbaBlubba + tattleMsg: MSG_EnemyTattle_TubbaBlubbaInvincible + walkSound: [ SOUND_HEAVY_NPC_STEP_C, SOUND_HEAVY_NPC_STEP_C ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- TubbaHeart: + level: 0 + nameMsg: MSG_EnemyName_TubbaHeart + tattleMsg: MSG_EnemyTattle_TubbaHeart + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_TUBBA_HEART_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- StiltGuy: + level: 0 + nameMsg: MSG_EnemyName_StiltGuy + tattleMsg: MSG_EnemyTattle_StiltGuy + walkSound: [ SOUND_STILT_GUY_STEP, SOUND_STILT_GUY_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ShyStack: + level: 0 + nameMsg: MSG_EnemyName_ShyStack + tattleMsg: MSG_EnemyTattle_ShyStack + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 10, 10 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ShySquad: + level: 0 + nameMsg: MSG_EnemyName_ShySquad + tattleMsg: MSG_EnemyTattle_ShySquad + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 5, 0 ] + shadowOffset: 0 +- GeneralGuy: + level: 73 + nameMsg: MSG_EnemyName_GeneralGuyDup + tattleMsg: MSG_EnemyTattle_GeneralGuyDup + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ToyTank: + level: 0 + nameMsg: MSG_EnemyName_GeneralGuy + tattleMsg: MSG_EnemyTattle_GeneralGuy + walkSound: [ SOUND_TOY_TANK_STEP, SOUND_TOY_TANK_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- LightBulb: + level: 0 + nameMsg: MSG_EnemyName_Bulb + tattleMsg: MSG_EnemyTattle_Bulb + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SignalGuy: + level: 0 + nameMsg: MSG_EnemyName_ShyGuy + tattleMsg: MSG_EnemyTattle_ShyGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ShySquadRedux: + level: 0 + nameMsg: MSG_EnemyName_ShySquadRedux + tattleMsg: MSG_EnemyTattle_ShySquadRedux + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ShySquadStub: + level: 0 + nameMsg: MSG_EnemyName_ShyGuy + tattleMsg: MSG_EnemyTattle_ShyGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_A ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- AntiGuyOmo: + level: 42 + nameMsg: MSG_EnemyName_AntiGuy + tattleMsg: MSG_EnemyTattle_AntiGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- AntiGuyKpa: + level: 42 + nameMsg: MSG_EnemyName_AntiGuy + tattleMsg: MSG_EnemyTattle_AntiGuy + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- BigLanternGhost: + level: 42 + nameMsg: MSG_EnemyName_BigLanternGhost + tattleMsg: MSG_EnemyTattle_BigLanternGhost + walkSound: [ SOUND_LANTERN_GHOST_STEP, SOUND_LANTERN_GHOST_STEP ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- GoombaKing_Dup: + ignoreDuringCount: TRUE + level: 49 + nameMsg: MSG_EnemyName_GoombaKing + tattleMsg: MSG_EnemyTattle_GoombaKing + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- LavaPiranha_Phase_1: + level: 45 + nameMsg: MSG_EnemyName_LavaPiranhaPhase1 + tattleMsg: MSG_EnemyTattle_LavaPiranhaPhase1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 25, 250, 60 ] + shadowOffset: 0 +- LavaPiranha_Phase_2: + level: 45 + nameMsg: MSG_EnemyName_LavaPiranhaPhase2 + tattleMsg: MSG_EnemyTattle_LavaPiranhaPhase2 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 25, 250, 60 ] + shadowOffset: 0 +- LavaBud_Phase_1: + level: 0 + nameMsg: MSG_EnemyName_LavaBudPhase1 + tattleMsg: MSG_EnemyTattle_LavaBudPhase1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 233, 0 ] + shadowOffset: 0 +- LavaBud_Phase_2: + level: 0 + nameMsg: MSG_EnemyName_LavaBudPhase2 + tattleMsg: MSG_EnemyTattle_LavaBudPhase2 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 233, 0 ] + shadowOffset: 0 +- PetitPiranha: + level: 0 + nameMsg: MSG_EnemyName_PetitPiranha + tattleMsg: MSG_EnemyTattle_PetitPiranha + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- PetitPiranhaBomb: + level: 0 + nameMsg: MSG_EnemyName_LavaPiranhaPhase1 + tattleMsg: MSG_EnemyTattle_LavaPiranhaPhase1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- KentCKoopa: + level: 55 + nameMsg: MSG_EnemyName_KentCKoopa + tattleMsg: MSG_EnemyTattle_KentCKoopa + walkSound: [ SOUND_HEAVY_NPC_STEP_A, SOUND_HEAVY_NPC_STEP_A ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- HuffNPuff: + level: 80 + nameMsg: MSG_EnemyName_HuffNPuff + tattleMsg: MSG_EnemyTattle_HuffNPuff + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_HUFF_N_PUFF_FLY, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- TuffPuff: + level: 0 + nameMsg: MSG_EnemyName_TuffPuff + tattleMsg: MSG_EnemyTattle_TuffPuff + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Monstar: + level: 45 + nameMsg: MSG_EnemyName_Monstar + tattleMsg: MSG_EnemyTattle_Monstar + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- CrystalKing: + level: 85 + nameMsg: MSG_EnemyName_CrystalKing + tattleMsg: MSG_EnemyTattle_CrystalKing + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- CrystalClone: + level: 0 + nameMsg: MSG_EnemyName_CrystalClone + tattleMsg: MSG_EnemyTattle_CrystalClone + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- CrystalBit: + level: 0 + nameMsg: MSG_EnemyName_CrystalBit + tattleMsg: MSG_EnemyTattle_CrystalBit + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- IntroBowser: + level: 0 + nameMsg: MSG_EnemyName_Bowser + tattleMsg: MSG_EnemyTattle_Bowser + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_LARGE_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 241 +- HallwayBowser: + level: 100 + nameMsg: MSG_EnemyName_HallwayBowser + tattleMsg: MSG_EnemyTattle_HallwayBowser + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_LARGE_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 241 +- HallwayBowser_Dup: + level: 100 + nameMsg: MSG_EnemyName_HallwayBowser + tattleMsg: MSG_EnemyTattle_HallwayBowser + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 241 +- FinalBowser_1: + level: 0 + nameMsg: MSG_EnemyName_FinalBowser1 + tattleMsg: MSG_EnemyTattle_FinalBowser1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_LARGE_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 241, 19, 45 ] + shadowOffset: 241 +- FinalBowser_1_Dup: + level: 0 + nameMsg: MSG_EnemyName_FinalBowser1 + tattleMsg: MSG_EnemyTattle_FinalBowser1 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 241 +- FinalBowser_2: + level: 0 + nameMsg: MSG_EnemyName_FinalBowser2 + tattleMsg: MSG_EnemyTattle_FinalBowser2 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_LARGE_ACTOR_JUMP + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 241, 19, 45 ] + shadowOffset: 241 +- FinalBowser_2_Dup: + level: 0 + nameMsg: MSG_EnemyName_FinalBowser2 + tattleMsg: MSG_EnemyTattle_FinalBowser2 + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 241 +- Blooper: + level: 44 + nameMsg: MSG_EnemyName_Blooper + tattleMsg: MSG_EnemyTattle_Blooper + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 25, 25 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ElectroBlooper1: + level: 50 + nameMsg: MSG_EnemyName_ElectroBlooper + tattleMsg: MSG_EnemyTattle_ElectroBlooper + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 25, 25 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- ElectroBlooper2: + level: 50 + nameMsg: MSG_EnemyName_ElectroBlooper + tattleMsg: MSG_EnemyTattle_ElectroBlooper + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 25, 25 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SuperBlooper1: + level: 65 + nameMsg: MSG_EnemyName_SuperBlooper + tattleMsg: MSG_EnemyTattle_SuperBlooper + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 25, 25 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SuperBlooper2: + level: 65 + nameMsg: MSG_EnemyName_SuperBlooper + tattleMsg: MSG_EnemyTattle_SuperBlooper + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 25, 25 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- BlooperBaby: + level: 0 + nameMsg: MSG_EnemyName_BlooperBaby + tattleMsg: MSG_EnemyTattle_BlooperBaby + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- Lakilester_Dup: + level: 0 + nameMsg: MSG_EnemyName_GhostLakilester + tattleMsg: MSG_EnemyTattle_GhostLakilester + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SlotMachineStart: + level: 99 + nameMsg: MSG_EnemyName_SlotMachineStart + tattleMsg: MSG_EnemyTattle_SlotMachineStart + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 226, 0 ] + shadowOffset: 0 +- SlotMachineStop: + level: 99 + nameMsg: MSG_EnemyName_SlotMachineStop + tattleMsg: MSG_EnemyTattle_SlotMachineStop + walkSound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + flySound: [ SOUND_ACTOR_STEP_A, SOUND_ACTOR_STEP_B ] + jumpSound: SOUND_ACTOR_JUMP + hurtSound: SOUND_ACTOR_HURT + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 226, 0 ] + shadowOffset: 0 +- Whacka: + level: 0 + nameMsg: MSG_EnemyName_Whacka + tattleMsg: MSG_EnemyTattle_Whacka + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SlotMachineStartDup1: + level: 0 + nameMsg: MSG_EnemyName_SlotMachineStart + tattleMsg: MSG_EnemyTattle_SlotMachineStart + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SlotMachineStartDup2: + level: 0 + nameMsg: MSG_EnemyName_SlotMachineStart + tattleMsg: MSG_EnemyTattle_SlotMachineStart + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 +- SlotMachineStartDup3: + level: 0 + nameMsg: MSG_EnemyName_SlotMachineStart + tattleMsg: MSG_EnemyTattle_SlotMachineStart + walkSound: [ SOUND_NONE, SOUND_NONE ] + flySound: [ SOUND_NONE, SOUND_NONE ] + jumpSound: SOUND_NONE + hurtSound: SOUND_NONE + stepDelay: [ 30, 30 ] + tattleCamOffset: [ 0, 0, 0 ] + shadowOffset: 0 diff --git a/src/battle/area/kmr_part_3/actor/final_jr_troopa.c b/src/battle/area/kmr_part_3/actor/final_jr_troopa.c index 2b06f5d03be..8e3c8af75fe 100644 --- a/src/battle/area/kmr_part_3/actor/final_jr_troopa.c +++ b/src/battle/area/kmr_part_3/actor/final_jr_troopa.c @@ -60,7 +60,11 @@ enum N(ActorParams) { DMG_SWOOP = 8, DMG_SPIKE_DIVE = 9, DMG_SPELL = 8, +#if VERSION_JP + DMG_LIGHTNING = 5, +#else DMG_LIGHTNING = 9, +#endif }; // keys for getting form-specific anim sets @@ -1351,7 +1355,11 @@ EvtScript N(EVS_Move_HealSelf) = { Call(SetAnimation, ACTOR_SELF, PRT_MAGE, ANIM_MageJrTroopa_Idle) Wait(10) Call(GetEnemyMaxHP, ACTOR_SELF, LVar0) +#if VERSION_JP + Mul(LVar0, 16) +#else Mul(LVar0, 17) +#endif Div(LVar0, 100) Thread Wait(5) diff --git a/src/battle/area/kpa2/actor/hallway_bowser.c b/src/battle/area/kpa2/actor/hallway_bowser.c index f3c6e648fa1..88bb675f83a 100644 --- a/src/battle/area/kpa2/actor/hallway_bowser.c +++ b/src/battle/area/kpa2/actor/hallway_bowser.c @@ -86,7 +86,11 @@ s32 N(NormalDefense)[] = { }; s32 N(BoostedDefense)[] = { +#if VERSION_JP + ELEMENT_NORMAL, 5, +#else ELEMENT_NORMAL, 4, +#endif ELEMENT_END, }; diff --git a/src/battle/area/tik2/actor/super_blooper.c b/src/battle/area/tik2/actor/super_blooper.c index c973ce09aab..cd10af79295 100644 --- a/src/battle/area/tik2/actor/super_blooper.c +++ b/src/battle/area/tik2/actor/super_blooper.c @@ -37,7 +37,11 @@ enum N(ActorVars) { enum N(ActorParams) { DMG_SPIN_DROP = 5, DMG_INK_BLAST = 5, +#if VERSION_JP + DMG_RAGE_DROP = 4, +#else DMG_RAGE_DROP = 10, +#endif }; EvtScript N(EVS_FloatToPos) = { diff --git a/src/battle/btl_states_actions.c b/src/battle/btl_states_actions.c index 6ba77e5a529..f5bb65069f5 100644 --- a/src/battle/btl_states_actions.c +++ b/src/battle/btl_states_actions.c @@ -7,6 +7,12 @@ #include "model.h" #include "game_modes.h" +#if VERSION_JP +extern Addr btl_states_menus_ROM_START; +extern Addr btl_states_menus_ROM_END; +extern Addr btl_states_menus_VRAM; +#endif + extern StageListRow* gCurrentStagePtr; extern s16 D_802809F6; diff --git a/src/battle/common/actor/duplighost.inc.c b/src/battle/common/actor/duplighost.inc.c index bd0823d2cf4..6c0da07133c 100644 --- a/src/battle/common/actor/duplighost.inc.c +++ b/src/battle/common/actor/duplighost.inc.c @@ -5,7 +5,7 @@ #define NAMESPACE A(duplighost) -// scripts in duplighost.c calls two functions defined in ghost_watt.c for adjusting the background fade +// scripts in duplighost.c call two functions defined in ghost_watt.c for adjusting the background fade // this macro is used to highlight those instances #define WATT(x) A( watt_clone_##x ) diff --git a/src/battle/common/actor/duplighost/ghost_bombette.inc.c b/src/battle/common/actor/duplighost/ghost_bombette.inc.c index a4e4a4f689a..78039baad15 100644 --- a/src/battle/common/actor/duplighost/ghost_bombette.inc.c +++ b/src/battle/common/actor/duplighost/ghost_bombette.inc.c @@ -310,7 +310,11 @@ EvtScript N(EVS_TakeTurn) = { Switch(LVar9) CaseEq(PARTNER_RANK_NORMAL) Wait(2) +#if VERSION_JP + Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 1, BS_FLAGS1_TRIGGER_EVENTS) +#else Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 2, BS_FLAGS1_TRIGGER_EVENTS) +#endif CaseEq(PARTNER_RANK_SUPER) Wait(2) Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 3, BS_FLAGS1_TRIGGER_EVENTS) diff --git a/src/battle/common/actor/duplighost/ghost_kooper.inc.c b/src/battle/common/actor/duplighost/ghost_kooper.inc.c index 944a0ecd5ea..1161040083e 100644 --- a/src/battle/common/actor/duplighost/ghost_kooper.inc.c +++ b/src/battle/common/actor/duplighost/ghost_kooper.inc.c @@ -464,13 +464,21 @@ EvtScript N(EVS_TakeTurn) = { Switch(LVar9) CaseEq(PARTNER_RANK_NORMAL) Wait(2) +#if VERSION_JP + Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, SUPPRESS_EVENT_ALL, 0, 1, BS_FLAGS1_TRIGGER_EVENTS) +#else Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, SUPPRESS_EVENT_ALL, 0, 2, BS_FLAGS1_TRIGGER_EVENTS) +#endif CaseEq(PARTNER_RANK_SUPER) Wait(2) Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, SUPPRESS_EVENT_ALL, 0, 3, BS_FLAGS1_TRIGGER_EVENTS) CaseEq(PARTNER_RANK_ULTRA) Wait(2) +#if VERSION_JP + Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, SUPPRESS_EVENT_ALL, 0, 4, BS_FLAGS1_TRIGGER_EVENTS) +#else Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, SUPPRESS_EVENT_ALL, 0, 5, BS_FLAGS1_TRIGGER_EVENTS) +#endif EndSwitch Switch(LVar0) CaseOrEq(HIT_RESULT_HIT) diff --git a/src/battle/common/actor/duplighost/ghost_parakarry.inc.c b/src/battle/common/actor/duplighost/ghost_parakarry.inc.c index 7a572234cf0..e2485c7284b 100644 --- a/src/battle/common/actor/duplighost/ghost_parakarry.inc.c +++ b/src/battle/common/actor/duplighost/ghost_parakarry.inc.c @@ -298,7 +298,11 @@ EvtScript N(EVS_Attack_SkyDive) = { Switch(LVar9) CaseEq(PARTNER_RANK_NORMAL) Wait(2) +#if VERSION_JP + Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 1, BS_FLAGS1_TRIGGER_EVENTS) +#else Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 2, BS_FLAGS1_TRIGGER_EVENTS) +#endif CaseEq(PARTNER_RANK_SUPER) Wait(2) Call(EnemyDamageTarget, ACTOR_SELF, LVar0, 0, 0, 0, 3, BS_FLAGS1_TRIGGER_EVENTS) diff --git a/src/battle/common/actor/duplighost/ghost_watt.inc.c b/src/battle/common/actor/duplighost/ghost_watt.inc.c index 938e9246918..f5c489aa9ea 100644 --- a/src/battle/common/actor/duplighost/ghost_watt.inc.c +++ b/src/battle/common/actor/duplighost/ghost_watt.inc.c @@ -427,13 +427,25 @@ EvtScript N(EVS_TakeTurn) = { Switch(LVar9) CaseEq(PARTNER_RANK_NORMAL) Wait(2) +#if VERSION_JP + Call(EnemyDamageTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_SHOCK | DAMAGE_TYPE_IGNORE_DEFENSE, SUPPRESS_EVENT_ALL, 0, 2, BS_FLAGS1_TRIGGER_EVENTS) +#else Call(EnemyDamageTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_SHOCK | DAMAGE_TYPE_IGNORE_DEFENSE, SUPPRESS_EVENT_ALL, 0, 3, BS_FLAGS1_TRIGGER_EVENTS) +#endif CaseEq(PARTNER_RANK_SUPER) Wait(2) +#if VERSION_JP + Call(EnemyDamageTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_SHOCK | DAMAGE_TYPE_IGNORE_DEFENSE, SUPPRESS_EVENT_ALL, 0, 3, BS_FLAGS1_TRIGGER_EVENTS) +#else Call(EnemyDamageTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_SHOCK | DAMAGE_TYPE_IGNORE_DEFENSE, SUPPRESS_EVENT_ALL, 0, 4, BS_FLAGS1_TRIGGER_EVENTS) +#endif CaseEq(PARTNER_RANK_ULTRA) Wait(2) +#if VERSION_JP + Call(EnemyDamageTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_SHOCK | DAMAGE_TYPE_IGNORE_DEFENSE, SUPPRESS_EVENT_ALL, 0, 4, BS_FLAGS1_TRIGGER_EVENTS) +#else Call(EnemyDamageTarget, ACTOR_SELF, LVar0, DAMAGE_TYPE_SHOCK | DAMAGE_TYPE_IGNORE_DEFENSE, SUPPRESS_EVENT_ALL, 0, 5, BS_FLAGS1_TRIGGER_EVENTS) +#endif EndSwitch Switch(LVar0) CaseOrEq(HIT_RESULT_HIT) diff --git a/src/battle/dmg_player.c b/src/battle/dmg_player.c index b5faaeea7c5..3717279cfcc 100644 --- a/src/battle/dmg_player.c +++ b/src/battle/dmg_player.c @@ -542,7 +542,9 @@ HitResult calc_player_damage_enemy(void) { if (!(gBattleStatus.flags1 & (BS_FLAGS1_NICE_HIT | BS_FLAGS1_SUPER_HIT))) { missedAllOrNothing = TRUE; currentAttackDamage = 0; +#if !VERSION_JP targetDefense = 0; +#endif gBattleStatus.flags1 &= ~BS_FLAGS1_NICE_HIT; gBattleStatus.flags1 &= ~BS_FLAGS1_SUPER_HIT; gBattleStatus.flags1 &= ~BS_FLAGS1_INCLUDE_POWER_UPS; diff --git a/src/battle/level_up.c b/src/battle/level_up.c index 9cbcc64aaf4..980b76aa1ea 100644 --- a/src/battle/level_up.c +++ b/src/battle/level_up.c @@ -362,7 +362,11 @@ EvtScript EVS_ShowStarpoints = { Call(SetVirtualEntityPosition, LVar6, -278, 68, 70) Call(SetVirtualEntityScale, LVar6, Float(0.5), Float(0.5), Float(0.5)) Else +#if VERSION_JP + Call(CreateVirtualEntity, LVar6, Ref(EMS_starpoint_starpoint)) +#else Call(CreateVirtualEntity, LVar6, Ref(EMS_starpoint_starpoints)) +#endif Call(SetVirtualEntityPosition, LVar6, -278, 68, 70) Call(SetVirtualEntityScale, LVar6, Float(0.5), Float(0.5), Float(0.5)) Set(LFlag0, TRUE) @@ -400,13 +404,25 @@ EvtScript EVS_ShowStarpoints = { Add(LVar1, -78) Call(SetVirtualEntityPosition, LVar6, LVar1, 68, 70) Set(LVar1, LVar0) +#if VERSION_JP + Add(LVar1, -154) +#else Add(LVar1, -146) +#endif Call(SetVirtualEntityPosition, LVar7, LVar1, 68, 70) Set(LVar1, LVar0) +#if VERSION_JP + Add(LVar1, -139) +#else Add(LVar1, -131) +#endif Call(SetVirtualEntityPosition, LVar8, LVar1, 68, 70) Set(LVar1, LVar0) +#if VERSION_JP + Add(LVar1, -124) +#else Add(LVar1, -116) +#endif Call(SetVirtualEntityPosition, LVar9, LVar1, 68, 70) Wait(1) EndLoop @@ -970,9 +986,15 @@ void btl_state_update_celebration(void) { CelebrateSubstateTime--; if (CelebrateSubstateTime == 0) { hud_element_set_tint(id, 128, 128, 128); +#if VERSION_JP + x = 32; + y = 186; + set_window_properties(WINDOW_ID_8, 32, 186, 242, 32, WINDOW_PRIORITY_20, draw_content_level_up_textbox, NULL, -1); +#else x = 20; y = 186; set_window_properties(WINDOW_ID_8, 20, 186, 280, 32, WINDOW_PRIORITY_20, draw_content_level_up_textbox, NULL, -1); +#endif set_window_update(WINDOW_ID_8, WINDOW_UPDATE_SHOW); gBattleSubState = BTL_SUBSTATE_CELEBRATE_LEVEL_UP_CHOOSE; } @@ -1142,6 +1164,9 @@ void btl_state_update_celebration(void) { case BTL_SUBSTATE_CELEBRATE_SKIPPABLE_END_DELAY: if (battleStatus->curButtonsPressed & (BUTTON_A | BUTTON_B)) { CelebrateStateTime = 99; +#if VERSION_JP + sfx_play_sound(SOUND_MENU_NEXT); +#endif } if (CelebrateStateTime >= 99) { if (!(gBattleStatus.flags2 & BS_FLAGS2_DONT_STOP_MUSIC)) { diff --git a/src/battle/popup_messages.c b/src/battle/popup_messages.c index f478c463aec..66ba39b9b30 100644 --- a/src/battle/popup_messages.c +++ b/src/battle/popup_messages.c @@ -6,10 +6,38 @@ extern EntityModelScript EMS_BonkIcon; +#if VERSION_JP +extern s32* D_8028358C[]; + +s32* D_8028358C_2[] = { + (s32*)D_8028358C, (s32*)D_8028358C, (s32*)D_8028358C +}; + +s8 D_8028374C_1BA13C[][4] = { + { 236, 0, 0, 0 }, { 204, 0, 0, 0 }, { 238, 0, 0, 0 }, { 248, 0, 0, 0 }, { 252, 0, 0, 0 }, + { 252, 0, 0, 0 }, { 252, 0, 0, 0 }, { 252, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, + { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, { 248, 0, 0, 0 }, +}; +#else // all keyed by number of lines in the message (1 or 2) s16 BattleMessage_BoxSizesY[] = { 28, 40 }; s16 BattleMessage_TextOffsetsY[] = { 0, -2 }; s16 BattleMessage_BoxOffsetsY[] = { 0, -12 }; +#endif //TODO Vec3f[] f32 D_802835DC[] = { @@ -135,8 +163,13 @@ s32 BattleMessages[] = { [BTL_MSG_NO_JUMP_TARGET] MSG_Menus_Battle_NoTarget_Jump, [BTL_MSG_NO_HAMMER_TARGET] MSG_Menus_Battle_NoTarget_Hammer, [BTL_MSG_NO_ITEM_TARGET] MSG_Menus_Battle_NoTarget_Item, +#if VERSION_JP + [BTL_MSG_46] MSG_MENUS_00DB, + [BTL_MSG_47] MSG_MENUS_00DC, +#else [BTL_MSG_46] MSG_NONE, [BTL_MSG_47] MSG_NONE, +#endif // errors and warnings [BTL_MSG_CANT_SELECT_NOW] MSG_Menus_Battle_CantSelectNow, @@ -154,6 +187,11 @@ s32 BattleMessages[] = { [BTL_MSG_CANT_SELECT_NOW_ALT] MSG_Menus_Battle_CantSelectNow, }; +#if VERSION_JP +s32 D_80283B88_1BA578[] = { 1, 1, 1, 1, 1, 1, 1, 1 }; +s32 D_80283BA8_1BA598[] = { 0, 0, 0, 0, 1, 0, 0, 0 }; +#endif + s32 bActorMessages[] = { MSG_Menus_Party_Mario, MSG_Menus_Party_Goombario, @@ -181,7 +219,9 @@ BSS s16 HID_BattleMessage4; BSS b16 ActionCommandTipVisible; BSS b16 BattleMessage_BoxPosLocked; BSS s16 BattleMessage_CurBoxPosY; +#if !VERSION_JP BSS s16 BattleMessage_CurBoxOffsetY; +#endif extern HudScript HES_AimReticle; extern HudScript HES_AimTarget; @@ -552,7 +592,9 @@ void btl_show_battle_message(s32 messageIndex, s32 duration) { ActionCommandTipVisible = FALSE; BattleMessage_BoxPosLocked = FALSE; BattleMessage_CurBoxPosY = 0; +#if !VERSION_JP BattleMessage_CurBoxOffsetY = 0; +#endif } } @@ -575,7 +617,9 @@ void btl_show_variable_battle_message(s32 messageIndex, s32 duration, s32 varVal ActionCommandTipVisible = FALSE; BattleMessage_BoxPosLocked = FALSE; BattleMessage_CurBoxPosY = 0; +#if !VERSION_JP BattleMessage_CurBoxOffsetY = 0; +#endif } } @@ -971,7 +1015,11 @@ void btl_update_message_popup(void* data) { } } +#if VERSION_JP + gWindows[WINDOW_ID_BATTLE_POPUP].pos.y = BattleMessage_CurBoxPosY; +#else gWindows[WINDOW_ID_BATTLE_POPUP].pos.y = BattleMessage_CurBoxPosY + BattleMessage_CurBoxOffsetY; +#endif if (popup->duration == -1) { break; @@ -1148,16 +1196,53 @@ void btl_update_message_popup(void* data) { #define TIP_X_MTA2 55 #define TIP_X_MTA3 108 #define TIP_X_BF_RD 66 +#define TIP_Y_HLT2 31 #define TIP_Y_HLA2 17 #define TIP_Y_PBS1 14 #define TIP_Y_PBS2 14 #define TIP_Y_PBS3 14 #define TIP_Y_PWT1 14 +#define TIP_Y_HTR1 31 #define TIP_Y_MTA1 14 #define TIP_Y_MTA2 32 #define TIP_Y_BF_RD 14 #define TIP_SCALE1 0.6f #define TIP_SCALE2 0.7f +#elif VERSION_JP +#define TIP_X_PRL 115 +#define TIP_X_HLT1 29 +#define TIP_X_HLT2 129 +#define TIP_X_PBST 126 +#define TIP_X_MB 28 +#define TIP_X_ML 28 +#define TIP_X_HLA1 29 +#define TIP_X_HLA2 128 +#define TIP_X_PBS1 111 +#define TIP_X_PBS2 88 +#define TIP_X_PBS3 134 +#define TIP_X_PWT1 28 +#define TIP_X_PWT2 160 +#define TIP_X_MB1 20 +#define TIP_X_MB2 43 +#define TIP_X_HTT 29 +#define TIP_X_HTR1 126 +#define TIP_X_HTR2 28 +#define TIP_X_MTA1 29 +#define TIP_X_MTA2 153 +#define TIP_X_MTA3 68 +#define TIP_X_BF_RD 29 +#define TIP_Y_HLT2 13 +#define TIP_Y_HLA2 15 +#define TIP_Y_PBS1 13 +#define TIP_Y_PBS2 13 +#define TIP_Y_PBS3 13 +#define TIP_Y_PWT1 13 +#define TIP_Y_HTR1 13 +#define TIP_Y_MTA1 13 +#define TIP_Y_MTA2 15 +#define TIP_Y_BF_RD 13 +#define TIP_SCALE1 0.8f +#define TIP_SCALE2 0.8f #else #define TIP_X_PRL 65 #define TIP_X_HLT1 55 @@ -1181,11 +1266,13 @@ void btl_update_message_popup(void* data) { #define TIP_X_MTA2 210 #define TIP_X_MTA3 56 #define TIP_X_BF_RD 64 +#define TIP_Y_HLT2 31 #define TIP_Y_HLA2 32 #define TIP_Y_PBS1 13 #define TIP_Y_PBS2 13 #define TIP_Y_PBS3 13 #define TIP_Y_PWT1 13 +#define TIP_Y_HTR1 31 #define TIP_Y_MTA1 13 #define TIP_Y_MTA2 15 #define TIP_Y_BF_RD 13 @@ -1199,8 +1286,13 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { s32 msgLinesIdx; s32 opacity; +#if VERSION_JP + x += 11 + D_8028374C_1BA13C[popup->messageIndex][2]; + y += 6 + D_8028374C_1BA13C[popup->messageIndex][3]; +#else x += 15; y += 6; +#endif switch (popup->messageIndex) { case BTL_MSG_MERLEE_ATK_UP: @@ -1246,12 +1338,17 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { case BTL_MSG_47: case BTL_MSG_CANT_SELECT_NOW: case BTL_MSG_CANT_SWITCH: +#if VERSION_JP + case BTL_MSG_CANT_MOVE: +#endif case BTL_MSG_CANT_SWITCH_UNUSED: case BTL_MSG_CANT_MOVE_UNUSED: case BTL_MSG_CANT_SELECT_NOW_ALT: messageID = BattleMessages[popup->messageIndex]; +#if !VERSION_JP msgLinesIdx = get_msg_lines(messageID) - 1; y += BattleMessage_TextOffsetsY[msgLinesIdx]; +#endif draw_msg(messageID, x, y, 255, MSG_PAL_0F, 0); break; case BTL_MSG_CHARGE_HAMMER: @@ -1265,11 +1362,14 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { case BTL_MSG_ENEMY_TRANSPARENT: case BTL_MSG_ENEMY_CHARGED: messageID = BattleMessages[popup->messageIndex]; +#if !VERSION_JP msgLinesIdx = get_msg_lines(messageID) - 1; y += BattleMessage_TextOffsetsY[msgLinesIdx]; +#endif set_message_int_var(BattlePopupMessageVar, 0); draw_msg(messageID, x, y, 255, MSG_PAL_0F, 0); break; +#if !VERSION_JP case BTL_MSG_CANT_MOVE: messageID = BattleMessages[popup->messageIndex]; msgLinesIdx = get_msg_lines(messageID) - 1; @@ -1277,6 +1377,7 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { set_message_text_var(bActorMessages[BattlePopupMessageVar], 0); draw_msg(messageID, x, y, 255, MSG_PAL_0F, 0); break; +#endif case BTL_MSG_HAMMER_DISABLED_1: case BTL_MSG_HAMMER_DISABLED_2: case BTL_MSG_HAMMER_DISABLED_3: @@ -1321,8 +1422,10 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { x -= 11; y -= 6; messageID = BattleMessages[popup->messageIndex]; +#if !VERSION_JP msgLinesIdx = get_msg_lines(messageID) - 1; y += BattleMessage_TextOffsetsY[msgLinesIdx]; +#endif draw_msg(messageID, x + 11, y + 6, opacity, MSG_PAL_0F, 0); switch (popup->messageIndex) { @@ -1338,7 +1441,7 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_set_alpha(HID_BattleMessage1, opacity); hud_element_draw_clipped(HID_BattleMessage1); - hud_element_set_render_pos(HID_BattleMessage2, x + TIP_X_HLT2, y + 31); + hud_element_set_render_pos(HID_BattleMessage2, x + TIP_X_HLT2, y + TIP_Y_HLT2); hud_element_set_alpha(HID_BattleMessage2, opacity); hud_element_draw_clipped(HID_BattleMessage2); break; @@ -1371,6 +1474,35 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_set_alpha(HID_BattleMessage2, opacity); func_80144218(HID_BattleMessage2); break; +#if VERSION_JP + case BTL_MSG_ACTION_TIP_UNUSED_1: + hud_element_set_render_pos(HID_BattleMessage1, x + 23, y + 13); + hud_element_set_scale(HID_BattleMessage1, 0.5f); + hud_element_set_alpha(HID_BattleMessage1, opacity); + hud_element_draw_clipped(HID_BattleMessage1); + + hud_element_set_render_pos(HID_BattleMessage2, x + 46, y + 13); + hud_element_set_scale(HID_BattleMessage2, 0.5f); + hud_element_set_alpha(HID_BattleMessage2, opacity); + hud_element_draw_clipped(HID_BattleMessage2); + + hud_element_set_render_pos(HID_BattleMessage3, x + 69, y + 13); + hud_element_set_scale(HID_BattleMessage3, 0.5f); + hud_element_set_alpha(HID_BattleMessage3, opacity); + hud_element_draw_clipped(HID_BattleMessage3); + + hud_element_set_render_pos(HID_BattleMessage4, x + 92, y + 13); + hud_element_set_scale(HID_BattleMessage4, 0.5f); + hud_element_set_alpha(HID_BattleMessage4, opacity); + hud_element_draw_clipped(HID_BattleMessage4); + break; + case BTL_MSG_ACTION_TIP_UNUSED_2: + hud_element_set_render_pos(HID_BattleMessage1, x + 29, y + 13); + hud_element_set_scale(HID_BattleMessage1, 0.6f); + hud_element_set_alpha(HID_BattleMessage1, opacity); + hud_element_draw_clipped(HID_BattleMessage1); + break; +#endif case BTL_MSG_ACTION_TIP_PRESS_BUTTONS_SHOWN: hud_element_set_render_pos(HID_BattleMessage1, x + TIP_X_PBS1, y + TIP_Y_PBS1); hud_element_set_scale(HID_BattleMessage1, 0.5f); @@ -1387,6 +1519,14 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_set_alpha(HID_BattleMessage3, opacity); hud_element_draw_clipped(HID_BattleMessage3); break; +#if VERSION_JP + case BTL_MSG_ACTION_TIP_NOT_USED_1: + hud_element_set_render_pos(HID_BattleMessage1, x + 25, y + 13); + hud_element_set_scale(HID_BattleMessage1, 0.6f); + hud_element_set_alpha(HID_BattleMessage1, opacity); + hud_element_draw_clipped(HID_BattleMessage1); + break; +#endif case BTL_MSG_ACTION_TIP_PRESS_WITH_TIMING: hud_element_set_render_pos(HID_BattleMessage1, x + TIP_X_PWT1, y + TIP_Y_PWT1); hud_element_set_alpha(HID_BattleMessage1, opacity); @@ -1397,6 +1537,19 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_set_alpha(HID_BattleMessage2, opacity); hud_element_draw_clipped(HID_BattleMessage2); break; +#if VERSION_JP + case BTL_MSG_ACTION_TIP_NOT_USED_2: + hud_element_set_render_pos(HID_BattleMessage1, x + 32, y + 13); + hud_element_set_scale(HID_BattleMessage1, 0.5f); + hud_element_set_alpha(HID_BattleMessage1, opacity); + hud_element_draw_clipped(HID_BattleMessage1); + + hud_element_set_render_pos(HID_BattleMessage2, x + 57, y + 13); + hud_element_set_scale(HID_BattleMessage2, 0.5f); + hud_element_set_alpha(HID_BattleMessage2, opacity); + hud_element_draw_clipped(HID_BattleMessage2); + break; +#endif case BTL_MSG_ACTION_TIP_MASH_BOTH: hud_element_set_render_pos(HID_BattleMessage1, x + TIP_X_MB1, y + 14); hud_element_set_scale(HID_BattleMessage1, 0.5f); @@ -1408,6 +1561,14 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_set_alpha(HID_BattleMessage2, opacity); hud_element_draw_clipped(HID_BattleMessage2); break; +#if VERSION_JP + case BTL_MSG_ACTION_TIP_UNUSED_3: + hud_element_set_render_pos(HID_BattleMessage1, x + 27, y + 13); + hud_element_set_scale(HID_BattleMessage1, 0.5f); + hud_element_set_alpha(HID_BattleMessage1, opacity); + hud_element_draw_clipped(HID_BattleMessage1); + break; +#endif case BTL_MSG_ACTION_TIP_HOLD_THEN_TAP: hud_element_set_render_pos(HID_BattleMessage1, x + TIP_X_HTT, y + 14); hud_element_set_scale(HID_BattleMessage1, 0.5f); @@ -1415,7 +1576,7 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_draw_clipped(HID_BattleMessage1); break; case BTL_MSG_ACTION_TIP_HOLD_THEN_RELEASE: - hud_element_set_render_pos(HID_BattleMessage1, x + TIP_X_HTR1, y + 31); + hud_element_set_render_pos(HID_BattleMessage1, x + TIP_X_HTR1, y + TIP_Y_HTR1); hud_element_set_alpha(HID_BattleMessage1, opacity); hud_element_draw_clipped(HID_BattleMessage1); @@ -1440,6 +1601,14 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_set_alpha(HID_BattleMessage3, opacity); func_80144218(HID_BattleMessage3); break; +#if VERSION_JP + case BTL_MSG_ACTION_TIP_UNUSED_4: + hud_element_set_render_pos(HID_BattleMessage1, x + 126, y + 13); + hud_element_set_scale(HID_BattleMessage1, 0.5f); + hud_element_set_alpha(HID_BattleMessage1, opacity); + hud_element_draw_clipped(HID_BattleMessage1); + break; +#endif case BTL_MSG_ACTION_TIP_BREAK_FREE: case BTL_MSG_ACTION_TIP_REDUCE_DAMAGE: hud_element_set_render_pos(HID_BattleMessage1, x + TIP_X_BF_RD, y + TIP_Y_BF_RD); @@ -1447,6 +1616,14 @@ void btl_message_popup_draw_content(void* data, s32 x, s32 y) { hud_element_set_alpha(HID_BattleMessage1, opacity); hud_element_draw_clipped(HID_BattleMessage1); break; +#if VERSION_JP + case BTL_MSG_ACTION_TIP_NOT_USED_3: + hud_element_set_render_pos(HID_BattleMessage1, x + 123, y + 14); + hud_element_set_scale(HID_BattleMessage1, 0.5f); + hud_element_set_alpha(HID_BattleMessage1, opacity); + hud_element_draw_clipped(HID_BattleMessage1); + break; +#endif } break; } @@ -1461,6 +1638,204 @@ void btl_show_message_popup(void* data) { s32 msgWidth; s32 height; +#if VERSION_JP + switch (popup->messageIndex) { + case BTL_MSG_MERLEE_DONE: + case BTL_MSG_CANT_CHARGE: + case BTL_MSG_ENEMY_MISSED: + case BTL_MSG_STAR_POWER_RECHARGED: + case BTL_MSG_STAR_POWER_MAXED: + case BTL_MSG_STAR_POWER_FILLED: + case BTL_MSG_PARTNER_INJURED: + case BTL_MSG_CHARGE_GOOMBARIO: + case BTL_MSG_CHARGE_GOOMBARIO_MORE: + case BTL_MSG_WATER_BLOCK_BEGIN: + case BTL_MSG_WATER_BLOCK_END: + case BTL_MSG_CLOUD_NINE_BEGIN: + case BTL_MSG_CLOUD_NINE_END: + case BTL_MSG_TURBO_CHARGE_BEGIN: + case BTL_MSG_TURBO_CHARGE_END: + case BTL_MSG_CHILL_OUT_BEGIN: + case BTL_MSG_UNUSED_CLOUD_NINE: + case BTL_MSG_NO_JUMP_TARGET: + case BTL_MSG_NO_HAMMER_TARGET: + case BTL_MSG_NO_ITEM_TARGET: + case BTL_MSG_46: + case BTL_MSG_47: + case BTL_MSG_CANT_SELECT_NOW: + case BTL_MSG_CANT_SWITCH_UNUSED: + case BTL_MSG_CANT_MOVE_UNUSED: + case BTL_MSG_CANT_SELECT_NOW_ALT: + if (popup->needsInit) { + popup->needsInit = FALSE; + msgWidth = get_msg_width(BattleMessages[popup->messageIndex], 0) + (31 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + height = 28 + D_8028374C_1BA13C[popup->messageIndex][1]; + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } + break; + case BTL_MSG_MERLEE_ATK_UP: + case BTL_MSG_MERLEE_DEF_UP: + case BTL_MSG_MERLEE_EXP_UP: + case BTL_MSG_CANT_SWITCH: + if (popup->needsInit) { + popup->needsInit = FALSE; + msgWidth = get_msg_width(BattleMessages[popup->messageIndex], 0) + (31 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + height = 45 + D_8028374C_1BA13C[popup->messageIndex][1]; + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } + break; + case BTL_MSG_ACTION_TIP_PRESS_BEFORE_LANDING: + case BTL_MSG_ACTION_TIP_HOLD_LEFT_TIMED: + case BTL_MSG_ACTION_TIP_PRESS_BEFORE_STRIKE: + case BTL_MSG_ACTION_TIP_MASH_BUTTON: + case BTL_MSG_ACTION_TIP_MASH_LEFT: + case BTL_MSG_ACTION_TIP_HOLD_LEFT_AIM: + case BTL_MSG_ACTION_TIP_UNUSED_1: + case BTL_MSG_ACTION_TIP_UNUSED_2: + case BTL_MSG_ACTION_TIP_PRESS_BUTTONS_SHOWN: + case BTL_MSG_ACTION_TIP_NOT_USED_1: + case BTL_MSG_ACTION_TIP_PRESS_WITH_TIMING: + case BTL_MSG_ACTION_TIP_NOT_USED_2: + case BTL_MSG_ACTION_TIP_MASH_BOTH: + case BTL_MSG_ACTION_TIP_UNUSED_3: + case BTL_MSG_ACTION_TIP_HOLD_THEN_TAP: + case BTL_MSG_ACTION_TIP_HOLD_THEN_RELEASE: + case BTL_MSG_ACTION_TIP_MOVE_TO_AIM: + case BTL_MSG_ACTION_TIP_UNUSED_4: + case BTL_MSG_ACTION_TIP_BREAK_FREE: + case BTL_MSG_ACTION_TIP_REDUCE_DAMAGE: + case BTL_MSG_ACTION_TIP_NOT_USED_3: + if (popup->needsInit) { + popup->needsInit = FALSE; + msgWidth = get_msg_width(BattleMessages[popup->messageIndex], 0) + (31 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + posY = 192; + height = 28 + D_8028374C_1BA13C[popup->messageIndex][1]; + if (popup->messageIndex == BTL_MSG_ACTION_TIP_UNUSED_3) { + posY = 120; + BattleMessage_BoxPosLocked = TRUE; + } + BattleMessage_CurBoxPosY = posY; + + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + if (popup->messageIndex == BTL_MSG_ACTION_TIP_UNUSED_3) { + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } else { + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW_DARKENED); + } + } + break; + case BTL_MSG_HAMMER_DISABLED_1: + case BTL_MSG_HAMMER_DISABLED_2: + case BTL_MSG_HAMMER_DISABLED_3: + case BTL_MSG_JUMP_DISABLED_1: + case BTL_MSG_JUMP_DISABLED_2: + case BTL_MSG_JUMP_DISABLED_3: + case BTL_MSG_ITEMS_DISABLED: + if (popup->needsInit) { + popup->needsInit = FALSE; + msgWidth = get_msg_width(BattleMessages[popup->messageIndex], 0) + (55 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + height = 40 + D_8028374C_1BA13C[popup->messageIndex][1]; + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } + break; + case BTL_MSG_PLAYER_DAZED: + case BTL_MSG_PLAYER_ASLEEP: + case BTL_MSG_PLAYER_FROZEN: + case BTL_MSG_PLAYER_POISONED: + case BTL_MSG_PLAYER_SHRUNK: + case BTL_MSG_PLAYER_PARALYZED: + case BTL_MSG_PLAYER_CHARGED: + case BTL_MSG_PLAYER_TRANSPARENT: + if (popup->needsInit) { + popup->needsInit = FALSE; + msgWidth = get_msg_width(BattleMessages[popup->messageIndex], 0) + (31 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + if (D_80283B88_1BA578[popup->messageIndex - 10] != 0) { + height = 45 + D_8028374C_1BA13C[popup->messageIndex][1]; + } else { + height = 28 + D_8028374C_1BA13C[popup->messageIndex][1]; + } + + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } + break; + case BTL_MSG_ENEMY_DAZED: + case BTL_MSG_ENEMY_ASLEEP: + case BTL_MSG_ENEMY_FROZEN: + case BTL_MSG_ENEMY_POISONED: + case BTL_MSG_ENEMY_SHRUNK: + case BTL_MSG_ENEMY_PARALYZED: + case BTL_MSG_ENEMY_ELECTRIFIED: + case BTL_MSG_ENEMY_CANT_MOVE: + if (popup->needsInit) { + popup->needsInit = FALSE; + msgWidth = get_msg_width(BattleMessages[popup->messageIndex], 0) + (31 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + if (D_80283BA8_1BA598[popup->messageIndex - 18] != 0) { + height = 45 + D_8028374C_1BA13C[popup->messageIndex][1]; + } else { + height = 28 + D_8028374C_1BA13C[popup->messageIndex][1]; + } + + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } + break; + case BTL_MSG_CHARGE_HAMMER: + case BTL_MSG_CHARGE_HAMMER_MORE: + case BTL_MSG_CHARGE_JUMP: + case BTL_MSG_CHARGE_JUMP_MORE: + case BTL_MSG_ATTACK_UP: + case BTL_MSG_DEFENCE_UP: + case BTL_MSG_HEAL_ONE: + case BTL_MSG_HEAL_ALL: + case BTL_MSG_ENEMY_TRANSPARENT: + case BTL_MSG_ENEMY_CHARGED: + if (popup->needsInit) { + s32 messageID; + + popup->needsInit = FALSE; + messageID = BattleMessages[popup->messageIndex]; + set_message_int_var(BattlePopupMessageVar, 0); + msgWidth = get_msg_width(messageID, 0) + (31 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + height = 28 + D_8028374C_1BA13C[popup->messageIndex][1]; + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } + break; + case BTL_MSG_CANT_MOVE: + if (popup->needsInit) { + s32 messageID; + + popup->needsInit = FALSE; + messageID = BattleMessages[popup->messageIndex]; + set_message_text_var(bActorMessages[BattlePopupMessageVar], 0); + msgWidth = get_msg_width(messageID, 0) + (31 + D_8028374C_1BA13C[popup->messageIndex][0]); + posX = 160 - (msgWidth / 2); + width = msgWidth; + height = 28 + D_8028374C_1BA13C[popup->messageIndex][1]; + set_window_properties(WINDOW_ID_BATTLE_POPUP, posX, posY, width, height, WINDOW_PRIORITY_0, btl_message_popup_draw_content, popup, -1); + set_window_update(WINDOW_ID_BATTLE_POPUP, WINDOW_UPDATE_SHOW); + } + break; + } +#else switch (popup->messageIndex) { case BTL_MSG_MERLEE_ATK_UP: case BTL_MSG_MERLEE_DEF_UP: @@ -1629,6 +2004,7 @@ void btl_show_message_popup(void* data) { } break; } +#endif } API_CALLABLE(ShowMessageBox) { diff --git a/tools/build/configure.py b/tools/build/configure.py index 9aedf143af5..f2b8c705622 100755 --- a/tools/build/configure.py +++ b/tools/build/configure.py @@ -620,16 +620,28 @@ def build( "item_data", ) - build( - [ - self.build_path() / "include/battle/actor_types.inc.c", - self.build_path() / "include/battle/actor_types.h", - ], - [ - Path("src/battle/actors.yaml"), - ], - "actor_types", - ) + if self.version == "jp": + build( + [ + self.build_path() / "include/battle/actor_types.inc.c", + self.build_path() / "include/battle/actor_types.h", + ], + [ + Path("src/battle/actors_jp.yaml"), + ], + "actor_types", + ) + else: + build( + [ + self.build_path() / "include/battle/actor_types.inc.c", + self.build_path() / "include/battle/actor_types.h", + ], + [ + Path("src/battle/actors.yaml"), + ], + "actor_types", + ) import splat diff --git a/tools/splat_ext/msg_jp.yaml b/tools/splat_ext/msg_jp.yaml index 7b60fa2c14c..6afa7256935 100644 --- a/tools/splat_ext/msg_jp.yaml +++ b/tools/splat_ext/msg_jp.yaml @@ -1,8 +1,188 @@ # This file describes what to name messages when splitting. - [0x00, 0x0000, NONE] +- [0x00, 0x00A4, Intro_0057] +- [0x00, 0x00A5, Intro_0058] +- [0x00, 0x00A6, Intro_0059] +- [0x00, 0x00A7, Intro_005A] +- [0x00, 0x00A8, Intro_005B] +- [0x00, 0x00A9, Intro_005C] +- [0x02, 0x0020, MAC_Gate_001F] +- [0x02, 0x0021, MAC_Gate_0020] +- [0x02, 0x0022, MAC_Gate_0021] +- [0x02, 0x0023, MAC_Gate_0022] +- [0x02, 0x0028, MAC_Gate_0027] +- [0x02, 0x0029, MAC_Gate_0028] +- [0x02, 0x002A, MAC_Gate_0029] +- [0x02, 0x002F, MAC_Gate_002E] +- [0x02, 0x0030, MAC_Gate_002F] +- [0x02, 0x0031, MAC_Gate_0030] +- [0x02, 0x0032, MAC_Gate_0031] +- [0x02, 0x0033, MAC_Gate_0032] +- [0x02, 0x0034, MAC_Gate_0033] +- [0x02, 0x0035, MAC_Gate_0034] +- [0x02, 0x0036, MAC_Gate_0035] +- [0x02, 0x0037, MAC_Gate_0036] +- [0x02, 0x0038, MAC_Gate_0037] +- [0x02, 0x0039, MAC_Gate_0038] +- [0x02, 0x003A, MAC_Gate_0039] +- [0x02, 0x003B, MAC_Gate_003A] +- [0x02, 0x003C, MAC_Gate_003B] +- [0x02, 0x003D, MAC_Gate_003C] +- [0x02, 0x003E, MAC_Gate_003D] +- [0x07, 0x00B8, MAC_Port_00B8] +- [0x07, 0x00B9, MAC_Port_00B9] +- [0x07, 0x00BA, MAC_Port_00BA] +- [0x07, 0x00BB, MAC_Port_00BB] +- [0x07, 0x00BC, MAC_Port_00BC] +- [0x07, 0x009C, MAC_Port_009C] +- [0x0A, 0x0019, HOS_0019] +- [0x0A, 0x001A, HOS_001A] +- [0x0A, 0x001B, HOS_001B] +- [0x0A, 0x001D, HOS_001D] +- [0x0A, 0x001E, HOS_001E] +- [0x0A, 0x001F, HOS_001F] +- [0x0A, 0x0020, HOS_0020] +- [0x0A, 0x0022, HOS_0022] +- [0x0A, 0x0023, HOS_0023] +- [0x0A, 0x0024, HOS_0024] +- [0x0A, 0x0025, HOS_0025] +- [0x0A, 0x0027, HOS_0027] +- [0x0A, 0x0028, HOS_0028] +- [0x0A, 0x0029, HOS_0029] +- [0x0A, 0x002A, HOS_002A] +- [0x0A, 0x002B, HOS_002B] +- [0x0A, 0x002C, HOS_002C] +- [0x0A, 0x002D, HOS_002D] +- [0x0A, 0x002E, HOS_002E] +- [0x0B, 0x00AF, CH0_00AF] +- [0x0B, 0x00B0, CH0_00B0] +- [0x0B, 0x00B1, CH0_00B1] +- [0x0B, 0x00B2, CH0_00B2] +- [0x0B, 0x00B3, CH0_00B3] +- [0x0B, 0x00B4, CH0_00B4] +- [0x0B, 0x00B8, CH0_00B8] +- [0x0B, 0x00B9, CH0_00B9] - [0x0B, 0x00BA, CH0_00BA] +- [0x0B, 0x00BF, CH0_00BF] +- [0x0B, 0x00C0, CH0_00C0] +- [0x0B, 0x00C1, CH0_00C1] +- [0x0B, 0x00CB, CH0_00CB] +- [0x0B, 0x00CC, CH0_00CC] +- [0x0B, 0x00CD, CH0_00CD] +- [0x0B, 0x00CE, CH0_00CE] +- [0x0B, 0x00CF, CH0_00CF] +- [0x0B, 0x00D0, CH0_00D0] +- [0x0C, 0x00FD, CH1_00FD] +- [0x0C, 0x00FE, CH1_00FE] +- [0x0C, 0x00FF, CH1_00FF] +- [0x0C, 0x0100, CH1_0100] +- [0x0C, 0x0101, CH1_0101] +- [0x0C, 0x0102, CH1_0102] +- [0x0C, 0x0103, CH1_0103] +- [0x0C, 0x0104, CH1_0104] +- [0x0C, 0x0105, CH1_0105] +- [0x0C, 0x0106, CH1_0106] +- [0x0C, 0x0107, CH1_0107] +- [0x0C, 0x0108, CH1_0108] +- [0x0C, 0x0109, CH1_0109] +- [0x0C, 0x010A, CH1_010A] +- [0x0C, 0x0114, CH1_0114] +- [0x0C, 0x0115, CH1_0115] +- [0x0C, 0x0116, CH1_0116] +- [0x0C, 0x0117, CH1_0117] +- [0x0C, 0x0118, CH1_0118] +- [0x0C, 0x0119, CH1_0119] +- [0x0C, 0x011A, CH1_011A] +- [0x0C, 0x011B, CH1_011B] +- [0x0C, 0x011C, CH1_011C] +- [0x0C, 0x011D, CH1_011D] +- [0x0C, 0x0128, CH1_0128] +- [0x0C, 0x0129, CH1_0129] +- [0x0C, 0x012A, CH1_012A] +- [0x0D, 0x00E4, CH2_00E4] +- [0x0D, 0x00E5, CH2_00E5] +- [0x0D, 0x00E6, CH2_00E6] +- [0x0D, 0x00E7, CH2_00E7] +- [0x0E, 0x0020, CH3_0020] +- [0x0E, 0x0021, CH3_0021] +- [0x0E, 0x00C3, CH3_00C3] +- [0x0E, 0x00C4, CH3_00C4] +- [0x0E, 0x00C5, CH3_00C5] +- [0x0E, 0x00C6, CH3_00C6] +- [0x0E, 0x00C9, CH3_00C9] +- [0x0E, 0x0102, CH3_0102] +- [0x0E, 0x0103, CH3_0103] +- [0x0F, 0x0051, CH4_0051] +- [0x0F, 0x0052, CH4_0052] +- [0x0F, 0x0053, CH4_0053] +- [0x0F, 0x0065, CH4_0065] +- [0x0F, 0x0066, CH4_0066] +- [0x0F, 0x0067, CH4_0067] +- [0x0F, 0x0068, CH4_0068] +- [0x0F, 0x0069, CH4_0069] +- [0x0F, 0x006A, CH4_006A] +- [0x0F, 0x006B, CH4_006B] +- [0x0F, 0x006C, CH4_006C] +- [0x0F, 0x006D, CH4_006D] +- [0x0F, 0x006E, CH4_006E] +- [0x0F, 0x006F, CH4_006F] +- [0x0F, 0x0070, CH4_0070] +- [0x0F, 0x0071, CH4_0071] +- [0x0F, 0x0072, CH4_0072] +- [0x0F, 0x0073, CH4_0073] +- [0x0F, 0x0074, CH4_0074] +- [0x10, 0x0104, CH5_0104] +- [0x10, 0x0105, CH5_0105] +- [0x10, 0x0106, CH5_0106] +- [0x11, 0x00CF, CH6_00CF] +- [0x11, 0x00D0, CH6_00D0] +- [0x11, 0x00D1, CH6_00D1] +- [0x11, 0x00D2, CH6_00D2] +- [0x11, 0x00D3, CH6_00D3] +- [0x11, 0x00D4, CH6_00D4] +- [0x11, 0x00D5, CH6_00D5] +- [0x11, 0x00D6, CH6_00D6] +- [0x11, 0x00D7, CH6_00D7] +- [0x12, 0x00DB, CH7_00DB] +- [0x12, 0x00DC, CH7_00DC] +- [0x12, 0x00DD, CH7_00DD] +- [0x12, 0x00DE, CH7_00DE] +- [0x12, 0x00E5, CH7_00E5] +- [0x12, 0x00E6, CH7_00E6] +- [0x12, 0x00E7, CH7_00E7] +- [0x13, 0x005D, CH8_005D] +- [0x13, 0x005E, CH8_005E] +- [0x13, 0x005F, CH8_005F] +- [0x13, 0x0060, CH8_0060] +- [0x13, 0x0073, CH8_0073] +- [0x13, 0x0074, CH8_0074] +- [0x13, 0x0075, CH8_0075] +- [0x13, 0x0076, CH8_0076] +- [0x13, 0x0077, CH8_0077] +- [0x13, 0x0084, CH8_0084] +- [0x13, 0x0085, CH8_0085] +- [0x13, 0x0086, CH8_0086] +- [0x13, 0x0087, CH8_0087] +- [0x13, 0x0088, CH8_0088] +- [0x13, 0x0089, CH8_0089] +- [0x13, 0x008A, CH8_008A] +- [0x13, 0x008B, CH8_008B] +- [0x13, 0x008C, CH8_008C] +- [0x13, 0x008D, CH8_008D] +- [0x13, 0x0093, CH8_0093] +- [0x13, 0x0094, CH8_0094] +- [0x13, 0x0095, CH8_0095] - [0x13, 0x0096, CH8_0096] +- [0x13, 0x0097, CH8_0097] +- [0x13, 0x0098, CH8_0098] +- [0x13, 0x0099, CH8_0099] +- [0x13, 0x009A, CH8_009A] +- [0x13, 0x009B, CH8_009B] +- [0x13, 0x00A6, CH8_00A6] +- [0x13, 0x00A7, CH8_00A7] +- [0x13, 0x00A8, CH8_00A8] +- [0x13, 0x00A9, CH8_00A9] - [0x1D, 0x0000, EntityTattle_HammerBlock1_CanBreak] - [0x1D, 0x0001, EntityTattle_HammerBlock2_CantBreak] - [0x1D, 0x0002, EntityTattle_HammerBlock2_CanBreak] @@ -41,6 +221,168 @@ - [0x1D, 0x0023, EntityTattle_SpinningFlower] - [0x1D, 0x0024, EntityTattle_BulbBush] - [0x1D, 0x0025, EntityTattle_Interact] +- [0x1E, 0x0000, EnemyTattle_Goomba] +- [0x1E, 0x0001, EnemyTattle_SpikedGoomba] +- [0x1E, 0x0002, EnemyTattle_Paragoomba] +- [0x1E, 0x0003, EnemyTattle_RedGoombaBoss] +- [0x1E, 0x0004, EnemyTattle_BlueGoombaBoss] +- [0x1E, 0x0005, EnemyTattle_GoombaKing] +- [0x1E, 0x0006, EnemyTattle_GoomnutTree] +- [0x1E, 0x0007, EnemyTattle_KoopaTroopa] +- [0x1E, 0x0008, EnemyTattle_Paratroopa] +- [0x1E, 0x0009, EnemyTattle_Fuzzy] +- [0x1E, 0x000A, EnemyTattle_BobOmb] +- [0x1E, 0x000B, EnemyTattle_BulletBill] +- [0x1E, 0x000C, EnemyTattle_BillBlaster] +- [0x1E, 0x000D, EnemyTattle_FakeBowser] +- [0x1E, 0x000E, EnemyTattle_RedNinjakoopa] +- [0x1E, 0x000F, EnemyTattle_BlackNinjakoopa] +- [0x1E, 0x0010, EnemyTattle_YellowNinjakoopa] +- [0x1E, 0x0011, EnemyTattle_GreenNinjakoopa] +- [0x1E, 0x0012, EnemyTattle_KoopaBros] +- [0x1E, 0x0013, EnemyTattle_JrTroopa2] +- [0x1E, 0x0014, EnemyTattle_MontyMole] +- [0x1E, 0x0015, EnemyTattle_Cleft] +- [0x1E, 0x0016, EnemyTattle_Pokey] +- [0x1E, 0x0017, EnemyTattle_Bandit] +- [0x1E, 0x0018, EnemyTattle_PokeyMummy] +- [0x1E, 0x0019, EnemyTattle_BuzzyBeetle] +- [0x1E, 0x001A, EnemyTattle_Swooper] +- [0x1E, 0x001B, EnemyTattle_Buzzar] +- [0x1E, 0x001C, EnemyTattle_Tutankoopa] +- [0x1E, 0x001D, EnemyTattle_Chomp] +- [0x1E, 0x001E, EnemyTattle_StoneChomp] +- [0x1E, 0x001F, EnemyTattle_PiranhaPlant] +- [0x1E, 0x0020, EnemyTattle_ForestFuzzy] +- [0x1E, 0x0021, EnemyTattle_HyperGoomba] +- [0x1E, 0x0022, EnemyTattle_HyperParagoomba] +- [0x1E, 0x0023, EnemyTattle_HyperCleft] +- [0x1E, 0x0024, EnemyTattle_Clubba] +- [0x1E, 0x0025, EnemyTattle_TubbaBlubbaInvincible] +- [0x1E, 0x0026, EnemyTattle_TubbaHeart] +- [0x1E, 0x0027, EnemyTattle_TubbaBlubba] +- [0x1E, 0x0028, EnemyTattle_JrTroopa3] +- [0x1E, 0x0029, EnemyTattle_ShyGuy] +- [0x1E, 0x002A, EnemyTattle_GrooveGuy] +- [0x1E, 0x002B, EnemyTattle_SpyGuy] +- [0x1E, 0x002C, EnemyTattle_PyroGuy] +- [0x1E, 0x002D, EnemyTattle_SkyGuy] +- [0x1E, 0x002E, EnemyTattle_MediGuy] +- [0x1E, 0x002F, EnemyTattle_AntiGuy] +- [0x1E, 0x0030, EnemyTattle_BigLanternGhost] +- [0x1E, 0x0031, EnemyTattle_GeneralGuy] +- [0x1E, 0x0032, EnemyTattle_ShySquad] +- [0x1E, 0x0033, EnemyTattle_ShyStack] +- [0x1E, 0x0034, EnemyTattle_StiltGuy] +- [0x1E, 0x0035, EnemyTattle_HurtPlant] +- [0x1E, 0x0036, EnemyTattle_MBush] +- [0x1E, 0x0037, EnemyTattle_JungleFuzzy] +- [0x1E, 0x0038, EnemyTattle_SpearGuy] +- [0x1E, 0x0039, EnemyTattle_PutridPiranha] +- [0x1E, 0x003A, EnemyTattle_LavaBubble] +- [0x1E, 0x003B, EnemyTattle_SpikeTop] +- [0x1E, 0x003C, EnemyTattle_LavaPiranhaPhase1] +- [0x1E, 0x003D, EnemyTattle_LavaPiranhaPhase2] +- [0x1E, 0x003E, EnemyTattle_LavaBudPhase1] +- [0x1E, 0x003F, EnemyTattle_LavaBudPhase2] +- [0x1E, 0x0040, EnemyTattle_PetitPiranha] +- [0x1E, 0x0041, EnemyTattle_JrTroopa4] +- [0x1E, 0x0042, EnemyTattle_Lakitu] +- [0x1E, 0x0043, EnemyTattle_Spiny] +- [0x1E, 0x0044, EnemyTattle_Bzzap] +- [0x1E, 0x0045, EnemyTattle_CrazeeDayzee] +- [0x1E, 0x0046, EnemyTattle_AmazyDayzee] +- [0x1E, 0x0047, EnemyTattle_MontyMoleBoss] +- [0x1E, 0x0048, EnemyTattle_Spike] +- [0x1E, 0x0049, EnemyTattle_RuffPuff] +- [0x1E, 0x004A, EnemyTattle_HuffNPuff] +- [0x1E, 0x004B, EnemyTattle_TuffPuff] +- [0x1E, 0x004C, EnemyTattle_JrTroopa5] +- [0x1E, 0x004D, EnemyTattle_Gulpit] +- [0x1E, 0x004E, EnemyTattle_GulpitRocks] +- [0x1E, 0x004F, EnemyTattle_Monstar] +- [0x1E, 0x0050, EnemyTattle_FrostPiranha] +- [0x1E, 0x0051, EnemyTattle_WhiteClubba] +- [0x1E, 0x0052, EnemyTattle_Duplighost] +- [0x1E, 0x0053, EnemyTattle_GhostWatt] +- [0x1E, 0x0054, EnemyTattle_GhostKooper] +- [0x1E, 0x0055, EnemyTattle_GhostGoombario] +- [0x1E, 0x0056, EnemyTattle_GhostSushie] +- [0x1E, 0x0057, EnemyTattle_GhostLakilester] +- [0x1E, 0x0058, EnemyTattle_GhostParakarry] +- [0x1E, 0x0059, EnemyTattle_GhostBombette] +- [0x1E, 0x005A, EnemyTattle_GhostBow] +- [0x1E, 0x005B, EnemyTattle_AlbinoDino] +- [0x1E, 0x005C, EnemyTattle_Swoopula] +- [0x1E, 0x005D, EnemyTattle_CrystalKing] +- [0x1E, 0x005E, EnemyTattle_CrystalClone] +- [0x1E, 0x005F, EnemyTattle_CrystalBit] +- [0x1E, 0x0060, EnemyTattle_Ember] +- [0x1E, 0x0061, EnemyTattle_DryBones] +- [0x1E, 0x0062, EnemyTattle_BonyBeetle] +- [0x1E, 0x0063, EnemyTattle_Magikoopa] +- [0x1E, 0x0064, EnemyTattle_Magiclone] +- [0x1E, 0x0065, EnemyTattle_MagikoopaDup] +- [0x1E, 0x0066, EnemyTattle_MagicloneDup] +- [0x1E, 0x0067, EnemyTattle_Koopatrol] +- [0x1E, 0x0068, EnemyTattle_HammerBros] +- [0x1E, 0x0069, EnemyTattle_BombshellBill] +- [0x1E, 0x006A, EnemyTattle_BombshellBlaster] +- [0x1E, 0x006B, EnemyTattle_JrTroopa6] +- [0x1E, 0x006C, EnemyTattle_HallwayBowser] +- [0x1E, 0x006D, EnemyTattle_FinalBowser1] +- [0x1E, 0x006E, EnemyTattle_FinalBowser2] +- [0x1E, 0x006F, EnemyTattle_KentCKoopa] +- [0x1E, 0x0070, EnemyTattle_Blooper] +- [0x1E, 0x0071, EnemyTattle_ElectroBlooper] +- [0x1E, 0x0072, EnemyTattle_SuperBlooper] +- [0x1E, 0x0073, EnemyTattle_BlooperBaby] +- [0x1E, 0x0074, EnemyTattle_TheMaster1] +- [0x1E, 0x0075, EnemyTattle_TheMaster2] +- [0x1E, 0x0076, EnemyTattle_TheMaster3] +- [0x1E, 0x0077, EnemyTattle_Chan] +- [0x1E, 0x0078, EnemyTattle_Lee] +- [0x1E, 0x0079, EnemyTattle_Gloomba] +- [0x1E, 0x007A, EnemyTattle_Paragloomba] +- [0x1E, 0x007B, EnemyTattle_SpikedGloomba] +- [0x1E, 0x007C, EnemyTattle_DarkKoopa] +- [0x1E, 0x007D, EnemyTattle_DarkParatroopa] +- [0x1E, 0x007E, EnemyTattle_RedMagikoopa] +- [0x1E, 0x007F, EnemyTattle_FlyingRedMagikoopa] +- [0x1E, 0x0080, EnemyTattle_GreenMagikoopa] +- [0x1E, 0x0081, EnemyTattle_FlyingGreenMagikoopa] +- [0x1E, 0x0082, EnemyTattle_YellowMagikoopa] +- [0x1E, 0x0083, EnemyTattle_FlyingYellowMagikoopa] +- [0x1E, 0x0084, EnemyTattle_GrayMagikoopa] +- [0x1E, 0x0085, EnemyTattle_FlyingGrayMagikoopa] +- [0x1E, 0x0086, EnemyTattle_FlyingWhiteMagikoopa] +- [0x1E, 0x0087, EnemyTattle_WhiteMagikoopa] +- [0x1E, 0x0088, EnemyTattle_MagikoopaBoss] +- [0x1E, 0x0089, EnemyTattle_MagikoopaBossDup] +- [0x1E, 0x008A, EnemyTattle_LeeWatt] +- [0x1E, 0x008B, EnemyTattle_LeeKooper] +- [0x1E, 0x008C, EnemyTattle_LeeGoombario] +- [0x1E, 0x008D, EnemyTattle_LeeSushie] +- [0x1E, 0x008E, EnemyTattle_LeeLakilester] +- [0x1E, 0x008F, EnemyTattle_LeeParakarry] +- [0x1E, 0x0090, EnemyTattle_LeeBombette] +- [0x1E, 0x0091, EnemyTattle_LeeBow] +- [0x1E, 0x0092, EnemyTattle_Mario] +- [0x1E, 0x0093, EnemyTattle_SlotMachineStart] +- [0x1E, 0x0094, EnemyTattle_SlotMachineStop] +- [0x1E, 0x0095, EnemyTattle_Whacka] +- [0x1E, 0x0096, EnemyTattle_JrTroopa1] +- [0x1E, 0x0097, EnemyTattle_GeneralGuyDup] +- [0x1E, 0x0098, EnemyTattle_Bulb] +- [0x1E, 0x0099, EnemyTattle_ShySquadRedux] +- [0x1E, 0x009A, EnemyTattle_Fuzzipede] +- [0x1E, 0x009B, EnemyTattle_Bowser] +- [0x1E, 0x009C, EnemyTattle_KammyKoopa] +- [0x1E, 0x009D, EnemyTattle_Twink] +- [0x1E, 0x009E, EnemyTattle_AquaFuzzy] +- [0x1E, 0x009F, EnemyTattle_RedGoomba] +- [0x1E, 0x00A0, EnemyTattle_RedParagoomba] +- [0x1E, 0x00A1, EnemyTattle_GoombarioTutor] - [0x20, 0x0000, Menus_Tutorial_SaveBlock] - [0x20, 0x0001, Menus_Tutorial_HeartBlock] - [0x20, 0x0002, Menus_Tutorial_GotItem] @@ -58,6 +400,8 @@ - [0x20, 0x0016, Menus_Party_Bow] - [0x20, 0x0017, Menus_Party_Goombaria] - [0x20, 0x0018, Menus_Party_Twink] +- [0x20, 0x0019, Menus_Party_Peach] +- [0x20, 0x001A, Menus_Party_Mario] - [0x20, 0x001B, Menus_StarPower_Focus] - [0x20, 0x001C, Menus_StarPower_Refresh] - [0x20, 0x001D, Menus_StarPower_Lullaby] @@ -114,17 +458,98 @@ - [0x20, 0x0083, Menus_006D] - [0x20, 0x0084, Menus_006E] - [0x20, 0x0085, Menus_006F] +- [0x20, 0x0086, Menus_Merlee_IncreaseAttack] +- [0x20, 0x0087, Menus_Merlee_DecreaseDamage] +- [0x20, 0x0088, Menus_Merlee_IncreaseStarPoints] - [0x20, 0x0089, Menus_Merlee_IncreaseCoins] - [0x20, 0x008A, Menus_Merlee_Exhausted] +- [0x20, 0x008B, Menus_ChargeHammer] +- [0x20, 0x008C, Menus_ChargeHammerMore] +- [0x20, 0x008D, Menus_ChargeJump] +- [0x20, 0x008E, Menus_ChargeJumpMore] +- [0x20, 0x008F, Menus_ChargeMaxedOut] +- [0x20, 0x0090, Menus_EnemyMissed] +- [0x20, 0x0091, Menus_PartnerInjured] +- [0x20, 0x0092, Menus_ChargeGoombario] +- [0x20, 0x0093, Menus_ChargeGoombarioMore] +- [0x20, 0x0094, Menus_StarEnergyRecharged] +- [0x20, 0x0095, Menus_StarEnergyFilled] +- [0x20, 0x0096, Menus_StarEnergyMaxedOut] +- [0x20, 0x0097, Menus_AttackUp] +- [0x20, 0x0098, Menus_DefenseUp] +- [0x20, 0x0099, Menus_HealOne] +- [0x20, 0x009A, Menus_HealAll] +- [0x20, 0x009B, Menus_EnemyTransparent] +- [0x20, 0x009C, Menus_EnemyElectricCharge] +- [0x20, 0x009D, Menus_PlayerDazed] +- [0x20, 0x009E, Menus_PlayerPoisoned] +- [0x20, 0x009F, Menus_PlayerFrozen] +- [0x20, 0x00A0, Menus_PlayerAsleep] +- [0x20, 0x00A1, Menus_PlayerShrunk] +- [0x20, 0x00A2, Menus_PlayerParalyzed] +- [0x20, 0x00A3, Menus_PlayerElectricCharge] +- [0x20, 0x00A4, Menus_PlayerTransparent] +- [0x20, 0x00A5, Menus_EnemyDazed] +- [0x20, 0x00A6, Menus_EnemyPoisoned] +- [0x20, 0x00A7, Menus_EnemyFrozen] +- [0x20, 0x00A8, Menus_EnemyAsleep] +- [0x20, 0x00A9, Menus_EnemyShrunk] +- [0x20, 0x00AA, Menus_EnemyParalyzed] +- [0x20, 0x00AB, Menus_EnemyElectrified] +- [0x20, 0x00AC, Menus_EnemyCantMove] +- [0x20, 0x00AD, Menus_WaterBlockBegin] +- [0x20, 0x00AE, Menus_WaterBlockEnd] +- [0x20, 0x00AF, Menus_CloudNineBegin] +- [0x20, 0x00B0, Menus_CloudNineEnd] +- [0x20, 0x00B1, Menus_TurboChargeBegin] +- [0x20, 0x00B2, Menus_TurboChargeEnd] +- [0x20, 0x00B3, Menus_ChillOutBegin] - [0x20, 0x00BB, Menus_Action_UseItem] +- [0x20, 0x00BD, Menus_LevelUp_HP] +- [0x20, 0x00BE, Menus_LevelUp_FP] +- [0x20, 0x00BF, Menus_LevelUp_BP] +- [0x20, 0x00C0, Menus_LevelUp_MaxedHP] +- [0x20, 0x00C1, Menus_LevelUp_MaxedFP] +- [0x20, 0x00C2, Menus_LevelUp_MaxedBP] +- [0x20, 0x00C3, Menus_CantIncrease] - [0x20, 0x00C4, Menus_PlayerFirstStrike] - [0x20, 0x00C5, Menus_PartnerFirstStrike] - [0x20, 0x00C6, Menus_EnemyFirstStrike] +- [0x20, 0x00C7, Menus_MoveTip_PressBeforeLanding] +- [0x20, 0x00C8, Menus_MoveTip_PushLeftWithTiming] +- [0x20, 0x00C9, Menus_MoveTip_PressBeforeStriking] +- [0x20, 0x00CA, Menus_MoveTip_PressRepeatedly] +- [0x20, 0x00CB, Menus_MoveTip_PushLeftRepeatedly] +- [0x20, 0x00CC, Menus_MoveTip_PushLeftToAim] +- [0x20, 0x00CD, Menus_MoveTip_PressAsShown] +- [0x20, 0x00CE, Menus_MoveTip_NOT_USED_1] +- [0x20, 0x00CF, Menus_MoveTip_PressAsLightsUp] +- [0x20, 0x00D0, Menus_MoveTip_NOT_USED_2] +- [0x20, 0x00D1, Menus_MoveTip_PressBothRepeatedly] +- [0x20, 0x00D2, Menus_MoveTip_HoldThenTap] +- [0x20, 0x00D3, Menus_MoveTip_HoldThenRelease] +- [0x20, 0x00D4, Menus_MoveTip_MoveToAim] +- [0x20, 0x00D5, Menus_MoveTip_PressToRunAway] +- [0x20, 0x00D6, Menus_MoveTip_PressToReduceDamage] +- [0x20, 0x00D7, Menus_MoveTip_NOT_USED_3] +- [0x20, 0x00D8, Menus_Battle_NoTarget_Jump] +- [0x20, 0x00D9, Menus_Battle_NoTarget_Hammer] +- [0x20, 0x00DA, Menus_Battle_NoTarget_Item] +- [0x20, 0x00DB, MENUS_00DB] +- [0x20, 0x00DC, MENUS_00DC] +- [0x20, 0x00DD, Menus_Battle_CantSelectNow] +- [0x20, 0x00E0, Menus_Battle_CantUseHammer] +- [0x20, 0x00E1, Menus_Battle_CantUseJump] +- [0x20, 0x00E2, Menus_Battle_CantUseItems] +- [0x20, 0x00E3, Menus_Battle_CantSwitch] +- [0x20, 0x00E4, Menus_Battle_CantMove] - [0x20, 0x00E7, Menus_00CD] - [0x20, 0x00E8, Menus_00CE] - [0x20, 0x00EA, Menus_00D0] - [0x20, 0x00F0, Menus_00D6] - [0x20, 0x00F1, Menus_00D7] +- [0x20, 0x01B6, Menus_019A] +- [0x20, 0x01B7, Menus_019B] - [0x20, 0x01BE, Menus_019C] - [0x20, 0x01BF, Menus_019D] - [0x20, 0x01C0, Menus_019E] @@ -1250,3 +1675,166 @@ - [0x2F, 0x002D, PartnerMoveName_SpinySurge] - [0x2F, 0x002E, PartnerMoveName_CloudNine] - [0x2F, 0x002F, PartnerMoveName_Hurricane] +- [0x31, 0x0000, EnemyName_Goomba] +- [0x31, 0x0001, EnemyName_SpikedGoomba] +- [0x31, 0x0002, EnemyName_Paragoomba] +- [0x31, 0x0003, EnemyName_RedGoombaBoss] +- [0x31, 0x0004, EnemyName_BlueGoombaBoss] +- [0x31, 0x0005, EnemyName_GoombaKing] +- [0x31, 0x0006, EnemyName_GoomnutTree] +- [0x31, 0x0007, EnemyName_KoopaTroopa] +- [0x31, 0x0008, EnemyName_Paratroopa] +- [0x31, 0x0009, EnemyName_Fuzzy] +- [0x31, 0x000A, EnemyName_BobOmb] +- [0x31, 0x000B, EnemyName_BulletBill] +- [0x31, 0x000C, EnemyName_BillBlaster] +- [0x31, 0x000D, EnemyName_FakeBowser] +- [0x31, 0x000E, EnemyName_RedNinjakoopa] +- [0x31, 0x000F, EnemyName_BlackNinjakoopa] +- [0x31, 0x0010, EnemyName_YellowNinjakoopa] +- [0x31, 0x0011, EnemyName_GreenNinjakoopa] +- [0x31, 0x0012, EnemyName_KoopaBros] +- [0x31, 0x0013, EnemyName_JrTroopa2] +- [0x31, 0x0014, EnemyName_MontyMole] +- [0x31, 0x0015, EnemyName_Cleft] +- [0x31, 0x0016, EnemyName_Pokey] +- [0x31, 0x0017, EnemyName_Bandit] +- [0x31, 0x0018, EnemyName_PokeyMummy] +- [0x31, 0x0019, EnemyName_BuzzyBeetle] +- [0x31, 0x001A, EnemyName_Swooper] +- [0x31, 0x001B, EnemyName_Buzzar] +- [0x31, 0x001C, EnemyName_Tutankoopa] +- [0x31, 0x001D, EnemyName_Chomp] +- [0x31, 0x001E, EnemyName_StoneChomp] +- [0x31, 0x001F, EnemyName_PiranhaPlant] +- [0x31, 0x0020, EnemyName_ForestFuzzy] +- [0x31, 0x0021, EnemyName_HyperGoomba] +- [0x31, 0x0022, EnemyName_HyperParagoomba] +- [0x31, 0x0023, EnemyName_HyperCleft] +- [0x31, 0x0024, EnemyName_Clubba] +- [0x31, 0x0025, EnemyName_TubbaBlubba] +- [0x31, 0x0026, EnemyName_TubbaHeart] +- [0x31, 0x0027, EnemyName_TubbaBlubbaInvincible] +- [0x31, 0x0028, EnemyName_JrTroopa3] +- [0x31, 0x0029, EnemyName_ShyGuy] +- [0x31, 0x002A, EnemyName_GrooveGuy] +- [0x31, 0x002B, EnemyName_SpyGuy] +- [0x31, 0x002C, EnemyName_PyroGuy] +- [0x31, 0x002D, EnemyName_SkyGuy] +- [0x31, 0x002E, EnemyName_MediGuy] +- [0x31, 0x002F, EnemyName_AntiGuy] +- [0x31, 0x0030, EnemyName_BigLanternGhost] +- [0x31, 0x0031, EnemyName_GeneralGuy] +- [0x31, 0x0032, EnemyName_ShySquad] +- [0x31, 0x0033, EnemyName_ShyStack] +- [0x31, 0x0034, EnemyName_StiltGuy] +- [0x31, 0x0035, EnemyName_HurtPlant] +- [0x31, 0x0036, EnemyName_MBush] +- [0x31, 0x0037, EnemyName_JungleFuzzy] +- [0x31, 0x0038, EnemyName_SpearGuy] +- [0x31, 0x0039, EnemyName_PutridPiranha] +- [0x31, 0x003A, EnemyName_LavaBubble] +- [0x31, 0x003B, EnemyName_SpikeTop] +- [0x31, 0x003C, EnemyName_LavaPiranhaPhase1] +- [0x31, 0x003D, EnemyName_LavaPiranhaPhase2] +- [0x31, 0x003E, EnemyName_LavaBudPhase1] +- [0x31, 0x003F, EnemyName_LavaBudPhase2] +- [0x31, 0x0040, EnemyName_PetitPiranha] +- [0x31, 0x0041, EnemyName_JrTroopa4] +- [0x31, 0x0042, EnemyName_Lakitu] +- [0x31, 0x0043, EnemyName_Spiny] +- [0x31, 0x0044, EnemyName_Bzzap] +- [0x31, 0x0045, EnemyName_CrazeeDayzee] +- [0x31, 0x0046, EnemyName_AmazyDayzee] +- [0x31, 0x0047, EnemyName_MontyMoleBoss] +- [0x31, 0x0048, EnemyName_Spike] +- [0x31, 0x0049, EnemyName_RuffPuff] +- [0x31, 0x004A, EnemyName_HuffNPuff] +- [0x31, 0x004B, EnemyName_TuffPuff] +- [0x31, 0x004C, EnemyName_JrTroopa5] +- [0x31, 0x004D, EnemyName_Gulpit] +- [0x31, 0x004E, EnemyName_GulpitRocks] +- [0x31, 0x004F, EnemyName_Monstar] +- [0x31, 0x0050, EnemyName_FrostPiranha] +- [0x31, 0x0051, EnemyName_WhiteClubba] +- [0x31, 0x0052, EnemyName_Duplighost] +- [0x31, 0x0053, EnemyName_GhostWatt] +- [0x31, 0x0054, EnemyName_GhostKooper] +- [0x31, 0x0055, EnemyName_GhostGoombario] +- [0x31, 0x0056, EnemyName_GhostSushie] +- [0x31, 0x0057, EnemyName_GhostLakilester] +- [0x31, 0x0058, EnemyName_GhostParakarry] +- [0x31, 0x0059, EnemyName_GhostBombette] +- [0x31, 0x005A, EnemyName_GhostBow] +- [0x31, 0x005B, EnemyName_AlbinoDino] +- [0x31, 0x005C, EnemyName_Swoopula] +- [0x31, 0x005D, EnemyName_CrystalKing] +- [0x31, 0x005E, EnemyName_CrystalClone] +- [0x31, 0x005F, EnemyName_CrystalBit] +- [0x31, 0x0060, EnemyName_Ember] +- [0x31, 0x0061, EnemyName_DryBones] +- [0x31, 0x0062, EnemyName_BonyBeetle] +- [0x31, 0x0063, EnemyName_Magikoopa] +- [0x31, 0x0064, EnemyName_Magiclone] +- [0x31, 0x0065, EnemyName_FlyingMagikoopa] +- [0x31, 0x0066, EnemyName_FlyingMagiclone] +- [0x31, 0x0067, EnemyName_Koopatrol] +- [0x31, 0x0068, EnemyName_HammerBros] +- [0x31, 0x0069, EnemyName_BombshellBill] +- [0x31, 0x006A, EnemyName_BombshellBlaster] +- [0x31, 0x006B, EnemyName_JrTroopa6] +- [0x31, 0x006C, EnemyName_HallwayBowser] +- [0x31, 0x006D, EnemyName_FinalBowser1] +- [0x31, 0x006E, EnemyName_FinalBowser2] +- [0x31, 0x006F, EnemyName_KentCKoopa] +- [0x31, 0x0070, EnemyName_Blooper] +- [0x31, 0x0071, EnemyName_ElectroBlooper] +- [0x31, 0x0072, EnemyName_SuperBlooper] +- [0x31, 0x0073, EnemyName_BlooperBaby] +- [0x31, 0x0074, EnemyName_TheMaster1] +- [0x31, 0x0075, EnemyName_TheMaster2] +- [0x31, 0x0076, EnemyName_TheMaster3] +- [0x31, 0x0077, EnemyName_Chan] +- [0x31, 0x0078, EnemyName_Lee] +- [0x31, 0x0079, EnemyName_Gloomba] +- [0x31, 0x007A, EnemyName_Paragloomba] +- [0x31, 0x007B, EnemyName_SpikedGloomba] +- [0x31, 0x007C, EnemyName_DarkKoopa] +- [0x31, 0x007D, EnemyName_DarkParatroopa] +- [0x31, 0x007E, EnemyName_RedMagikoopa] +- [0x31, 0x007F, EnemyName_FlyingRedMagikoopa] +- [0x31, 0x0080, EnemyName_GreenMagikoopa] +- [0x31, 0x0081, EnemyName_FlyingGreenMagikoopa] +- [0x31, 0x0082, EnemyName_YellowMagikoopa] +- [0x31, 0x0083, EnemyName_FlyingYellowMagikoopa] +- [0x31, 0x0084, EnemyName_GrayMagikoopa] +- [0x31, 0x0085, EnemyName_FlyingGrayMagikoopa] +- [0x31, 0x0086, EnemyName_WhiteMagikoopa] +- [0x31, 0x0087, EnemyName_FlyingWhiteMagikoopa] +- [0x31, 0x0088, EnemyName_MagikoopaBoss] +- [0x31, 0x0089, EnemyName_FlyingMagikoopaBoss] +- [0x31, 0x008A, EnemyName_LeeWatt] +- [0x31, 0x008B, EnemyName_LeeKooper] +- [0x31, 0x008C, EnemyName_LeeGoombario] +- [0x31, 0x008D, EnemyName_LeeSushie] +- [0x31, 0x008E, EnemyName_LeeLakilester] +- [0x31, 0x008F, EnemyName_LeeParakarry] +- [0x31, 0x0090, EnemyName_LeeBombette] +- [0x31, 0x0091, EnemyName_LeeBow] +- [0x31, 0x0093, EnemyName_SlotMachineStart] +- [0x31, 0x0094, EnemyName_SlotMachineStop] +- [0x31, 0x0095, EnemyName_Whacka] +- [0x31, 0x0096, EnemyName_JrTroopa1] +- [0x31, 0x0097, EnemyName_GeneralGuyDup] +- [0x31, 0x0098, EnemyName_Bulb] +- [0x31, 0x0099, EnemyName_ShySquadRedux] +- [0x31, 0x009A, EnemyName_Fuzzipede] +- [0x31, 0x009C, EnemyName_Balloon] +- [0x31, 0x009D, EnemyName_Lantern] +- [0x31, 0x009E, EnemyName_Bowser] +- [0x31, 0x009F, EnemyName_KammyKoopa] +- [0x31, 0x00A0, EnemyName_Twink] +- [0x31, 0x00A1, EnemyName_AquaFuzzy] +- [0x31, 0x00A2, EnemyName_RedGoomba] +- [0x31, 0x00A3, EnemyName_RedParagoomba] +- [0x31, 0x00A4, EnemyName_GoombarioTutor] diff --git a/ver/jp/splat.yaml b/ver/jp/splat.yaml index 5a47c90fc64..11fbc1cafd5 100644 --- a/ver/jp/splat.yaml +++ b/ver/jp/splat.yaml @@ -1192,10 +1192,201 @@ segments: - [0x13E130, bin] - name: battle_code - type: bin + type: code start: 0x1749F0 vram: 0x8023E000 - + subsegments: + - [auto, c, battle/16C8E0] + - [auto, c, battle/btl_states_actions] + - [auto, c, battle/camera] + - [auto, c, battle/actors] + - [auto, c, battle/popup_messages] + - [auto, c, battle/entity_model_icons] + - [auto, c, battle/partner_dma] + - [auto, c, battle/dmg_item] + - [auto, c, battle/181810] + - [auto, c, battle/actor_rendering] + - [auto, c, battle/level_up] + - [auto, c, battle/player_events] + - [auto, c, battle_ui_gfx] + - [auto, c, battle/190A10] + - [auto, c, battle/190B20] + - [auto, c, battle/use_items] + - [auto, c, battle/use_moves] + - [auto, c, battle/action_cmd] + - [auto, c, battle/actor_api] + - [auto, c, battle/dmg_player] + - [auto, c, battle/1A5830] + - [auto, c, battle/dmg_partner] + - [auto, c, battle/standard_events] + - [auto, c, battle/use_star_powers] + - start: 0x1BA5F0 + type: .data + name: battle/entity_model_icons + subsegments: + - [0x1BA5F0, ci4, ui/battle/cursor_hand, 32, 32] + - [0x1BA7F0, palette, ui/battle/cursor_hand] + - [0x1BA810] + - start: 0x1C00F0 + type: .data + name: battle_ui_gfx + subsegments: + - [0x1C00F0, ci4, ui/battle/menu/unused, 32, 32] + - [0x1C02F0, palette, ui/battle/menu/unused] + - [0x1C0310, palette, ui/battle/menu/unused.disabled] + - [0x1C0330, ci4, ui/battle/menu/flee, 32, 32] + - [0x1C0530, palette, ui/battle/menu/flee] + - [0x1C0550, palette, ui/battle/menu/flee.disabled] + - [0x1C0570, ci4, ui/battle/menu/defend, 32, 32] + - [0x1C0770, palette, ui/battle/menu/defend] + - [0x1C0790, palette, ui/battle/menu/defend.disabled] + - [0x1C07B0, ci4, ui/battle/menu/strategies, 32, 32] + - [0x1C09B0, palette, ui/battle/menu/strategies] + - [0x1C09D0, palette, ui/battle/menu/strategies.disabled] + - [0x1C09F0, ci4, ui/battle/menu/nothing, 32, 32] + - [0x1C0BF0, palette, ui/battle/menu/nothing] + - [0x1C0C10, palette, ui/battle/menu/nothing.disabled] + - [0x1C0C30, ci4, ui/battle/menu/pouch, 32, 32] + - [0x1C0E30, palette, ui/battle/menu/pouch] + - [0x1C0E50, palette, ui/battle/menu/pouch.disabled] + - [0x1C0E70, ci4, ui/battle/swap_Z, 16, 16] + - [0x1C0EF0, palette, ui/battle/swap_Z] + - [0x1C0F10, ci4, ui/battle/swap_arrow_left, 8, 16] + - [0x1C0F50, palette, ui/battle/swap_arrow_left] + - [0x1C0F70, ci4, ui/battle/swap_arrow_right, 8, 16] + - {start: 0x1C0FB0, type: palette, name: ui/battle/swap_arrow_right, size: 0x190} + - [0x1C1150, ci4, ui/battle/menu/spirits, 32, 32] + - [0x1C1350, palette, ui/battle/menu/spirits] + - [0x1C1370, ci4, ui/battle/yellow_arrow, 16, 16] + - {start: 0x1C13F0, type: palette, name: ui/battle/yellow_arrow, size: 0x140} + - [0x1C1530, ci4, ui/battle/hp_bar, 32, 16] + - [0x1C1630, palette, ui/battle/hp_bar] + - [0x1C1650, ci4, ui/battle/hp_0, 8, 8] + - [0x1C1670, palette, ui/battle/hp_0] + - [0x1C1690, ci4, ui/battle/hp_1, 8, 8] + - [0x1C16B0, palette, ui/battle/hp_1] + - [0x1C16D0, ci4, ui/battle/hp_2, 8, 8] + - [0x1C16F0, palette, ui/battle/hp_2] + - [0x1C1710, ci4, ui/battle/hp_3, 8, 8] + - [0x1C1730, palette, ui/battle/hp_3] + - [0x1C1750, ci4, ui/battle/hp_4, 8, 8] + - [0x1C1770, palette, ui/battle/hp_4] + - [0x1C1790, ci4, ui/battle/hp_5, 8, 8] + - [0x1C17B0, palette, ui/battle/hp_5] + - [0x1C17D0, ci4, ui/battle/hp_6, 8, 8] + - [0x1C17F0, palette, ui/battle/hp_6] + - [0x1C1810, ci4, ui/battle/hp_7, 8, 8] + - [0x1C1830, palette, ui/battle/hp_7] + - [0x1C1850, ci4, ui/battle/hp_8, 8, 8] + - [0x1C1870, palette, ui/battle/hp_8] + - [0x1C1890, ci4, ui/battle/hp_9, 8, 8] + - [0x1C18B0, palette, ui/battle/hp_9] + - [0x1C18D0, ci4, ui/battle/cont/b_up, 48, 40] + - [0x1C1C90, palette, ui/battle/cont/b_up] + - [0x1C1CB0, ci4, ui/battle/cont/b_down, 48, 40] + - [0x1C2070, palette, ui/battle/cont/b_down] + - [0x1C2090, ci4, ui/battle/cont/c_left_up, 40, 34] + - [0x1C2338, palette, ui/battle/cont/c_left_up] + - [0x1C2358, ci4, ui/battle/cont/c_left_down, 40, 34] + - [0x1C2600, palette, ui/battle/cont/c_left_down] + - [0x1C2620, ci4, ui/battle/cont/c_right_up, 40, 34] + - [0x1C28C8, palette, ui/battle/cont/c_right_up] + - [0x1C28E8, ci4, ui/battle/cont/c_right_down, 40, 34] + - [0x1C2B90, palette, ui/battle/cont/c_right_down] + - [0x1C2BB0, ci4, ui/battle/cont/c_up_up, 40, 34] + - [0x1C2E58, palette, ui/battle/cont/c_up_up] + - [0x1C2E78, ci4, ui/battle/cont/c_up_down, 40, 34] + - [0x1C3120, palette, ui/battle/cont/c_up_down] + - [0x1C3140, ci4, ui/battle/cont/c_down_up, 40, 34] + - [0x1C33E8, palette, ui/battle/cont/c_down_up] + - [0x1C3408, ci4, ui/battle/cont/c_down_down, 40, 34] + - [0x1C36B0, palette, ui/battle/cont/c_down_down] + - [0x1C36D0, ci4, ui/battle/cmd/timing_1_chance, 72, 24] + - [0x1C3A30, palette, ui/battle/cmd/timing_1_chance] + - [0x1C3A50, ci4, ui/battle/cmd/timing_ready, 16, 16] + - [0x1C3AD0, palette, ui/battle/cmd/timing_ready] + - [0x1C3AF0, ci4, ui/battle/cmd/timing_wait, 16, 16] + - [0x1C3B70, palette, ui/battle/cmd/timing_wait] + - [0x1C3B90, ci4, ui/battle/cmd/charge_1, 8, 8] + - [0x1C3BB0, palette, ui/battle/cmd/charge_1] + - [0x1C3BD0, ci4, ui/battle/cmd/charge_2, 8, 8] + - [0x1C3BF0, palette, ui/battle/cmd/charge_2] + - [0x1C3C10, ci4, ui/battle/cmd/charge_3, 8, 8] + - [0x1C3C30, palette, ui/battle/cmd/charge_3] + - [0x1C3C50, ci4, ui/battle/cmd/charge_4, 8, 8] + - [0x1C3C70, palette, ui/battle/cmd/charge_4] + - [0x1C3C90, ci4, ui/battle/cmd/timing_3_chances, 96, 24] + - [0x1C4110, palette, ui/battle/cmd/timing_3_chances] + - [0x1C4130, ci4, ui/battle/cmd/gauge_result, 32, 24] + - [0x1C42B0, palette, ui/battle/cmd/gauge_result] + - [0x1C42D0, ci4, ui/battle/cmd/timing_ok, 24, 24] + - [0x1C43F0, palette, ui/battle/cmd/timing_ok] + - [0x1C4410, ci4, ui/battle/cmd/timing_miss, 24, 24] + - [0x1C4530, palette, ui/battle/cmd/timing_miss] + - [0x1C4550, ci4, ui/battle/cmd/flee_0, 16, 24] + - [0x1C4610, palette, ui/battle/cmd/flee_0] + - [0x1C4630, ci4, ui/battle/cmd/flee_1, 16, 24] + - [0x1C46F0, palette, ui/battle/cmd/flee_1] + - [0x1C4710, ci4, ui/battle/cmd/flee_2, 16, 24] + - [0x1C47D0, palette, ui/battle/cmd/flee_2] + - [0x1C47F0, ci4, ui/battle/cmd/100pct, 64, 48] + - [0x1C4DF0, palette, ui/battle/cmd/100pct] + - [0x1C4E10, ci4, ui/battle/cmd/right_on, 56, 24] + - [0x1C50B0, palette, ui/battle/cmd/right_on] + - [0x1C50D0, ci4, ui/battle/cmd/fill_result, 32, 24] + - [0x1C5250, palette, ui/battle/cmd/fill_result] + - [0x1C5270, ci4, ui/battle/cmd/aim/marker_0, 16, 16] + - [0x1C52F0, palette, ui/battle/cmd/aim/marker_0] + - [0x1C5310, ci4, ui/battle/cmd/aim/marker_1, 16, 16] + - [0x1C5390, palette, ui/battle/cmd/aim/marker_1] + - [0x1C53B0, ci4, ui/battle/cmd/aim/marker_2, 16, 16] + - [0x1C5430, palette, ui/battle/cmd/aim/marker_2] + - [0x1C5450, ci4, ui/battle/cmd/aim/marker_3, 16, 16] + - [0x1C54D0, palette, ui/battle/cmd/aim/marker_3] + - [0x1C54F0, ci4, ui/battle/cmd/aim/marker_4, 16, 16] + - [0x1C5570, palette, ui/battle/cmd/aim/marker_4] + - [0x1C5590, ci4, ui/battle/cmd/aim/marker_5, 16, 16] + - [0x1C5610, palette, ui/battle/cmd/aim/marker_5] + - [0x1C5630, ci4, ui/battle/cmd/aim/marker_6, 16, 16] + - [0x1C56B0, palette, ui/battle/cmd/aim/marker_6] + - [0x1C56D0, ci4, ui/battle/cmd/aim/marker_7, 16, 16] + - [0x1C5750, palette, ui/battle/cmd/aim/marker_7] + - [0x1C5770, ci4, ui/battle/cmd/aim/shimmer_0, 16, 16] + - [0x1C57F0, palette, ui/battle/cmd/aim/shimmer_0] + - [0x1C5810, ci4, ui/battle/cmd/aim/shimmer_1, 16, 16] + - [0x1C5890, palette, ui/battle/cmd/aim/shimmer_1] + - [0x1C58B0, ci4, ui/battle/cmd/aim/shimmer_2, 16, 16] + - [0x1C5930, palette, ui/battle/cmd/aim/shimmer_2] + - [0x1C5950, ci4, ui/battle/cmd/aim/shimmer_3, 16, 16] + - [0x1C59D0, palette, ui/battle/cmd/aim/shimmer_3] + - [0x1C59F0, ci4, ui/battle/cmd/aim/shimmer_4, 16, 16] + - [0x1C5A70, palette, ui/battle/cmd/aim/shimmer_4] + - [0x1C5A90, ci4, ui/battle/cmd/aim/shimmer_5, 16, 16] + - [0x1C5B10, palette, ui/battle/cmd/aim/shimmer_5] + - [0x1C5B30, ci4, ui/battle/cmd/aim/shimmer_6, 16, 16] + - [0x1C5BB0, palette, ui/battle/cmd/aim/shimmer_6] + - [0x1C5BD0, ci4, ui/battle/cmd/aim/shimmer_7, 16, 16] + - [0x1C5C50, palette, ui/battle/cmd/aim/shimmer_7] + - [0x1C5C70, ci4, ui/battle/cmd/aim/reticle_0, 32, 32] + - [0x1C5E70, palette, ui/battle/cmd/aim/reticle_0] + - [0x1C5E90, ci4, ui/battle/cmd/aim/reticle_1, 32, 32] + - [0x1C6090, palette, ui/battle/cmd/aim/reticle_1] + - [0x1C60B0, ci4, ui/battle/cmd/aim/target_0, 24, 24] + - [0x1C61D0, palette, ui/battle/cmd/aim/target_0] + - [0x1C61F0, ci4, ui/battle/cmd/aim/target_1, 24, 24] + - [0x1C6310, palette, ui/battle/cmd/aim/target_1] + - [0x1C6330, ci4, ui/battle/solid_star, 32, 32] + - [0x1C6530, palette, ui/battle/solid_star] + - [0x1C6550] + - [0x1C6558, ia8, ui/battle/projector_spot, 32, 32] + - [0x1C6958] + - [0x1C6960, ia8, ui/battle/projector_beam, 64, 64] + - [0x1C7960] + - [0x1C7968, ia8, ui/battle/projector_reel, 64, 64] + - [0x1C8968] + - [0x1C8970, ia8, ui/battle/swap_background, 48, 16] + - [0x1C8C70] + - [0x1D3650] - [0x1D4720, pm_icons, icon] - dir: logos type: code @@ -5593,190 +5784,787 @@ segments: #################### ### Battle Areas ### #################### - - type: bin - name: battle_area_kmr_part_1 - start: 0x004382E0 + - dir: battle/area/kmr_part_1 + type: code + start: 0x4382E0 vram: 0x80218000 - - type: bin - name: battle_area_kmr_part_2 - start: 0x004413D0 + subalign: 4 + subsegments: + - [auto, c, area] + - [auto, c, actor/goomba] + - [auto, c, actor/spiked_goomba] + - [auto, c, actor/paragoomba] + - [auto, c, stage/kmr_02] + - [auto, c, stage/kmr_03] + - [auto, c, stage/kmr_04] + - [auto, c, stage/kmr_05] + - [auto, c, stage/kmr_06] + - dir: battle/area/kmr_part_2 + type: code + start: 0x4413D0 vram: 0x80218000 - - type: bin - name: battle_area_kmr_part_3 - start: 0x0044ED80 + subalign: 4 + subsegments: + - [auto, c, area] + - [auto, c, actor/blue_goomba_1] + - [auto, c, actor/red_goomba_1] + - [auto, c, actor/blue_goomba_2] + - [auto, c, actor/red_goomba_2] + - [auto, c, actor/goomba_king] + - [auto, c, actor/goomnut_tree] + - [auto, c, stage/kmr_02] + - [auto, c, stage/kmr_03] + - [auto, c, stage/kmr_04] + - [auto, c, stage/kmr_05] + - [auto, c, stage/kmr_06] + - dir: battle/area/kmr_part_3 + type: code + start: 0x44ED80 vram: 0x80218000 - - type: bin - name: battle_area_mac - start: 0x0046BDD0 + subalign: 4 + subsegments: + - [auto, c, area] + - [auto, c, actor/tutorial_spiked_goomba] + - [auto, c, actor/tutorial_paragoomba] + - [auto, c, actor/paragoomba] + - [auto, c, actor/jr_troopa] + - [auto, c, actor/egg_jr_troopa] + - [auto, c, actor/para_jr_troopa] + - [auto, c, actor/spiked_para_jr_troopa] + - [auto, c, actor/mage_jr_troopa] + - [auto, c, actor/final_jr_troopa] + - [auto, c, stage/kmr_02] + - [auto, c, stage/kmr_03] + - [auto, c, stage/kmr_04] + - [auto, c, stage/kmr_05b] + - [auto, c, stage/kmr_06] + - [auto, c, stage/nok_01] + - [auto, c, stage/mim_01] + - [auto, c, stage/sam_01] + - [auto, c, stage/mac_01] + - [auto, c, stage/kpa_13] + - dir: battle/area/mac + type: code + start: 0x46BDD0 vram: 0x80218000 - - type: bin - name: battle_area_hos - start: 0x004869F0 + subsegments: + - [auto, c, actor/chan] + - [auto, c, actor/lee] + - [auto, c, actor/master1] + - [auto, c, actor/master2] + - [auto, c, actor/master3] + - [auto, c, stage/mac_01] + - [auto, c, stage/mac_02] + - [auto, c, area] + - dir: battle/area/hos + type: code + start: 0x4869F0 vram: 0x80218000 - - type: bin - name: battle_area_nok - start: 0x00494AE0 + subsegments: + - [auto, c, actor/goombario_tutor] + - [auto, c, actor/ember] + - [auto, c, actor/magikoopa] + - [auto, c, stage/hos_01] + - [auto, c, stage/hos_00] + - [auto, c, stage/hos_02] + - [auto, c, area] + - dir: battle/area/nok + type: code + start: 0x494AE0 vram: 0x80218000 - - type: bin - name: battle_area_trd_part_1 - start: 0x004A89E0 + subalign: 4 + subsegments: + - [auto, c, area] + - [auto, c, actor/goomba] + - [auto, c, actor/paragoomba] + - [auto, c, actor/spiked_goomba] + - [auto, c, actor/koopa_troopa] + - [auto, c, actor/fuzzy] + - [auto, c, actor/paratroopa] + - [auto, c, actor/kent_c_koopa] + - [auto, c, stage/nok_01] + - [auto, c, stage/nok_02] + - [auto, c, stage/nok_03] + - [auto, c, stage/nok_04] + - dir: battle/area/trd_part_1 + type: code + start: 0x4A89E0 vram: 0x80218000 - - type: bin - name: battle_area_trd_part_2 - start: 0x004B8B30 + subsegments: + - [auto, c, area] + - [auto, c, actor/bullet_bill] + - [auto, c, actor/bill_blaster] + - [auto, c, actor/bob_omb] + - [auto, c, actor/koopa_troopa] + - [auto, c, actor/paratroopa] + - [auto, c, stage/trd_01] + - [auto, c, stage/trd_02] + - [auto, c, stage/trd_02b] + - [auto, c, stage/trd_03] + - [auto, c, stage/trd_04] + - [auto, c, stage/trd_05] + - [auto, c, stage/trd_00] + - [auto, c, stage/trd_02c] + - [auto, c, stage/trd_02d] + - [auto, c, stage/trd_05b] + - [auto, c, stage/trd_05c] + - [auto, c, stage/trd_05d] + - [auto, c, stage/trd_05e] + - [auto, c, stage/trd_05f] + - dir: battle/area/trd_part_2 + type: code + start: 0x4B8B30 vram: 0x80218000 - - type: bin - name: battle_area_trd_part_3 - start: 0x004D6AF0 + subalign: 4 + subsegments: + - [auto, c, area] + - [auto, c, actor/fake_bowser] + - [auto, c, actor/koopa_bros_green] + - [auto, c, actor/koopa_bros_red] + - [auto, c, actor/koopa_bros_black] + - [auto, c, actor/koopa_bros_yellow] + - [auto, c, stage/trd_00] + - [auto, c, stage/trd_01] + - [auto, c, stage/trd_02] + - [auto, c, stage/trd_02b] + - [auto, c, stage/trd_03] + - [auto, c, stage/trd_04] + - [auto, c, stage/trd_05] + - [auto, c, stage/trd_05b] + - [auto, c, stage/trd_05c] + - [auto, c, stage/trd_05d] + - [auto, c, stage/trd_05e] + - [auto, c, stage/trd_05f] + - dir: battle/area/trd_part_3 + type: code + start: 0x4D6AF0 vram: 0x80218000 - - type: bin - name: battle_area_iwa - start: 0x004D7B30 + subsegments: + - [auto, c, area] + - [auto, c, actor/eldstar] + - [auto, c, stage/nok_01] + - dir: battle/area/iwa + type: code + start: 0x4D7B30 vram: 0x80218000 - - type: bin - name: battle_area_sbk - start: 0x004E1F20 + subalign: 4 + subsegments: + - [auto, c, area] + - [auto, c, actor/cleft] + - [auto, c, actor/monty_mole] + - [auto, c, actor/buzzar] + - [auto, c, actor/whacka] + - [auto, c, stage/iwa_01] + - [auto, c, stage/iwa_01b] + - [auto, c, stage/iwa_02] + - dir: battle/area/sbk + type: code + start: 0x4E1F20 vram: 0x80218000 - - type: bin - name: battle_area_isk_part_1 - start: 0x004EA080 + subsegments: + - [auto, c, actor/pokey] + - [auto, c, actor/bandit] + - [auto, c, stage/sbk_02] + - [auto, c, area] + - dir: battle/area/isk_part_1 + type: code + start: 0x4EA080 vram: 0x80218000 - - type: bin - name: battle_area_isk_part_2 - start: 0x004F6DE0 + subsegments: + - [auto, c, actor/pokey_mummy] + - [auto, c, actor/swooper] + - [auto, c, actor/buzzy_beetle] + - [auto, c, actor/stone_chomp] + - [auto, c, stage/isk_00] + - [auto, c, stage/isk_01] + - [auto, c, stage/isk_02] + - [auto, c, stage/isk_03] + - [auto, c, stage/isk_04] + - [auto, c, stage/isk_05] + - [auto, c, stage/isk_06] + - [auto, c, stage/isk_07] + - [auto, c, stage/isk_07] + - [auto, c, stage/isk_03b] + - [auto, c, stage/isk_02b] + - [auto, c, stage/isk_02c] + - [auto, c, stage/isk_06b] + - [auto, c, stage/isk_08] + - [auto, c, area] + - dir: battle/area/isk_part_2 + type: code + start: 0x4F6DE0 vram: 0x80218000 - - type: bin - name: battle_area_mim - start: 0x004FF520 + subsegments: + - [auto, c, actor/chain_chomp] + - [auto, c, actor/tutankoopa] + - [auto, c, stage/isk_00] + - [auto, c, stage/isk_01] + - [auto, c, stage/isk_02] + - [auto, c, stage/isk_02b] + - [auto, c, stage/isk_02c] + - [auto, c, stage/isk_03] + - [auto, c, stage/isk_03b] + - [auto, c, stage/isk_04] + - [auto, c, stage/isk_05] + - [auto, c, stage/isk_06] + - [auto, c, stage/isk_06b] + - [auto, c, stage/isk_07] + - [auto, c, area] + - dir: battle/area/mim + type: code + start: 0x4FF520 vram: 0x80218000 - - type: bin - name: battle_area_arn - start: 0x00506390 + subsegments: + - [auto, c, actor/forest_fuzzy] + - [auto, c, actor/bzzap] + - [auto, c, actor/piranha_plant] + - [auto, c, stage/mim_01] + - [auto, c, area] + - dir: battle/area/arn + type: code + start: 0x506390 vram: 0x80218000 - - type: bin - name: battle_area_dgb - start: 0x00516960 + subsegments: + - [auto, c, actor/hyper_goomba] + - [auto, c, actor/hyper_paragoomba] + - [auto, c, actor/hyper_cleft] + - [auto, c, actor/tubbas_heart] + - [auto, c, actor/tubba_blubba] + - [auto, c, stage/arn_01] + - [auto, c, stage/arn_02] + - [auto, c, stage/arn_03] + - [auto, c, stage/arn_04] + - [auto, c, stage/arn_05] + - [auto, c, stage/arn_06] + - [auto, c, area] + - dir: battle/area/dgb + type: code + start: 0x516960 vram: 0x80218000 - - type: bin - name: battle_area_omo - start: 0x00519F10 + subsegments: + - [auto, c, actor/clubba] + - [auto, c, actor/tubba_blubba] + - [auto, c, stage/dgb_01] + - [auto, c, stage/dgb_02] + - [auto, c, stage/dgb_03] + - [auto, c, stage/dgb_04] + - [auto, c, stage/dgb_05] + - [auto, c, area] + - dir: battle/area/omo + type: code + start: 0x519F10 vram: 0x80218000 - - type: bin - name: battle_area_omo2 - start: 0x00532FE0 + subsegments: + - [auto, c, actor/red_shy_guy] + - [auto, c, actor/blue_shy_guy] + - [auto, c, actor/yellow_shy_guy] + - [auto, c, actor/pink_shy_guy] + - [auto, c, actor/green_shy_guy] + - [auto, c, actor/anti_guy] + - [auto, c, actor/medi_guy] + - [auto, c, actor/groove_guy] + - [auto, c, actor/spy_guy] + - [auto, c, actor/sky_guy] + - [auto, c, actor/pyro_guy] + - [auto, c, stage/omo_01] + - [auto, c, stage/omo_02] + - [auto, c, stage/omo_03] + - [auto, c, stage/omo_03b] + - [auto, c, stage/omo_04] + - [auto, c, stage/omo_05] + - [auto, c, stage/omo_05b] + - [auto, c, stage/omo_06] + - [auto, c, stage/omo_07] + - [auto, c, area] + - dir: battle/area/omo2 + type: code + start: 0x532FE0 vram: 0x80218000 - - type: bin - name: battle_area_omo2_1 - start: 0x0054AEB0 + subsegments: + - [auto, c, actor/general_guy] + - [auto, c, actor/toy_tank] + - [auto, c, actor/light_bulb] + - [auto, c, stage/omo_07] + - [auto, c, area] + - dir: battle/area/omo2_1 + type: code + start: 0x54AEB0 vram: 0x80231000 - - type: bin - name: battle_area_omo2_2 - start: 0x0054FD20 + subsegments: + - [auto, c, actor/shy_squad] + - dir: battle/area/omo2_2 + type: code + start: 0x54FD20 vram: 0x80231000 - - type: bin - name: battle_area_omo2_3 - start: 0x005545B0 + subsegments: + - [auto, c, actor/stilt_guy] + - dir: battle/area/omo2_3 + type: code + start: 0x5545B0 vram: 0x80231000 - - type: bin - name: battle_area_omo2_4 - start: 0x00559D80 + subsegments: + - [auto, c, actor/shy_stack] + - dir: battle/area/omo2_4 + type: code + start: 0x559D80 vram: 0x80231000 - - type: bin - name: battle_area_omo2_5 - start: 0x0055A4F0 + subsegments: + - [auto, c, actor/signal_guy] + - dir: battle/area/omo2_5 + type: code + start: 0x55A4F0 vram: 0x80231000 - - type: bin - name: battle_area_omo2_6 - start: 0x0055E5D0 + subsegments: + - [auto, c, actor/shy_squad_redux] + - dir: battle/area/omo2_6 + type: code + start: 0x55E5D0 vram: 0x80231000 - - type: bin - name: battle_area_omo3 - start: 0x0055ED20 + subsegments: + - [auto, c, actor/shy_squad_stub] + - dir: battle/area/omo3 + type: code + start: 0x55ED20 vram: 0x80218000 - - type: bin - name: battle_area_kgr - start: 0x00575BE0 + subsegments: + - [auto, c, actor/big_lantern_ghost] + - [auto, c, stage/omo_01] + - [auto, c, stage/omo_02] + - [auto, c, stage/omo_03] + - [auto, c, stage/omo_03b] + - [auto, c, stage/omo_04] + - [auto, c, stage/omo_05] + - [auto, c, stage/omo_05b] + - [auto, c, stage/omo_06] + - [auto, c, stage/omo_07] + - [auto, c, actor/goomba] + - [auto, c, actor/clubba] + - [auto, c, actor/fuzzy] + - [auto, c, actor/hammer_bro] + - [auto, c, actor/pokey] + - [auto, c, actor/koopatrol] + - [auto, c, actor/red_shy_guy] + - [auto, c, area] + - dir: battle/area/kgr + type: code + start: 0x575BE0 vram: 0x80218000 - - type: bin - name: battle_area_jan - start: 0x0057B260 + subsegments: + - [auto, c, actor/fuzzipede] + - [auto, c, stage/kgr_01] + - [auto, c, area] + - dir: battle/area/jan + type: code + start: 0x57B260 vram: 0x80218000 - - type: bin - name: battle_area_jan2 - start: 0x0058C280 + subsegments: + - [auto, c, actor/spear_guy] + - [auto, c, actor/hurt_plant] + - [auto, c, actor/jungle_fuzzy] + - [auto, c, actor/m_bush] + - [auto, c, actor/medi_guy] + - [auto, c, actor/spike_top] + - [auto, c, stage/jan_00] + - [auto, c, stage/jan_01] + - [auto, c, stage/jan_01b] + - [auto, c, stage/jan_02] + - [auto, c, stage/jan_03] + - [auto, c, stage/jan_03b] + - [auto, c, stage/jan_04] + - [auto, c, stage/jan_04b] + - [auto, c, area] + - dir: battle/area/jan2 + type: code + start: 0x58C280 vram: 0x80218000 - - type: bin - name: battle_area_kzn - start: 0x00593C30 + subsegments: + - [auto, c, actor/putrid_piranha] + - [auto, c, actor/white_magikoopa] + - [auto, c, stage/jan_00] + - [auto, c, stage/jan_01] + - [auto, c, stage/jan_01b] + - [auto, c, stage/jan_02] + - [auto, c, stage/jan_03] + - [auto, c, stage/jan_03b] + - [auto, c, stage/jan_04] + - [auto, c, stage/jan_04b] + - [auto, c, area] + - dir: battle/area/kzn + type: code + start: 0x593C30 vram: 0x80218000 - - type: bin - name: battle_area_kzn2 - start: 0x005A6020 + subsegments: + - [auto, c, actor/lava_bubble] + - [auto, c, actor/putrid_piranha] + - [auto, c, actor/spike_top] + - [auto, c, actor/medi_guy] + - [auto, c, actor/red_magikoopa] + - [auto, c, actor/white_magikoopa] + - [auto, c, stage/kzn_01] + - [auto, c, stage/kzn_01b] + - [auto, c, stage/kzn_02] + - [auto, c, stage/kzn_04] + - [auto, c, stage/kzn_04b] + - [auto, c, stage/kzn_04c] + - [auto, c, stage/kzn_05] + - [auto, c, area] + - dir: battle/area/kzn2 + type: code + start: 0x5A6020 vram: 0x80218000 - - type: bin - name: battle_area_flo - start: 0x005B8DF0 + symbol_name_format: $VRAM_$ROM + subsegments: + - [auto, c, anim/unused_gfx] + - [auto, c, anim/lava_piranha_anim] + - [auto, c, actor/lava_piranha] + - [auto, c, actor/petit_piranha] + - [auto, c, actor/lava_bud] + - [auto, c, actor/petit_piranha_bomb] + - [auto, c, stage/kzn_01] + - [auto, c, stage/kzn_01b] + - [auto, c, stage/kzn_02] + - [auto, c, stage/kzn_04] + - [auto, c, stage/kzn_04b] + - [auto, c, stage/kzn_04c] + - [auto, c, stage/kzn_05] + - [auto, c, area] + - start: 0x5A6E70 + type: .data + name: anim/unused_gfx + subsegments: + - [0x5A6E70, vtx, vtx1] + - [0x5A6FF0, vtx, vtx2] + - [0x5A7110, vtx, vtx3] + - [0x5A7270, vtx, vtx4] + - [0x5A7370, vtx, vtx5] + - [0x5A74D0, vtx, vtx6] + - [0x5A7670, vtx, vtx7] + - [0x5A77F0, vtx, vtx8] + - [0x5A7970, vtx, vtx9] + - [0x5A7AD0, vtx, vtx10] + - [0x5A7BF0, vtx, vtx11] + - [0x5A7C20, vtx, vtx12] + - [0x5A7C50, vtx, vtx13] + - [0x5A7C80, vtx, vtx14] + - [0x5A7CB0, vtx, vtx15] + - [0x5A7CE0, vtx, vtx16] + - [0x5A7D10, vtx, vtx17] + - [0x5A7D40, vtx, vtx18] + - [0x5A7D70, gfx, gfx1] + - [0x5A7E40, gfx, gfx2] + - [0x5A7E80, gfx, gfx3] + - [0x5A7ED0, gfx, gfx4] + - [0x5A7F20, gfx, gfx5] + - [0x5A7F70, gfx, gfx6] + - [0x5A7FD0, gfx, gfx7] + - [0x5A8020, gfx, gfx8] + - [0x5A8060, gfx, gfx9] + - [0x5A80B0, gfx, gfx10] + - [0x5A80F0, gfx, gfx11] + - [0x5A8140] + - start: 0x5AA7C0 + type: .data + name: actor/lava_piranha + subsegments: + - [0x5AA7C0] + - [0x5AA960, ci4, lava_piranha_vine, 64, 32] + - [0x5AAD60, palette, lava_piranha_vine] + - [0x5AAF60, gfx, lava_piranha_vine] + - [0x5AB038] + - [0x5B8B80] + - dir: battle/area/flo + type: code + start: 0x5B8DF0 vram: 0x80218000 - - type: bin - name: battle_area_flo2 - start: 0x005D5FD0 + subsegments: + - [auto, c, actor/lakitu] + - [auto, c, actor/spiny] + - [auto, c, actor/crazee_dayzee] + - [auto, c, actor/bzzap] + - [auto, c, actor/amazy_dayzee] + - [auto, c, actor/ruff_puff] + - [auto, c, actor/medi_guy] + - [auto, c, actor/red_magikoopa] + - [auto, c, actor/green_magikoopa] + - [auto, c, actor/white_magikoopa] + - [auto, c, actor/yellow_magikoopa] + - [auto, c, stage/flo_01] + - [auto, c, stage/flo_01b] + - [auto, c, stage/flo_01c] + - [auto, c, stage/flo_02] + - [auto, c, stage/flo_02b] + - [auto, c, stage/flo_02c] + - [auto, c, stage/flo_03] + - [auto, c, stage/flo_04] + - [auto, c, stage/flo_05] + - [auto, c, stage/flo_06] + - [auto, c, area] + - dir: battle/area/flo2 + type: code + start: 0x5D5FD0 vram: 0x80218000 - - type: bin - name: battle_area_tik - start: 0x005F3DD0 + subsegments: + - [auto, c, actor/huff_n_puff] + - [auto, c, actor/tuff_puff] + - [auto, c, actor/monty_mole_boss] + - [auto, c, actor/spike] + - [auto, c, stage/flo_01] + - [auto, c, stage/flo_01b] + - [auto, c, stage/flo_01c] + - [auto, c, stage/flo_02] + - [auto, c, stage/flo_02b] + - [auto, c, stage/flo_02c] + - [auto, c, stage/flo_03] + - [auto, c, stage/flo_04] + - [auto, c, stage/flo_05] + - [auto, c, stage/flo_06] + - [auto, c, area] + - dir: battle/area/tik + type: code + start: 0x5F3DD0 vram: 0x80218000 - - type: bin - name: battle_area_tik2 - start: 0x006103F0 + subsegments: + - [auto, c, actor/dark_koopa] + - [auto, c, actor/dark_paratroopa] + - [auto, c, actor/gloomba] + - [auto, c, actor/spiked_gloomba] + - [auto, c, actor/paragloomba] + - [auto, c, actor/buzzy_beetle] + - [auto, c, actor/spike_top] + - [auto, c, actor/spiny] + - [auto, c, stage/tik_01] + - [auto, c, stage/tik_02] + - [auto, c, stage/tik_03] + - [auto, c, stage/tik_04] + - [auto, c, stage/tik_05] + - [auto, c, area] + - dir: battle/area/tik2 + type: code + start: 0x6103F0 vram: 0x80218000 - - type: bin - name: battle_area_tik3 - start: 0x00620030 + subsegments: + - [auto, c, actor/blooper] + - [auto, c, actor/electro_blooper] + - [auto, c, actor/super_blooper] + - [auto, c, actor/blooper_baby] + - [auto, c, stage/tik_01] + - [auto, c, stage/tik_02] + - [auto, c, stage/tik_03] + - [auto, c, stage/tik_04] + - [auto, c, stage/tik_05] + - [auto, c, area] + - dir: battle/area/tik3 + type: code + start: 0x620030 vram: 0x80218000 - - type: bin - name: battle_area_sam - start: 0x0062B4E0 + subsegments: + - [auto, c, actor/swooper] + - [auto, c, actor/swoopula] + - [auto, c, stage/tik_01] + - [auto, c, stage/tik_02] + - [auto, c, stage/tik_03] + - [auto, c, stage/tik_04] + - [auto, c, stage/tik_05] + - [auto, c, area] + - dir: battle/area/sam + type: code + start: 0x62B4E0 vram: 0x80218000 - - type: bin - name: battle_area_sam2 - start: 0x00644B20 + subsegments: + - [auto, c, actor/duplighost] + - [auto, c, actor/gulpit] + - [auto, c, actor/gulpit_rocks] + - [auto, c, actor/white_clubba] + - [auto, c, actor/frost_piranha] + - [auto, c, actor/gray_magikoopa] + - [auto, c, stage/sam_01] + - [auto, c, stage/sam_02] + - [auto, c, stage/sam_02b] + - [auto, c, stage/sam_02c] + - [auto, c, stage/sam_02d] + - [auto, c, stage/sam_03] + - [auto, c, area] + - dir: battle/area/sam2 + type: code + start: 0x644B20 vram: 0x80218000 - - type: bin - name: battle_area_pra - start: 0x00650750 + subsegments: + - [auto, c, actor/monstar] + - [auto, c, actor/paragoomba] + - [auto, c, actor/gray_magikoopa] + - [auto, c, stage/sam_01] + - [auto, c, stage/sam_02] + - [auto, c, stage/sam_02b] + - [auto, c, stage/sam_02c] + - [auto, c, stage/sam_02d] + - [auto, c, stage/sam_03] + - [auto, c, area] + - [auto, c, dlist] + - start: 0x646980 + type: .data + name: actor/monstar + subsegments: + - [0x646980] + - [0x646BB8, ci4, actor/img, 32, 32] + - [0x646DB8, palette, actor/img] + - [0x646DD8] + - start: 0x6501A0 + type: .data + name: vtx + subsegments: + - [0x6501A0, vtx, monstar_bubbles] + - [0x6505C0] + - dir: battle/area/pra + type: code + start: 0x650750 vram: 0x80218000 - - type: bin - name: battle_area_pra2 - start: 0x00668090 + subsegments: + - [auto, c, actor/swoopula] + - [auto, c, actor/albino_dino] + - [auto, c, actor/white_clubba] + - [auto, c, actor/red_magikoopa] + - [auto, c, actor/green_magikoopa] + - [auto, c, actor/yellow_magikoopa] + - [auto, c, actor/gray_magikoopa] + - [auto, c, actor/white_magikoopa] + - [auto, c, stage/pra_01] + - [auto, c, stage/pra_02] + - [auto, c, stage/pra_03] + - [auto, c, stage/pra_03b] + - [auto, c, stage/pra_03c] + - [auto, c, stage/pra_04] + - [auto, c, area] + - dir: battle/area/pra2 + type: code + start: 0x668090 vram: 0x80218000 - - type: bin - name: battle_area_pra3 - start: 0x006716C0 + subsegments: + - [auto, c, actor/crystal_king] + - [auto, c, actor/crystal_bit] + - [auto, c, stage/sam_04] + - [auto, c, area] + - dir: battle/area/pra3 + type: code + start: 0x6716C0 vram: 0x80218000 - - type: bin - name: battle_area_kpa - start: 0x0068C370 + subsegments: + - [auto, c, actor/duplighost] + - [auto, c, actor/swoopula] + - [auto, c, actor/white_clubba] + - [auto, c, actor/red_magikoopa] + - [auto, c, actor/gray_magikoopa] + - [auto, c, stage/pra_01] + - [auto, c, stage/pra_02] + - [auto, c, stage/pra_03] + - [auto, c, stage/pra_03b] + - [auto, c, stage/pra_03c] + - [auto, c, stage/pra_04] + - [auto, c, area] + - dir: battle/area/kpa + type: code + start: 0x68C370 vram: 0x80218000 - - type: bin - name: battle_area_kpa2 - start: 0x006A6B40 + subsegments: + - [auto, c, actor/bony_beetle] + - [auto, c, actor/dry_bones] + - [auto, c, actor/hammer_bro] + - [auto, c, actor/koopatrol] + - [auto, c, actor/magikoopa] + - [auto, c, actor/ember] + - [auto, c, stage/kpa_01] + - [auto, c, stage/kpa_01b] + - [auto, c, stage/kpa_02] + - [auto, c, stage/kpa_03] + - [auto, c, stage/kpa_04] + - [auto, c, stage/kpa_04b] + - [auto, c, stage/kpa_04c] + - [auto, c, stage/kpa_05] + - [auto, c, stage/kpa_07] + - [auto, c, stage/kpa_08] + - [auto, c, stage/kpa_09] + - [auto, c, stage/kpa_11] + - [auto, c, stage/kpa_13] + - [auto, c, stage/kpa_14] + - [auto, c, area] + - dir: battle/area/kpa2 + type: code + start: 0x6A6B40 vram: 0x80218000 - - type: bin - name: battle_area_kpa3 - start: 0x006C34D0 + subsegments: + - [auto, c, actor/unused_bowser] + - [auto, c, actor/intro_bowser] + - [auto, c, actor/hallway_bowser] + - [auto, c, actor/final_bowser_1] + - [auto, c, actor/final_bowser_2] + - [auto, c, stage/kpa_01] + - [auto, c, stage/kkj_01] + - [auto, c, stage/kkj_02] + - [auto, c, area] + - dir: battle/area/kpa3 + type: code + start: 0x6C34D0 vram: 0x80218000 - - type: bin - name: battle_area_kpa4 - start: 0x006D39B0 + subsegments: + - [auto, c, actor/anti_guy] + - [auto, c, actor/duplighost] + - [auto, c, stage/kpa_01] + - [auto, c, area] + - dir: battle/area/kpa4 + type: code + start: 0x6D39B0 vram: 0x80218000 - - type: bin - name: battle_area_kkj - start: 0x006E36E0 + subsegments: + - [auto, c, actor/bombshell_blaster] + - [auto, c, actor/bombshell_bill] + - [auto, c, actor/koopatrol] + - [auto, c, actor/magikoopa] + - [auto, c, stage/kpa_01] + - [auto, c, stage/kpa_01b] + - [auto, c, stage/kpa_02] + - [auto, c, stage/kpa_03] + - [auto, c, stage/kpa_04] + - [auto, c, stage/kpa_04b] + - [auto, c, stage/kpa_04c] + - [auto, c, stage/kpa_05] + - [auto, c, stage/kpa_07] + - [auto, c, stage/kpa_08] + - [auto, c, stage/kpa_09] + - [auto, c, stage/kpa_11] + - [auto, c, stage/kpa_13] + - [auto, c, stage/kpa_14] + - [auto, c, area] + - dir: battle/area/kkj + type: code + start: 0x6E36E0 vram: 0x80218000 - - type: bin - name: battle_area_dig - start: 0x006E5700 + subsegments: + - [auto, c, area] + - [auto, c, actor/kammy_koopa] + - [auto, c, stage/kpa_05] + - dir: battle/area/dig + type: code + start: 0x6E5700 vram: 0x80218000 + subsegments: + - [auto, c, actor/koopa_troopa] + - [auto, c, actor/fuzzy] + - [auto, c, actor/pokey] + - [auto, c, actor/bandit] + - [auto, c, actor/red_shy_guy] + - [auto, c, actor/tubba_blubba] + - [auto, c, actor/monty_mole] + - [auto, c, actor/whacka] + - [auto, c, stage/dig_01] + - [auto, c, stage/dig_02] + - [auto, c, stage/dig_03] + - [auto, c, stage/dig_04] + - [auto, c, stage/dig_05] + - [auto, c, area] + - [auto, c, script/dig_01] + - [auto, c, script/dig_02] + - [auto, c, script/dig_03] + - [auto, c, script/dig_04] + - [auto, c, script/dig_05] ####################### ### Battle Partners ### diff --git a/ver/jp/symbol_addrs.txt b/ver/jp/symbol_addrs.txt index 0db223ca118..d244c2a780d 100644 --- a/ver/jp/symbol_addrs.txt +++ b/ver/jp/symbol_addrs.txt @@ -4678,6 +4678,13 @@ D_09000D08_415D68 = 0x09000D08; // rom:0x41D728 battle_action_cmd_whirlwind_bubble_png = 0x802AA1A0; // rom:0x42C7D0 +D_8021C940_5A3020 = 0x8021C940; // rom:0x5AA960 +D_8021CD40_5A3420 = 0x8021CD40; // rom:0x5AAD60 +D_8021CF40_5A3620 = 0x8021CF40; // rom:0x5AAF60 + +battle_area_sam2_actor_img_png = 0x8021A098; // rom:0x646BB8 +monstar_bubbles = 0x80223680; // rom:0x6501A0 + battle_item_dusty_hammer_png = 0x802A1800; // rom:0x71FB10 battle_item_pebble_png = 0x802A1800; // rom:0x7212B0 battle_item_sleepy_sheep1_png = 0x802A1F30; // rom:0x726EC0 diff --git a/ver/jp/undefined_syms.txt b/ver/jp/undefined_syms.txt index 6645a1b5fad..47a125364a0 100644 --- a/ver/jp/undefined_syms.txt +++ b/ver/jp/undefined_syms.txt @@ -57,11 +57,6 @@ D_80200000 = 0x80200000; gBackgroundImage = 0x80200000; gMapShapeData = 0x80210000; initialize_battle = 0x8023E130; -btl_update = 0x8023E438; -btl_draw_ui = 0x8023EA7C; -btl_save_world_cameras = 0x802409F4; -btl_restore_world_cameras = 0x80240AA8; -btl_set_state = 0x80241190; filemenu_update = 0x80242970; pause_init = 0x80243830; pause_handle_input = 0x80243BF4; @@ -562,88 +557,6 @@ mgm_02_settings = 0x80242410; // segment:mgm_02 mgm_03_settings = 0x80240010; // segment:mgm_03 gv_01_settings = 0x802407D0; // segment:gv_01 -b_area_kzn2_dmaTable = 0x8022AA84; -b_area_kmr_part_1_Formations = 0x802194D4; -b_area_kmr_part_1_Stages = 0x802195D8; -b_area_kmr_part_2_Formations = 0x80219840; -b_area_kmr_part_2_Stages = 0x8021987C; -b_area_kmr_part_3_Formations = 0x8021A2AC; -b_area_kmr_part_3_Stages = 0x8021A360; -b_area_mac_Formations = 0x80232A5C; -b_area_mac_Stages = 0x80232AD4; -b_area_hos_Formations = 0x80225F24; -b_area_hos_Stages = 0x80225F88; -b_area_nok_Formations = 0x80219520; -b_area_nok_Stages = 0x80219728; -b_area_trd_part_1_Formations = 0x80218CB0; -b_area_trd_part_1_Stages = 0x80218EE0; -b_area_trd_part_2_Formations = 0x8021A5DC; -b_area_trd_part_2_Stages = 0x8021A604; -b_area_trd_part_3_Formations = 0x8021823C; -b_area_trd_part_3_Stages = 0x80218264; -b_area_iwa_Formations = 0x802185B8; -b_area_iwa_Stages = 0x802186E4; -b_area_sbk_Formations = 0x8021FE80; -b_area_sbk_Stages = 0x8021FFE8; -b_area_isk_part_1_Formations = 0x80224700; -b_area_isk_part_1_Stages = 0x802248A4; -b_area_isk_part_2_Formations = 0x80220448; -b_area_isk_part_2_Stages = 0x80220470; -b_area_mim_Formations = 0x8021EA70; -b_area_mim_Stages = 0x8021EBEC; -b_area_arn_Formations = 0x80228110; -b_area_arn_Stages = 0x80228278; -b_area_dgb_Formations = 0x8021B38C; -b_area_dgb_Stages = 0x8021B418; -b_area_omo_Formations = 0x80230730; -b_area_omo_Stages = 0x80230AC8; -b_area_omo2_Formations = 0x8022FBF4; -b_area_omo2_Stages = 0x8022FC1C; -b_area_omo3_Formations = 0x8022EA2C; -b_area_omo3_Stages = 0x8022EB1C; -b_area_kgr_Formations = 0x8021D5FC; -b_area_kgr_Stages = 0x8021D624; -b_area_jan_Formations = 0x80228AF8; -b_area_jan_Stages = 0x80228C60; -b_area_jan2_Formations = 0x8021F6C8; -b_area_jan2_Stages = 0x8021F72C; -b_area_kzn_Formations = 0x80229E74; -b_area_kzn_Stages = 0x8022A02C; -b_area_kzn2_Formations = 0x8022AA08; -b_area_kzn2_Stages = 0x8022AA44; -b_area_flo_Formations = 0x80234574; -b_area_flo_Stages = 0x8023486C; -b_area_flo2_Formations = 0x802356FC; -b_area_flo2_Stages = 0x80235788; -b_area_tik_Formations = 0x802340B4; -b_area_tik_Stages = 0x802342BC; -b_area_tik2_Formations = 0x80227A90; -b_area_tik2_Stages = 0x80227AE0; -b_area_tik3_Formations = 0x802232E8; -b_area_tik3_Stages = 0x8022334C; -b_area_sam_Formations = 0x80231164; -b_area_sam_Stages = 0x80231290; -b_area_sam2_Formations = 0x802234F0; -b_area_sam2_Stages = 0x8022352C; -b_area_pra_Formations = 0x8022F4D4; -b_area_pra_Stages = 0x8022F614; -b_area_pra2_Formations = 0x802215A0; -b_area_pra2_Stages = 0x802215C8; -b_area_pra3_Formations = 0x80232888; -b_area_pra3_Stages = 0x8023298C; -b_area_kpa_Formations = 0x80231A64; -b_area_kpa_Stages = 0x80231ED8; -b_area_kpa2_Formations = 0x802346A8; -b_area_kpa2_Stages = 0x80234720; -b_area_kpa3_Formations = 0x8022839C; -b_area_kpa3_Stages = 0x802283EC; -b_area_kpa4_Formations = 0x80227910; -b_area_kpa4_Stages = 0x80227988; -b_area_kkj_Formations = 0x802185BC; -b_area_kkj_Stages = 0x802185E4; -b_area_dig_Formations = 0x8022A7C4; -b_area_dig_Stages = 0x8022A83C; - heap_spriteHead = 0x8034F800; Entity_UltraBlockContent_Render = 0x0A000800; entity_model_SimpleSpring_gfx_ROM_END = 0x00E72BD0; @@ -826,265 +739,19 @@ FlowerGoalPositionY = 0x802BCE30; FlowerGoalPositionZ = 0x802BCE32; FlowerGoalPositionX = 0x802BCE34; -// battle -btl_cam_use_preset = 0x8024E40C; -btl_cam_move = 0x8024E4D8; -UseBattleCamPreset = 0x8024E61C; -UseBattleCamPresetImmediately = 0x8024E664; -SetBattleCamTarget = 0x8024E90C; -MoveBattleCamOver = 0x8024EC08; -SetBattleCamZoom = 0x8024EC6C; -AddBattleCamZoom = 0x8024ECAC; -ShowMessageBox = 0x80251440; -WaitForMessageBoxDone = 0x80251558; -ItemDamageEnemy = 0x802528A8; -ItemCheckHit = 0x80252EC0; -ActorSpeak = 0x802530B0; -EnableBattleStatusBar = 0x80253734; -PlaySoundAtActor = 0x802539DC; -SetForegroundModelsVisible = 0x80253C6C; -StartRumble = 0x80254398; -set_actor_anim = 0x80263E7C; -get_actor_part = 0x802645DC; -btl_update_ko_status = 0x802678FC; -get_actor = 0x80269EEC; -SetGoalToHome = 0x8026A044; -SetGoalToTarget = 0x8026A528; -SetGoalPos = 0x8026A690; -GetGoalPos = 0x8026A9A0; -GetActorPos = 0x8026AC28; -SetActorPos = 0x8026AFC0; -SetAnimation = 0x8026B330; -SetActorYaw = 0x8026B4D8; -SetActorJumpGravity = 0x8026B6DC; -SetActorSpeed = 0x8026B7D4; -SetJumpAnimations = 0x8026BA0C; -GetActorVar = 0x8026C134; -SetActorVar = 0x8026C1C4; -SetActorRotationOffset = 0x8026C62C; -SetActorScale = 0x8026CA84; -SetActorScaleModifier = 0x8026CB44; -SetBattleFlagBits = 0x8026CEBC; -SetActorFlagBits = 0x8026D00C; -GetOwnerID = 0x8026DF80; -InitTargetIterator = 0x8026E4D4; -ChooseNextTarget = 0x8026E594; -GetOwnerTarget = 0x8026EA2C; -ModifyActorDecoration = 0x8026F170; -func_80273444 = 0x802735C0; -PlayerRunToGoal = 0x80273DE0; -PlayerDamageEnemy = 0x802743DC; -PlayerYieldTurn = 0x80277078; -dispatch_damage_event_actor_0 = 0x80278A78; -RunToGoal = 0x80279FE4; -RemoveActor = 0x8027C930; -DispatchEvent = 0x8027D3E4; -PartnerYieldTurn = 0x80280998; -EMS_StarIcon = 0x802841E8; -PartnerWishAnims = 0x8029CB90; -CheckButtonPress = 0x8026E218; -SetGoalToFirstTarget = 0x8026A61C; -CancelablePlayerRunToGoal = 0x80274078; -func_802693F0 = 0x80269570; -AddGoalPos = 0x8026A8C8; -EnablePlayerBlur = 0x80274AF4; -PlayerLandJump = 0x80273C80; -LoadActionCommand = 0x80268340; -func_80274A18 = 0x80274B94; -func_802752AC = 0x80275428; -GetPlayerActionSuccess = 0x80277030; -SetActionDifficultyTable = 0x8026931C; -func_80275F00 = 0x8027607C; -CloseActionCommandInfo = 0x80269590; -SetActorRotation = 0x8026C52C; -SetActorDispOffset = 0x8026BB84; -ShowActionHud = 0x80269624; -GetMenuSelection = 0x80273540; -PlayerTestEnemy = 0x8027486C; -SetActorSounds = 0x8026F8C0; -GetTargetListLength = 0x8026E9E4; -GetActionResult = 0x802696A4; -GetCommandAutoSuccess = 0x802694F0; -SetActionResult = 0x802696D0; -SetDamageSource = 0x8026A02C; -CheckButtonDown = 0x8026E288; -SetBattleCamOffsetZ = 0x8024EA58; -SetActionQuality = 0x80269754; -GetActionQuality = 0x80269728; -GetActionCommandMode = 0x80269498; -GetActionSuccess = 0x80269414; -SetActionCommandMode = 0x8026946C; -PlayerPowerBounceEnemy = 0x8027461C; -GetActionSuccessCopy = 0x80269678; -UseIdleAnimation = 0x8026F26C; -ShowVariableMessageBox = 0x80251498; -IsMessageBoxDisplayed = 0x80251510; -GetBattleFlags2 = 0x8026CF20; -player_team_is_ability_active = 0x8026742C; -dispatch_event_partner = 0x8027E000; -inflict_status = 0x802660C0; -EVS_PlaySleepHitFX = 0x802948E0; -ItemSpookEnemy = 0x80252AA4; -BattleCamTargetActor = 0x8024EB24; -MakeStatusField = 0x80253D14; -ItemAfflictEnemy = 0x80252CBC; -func_8024ECF8 = 0x8024ECF8; -MultiplyByActorScale = 0x8025415C; -ApplyShrinkFromOwner = 0x80254318; -MultiplyVec3ByActorScale = 0x8025425C; -SetOwnerTarget = 0x8026E528; -dispatch_event_actor = 0x802772E0; -EVS_UseMystery = 0x80294140; -SetTargetActor = 0x8027C6C8; -DispatchDamagePlayerEvent = 0x80274A98; -HES_ProjectorSpot = 0x80294F00; -HES_ProjectorReel = 0x80292ED8; -HES_ProjectorBeam = 0x80292F28; -HES_SwapBackground = 0x80292FF4; -HES_SwapZ = 0x80292F50; -HES_SwapArrowLeft = 0x80292F7C; -HES_SwapArrowRight = 0x80292FB8; -actionCmdTableSpook = 0x80294740; -gActionCommandStatus = 0x8029FED0; -action_command_init_status = 0x802689D8; -HES_100pct = 0x80292C74; -adjust_action_command_difficulty = 0x802683A4; -func_80269118 = 0x80269298; -btl_set_popup_duration = 0x8024FAB4; -func_80269160 = 0x802692E0; -action_command_free = 0x80268E1C; -draw_mash_meter_multicolor = 0x802688F0; -draw_mash_meter_blink = 0x8026898C; -actionCmdTableHurricane = 0x80294720; -HES_BButton = 0x8029261C; -HES_MashBButton1 = 0x80292674; -draw_mash_meter_multicolor_with_divisor = 0x80268918; -draw_mash_meter_blink_with_divisor = 0x802689B4; -HES_PressBButton = 0x802926B0; -HES_PressCDownButton = 0x802929C4; -HES_BButtonHeld = 0x80292648; -HES_CDownButtonHeld = 0x8029295C; -HES_TimingBar3Chances = 0x80292DFC; -HES_TimingWait = 0x80292A5C; -HES_TimingOK = 0x80292E54; -HES_TimingCharge4c = 0x80292BA0; -HES_TimingCharge4b = 0x80292B48; -HES_TimingCharge3 = 0x80292BCC; -HES_TimingCharge2 = 0x80292B74; -HES_TimingReady = 0x80292A88; -HES_TimingMiss = 0x80292E80; -actionCmdTableTidalWave = 0x802947A0; -actionCmdTableSpinySurge = 0x80294700; -actionCmdTableSmack = 0x802946E0; -actionCmdTableMegaShock = 0x802946C0; -actionCmdTablePowerShock = 0x802946A0; -actionCmdTableWaterBlock = 0x80294760; -actionCmdTableSquirt = 0x80294680; -draw_mash_meter_mode_with_divisor = 0x80268964; -actionCmdTableDizzyShell = 0x802945A0; -actionCmdTableFireShell = 0x802945C0; -actionCmdTable0A = 0x802945E0; -actionCmdTableBomb = 0x80294600; -actionCmdTableBodySlam = 0x80294620; -HES_FillGaugeResult = 0x80292EAC; -actionCmdTableAirLift = 0x80294640; -actionCmdTableAirRaid = 0x80294660; -actionCmdTable07 = 0x80294580; -btl_message_unlock_box_pos = 0x8024FAEC; -actionCmdTableStopLeech = 0x80294560; -HES_RunningAway = 0x80292BF8; -actionCmdTableBreakFree = 0x80294520; -actionCmdTableHammer = 0x802944E0; -HES_TimingBar1Chance = 0x802925F0; -HES_TimingCharge4a = 0x80292AF0; -HES_TimingCharge1 = 0x80292B1C; -actionCmdTableFlee = 0x80294500; -HES_RightOn = 0x80292D2C; -actionCmdTableJump = 0x802944C0; -actionCmdTableWhirlwind = 0x80294540; -BindTakeTurn = 0x80278AB0; -BindIdle = 0x80278C14; -BindHandleEvent = 0x80278DA0; -BindHandlePhase = 0x80278E14; -AddActorDecoration = 0x8026F008; -GetLastEvent = 0x8027C660; -EVS_Enemy_Hit = 0x80299344; -EVS_Enemy_NoDamageHit = 0x8029AF70; -GetBattlePhase = 0x80269FA8; -EVS_Partner_Celebrate = 0x80294A20; -EVS_Partner_RunAway = 0x80294DFC; -EnableIdleScript = 0x80278CCC; -FlyToGoal = 0x8027B7A4; -EnableActorBlur = 0x8027D6FC; -PartnerDamageEnemy = 0x8027FF34; -EVS_Partner_SpikeContact = 0x802952E4; -EVS_Partner_BurnContact = 0x80294F68; -EVS_Partner_Recover = 0x802961C4; -bActorTattles = 0x80282D18; -bActorOffsets = 0x80283068; -EVS_Partner_Hit = 0x80297ABC; -EVS_Partner_Drop = 0x80296314; -EVS_Partner_NoDamageHit = 0x80297B14; -EVS_Partner_BurnHit = 0x8029651C; -EVS_Partner_ShockHit = 0x80295A44; -LoadStarPowerScript = 0x80280AD0; -LoadItemScript = 0x80268050; -JumpToGoal = 0x80278E88; -PartnerTestEnemy = 0x80280650; -GetPartnerActionSuccess = 0x80280950; -PartnerPowerBounceEnemy = 0x802803F0; -ResetActorSounds = 0x8026F9B8; -RemoveActorDecoration = 0x8026F0CC; -GetActorLevel = 0x8027FEC8; -SetupMashMeter = 0x80269348; -PartnerAfflictEnemy = 0x80280184; -SetActorPaletteEffect = 0x8026EBFC; -SetActorPaletteSwapParams = 0x8026ED78; -EnableActorPaletteEffects = 0x8026EEA0; -EVS_Partner_BombetteSpikeContact = 0x80295650; -ShowShockEffect = 0x8026FD30; -add_xz_vec3f = 0x802642A8; -play_movement_dust_effects = 0x80264470; -save_tattle_flags = 0x80253E90; -lookup_status_chance = 0x80266018; -HES_AimMarkerF = 0x80293314; -HES_AimMarkerE = 0x8029327C; -HES_AimMarkerD = 0x802931E4; -HES_AimMarkerC = 0x8029314C; -HES_AimMarkerB = 0x802930B4; -HES_AimMarkerA = 0x8029301C; -HES_AimReticle = 0x8029399C; -HES_AimShimmerF = 0x802937D4; -HES_AimShimmerE = 0x8029373C; -HES_AimShimmerD = 0x802936A4; -HES_AimShimmerC = 0x8029360C; -HES_AimShimmerB = 0x80293574; -HES_AimShimmerA = 0x802934DC; -HES_AimTarget = 0x802939D4; -set_goal_pos_to_part = 0x802698D4; -JumpWithBounce = 0x802798A8; -SetActionHudPrepareTime = 0x802694C4; -GetDistanceToGoal = 0x8026EB7C; -SetAnimationRate = 0x8026B450; -PlayLoopingSoundAtActor = 0x80253AF4; -StopLoopingSoundAtActor = 0x80253B98; -GetActorFlags = 0x8026D0A0; -GetStatusFlags = 0x8026F3B0; -LandJump = 0x80279C54; -GetActorScale = 0x8026CC04; -EVS_Partner_LakilesterHit = 0x802979E8; -HES_AimBlinkA = 0x80293A0C; -SetPartPos = 0x8026B098; -SetPartFlagBits = 0x8026D190; -SetPartDispOffset = 0x8026BDB8; -SetPartJumpGravity = 0x8026B8CC; -JumpPartTo = 0x8027A664; -LandJumpPart = 0x8027ACDC; -func_8024EDA4 = 0x8024EDA4; -PlayerFallToGoal = 0x80273A10; -FallToGoal = 0x80279D6C; -bMarioHideAnims = 0x802834F0; -bMarioIdleAnims = 0x802833B8; -SetPartAlpha = 0x8026F5F0; -func_80269600 = 0x80269780; -SetBattleCamParam = 0x8024E748; +// btl states +btl_state_update_player_menu = 0x802A5908; +btl_state_update_partner_menu = 0x802A8148; +btl_state_update_twink_menu = 0x802AA038; +btl_state_update_peach_menu = 0x802A9AC4; +btl_state_update_select_target = 0x802AA608; +btl_state_update_22 = 0x802AB2B0; +btl_state_draw_player_menu = 0x802A8100; +btl_state_draw_partner_menu = 0x802A9A68; +btl_state_draw_twink_menu = 0x802AA5C0; +btl_state_draw_peach_menu = 0x802A9FDC; +btl_state_draw_select_target = 0x802AAC58; +btl_state_draw_22 = 0x802AB2B8; +btl_states_menus_ROM_START = 0x0041D750; +btl_states_menus_ROM_END = 0x00429330; +btl_states_menus_VRAM = 0x802A1000;