mirror of
https://github.com/pmret/papermario.git
synced 2024-11-08 12:02:30 +01:00
misc battle cleanup III (#911)
* misc * fix one type * yeah * misc * all substates * almost done * renames * comments * a couple maps Co-authored-by: HailSanta <Hail2Santa@gmail.com>
This commit is contained in:
parent
2f79b35772
commit
935fd14530
@ -850,13 +850,13 @@ typedef struct BattleStatus {
|
||||
/* 0x049 */ s8 unk_49;
|
||||
/* 0x04A */ s8 unk_4A;
|
||||
/* 0x04B */ s8 unk_4B;
|
||||
/* 0x04C */ s8 unk_4C[16];
|
||||
/* 0x05C */ s8 unk_5C[16];
|
||||
/* 0x04C */ s8 lastPlayerMenuSelection[16];
|
||||
/* 0x05C */ s8 lastPartnerMenuSelection[16];
|
||||
/* 0x06C */ s16 cancelTargetMenuSubstate; // might be more generally for returning from nested 'inner' state
|
||||
/* 0x06E */ s16 acceptTargetMenuSubstate; // might be more generally for returning from nested 'inner' state
|
||||
/* 0x070 */ s16 menuDisableFlags; /* 1 = jump, 2 = hammer, 4 = items */
|
||||
/* 0x072 */ char unk_72[2];
|
||||
/* 0x074 */ s32 unk_74;
|
||||
/* 0x074 */ s32 enabledStarPowersMask; // zero'd bits will be unavailable, used only for tutorial battles
|
||||
/* 0x078 */ s8 totalStarPoints;
|
||||
/* 0x079 */ s8 pendingStarPoints; /* how many to add */
|
||||
/* 0x07A */ s8 incrementStarPointDelay; /* related to star points, set to 0x28 when they are dropped */
|
||||
@ -921,7 +921,7 @@ typedef struct BattleStatus {
|
||||
/* 0x174 */ struct Actor* currentTurnEnemy;
|
||||
/* 0x178 */ s8 moveCategory; ///< 0 = jump, 1 = hammer, 5 = partner, ...
|
||||
/* 0x179 */ char unk_179;
|
||||
/* 0x17A */ s16 selectedItemID;
|
||||
/* 0x17A */ s16 moveArgument; // argument provided for move; can be hammer/boots level, itemID, etc
|
||||
/* 0x17C */ s16 selectedMoveID;
|
||||
/* 0x17E */ s16 currentAttackDamage;
|
||||
/* 0x180 */ s16 lastAttackDamage;
|
||||
@ -1889,7 +1889,7 @@ typedef struct Actor {
|
||||
/* 0x205 */ s8 unk_205;
|
||||
/* 0x206 */ s8 unk_206;
|
||||
/* 0x207 */ s8 extraCoinBonus;
|
||||
/* 0x208 */ s8 unk_208;
|
||||
/* 0x208 */ s8 instigatorValue; // from the enemy which initiated the encounter if this actor is first in the formation. allows that enemy to pass information to its actor.
|
||||
/* 0x209 */ char unk_209[3];
|
||||
/* 0x20C */ s32* statusTable;
|
||||
/* 0x210 */ s8 debuff;
|
||||
@ -1903,7 +1903,7 @@ typedef struct Actor {
|
||||
/* 0x218 */ s8 transparentStatus; /* 0E = yes */
|
||||
/* 0x219 */ s8 transparentDuration;
|
||||
/* 0x21A */ char unk_21A[2];
|
||||
/* 0x21C */ s8 status;
|
||||
/* 0x21C */ s8 statusAfflicted;
|
||||
/* 0x21D */ s8 disableDismissTimer;
|
||||
/* 0x21E */ s16 unk_21E;
|
||||
/* 0x220 */ s8 isGlowing; // charge amount for goombario
|
||||
|
@ -40,7 +40,7 @@ typedef struct DeadEnemy {
|
||||
/* 0x0AC */ s32 aiDetectFlags;
|
||||
/* 0x0B0 */ s32 aiFlags;
|
||||
/* 0x0B4 */ s8 aiPaused;
|
||||
/* 0x0B5 */ s8 unk_B5;
|
||||
/* 0x0B5 */ s8 instigatorValue;
|
||||
/* 0x0B6 */ char unk_B6[2];
|
||||
/* 0x0B8 */ EvtScript* unk_B8; // some bytecode
|
||||
/* 0x0BC */ struct Evt* unk_BC; // some script
|
||||
|
324
include/enums.h
324
include/enums.h
@ -2444,8 +2444,8 @@ enum MerleeSpellType {
|
||||
MERLEE_SPELL_0 = 0,
|
||||
MERLEE_SPELL_1 = 1,
|
||||
MERLEE_SPELL_2 = 2,
|
||||
MERLEE_SPELL_3 = 3,
|
||||
MERLEE_SPELL_4 = 4, // extra coins
|
||||
MERLEE_SPELL_EXP_BOOST = 3,
|
||||
MERLEE_SPELL_COIN_BOOST = 4,
|
||||
};
|
||||
|
||||
enum NpcDecorationIDs {
|
||||
@ -2638,7 +2638,7 @@ enum Events {
|
||||
EVENT_RECOVER_STATUS = 0x00000031,
|
||||
EVENT_32 = 0x00000032,
|
||||
EVENT_33 = 0x00000033,
|
||||
EVENT_RECOVER_PARTNER = 0x00000034,
|
||||
EVENT_RECOVER_FROM_KO = 0x00000034,
|
||||
EVENT_END_FIRST_STRIKE = 0x00000035,
|
||||
EVENT_LUCKY = 0x00000037,
|
||||
EVENT_BEGIN_FIRST_STRIKE = 0x00000038,
|
||||
@ -3459,6 +3459,8 @@ enum PopupType {
|
||||
POPUP_MENU_READ_POSTCARD = 0xB,
|
||||
POPUP_MENU_USEKEY = 0xC,
|
||||
POPUP_MENU_POST_OFFICE = 0xD,
|
||||
POPUP_MENU_DOUBLE_DIP = 100,
|
||||
POPUP_MENU_TRIPLE_DIP = 200,
|
||||
};
|
||||
|
||||
/// not really
|
||||
@ -3683,17 +3685,17 @@ enum AnyEnemyAnims {
|
||||
};
|
||||
|
||||
enum FirstStrikes {
|
||||
FIRST_STRIKE_NONE = 0x00000000,
|
||||
FIRST_STRIKE_PLAYER = 0x00000001,
|
||||
FIRST_STRIKE_ENEMY = 0x00000002,
|
||||
FIRST_STRIKE_NONE = 0,
|
||||
FIRST_STRIKE_PLAYER = 1,
|
||||
FIRST_STRIKE_ENEMY = 2,
|
||||
};
|
||||
|
||||
enum TimeFreezeMode {
|
||||
TIME_FREEZE_NORMAL = 0x00000000,
|
||||
TIME_FREEZE_PARTIAL = 0x00000001,
|
||||
TIME_FREEZE_FULL = 0x00000002,
|
||||
TIME_FREEZE_PARTNER_MENU = 0x00000003,
|
||||
TIME_FREEZE_EXIT = 0x00000004,
|
||||
TIME_FREEZE_NORMAL = 0,
|
||||
TIME_FREEZE_PARTIAL = 1,
|
||||
TIME_FREEZE_FULL = 2,
|
||||
TIME_FREEZE_POPUP_MENU = 3,
|
||||
TIME_FREEZE_EXIT = 4,
|
||||
};
|
||||
|
||||
enum ActionCommand {
|
||||
@ -3972,6 +3974,8 @@ enum MoveIDs {
|
||||
MOVE_FAN_SMACK = 0x000000B8,
|
||||
};
|
||||
|
||||
#define STAR_POWER_INDEX(x) (x - MOVE_FOCUS)
|
||||
|
||||
enum GameModeIDs {
|
||||
GAME_MODE_STARTUP = 0x00000000,
|
||||
GAME_MODE_LOGOS = 0x00000001,
|
||||
@ -4031,8 +4035,8 @@ enum IntroStates {
|
||||
|
||||
enum BattleStatusFlags1 {
|
||||
BS_FLAGS1_0 = 0x00000000,
|
||||
BS_FLAGS1_ACTORS_VISIBLE = 0x00000001, // show actors
|
||||
BS_FLAGS1_2 = 0x00000002, // menu is open
|
||||
BS_FLAGS1_ACTORS_VISIBLE = 0x00000001,
|
||||
BS_FLAGS1_MENU_OPEN = 0x00000002,
|
||||
BS_FLAGS1_4 = 0x00000004,
|
||||
BS_FLAGS1_8 = 0x00000008,
|
||||
BS_FLAGS1_10 = 0x00000010, // enable attack bonuses (power plus, etc)?
|
||||
@ -4049,16 +4053,16 @@ enum BattleStatusFlags1 {
|
||||
BS_FLAGS1_8000 = 0x00008000,
|
||||
BS_FLAGS1_10000 = 0x00010000,
|
||||
BS_FLAGS1_DISABLE_CELEBRATION = 0x00020000,
|
||||
BS_FLAGS1_ENEMY_FLED = 0x00040000,
|
||||
BS_FLAGS1_80000 = 0x00080000, // partner will act (partner turn?)
|
||||
BS_FLAGS1_100000 = 0x00100000, // player in back (after pressing z)
|
||||
BS_FLAGS1_200000 = 0x00200000, // enemy turn pending
|
||||
BS_FLAGS1_PLAYER_DEFENDING = 0x00400000, // player is defending
|
||||
BS_FLAGS1_BATTLE_FLED = 0x00040000, // used both when the player flees sucessfully or an enemy flees
|
||||
BS_FLAGS1_PARTNER_ACTING = 0x00080000,
|
||||
BS_FLAGS1_PLAYER_IN_BACK = 0x00100000,
|
||||
BS_FLAGS1_200000 = 0x00200000, // enemy turn pending (?)
|
||||
BS_FLAGS1_PLAYER_DEFENDING = 0x00400000,
|
||||
BS_FLAGS1_NO_GAME_OVER = 0x00800000, // don’t game over on loss
|
||||
BS_FLAGS1_STAR_POINTS_DROPPED = 0x01000000,
|
||||
BS_FLAGS1_2000000 = 0x02000000,
|
||||
BS_FLAGS1_TUTORIAL_BATTLE = 0x02000000, // prevent player from swapping to/from partner
|
||||
BS_FLAGS1_HUSTLED = 0x04000000,
|
||||
BS_FLAGS1_8000000 = 0x08000000,
|
||||
BS_FLAGS1_SORT_ENEMIES_BY_POSX = 0x08000000, // enemy turn order ignores priority; sorts bases on x position instead
|
||||
BS_FLAGS1_HAMMER_CHARGED = 0x10000000,
|
||||
BS_FLAGS1_JUMP_CHARGED = 0x20000000,
|
||||
BS_FLAGS1_40000000 = 0x40000000,
|
||||
@ -4100,7 +4104,7 @@ enum BattleStates {
|
||||
BATTLE_STATE_END_TURN = 6,
|
||||
BATTLE_STATE_BEGIN_PLAYER_TURN = 7,
|
||||
BATTLE_STATE_BEGIN_PARTNER_TURN = 8,
|
||||
BATTLE_STATE_9 = 9,
|
||||
BATTLE_STATE_9 = 9, // can be reached from BATTLE_STATE_PARTNER_MOVE if partner == NULL
|
||||
BATTLE_STATE_SWITCH_TO_PLAYER = 10,
|
||||
BATTLE_STATE_SWITCH_TO_PARTNER = 11,
|
||||
BATTLE_STATE_PREPARE_MENU = 12,
|
||||
@ -4134,11 +4138,11 @@ enum BattleSubStates {
|
||||
BTL_SUBSTATE_INIT = 0,
|
||||
|
||||
// BATTLE_STATE_NORMAL_START
|
||||
BTL_SUBSTATE_NORMAL_START_UNK_0 = 0,
|
||||
BTL_SUBSTATE_NORMAL_START_UNK_1 = 1,
|
||||
BTL_SUBSTATE_NORMAL_START_UNK_4 = 4,
|
||||
BTL_SUBSTATE_NORMAL_START_UNK_7 = 7,
|
||||
BTL_SUBSTATE_NORMAL_START_UNK_8 = 8,
|
||||
BTL_SUBSTATE_NORMAL_START_INIT = 0, // loads assets, initializes state, and runs OnBattleInit script
|
||||
BTL_SUBSTATE_NORMAL_START_CREATE_ENEMIES = 1,
|
||||
BTL_SUBSTATE_NORMAL_START_CHECK_FIRST_STRIKE = 4, // wait for actor scripts to finish
|
||||
BTL_SUBSTATE_NORMAL_START_FADE_IN = 7,
|
||||
BTL_SUBSTATE_NORMAL_START_DONE = 8,
|
||||
|
||||
// BATTLE_STATE_FIRST_STRIKE
|
||||
BTL_SUBSTATE_FIRST_STRIKE_INIT = 0,
|
||||
@ -4166,7 +4170,7 @@ enum BattleSubStates {
|
||||
BTL_SUBSTATE_END_TURN_CHECK_FOR_SWAP = 1,
|
||||
BTL_SUBSTATE_END_TURN_AWAIT_SCRIPTS = 2,
|
||||
BTL_SUBSTATE_END_TURN_BEGIN_NEXT = 3,
|
||||
BTL_SUBSTATE_END_TURN_UNK_4 = 4,
|
||||
BTL_SUBSTATE_END_TURN_UNUSED_4 = 4,
|
||||
BTL_SUBSTATE_END_TURN_PERFORM_SWAP = 11,
|
||||
BTL_SUBSTATE_END_TURN_START_SCRIPTS = 12,
|
||||
|
||||
@ -4203,43 +4207,42 @@ enum BattleSubStates {
|
||||
BTL_SUBSTATE_9_6 = 6,
|
||||
BTL_SUBSTATE_9_7 = 7,
|
||||
|
||||
// BATTLE_STATE_9
|
||||
// BATTLE_STATE_SWITCH_TO_PLAYER
|
||||
// BATTLE_STATE_SWITCH_TO_PARTNER
|
||||
|
||||
// BATTLE_STATE_PREPARE_MENU
|
||||
BATTLE_SUBSTATE_PREPARE_MENU_UNK_70 = 70,
|
||||
BATTLE_SUBSTATE_PREPARE_MENU_DIPPING = 70,
|
||||
|
||||
// BATTLE_STATE_PLAYER_MENU
|
||||
// BATTLE_STATE_PARTNER_MENU
|
||||
|
||||
// BATTLE_STATE_PEACH_MENU
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_0 = 0,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_1 = 1,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_2 = 2,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_3 = 3,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_4 = 4,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_5 = 5,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_6 = 6,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_7 = 7,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_8 = 8,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_9 = 9,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_A = 10,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNK_B = 11,
|
||||
BTL_SUBSTATE_PEACH_MENU_INIT = 0,
|
||||
BTL_SUBSTATE_PEACH_MENU_CHOOSE_CATEGORY = 1,
|
||||
BTL_SUBSTATE_PEACH_MENU_CHOOSE_TARGET = 2,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNUSED_3 = 3,
|
||||
BTL_SUBSTATE_PEACH_MENU_TARGET_CANCEL = 4,
|
||||
BTL_SUBSTATE_PEACH_MENU_TARGET_CHOSEN = 5,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNUSED_6 = 6,
|
||||
BTL_SUBSTATE_PEACH_MENU_UNUSED_7 = 7,
|
||||
BTL_SUBSTATE_PEACH_MENU_SHOW_CANT_SWITCH = 8,
|
||||
BTL_SUBSTATE_PEACH_MENU_AWAIT_CANT_SWITCH_POPUP = 9,
|
||||
BTL_SUBSTATE_PEACH_MENU_PERFORM_SWAP = 10,
|
||||
BTL_SUBSTATE_PEACH_CREATE_MAIN_MENU = 11,
|
||||
|
||||
// BATTLE_STATE_TWINK_MENU
|
||||
BTL_SUBSTATE_TWINK_MENU_INIT = 0,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_1 = 1,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_2 = 2,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_3 = 3,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_4 = 4,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_5 = 5,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_6 = 6,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_7 = 7,
|
||||
BTL_SUBSTATE_TWINK_MENU_CHOOSE_CATEGORY = 1,
|
||||
BTL_SUBSTATE_TWINK_MENU_CHOOSE_TARGET = 2,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNUSED_3 = 3,
|
||||
BTL_SUBSTATE_TWINK_MENU_TARGET_CANCEL = 4,
|
||||
BTL_SUBSTATE_TWINK_MENU_TARGET_CHOSEN = 5,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNUSED_6 = 6,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNUSED_7 = 7,
|
||||
BTL_SUBSTATE_TWINK_MENU_SHOW_CANT_SWITCH = 8,
|
||||
BTL_SUBSTATE_TWINK_MENU_AWAIT_CANT_SWITCH_POPUP = 9,
|
||||
BTL_SUBSTATE_TWINK_MENU_PERFORM_SWAP = 10,
|
||||
BTL_SUBSTATE_TWINK_MENU_UNK_B = 11,
|
||||
BTL_SUBSTATE_TWINK_MENU_CREATE_MAIN_MENU = 11,
|
||||
|
||||
// BATTLE_STATE_SELECT_TARGET
|
||||
BTL_SUBSTATE_SELECT_TARGET_INIT = 0,
|
||||
@ -4261,24 +4264,24 @@ enum BattleSubStates {
|
||||
BTL_SUBSTATE_PLAYER_MOVE_AWAIT_DONE = 30,
|
||||
|
||||
// BATTLE_STATE_PARTNER_MOVE
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_0 = 0,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_2 = 2,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_3 = 3,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_B = 11,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_C = 12,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_14 = 20,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_15 = 21,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_16 = 22,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_UNK_1E = 30,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_INIT = 0,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_EXECUTE_MOVE = 2,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_HANDLE_RESULTS = 3,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_AWAIT_PARTNER_STATUS_POPUP = 11,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_POST_PARTNER_STATUS_POPUP = 12,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_CHECK_ENEMY_STATUS = 20,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_AWAIT_ENEMY_STATUS_POPUP = 21,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_POST_ENEMY_STATUS_POPUP = 22,
|
||||
BTL_SUBSTATE_PARTNER_MOVE_DONE = 30,
|
||||
|
||||
// BATTLE_STATE_NEXT_ENEMY
|
||||
BTL_SUBSTATE_NEXT_ENEMY_INIT = 0,
|
||||
BTL_SUBSTATE_NEXT_ENEMY_UNK_1 = 1,
|
||||
BTL_SUBSTATE_NEXT_ENEMY_UNUSED_1 = 1,
|
||||
BTL_SUBSTATE_NEXT_ENEMY_DONE = 2, // enemy has been found
|
||||
|
||||
// BATTLE_STATE_ENEMY_MOVE
|
||||
BTL_SUBSTATE_ENEMY_MOVE_EXECUTE = 0,
|
||||
BTL_SUBSTATE_ENEMY_MOVE_UNK_1 = 1,
|
||||
BTL_SUBSTATE_ENEMY_MOVE_UNUSED_1 = 1,
|
||||
BTL_SUBSTATE_ENEMY_MOVE_AWAIT_SCRIPTS = 2,
|
||||
BTL_SUBSTATE_ENEMY_MOVE_AWAIT_PLAYER_POPUP_DONE = 11, // wait for popups regarding player status to finish
|
||||
BTL_SUBSTATE_ENEMY_MOVE_POST_PLAYER_POPUP_DELAY = 12, // a brief delay after the popup vanishes
|
||||
@ -4288,67 +4291,67 @@ enum BattleSubStates {
|
||||
BTL_SUBSTATE_ENEMY_MOVE_DONE = 30,
|
||||
|
||||
// BATTLE_STATE_END_PLAYER_TURN
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_UNK_0 = 0,
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_UNK_5 = 5,
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_UNK_6 = 6,
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_UNK_A = 10,
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_CHECK_HAPPY = 0,
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_AWAIT_HAPPY = 5,
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_AWAIT_SWAP = 6,
|
||||
BTL_SUBSTATE_END_PLAYER_TURN_DONE = 10,
|
||||
|
||||
// BATTLE_STATE_END_PARTNER_TURN
|
||||
|
||||
// BATTLE_STATE_RUN_AWAY
|
||||
BTL_SUBSTATE_RUN_AWAY_UNK_0 = 0,
|
||||
BTL_SUBSTATE_RUN_AWAY_UNK_2 = 2,
|
||||
BTL_SUBSTATE_RUN_AWAY_UNK_3 = 3,
|
||||
BTL_SUBSTATE_RUN_AWAY_UNK_4 = 4,
|
||||
BTL_SUBSTATE_RUN_AWAY_UNK_A = 10,
|
||||
BTL_SUBSTATE_RUN_AWAY_UNK_B = 11,
|
||||
BTL_SUBSTATE_RUN_AWAY_EXEC_SCRIPT = 0,
|
||||
BTL_SUBSTATE_RUN_AWAY_AWAIT_SCRIPT = 2,
|
||||
BTL_SUBSTATE_RUN_AWAY_EXEC_POST_FAILURE = 3,
|
||||
BTL_SUBSTATE_RUN_AWAY_AWAIT_POST_FAILURE = 4,
|
||||
BTL_SUBSTATE_RUN_AWAY_GIVE_STAR_POINTS = 10,
|
||||
BTL_SUBSTATE_RUN_AWAY_DONE = 11,
|
||||
|
||||
// BATTLE_STATE_DEFEND
|
||||
BTL_SUBSTATE_DEFEND_INIT = 0,
|
||||
BTL_SUBSTATE_DEFEND_AWAIT_SCRIPT = 1,
|
||||
|
||||
// BATTLE_STATE_VICTORY
|
||||
BTL_SUBSTATE_VICTORY_UNK_0 = 0,
|
||||
BTL_SUBSTATE_VICTORY_UNK_1 = 1,
|
||||
BTL_SUBSTATE_VICTORY_UNK_2 = 2,
|
||||
BTL_SUBSTATE_VICTORY_UNK_3 = 3,
|
||||
BTL_SUBSTATE_VICTORY_UNK_4 = 4,
|
||||
BTL_SUBSTATE_VICTORY_UNK_5 = 5,
|
||||
BTL_SUBSTATE_VICTORY_UNK_A = 10,
|
||||
BTL_SUBSTATE_VICTORY_UNK_B = 11,
|
||||
BTL_SUBSTATE_VICTORY_UNK_C = 12,
|
||||
BTL_SUBSTATE_VICTORY_CHECK_OUTTA_SIGHT = 0,
|
||||
BTL_SUBSTATE_VICTORY_AWAIT_OUTTA_SIGHT = 1,
|
||||
BTL_SUBSTATE_VICTORY_CHECK_MERLEE = 2,
|
||||
BTL_SUBSTATE_VICTORY_AWAIT_MERLEE = 3,
|
||||
BTL_SUBSTATE_VICTORY_DONE = 4,
|
||||
BTL_SUBSTATE_VICTORY_RECOVER_STATUS = 5,
|
||||
BTL_SUBSTATE_VICTORY_AWAIT_RECOVER_KO = 10,
|
||||
BTL_SUBSTATE_VICTORY_CHECK_SWAP = 11,
|
||||
BTL_SUBSTATE_VICTORY_AWAIT_SWAP = 12,
|
||||
|
||||
// BATTLE_STATE_DEFEAT
|
||||
BTL_SUBSTATE_DEFEAT_UNK_0 = 0,
|
||||
BTL_SUBSTATE_DEFEAT_UNK_1 = 1,
|
||||
BTL_SUBSTATE_DEFEAT_UNK_2 = 2,
|
||||
BTL_SUBSTATE_DEFEAT_UNK_A = 10,
|
||||
BTL_SUBSTATE_DEFEAT_INIT = 0,
|
||||
BTL_SUBSTATE_DEFEAT_CHECK_LIFE_SHROOM = 1,
|
||||
BTL_SUBSTATE_DEFEAT_AWAIT_LIFE_SHROOM = 2,
|
||||
BTL_SUBSTATE_DEFEAT_DONE = 10,
|
||||
|
||||
// BATTLE_STATE_28
|
||||
|
||||
// BATTLE_STATE_CHANGE_PARTNER
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_UNK_0 = 0,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_UNK_2 = 2,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_UNK_3 = 3,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_UNK_4 = 4,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_UNK_5 = 5,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_UNK_6 = 6,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_UNK_7 = 7,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_INIT = 0,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_EXEC_PUT_AWAY = 2,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_LOAD_NEW_PARTNER = 3,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_EXEC_BRING_OUT = 4,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_EXEC_PHASE = 5,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_AWAIT_PHASE = 6,
|
||||
BTL_SUBSTATE_CHANGE_PARTNER_DONE = 7,
|
||||
|
||||
// BATTLE_STATE_END_TRAINING_BATTLE
|
||||
BTL_SUBSTATE_END_TRAINING_UNK_0 = 0,
|
||||
BTL_SUBSTATE_END_TRAINING_UNK_A = 10,
|
||||
BTL_SUBSTATE_END_TRAINING_UNK_B = 11,
|
||||
BTL_SUBSTATE_END_TRAINING_UNK_C = 12,
|
||||
BTL_SUBSTATE_END_TRAINING_UNK_D = 13,
|
||||
BTL_SUBSTATE_END_TRAINING_UNK_E = 14,
|
||||
BTL_SUBSTATE_END_TRAINING_INIT = 0,
|
||||
BTL_SUBSTATE_END_TRAINING_AWAIT_RECOVERING = 10,
|
||||
BTL_SUBSTATE_END_TRAINING_CHECK_OUTTA_SIGHT = 11,
|
||||
BTL_SUBSTATE_END_TRAINING_AWAIT_OUTTA_SIGHT = 12,
|
||||
BTL_SUBSTATE_END_TRAINING_RESET_CAM = 13,
|
||||
BTL_SUBSTATE_END_TRAINING_DONE = 14,
|
||||
|
||||
// BATTLE_STATE_31
|
||||
|
||||
// BATTLE_STATE_END_BATTLE (TODO)
|
||||
BTL_SUBSTATE_END_BATTLE_UNK_0 = 0,
|
||||
BTL_SUBSTATE_END_BATTLE_UNK_1 = 1,
|
||||
BTL_SUBSTATE_END_BATTLE_UNK_2 = 2,
|
||||
// BATTLE_STATE_END_BATTLE
|
||||
BTL_SUBSTATE_END_BATTLE_INIT = 0,
|
||||
BTL_SUBSTATE_END_BATTLE_FADE_OUT = 1,
|
||||
BTL_SUBSTATE_END_BATTLE_EXEC_STAGE_SCRIPT = 2,
|
||||
BTL_SUBSTATE_END_BATTLE_AWAIT_STAGE_SCRIPT = 3,
|
||||
BTL_SUBSTATE_END_BATTLE_CLEANUP = 4,
|
||||
|
||||
@ -4374,26 +4377,26 @@ enum BattleSubStates {
|
||||
// BATTLE_STATE_34
|
||||
|
||||
// BATTLE_STATE_END_DEMO_BATTLE
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_UNK_0 = 0,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_UNK_1 = 1,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_UNK_2 = 2,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_UNK_3 = 3,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_UNK_4 = 4,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_INIT = 0,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_FADE_OUT = 1,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_EXEC_STAGE_SCRIPT = 2,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_AWAIT_STAGE_SCRIPT = 3,
|
||||
BTL_SUBSTATE_END_DEMO_BATTLE_CLEANUP = 4,
|
||||
};
|
||||
|
||||
// used with BATTLE_STATE_PLAYER_MENU
|
||||
enum BattlePlayerMenuSubstates {
|
||||
BTL_SUBSTATE_PLAYER_MENU_NONE = 0,
|
||||
BTL_SUBSTATE_PLAYER_MENU_INIT = 0,
|
||||
// Main menu
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_1 = 1,
|
||||
BTL_SUBSTATE_PLAYER_MENU_CHOOSE_CATEGORY = 1,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_2 = 2,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_3 = 3,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MOVE_CHOOSE_TARGET = 3,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_4 = 4,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_5 = 5,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_6 = 6,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MOVE_TARGET_CANCEL = 5,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MOVE_TARGET_CHOSEN = 6,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_7 = 7,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_8 = 8,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_9 = 9,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_SHOW_CANT_SWAP = 8,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_AWAIT_CANT_SWAP = 9,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_10 = 10,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_11 = 11,
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_12 = 12,
|
||||
@ -4401,11 +4404,11 @@ enum BattlePlayerMenuSubstates {
|
||||
BTL_SUBSTATE_PLAYER_MENU_MAIN_MENU_14 = 14,
|
||||
// Unknown
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_1 = 20,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_2 = 21,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_CHOOSE_TARGET = 21,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_3 = 22,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_4 = 23,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_5 = 24,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNKNOWN_6 = 25,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_TARGET_CANCEL = 24,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_TARGET_CHOSEN = 25,
|
||||
// Change Member
|
||||
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_1 = 30,
|
||||
BTL_SUBSTATE_PLAYER_MENU_CHANGE_MEMBER_2 = 31,
|
||||
@ -4429,13 +4432,13 @@ enum BattlePlayerMenuSubstates {
|
||||
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_5 = 64,
|
||||
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_6 = 65,
|
||||
BTL_SUBSTATE_PLAYER_MENU_STAR_SPIRITS_7 = 66,
|
||||
// Unused
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNUSED_1 = 70,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNUSED_2 = 71,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNUSED_3 = 72,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNUSED_4 = 73,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNUSED_5 = 74,
|
||||
BTL_SUBSTATE_PLAYER_MENU_UNUSED_6 = 75,
|
||||
// additional item use from Double/Triple dip
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_1 = 70,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_2 = 71,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_3 = 72,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_4 = 73,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_5 = 74,
|
||||
BTL_SUBSTATE_PLAYER_MENU_DIPPING_6 = 75,
|
||||
// Berserker
|
||||
BTL_SUBSTATE_PLAYER_MENU_BERSERKER_1 = 100,
|
||||
// Strategies
|
||||
@ -4447,8 +4450,8 @@ enum BattlePlayerMenuSubstates {
|
||||
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_6 = 205,
|
||||
BTL_SUBSTATE_PLAYER_MENU_STRATEGIES_8 = 207,
|
||||
// initialize
|
||||
BTL_SUBSTATE_PLAYER_MENU_INIT_12C = 300,
|
||||
BTL_SUBSTATE_PLAYER_MENU_INIT_MENU = 302,
|
||||
BTL_SUBSTATE_PLAYER_MENU_PERFORM_SWAP = 300,
|
||||
BTL_SUBSTATE_PLAYER_MENU_CREATE_MAIN_MENU = 302,
|
||||
};
|
||||
|
||||
enum BattlePartnerMenuSubstates {
|
||||
@ -4606,20 +4609,71 @@ enum BattleMessages {
|
||||
BTL_MSG_54 = 0x54,
|
||||
};
|
||||
|
||||
// BattleMenuState
|
||||
enum BattleMenuStates {
|
||||
BTL_MENU_STATE_OPENED_SUBMENU = -1,
|
||||
BTL_MENU_STATE_CREATE = 0,
|
||||
BTL_MENU_STATE_UNK_1 = 1,
|
||||
BTL_MENU_STATE_ACCEPT_INPUT = 2,
|
||||
BTL_MENU_STATE_UNK_A = 10,
|
||||
BTL_MENU_STATE_UNK_B = 11,
|
||||
BTL_MENU_STATE_UNK_14 = 20,
|
||||
BTL_MENU_STATE_UNK_1E = 30,
|
||||
BTL_MENU_STATE_SHOW_DISABLED_POPUP = 100,
|
||||
BTL_MENU_STATE_AWAIT_DISABLED_POPUP = 101,
|
||||
};
|
||||
|
||||
enum BattleMoveSubmenuStates {
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_NEGATIVE_TWO = -2, // go back
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_NEGATIVE_ONE = -1,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_0 = 0,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_1 = 1,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_A = 10,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_B = 11,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_14 = 20,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_1E = 30,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_28 = 40,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_29 = 41,
|
||||
BTL_SUBMENU_MOVES_STATE_UNK_2A = 42,
|
||||
};
|
||||
|
||||
enum BattleMenuIndex {
|
||||
BTL_MENU_IDX_MAIN = 0,
|
||||
BTL_MENU_IDX_JUMP = 1,
|
||||
BTL_MENU_IDX_SMASH = 2,
|
||||
BTL_MENU_IDX_ITEMS = 3,
|
||||
BTL_MENU_IDX_DIP = 4,
|
||||
BTL_MENU_IDX_PARTNER = 5,
|
||||
BTL_MENU_IDX_STAR_POWER = 6,
|
||||
BTL_MENU_IDX_STRATEGY = 7,
|
||||
// partners only
|
||||
BTL_MENU_IDX_ABILITY = 1,
|
||||
BTL_MENU_IDX_PARTNER_ITEM = 4,
|
||||
};
|
||||
|
||||
enum BattleMenuTypes {
|
||||
BTL_MENU_TYPE_INVALID = -1,
|
||||
BTL_MENU_TYPE_JUMP = 0,
|
||||
BTL_MENU_TYPE_SMASH = 1,
|
||||
BTL_MENU_TYPE_ITEM = 2,
|
||||
BTL_MENU_TYPE_3 = 3,
|
||||
BTL_MENU_TYPE_4 = 4, // defend?
|
||||
BTL_MENU_TYPE_5 = 5, // partner/ability?
|
||||
BTL_MENU_TYPE_6 = 6,
|
||||
BTL_MENU_TYPE_7 = 7, // strategies?
|
||||
BTL_MENU_TYPE_8 = 8, // spirits?
|
||||
BTL_MENU_TYPE_9 = 9, // do nothing?
|
||||
BTL_MENU_TYPE_A = 10, // switch to partner?
|
||||
BTL_MENU_TYPE_B = 11,
|
||||
BTL_MENU_TYPE_ITEMS = 2,
|
||||
BTL_MENU_TYPE_RUN_AWAY = 3,
|
||||
BTL_MENU_TYPE_DEFEND = 4,
|
||||
BTL_MENU_TYPE_CHANGE_PARTNER = 5,
|
||||
BTL_MENU_TYPE_ABILITY = 6,
|
||||
BTL_MENU_TYPE_STRATEGIES = 7,
|
||||
BTL_MENU_TYPE_STAR_POWERS = 8,
|
||||
BTL_MENU_TYPE_DO_NOTHING = 9,
|
||||
BTL_MENU_TYPE_ACT_LATER = 10,
|
||||
BTL_MENU_TYPE_PARTNER_FOCUS = 11,
|
||||
};
|
||||
|
||||
enum BattleMenuDisableFlags {
|
||||
BTL_MENU_DISABLED_JUMP = 1 << BTL_MENU_TYPE_JUMP,
|
||||
BTL_MENU_DISABLED_SMASH = 1 << BTL_MENU_TYPE_SMASH,
|
||||
BTL_MENU_DISABLED_ITEMS = 1 << BTL_MENU_TYPE_ITEMS,
|
||||
BTL_MENU_DISABLED_STRATEGIES = 1 << BTL_MENU_TYPE_STRATEGIES,
|
||||
BTL_MENU_DISABLED_STAR_POWERS = 1 << BTL_MENU_TYPE_STAR_POWERS,
|
||||
BTL_MENU_DISABLED_PARTNER_FOCUS = 1 << BTL_MENU_TYPE_PARTNER_FOCUS,
|
||||
};
|
||||
|
||||
enum DebugEnemyContactModes {
|
||||
@ -5543,7 +5597,7 @@ enum MoveType {
|
||||
MOVE_TYPE_JUMP = 2,
|
||||
MOVE_TYPE_3 = 3,
|
||||
MOVE_TYPE_ITEMS = 4,
|
||||
MOVE_TYPE_TACTICS = 5,
|
||||
MOVE_TYPE_SWITCH = 5,
|
||||
MOVE_TYPE_6 = 6,
|
||||
MOVE_TYPE_ATTACK_UP = 7,
|
||||
MOVE_TYPE_DEFENSE_UP = 8,
|
||||
|
@ -338,7 +338,7 @@ typedef struct Enemy {
|
||||
/* 0xAD */ char unk_AD[3];
|
||||
/* 0xB0 */ u32 aiFlags;
|
||||
/* 0xB4 */ s8 aiPaused;
|
||||
/* 0xB5 */ s8 unk_B5;
|
||||
/* 0xB5 */ s8 instigatorValue; // value is passed to first actor in formation if a battle is triggered with this enemy
|
||||
/* 0xB6 */ char unk_B6[2];
|
||||
/* 0xB8 */ EvtScript* unk_B8; // some bytecode
|
||||
/* 0xBC */ struct Evt* unk_BC; // some script
|
||||
@ -376,7 +376,7 @@ typedef struct EncounterStatus {
|
||||
/* 0x00C */ u8 damageTaken; /* valid after battle */
|
||||
/* 0x00D */ char unk_0D;
|
||||
/* 0x00E */ s16 coinsEarned; /* valid after battle */
|
||||
/* 0x010 */ char unk_10;
|
||||
/* 0x010 */ s8 instigatorValue;
|
||||
/* 0x011 */ s8 allowFleeing;
|
||||
/* 0x012 */ s8 scriptedBattle; ///< battle started by StartBattle but not by encounter
|
||||
/* 0x013 */ s8 dropWhackaBump;
|
||||
|
@ -145,7 +145,7 @@ ApiStatus SummonEnemy(Evt* script, s32 isInitialCall);
|
||||
ApiStatus GetOwnerID(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetOwnerID(Evt* script, s32 isInitialCall);
|
||||
ApiStatus ActorExists(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_8026E038(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetEnabledStarPowers(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetBattleInputMask(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetBattleInputButtons(Evt* script, s32 isInitialCall);
|
||||
ApiStatus CheckButtonPress(Evt* script, s32 isInitialCall);
|
||||
@ -246,7 +246,7 @@ ApiStatus SetTargetOffset(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_8027D4C8(Evt* script, s32 isInitialCall);
|
||||
ApiStatus EnableActorBlur(Evt* script, s32 isInitialCall);
|
||||
ApiStatus AfflictActor(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_8027D75C(Evt* script, s32 isInitialCall);
|
||||
ApiStatus GetInstigatorValue(Evt* script, s32 isInitialCall);
|
||||
ApiStatus GetEncounterState(Evt* script, s32 isInitialCall);
|
||||
ApiStatus YieldTurn(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetActorSize(Evt* script, s32 isInitialCall);
|
||||
@ -302,7 +302,7 @@ ApiStatus ShowStartRecoveryShimmer(Evt* script, s32 isInitialCall);
|
||||
ApiStatus ShowRecoveryShimmer(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_80273444(Evt* script, s32 isInitialCall);
|
||||
ApiStatus WaitForState(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_8026E020(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetBattleMenuDisableFlags(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetBattleState(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_8027D434(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_8026F1A0(Evt* script, s32 isInitialCall);
|
||||
|
@ -45,8 +45,8 @@ ApiStatus GetSelfNpcID(Evt* script, s32 isInitialCall);
|
||||
ApiStatus ClearDefeatedEnemies(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetEnemyFlagBits(Evt* script, s32 isInitialCall);
|
||||
ApiStatus GetSelfAnimationFromTable(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_800457F8(Evt* script, s32 isInitialCall);
|
||||
ApiStatus func_800457C4(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetBattleAsScripted(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetOwnerInstigatorValue(Evt* script, s32 isInitialCall);
|
||||
ApiStatus ShowCoinCounter(Evt* script, s32 isInitialCall);
|
||||
ApiStatus MakeEntity(Evt* script, s32 isInitialCall);
|
||||
ApiStatus SetEntityCullMode(Evt* script, s32 isInitialCall);
|
||||
|
@ -18,16 +18,16 @@ extern MoveData gMoveTable[185];
|
||||
|
||||
extern s32 gBattleState;
|
||||
extern BattleStatus gBattleStatus;
|
||||
extern s32 D_800DC4D0;
|
||||
extern s32 gLastDrawBattleState;
|
||||
extern s32 D_800DC4D4;
|
||||
extern s32 gDefeatedBattleSubstate;
|
||||
extern s32 gBattleSubState;
|
||||
extern s32 gDefeatedBattleState;
|
||||
extern s32 gCurrentBattleID;
|
||||
extern s32 D_800DC4E0;
|
||||
extern s32 D_800DC4EC;
|
||||
extern s32 gCurrentStageID;
|
||||
extern s32 D_800DC4F0;
|
||||
extern struct Battle* D_800DC4F4;
|
||||
extern struct Battle* gOverrideBattlePtr;
|
||||
extern s32 D_800DC4F8;
|
||||
|
||||
extern s32 D_802DAC98;
|
||||
|
948
src/16F740.c
948
src/16F740.c
File diff suppressed because it is too large
Load Diff
30
src/16c8e0.c
30
src/16c8e0.c
@ -48,7 +48,7 @@ HudScript* bHPDigitHudScripts[] = {
|
||||
NULL, NULL, NULL,
|
||||
};
|
||||
|
||||
s32 D_80280A30 = 0xFF;
|
||||
s32 BattleScreenFadeAmt = 0xFF;
|
||||
|
||||
EvtScript BtlPutPartnerAway = {
|
||||
EVT_CALL(DispatchEvent, 256, 62)
|
||||
@ -181,9 +181,9 @@ void initialize_battle(void) {
|
||||
battleStatus->playerActor = NULL;
|
||||
battleStatus->partnerActor = NULL;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(battleStatus->unk_4C); i++) {
|
||||
battleStatus->unk_4C[i] = -1;
|
||||
battleStatus->unk_5C[i] = -1;
|
||||
for (i = 0; i < ARRAY_COUNT(battleStatus->lastPlayerMenuSelection); i++) {
|
||||
battleStatus->lastPlayerMenuSelection[i] = -1;
|
||||
battleStatus->lastPartnerMenuSelection[i] = -1;
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(battleStatus->tattleFlags); i++) {
|
||||
@ -254,7 +254,7 @@ void btl_update(void) {
|
||||
s32 cond;
|
||||
|
||||
if (battleStatus->inputBitmask != -1) {
|
||||
if ((battleStatus->flags1 & BS_FLAGS1_80000) && gGameStatusPtr->multiplayerEnabled != 0) {
|
||||
if ((battleStatus->flags1 & BS_FLAGS1_PARTNER_ACTING) && gGameStatusPtr->multiplayerEnabled != 0) {
|
||||
s32 inputBitmask = battleStatus->inputBitmask;
|
||||
|
||||
battleStatus->currentButtonsDown = gGameStatusPtr->currentButtons[1] & inputBitmask;
|
||||
@ -478,23 +478,25 @@ void btl_update(void) {
|
||||
}
|
||||
|
||||
void btl_draw_ui(void) {
|
||||
s32 cond = FALSE;
|
||||
s32 changed = FALSE;
|
||||
s32 state;
|
||||
|
||||
do { } while (0); // TODO required to match (probably can be removed with some sort of control flow inversion)
|
||||
|
||||
// do not draw UI during the frame of a state change
|
||||
state = gBattleState;
|
||||
if (gBattleState != D_800DC4D0) {
|
||||
state = D_800DC4D0;
|
||||
D_800DC4D0 = gBattleState;
|
||||
cond = TRUE;
|
||||
if (gBattleState != gLastDrawBattleState) {
|
||||
state = gLastDrawBattleState;
|
||||
gLastDrawBattleState = gBattleState;
|
||||
changed = TRUE;
|
||||
} else {
|
||||
if (gBattleState == BATTLE_STATE_NEGATIVE_1) {
|
||||
switch (state) {
|
||||
case BATTLE_STATE_NEGATIVE_1:
|
||||
btl_update_starpoints_display();
|
||||
btl_draw_enemy_health_bars();
|
||||
draw_status_ui();
|
||||
return;
|
||||
} else if (gBattleState == BATTLE_STATE_0) {
|
||||
case BATTLE_STATE_0:
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -502,7 +504,7 @@ void btl_draw_ui(void) {
|
||||
btl_update_starpoints_display();
|
||||
btl_draw_enemy_health_bars();
|
||||
|
||||
if (!cond) {
|
||||
if (!changed) {
|
||||
switch (state) {
|
||||
case BATTLE_STATE_NORMAL_START:
|
||||
btl_state_draw_normal_start();
|
||||
@ -884,7 +886,7 @@ void btl_draw_enemy_health_bars(void) {
|
||||
}
|
||||
|
||||
if (!(enemy->flags & (ACTOR_FLAG_40000 | ACTOR_FLAG_TARGET_ONLY)) &&
|
||||
((gBattleStatus.flags1 & BS_FLAGS1_2) || (enemy->flags & ACTOR_FLAG_80000)) &&
|
||||
((gBattleStatus.flags1 & BS_FLAGS1_MENU_OPEN) || (enemy->flags & ACTOR_FLAG_80000)) &&
|
||||
is_actor_hp_bar_visible(enemy))
|
||||
{
|
||||
f32 x = enemy->healthBarPosition.x;
|
||||
|
433
src/17D6A0.c
433
src/17D6A0.c
@ -70,221 +70,228 @@ PlayerCelebrationAnimOptions D_80280FC0 = {
|
||||
};
|
||||
|
||||
s32 bActorNames[ACTOR_TYPE_COUNT] = {
|
||||
[ACTOR_TYPE_RED_GOOMBA] = MSG_EnemyName_RedGoomba,
|
||||
[ACTOR_TYPE_RED_PARAGOOMBA] = MSG_EnemyName_RedParagoomba,
|
||||
[ACTOR_TYPE_GLOOMBA] = MSG_EnemyName_Gloomba,
|
||||
[ACTOR_TYPE_PARAGLOOMBA] = MSG_EnemyName_Paragloomba,
|
||||
[ACTOR_TYPE_SPIKED_GLOOMBA] = MSG_EnemyName_SpikedGloomba,
|
||||
[ACTOR_TYPE_DARK_KOOPA] = MSG_EnemyName_DarkKoopa,
|
||||
[ACTOR_TYPE_DARK_PARATROOPA] = MSG_EnemyName_DarkParatroopa,
|
||||
[ACTOR_TYPE_GOOMBA] = MSG_EnemyName_Goomba,
|
||||
[ACTOR_TYPE_PARAGOOMBA] = MSG_EnemyName_Paragoomba,
|
||||
[ACTOR_TYPE_SPIKED_GOOMBA] = MSG_EnemyName_SpikedGoomba,
|
||||
[ACTOR_TYPE_FUZZY] = MSG_EnemyName_Fuzzy,
|
||||
[ACTOR_TYPE_KOOPA_TROOPA] = MSG_EnemyName_KoopaTroopa,
|
||||
[ACTOR_TYPE_PARATROOPA] = MSG_EnemyName_Paratroopa,
|
||||
[ACTOR_TYPE_BOB_OMB] = MSG_EnemyName_BobOmb,
|
||||
[ACTOR_TYPE_BOB_OMB_DUP] = MSG_EnemyName_BobOmb,
|
||||
[ACTOR_TYPE_BULLET_BILL] = MSG_EnemyName_BulletBill,
|
||||
[ACTOR_TYPE_BILL_BLASTER] = MSG_EnemyName_BillBlaster,
|
||||
[ACTOR_TYPE_CLEFT] = MSG_EnemyName_Cleft,
|
||||
[ACTOR_TYPE_MONTY_MOLE] = MSG_EnemyName_MontyMole,
|
||||
[ACTOR_TYPE_BANDIT] = MSG_EnemyName_Bandit,
|
||||
[ACTOR_TYPE_POKEY] = MSG_EnemyName_Pokey,
|
||||
[ACTOR_TYPE_POKEY_MUMMY] = MSG_EnemyName_PokeyMummy,
|
||||
[ACTOR_TYPE_SWOOPER] = MSG_EnemyName_Swooper,
|
||||
[ACTOR_TYPE_BUZZY_BEETLE] = MSG_EnemyName_BuzzyBeetle,
|
||||
[ACTOR_TYPE_STONE_CHOMP] = MSG_EnemyName_StoneChomp,
|
||||
[ACTOR_TYPE_PIRANHA_PLANT] = MSG_EnemyName_PiranhaPlant,
|
||||
[ACTOR_TYPE_FOREST_FUZZY] = MSG_EnemyName_ForestFuzzy,
|
||||
[ACTOR_TYPE_HYPER_GOOMBA] = MSG_EnemyName_HyperGoomba,
|
||||
[ACTOR_TYPE_HYPER_PARAGOOMBA] = MSG_EnemyName_HyperParagoomba,
|
||||
[ACTOR_TYPE_HYPER_CLEFT] = MSG_EnemyName_HyperCleft,
|
||||
[ACTOR_TYPE_CLUBBA] = MSG_EnemyName_Clubba,
|
||||
[ACTOR_TYPE_SHY_GUY] = MSG_EnemyName_ShyGuy,
|
||||
[ACTOR_TYPE_GROOVE_GUY] = MSG_EnemyName_GrooveGuy,
|
||||
[ACTOR_TYPE_SKY_GUY] = MSG_EnemyName_SkyGuy,
|
||||
[ACTOR_TYPE_MEDI_GUY] = MSG_EnemyName_MediGuy,
|
||||
[ACTOR_TYPE_PYRO_GUY] = MSG_EnemyName_PyroGuy,
|
||||
[ACTOR_TYPE_SPY_GUY] = MSG_EnemyName_SpyGuy,
|
||||
[ACTOR_TYPE_FUZZIPEDE] = MSG_EnemyName_Fuzzipede,
|
||||
[ACTOR_TYPE_HURT_PLANT] = MSG_EnemyName_HurtPlant,
|
||||
[ACTOR_TYPE_M_BUSH] = MSG_EnemyName_MBush,
|
||||
[ACTOR_TYPE_AQUA_FUZZY] = MSG_EnemyName_AquaFuzzy,
|
||||
[ACTOR_TYPE_JUNGLE_FUZZY] = MSG_EnemyName_JungleFuzzy,
|
||||
[ACTOR_TYPE_SPEAR_GUY] = MSG_EnemyName_SpearGuy,
|
||||
[ACTOR_TYPE_LAVA_BUBBLE] = MSG_EnemyName_LavaBubble,
|
||||
[ACTOR_TYPE_SPIKE_TOP] = MSG_EnemyName_SpikeTop,
|
||||
[ACTOR_TYPE_PUTRID_PIRANHA] = MSG_EnemyName_PutridPiranha,
|
||||
[ACTOR_TYPE_LAKITU] = MSG_EnemyName_Lakitu,
|
||||
[ACTOR_TYPE_SPINY] = MSG_EnemyName_Spiny,
|
||||
[ACTOR_TYPE_MONTY_MOLE_BOSS] = MSG_EnemyName_MontyMoleBoss,
|
||||
[ACTOR_TYPE_BZZAP] = MSG_EnemyName_Bzzap,
|
||||
[ACTOR_TYPE_CRAZEE_DAYZEE] = MSG_EnemyName_CrazeeDayzee,
|
||||
[ACTOR_TYPE_AMAZY_DAYZEE] = MSG_EnemyName_AmazyDayzee,
|
||||
[ACTOR_TYPE_RUFF_PUFF] = MSG_EnemyName_RuffPuff,
|
||||
[ACTOR_TYPE_SPIKE] = MSG_EnemyName_Spike,
|
||||
[ACTOR_TYPE_GULPIT] = MSG_EnemyName_Gulpit,
|
||||
[ACTOR_TYPE_GULPIT_ROCKS] = MSG_EnemyName_GulpitRocks,
|
||||
[ACTOR_TYPE_WHITE_CLUBBA] = MSG_EnemyName_WhiteClubba,
|
||||
[ACTOR_TYPE_FROST_PIRANHA] = MSG_EnemyName_FrostPiranha,
|
||||
[ACTOR_TYPE_SWOOPULA] = MSG_EnemyName_Swoopula,
|
||||
[ACTOR_TYPE_DUPLIGHOST] = MSG_EnemyName_Duplighost,
|
||||
[ACTOR_TYPE_GHOST_GOOMBARIO] = MSG_EnemyName_GhostGoombario,
|
||||
[ACTOR_TYPE_GHOST_KOOPER] = MSG_EnemyName_GhostKooper,
|
||||
[ACTOR_TYPE_GHOST_BOMBETTE] = MSG_EnemyName_GhostBombette,
|
||||
[ACTOR_TYPE_GHOST_PARAKARRY] = MSG_EnemyName_GhostParakarry,
|
||||
[ACTOR_TYPE_GHOST_BOW] = MSG_EnemyName_GhostBow,
|
||||
[ACTOR_TYPE_GHOST_WATT] = MSG_EnemyName_GhostWatt,
|
||||
[ACTOR_TYPE_GHOST_SUSHIE] = MSG_EnemyName_GhostSushie,
|
||||
[ACTOR_TYPE_GHOST_LAKILESTER] = MSG_EnemyName_GhostLakilester,
|
||||
[ACTOR_TYPE_ALBINO_DINO] = MSG_EnemyName_AlbinoDino,
|
||||
[ACTOR_TYPE_EMBER] = MSG_EnemyName_Ember,
|
||||
[ACTOR_TYPE_BONY_BEETLE] = MSG_EnemyName_BonyBeetle,
|
||||
[ACTOR_TYPE_DRY_BONES] = MSG_EnemyName_DryBones,
|
||||
[ACTOR_TYPE_DRY_BONES2] = MSG_EnemyName_DryBones,
|
||||
[ACTOR_TYPE_BOMBSHELL_BLASTER] = MSG_EnemyName_BombshellBlaster,
|
||||
[ACTOR_TYPE_BOMBSHELL_BILL] = MSG_EnemyName_BombshellBill,
|
||||
[ACTOR_TYPE_HAMMER_BROS] = MSG_EnemyName_HammerBros,
|
||||
[ACTOR_TYPE_KOOPATROL] = MSG_EnemyName_Koopatrol,
|
||||
[ACTOR_TYPE_MAGIKOOPA] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FLYING_MAGIKOOPA] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_MAGICLONE] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FLYING_MAGICLONE] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_RED_MAGIKOOPA] = MSG_EnemyName_RedMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_RED_MAGIKOOPA] = MSG_EnemyName_RedMagikoopa,
|
||||
[ACTOR_TYPE_GREEN_MAGIKOOPA] = MSG_EnemyName_GreenMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_GREEN_MAGIKOOPA] = MSG_EnemyName_GreenMagikoopa,
|
||||
[ACTOR_TYPE_YELLOW_MAGIKOOPA] = MSG_EnemyName_YellowMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_YELLOW_MAGIKOOPA] = MSG_EnemyName_YellowMagikoopa,
|
||||
[ACTOR_TYPE_GRAY_MAGIKOOPA] = MSG_EnemyName_GrayMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_GRAY_MAGIKOOPA] = MSG_EnemyName_GrayMagikoopa,
|
||||
[ACTOR_TYPE_WHITE_MAGIKOOPA] = MSG_EnemyName_WhiteMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_WHITE_MAGIKOOPA] = MSG_EnemyName_WhiteMagikoopa,
|
||||
[ACTOR_TYPE_UNUSED_5B] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5C] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5D] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5E] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5F] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_60] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_61] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_62] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_63] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_64] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_65] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_66] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_67] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_68] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_69] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_6A] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_MONTY_HOLE] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_6C] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_6D] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_PLAYER] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_GOOMBARIO] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_KOOPER] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_BOMBETTE] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_PARAKARRY] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_BOW] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_WATT] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_SUSHIE] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_LAKILESTER] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_TWINK] = MSG_Menus_Party_Twink,
|
||||
[ACTOR_TYPE_UNUSED_78] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_79] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_THE_MASTER_1] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_THE_MASTER_2] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_THE_MASTER_3] = MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_CHAN] = MSG_EnemyName_Chan,
|
||||
[ACTOR_TYPE_LEE] = MSG_EnemyName_Lee,
|
||||
[ACTOR_TYPE_LEE_GOOMBARIO] = MSG_Menus_Party_Goombario,
|
||||
[ACTOR_TYPE_LEE_KOOPER] = MSG_Menus_Party_Kooper,
|
||||
[ACTOR_TYPE_LEE_BOMBETTE] = MSG_Menus_Party_Bombette,
|
||||
[ACTOR_TYPE_LEE_PARAKARRY] = MSG_Menus_Party_Parakarry,
|
||||
[ACTOR_TYPE_LEE_BOW] = MSG_Menus_Party_Bow,
|
||||
[ACTOR_TYPE_LEE_WATT] = MSG_Menus_Party_Watt,
|
||||
[ACTOR_TYPE_LEE_SUSHIE] = MSG_Menus_Party_Sushie,
|
||||
[ACTOR_TYPE_LEE_LAKILESTER] = MSG_Menus_Party_Lakilester,
|
||||
[ACTOR_TYPE_KAMMY_KOOPA] = MSG_EnemyName_KammyKoopa,
|
||||
[ACTOR_TYPE_JR_TROOPA1] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA2] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA3] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA4] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA5] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA6] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA_DUP1] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA_DUP2] = MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_BLUE_GOOMBA_BOSS] = MSG_EnemyName_BlueGoombaBoss,
|
||||
[ACTOR_TYPE_RED_GOOMBA_BOSS] = MSG_EnemyName_RedGoombaBoss,
|
||||
[ACTOR_TYPE_GOOMBA_KING] = MSG_EnemyName_GoombaKing,
|
||||
[ACTOR_TYPE_GOOMNUT_TREE] = MSG_EnemyName_GoomnutTree,
|
||||
[ACTOR_TYPE_GOOMBARIO_TUTOR1] = MSG_Menus_Party_Goombario,
|
||||
[ACTOR_TYPE_MAGIKOOPA_BOSS] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FLYING_MAGIKOOPA_BOSS] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_MAGIKOOPA_DUP1] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_MAGIKOOPA_DUP2] = MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FAKE_BOWSER] = MSG_EnemyName_FakeBowser,
|
||||
[ACTOR_TYPE_KOOPA_BROS] = MSG_EnemyName_KoopaBros,
|
||||
[ACTOR_TYPE_GREEN_NINJAKOOPA] = MSG_EnemyName_GreenNinjakoopa,
|
||||
[ACTOR_TYPE_RED_NINJAKOOPA] = MSG_EnemyName_RedNinjakoopa,
|
||||
[ACTOR_TYPE_BLUE_NINJAKOOPA] = MSG_EnemyName_BlueNinjakoopa,
|
||||
[ACTOR_TYPE_YELLOW_NINJAKOOPA] = MSG_EnemyName_YellowNinjakoopa,
|
||||
[ACTOR_TYPE_ELDSTAR] = MSG_Menus_Party_Goombario,
|
||||
[ACTOR_TYPE_BUZZAR] = MSG_EnemyName_Buzzar,
|
||||
[ACTOR_TYPE_TUTANKOOPA] = MSG_EnemyName_Tutankoopa,
|
||||
[ACTOR_TYPE_CHOMP] = MSG_EnemyName_Chomp,
|
||||
[ACTOR_TYPE_TUBBA_BLUBBA_INVINCIBLE] = MSG_EnemyName_TubbaBlubba,
|
||||
[ACTOR_TYPE_TUBBA_BLUBBA] = MSG_EnemyName_TubbaBlubba,
|
||||
[ACTOR_TYPE_TUBBA_HEART] = MSG_EnemyName_TubbaHeart,
|
||||
[ACTOR_TYPE_STILT_GUY] = MSG_EnemyName_StiltGuy,
|
||||
[ACTOR_TYPE_SHY_STACK] = MSG_EnemyName_ShyStack,
|
||||
[ACTOR_TYPE_SHY_SQUAD] = MSG_EnemyName_ShySquad,
|
||||
[ACTOR_TYPE_GENERAL_GUY] = MSG_EnemyName_GeneralGuyDup,
|
||||
[ACTOR_TYPE_TOY_TANK] = MSG_EnemyName_GeneralGuy,
|
||||
[ACTOR_TYPE_LIGHT_BULB] = MSG_EnemyName_Bulb,
|
||||
[ACTOR_TYPE_SIGNAL_GUY] = MSG_EnemyName_ShyGuy,
|
||||
[ACTOR_TYPE_SHY_SQUAD_DUP] = MSG_EnemyName_ShySquadDup,
|
||||
[ACTOR_TYPE_SHY_GUY_DUP] = MSG_EnemyName_ShyGuy,
|
||||
[ACTOR_TYPE_ANTI_GUY] = MSG_EnemyName_AntiGuy,
|
||||
[ACTOR_TYPE_ANTI_GUY_DUP] = MSG_EnemyName_AntiGuy,
|
||||
[ACTOR_TYPE_BIG_LANTERN_GHOST] = MSG_EnemyName_BigLanternGhost,
|
||||
[ACTOR_TYPE_GOOMBA_KING_DUP] = MSG_EnemyName_GoombaKing,
|
||||
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] = MSG_EnemyName_LavaPiranha,
|
||||
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_2] = MSG_EnemyName_LavaPiranha,
|
||||
[ACTOR_TYPE_LAVA_BUD_PHASE_1] = MSG_EnemyName_LavaBud,
|
||||
[ACTOR_TYPE_LAVA_BUD_PHASE_2] = MSG_EnemyName_LavaBud,
|
||||
[ACTOR_TYPE_PETIT_PIRANHA] = MSG_EnemyName_PetitPiranha,
|
||||
[ACTOR_TYPE_PETIT_PIRANHA_BOMB] = MSG_EnemyName_LavaPiranha,
|
||||
[ACTOR_TYPE_KENT_C_KOOPA] = MSG_EnemyName_KentCKoopa,
|
||||
[ACTOR_TYPE_HUFF_N_PUFF] = MSG_EnemyName_HuffNPuff,
|
||||
[ACTOR_TYPE_TUFF_PUFF] = MSG_EnemyName_TuffPuff,
|
||||
[ACTOR_TYPE_MONSTAR] = MSG_EnemyName_Monstar,
|
||||
[ACTOR_TYPE_CRYSTAL_KING] = MSG_EnemyName_CrystalKing,
|
||||
[ACTOR_TYPE_CRYSTAL_CLONE] = MSG_EnemyName_CrystalKing,
|
||||
[ACTOR_TYPE_CRYSTAL_BIT] = MSG_EnemyName_CrystalBit,
|
||||
[ACTOR_TYPE_INTRO_BOWSER] = MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_PHASE_1] = MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_DUP1] = MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_PHASE_2] = MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_DUP2] = MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_PHASE_3] = MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_DUP3] = MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BLOOPER] = MSG_EnemyName_Blooper,
|
||||
[ACTOR_TYPE_ELECTRO_BLOOPER1] = MSG_EnemyName_ElectroBlooper,
|
||||
[ACTOR_TYPE_ELECTRO_BLOOPER2] = MSG_EnemyName_ElectroBlooper,
|
||||
[ACTOR_TYPE_SUPER_BLOOPER1] = MSG_EnemyName_SuperBlooper,
|
||||
[ACTOR_TYPE_SUPER_BLOOPER2] = MSG_EnemyName_SuperBlooper,
|
||||
[ACTOR_TYPE_BLOOPER_BABY] = MSG_EnemyName_BlooperBaby,
|
||||
[ACTOR_TYPE_LAKILESTER_DUP] = MSG_EnemyName_GhostLakilester,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START] = MSG_EnemyName_SlotMachineStart,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_STOP] = MSG_EnemyName_SlotMachineStop,
|
||||
[ACTOR_TYPE_WHACKA] = MSG_EnemyName_Whacka,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START_DUP1] = MSG_EnemyName_SlotMachineStart,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START_DUP2] = MSG_EnemyName_SlotMachineStart,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START_DUP3] = MSG_EnemyName_SlotMachineStart,
|
||||
[ACTOR_TYPE_RED_GOOMBA] MSG_EnemyName_RedGoomba,
|
||||
[ACTOR_TYPE_RED_PARAGOOMBA] MSG_EnemyName_RedParagoomba,
|
||||
[ACTOR_TYPE_GLOOMBA] MSG_EnemyName_Gloomba,
|
||||
[ACTOR_TYPE_PARAGLOOMBA] MSG_EnemyName_Paragloomba,
|
||||
[ACTOR_TYPE_SPIKED_GLOOMBA] MSG_EnemyName_SpikedGloomba,
|
||||
[ACTOR_TYPE_DARK_KOOPA] MSG_EnemyName_DarkKoopa,
|
||||
[ACTOR_TYPE_DARK_PARATROOPA] MSG_EnemyName_DarkParatroopa,
|
||||
[ACTOR_TYPE_GOOMBA] MSG_EnemyName_Goomba,
|
||||
[ACTOR_TYPE_PARAGOOMBA] MSG_EnemyName_Paragoomba,
|
||||
[ACTOR_TYPE_SPIKED_GOOMBA] MSG_EnemyName_SpikedGoomba,
|
||||
[ACTOR_TYPE_FUZZY] MSG_EnemyName_Fuzzy,
|
||||
[ACTOR_TYPE_KOOPA_TROOPA] MSG_EnemyName_KoopaTroopa,
|
||||
[ACTOR_TYPE_PARATROOPA] MSG_EnemyName_Paratroopa,
|
||||
[ACTOR_TYPE_BOB_OMB] MSG_EnemyName_BobOmb,
|
||||
[ACTOR_TYPE_BOB_OMB_DUP] MSG_EnemyName_BobOmb,
|
||||
[ACTOR_TYPE_BULLET_BILL] MSG_EnemyName_BulletBill,
|
||||
[ACTOR_TYPE_BILL_BLASTER] MSG_EnemyName_BillBlaster,
|
||||
[ACTOR_TYPE_CLEFT] MSG_EnemyName_Cleft,
|
||||
[ACTOR_TYPE_MONTY_MOLE] MSG_EnemyName_MontyMole,
|
||||
[ACTOR_TYPE_BANDIT] MSG_EnemyName_Bandit,
|
||||
[ACTOR_TYPE_POKEY] MSG_EnemyName_Pokey,
|
||||
[ACTOR_TYPE_POKEY_MUMMY] MSG_EnemyName_PokeyMummy,
|
||||
[ACTOR_TYPE_SWOOPER] MSG_EnemyName_Swooper,
|
||||
[ACTOR_TYPE_BUZZY_BEETLE] MSG_EnemyName_BuzzyBeetle,
|
||||
[ACTOR_TYPE_STONE_CHOMP] MSG_EnemyName_StoneChomp,
|
||||
[ACTOR_TYPE_PIRANHA_PLANT] MSG_EnemyName_PiranhaPlant,
|
||||
[ACTOR_TYPE_FOREST_FUZZY] MSG_EnemyName_ForestFuzzy,
|
||||
[ACTOR_TYPE_HYPER_GOOMBA] MSG_EnemyName_HyperGoomba,
|
||||
[ACTOR_TYPE_HYPER_PARAGOOMBA] MSG_EnemyName_HyperParagoomba,
|
||||
[ACTOR_TYPE_HYPER_CLEFT] MSG_EnemyName_HyperCleft,
|
||||
[ACTOR_TYPE_CLUBBA] MSG_EnemyName_Clubba,
|
||||
[ACTOR_TYPE_SHY_GUY] MSG_EnemyName_ShyGuy,
|
||||
[ACTOR_TYPE_GROOVE_GUY] MSG_EnemyName_GrooveGuy,
|
||||
[ACTOR_TYPE_SKY_GUY] MSG_EnemyName_SkyGuy,
|
||||
[ACTOR_TYPE_MEDI_GUY] MSG_EnemyName_MediGuy,
|
||||
[ACTOR_TYPE_PYRO_GUY] MSG_EnemyName_PyroGuy,
|
||||
[ACTOR_TYPE_SPY_GUY] MSG_EnemyName_SpyGuy,
|
||||
[ACTOR_TYPE_FUZZIPEDE] MSG_EnemyName_Fuzzipede,
|
||||
[ACTOR_TYPE_HURT_PLANT] MSG_EnemyName_HurtPlant,
|
||||
[ACTOR_TYPE_M_BUSH] MSG_EnemyName_MBush,
|
||||
[ACTOR_TYPE_AQUA_FUZZY] MSG_EnemyName_AquaFuzzy,
|
||||
[ACTOR_TYPE_JUNGLE_FUZZY] MSG_EnemyName_JungleFuzzy,
|
||||
[ACTOR_TYPE_SPEAR_GUY] MSG_EnemyName_SpearGuy,
|
||||
[ACTOR_TYPE_LAVA_BUBBLE] MSG_EnemyName_LavaBubble,
|
||||
[ACTOR_TYPE_SPIKE_TOP] MSG_EnemyName_SpikeTop,
|
||||
[ACTOR_TYPE_PUTRID_PIRANHA] MSG_EnemyName_PutridPiranha,
|
||||
[ACTOR_TYPE_LAKITU] MSG_EnemyName_Lakitu,
|
||||
[ACTOR_TYPE_SPINY] MSG_EnemyName_Spiny,
|
||||
[ACTOR_TYPE_MONTY_MOLE_BOSS] MSG_EnemyName_MontyMoleBoss,
|
||||
[ACTOR_TYPE_BZZAP] MSG_EnemyName_Bzzap,
|
||||
[ACTOR_TYPE_CRAZEE_DAYZEE] MSG_EnemyName_CrazeeDayzee,
|
||||
[ACTOR_TYPE_AMAZY_DAYZEE] MSG_EnemyName_AmazyDayzee,
|
||||
[ACTOR_TYPE_RUFF_PUFF] MSG_EnemyName_RuffPuff,
|
||||
[ACTOR_TYPE_SPIKE] MSG_EnemyName_Spike,
|
||||
[ACTOR_TYPE_GULPIT] MSG_EnemyName_Gulpit,
|
||||
[ACTOR_TYPE_GULPIT_ROCKS] MSG_EnemyName_GulpitRocks,
|
||||
[ACTOR_TYPE_WHITE_CLUBBA] MSG_EnemyName_WhiteClubba,
|
||||
[ACTOR_TYPE_FROST_PIRANHA] MSG_EnemyName_FrostPiranha,
|
||||
[ACTOR_TYPE_SWOOPULA] MSG_EnemyName_Swoopula,
|
||||
[ACTOR_TYPE_DUPLIGHOST] MSG_EnemyName_Duplighost,
|
||||
[ACTOR_TYPE_GHOST_GOOMBARIO] MSG_EnemyName_GhostGoombario,
|
||||
[ACTOR_TYPE_GHOST_KOOPER] MSG_EnemyName_GhostKooper,
|
||||
[ACTOR_TYPE_GHOST_BOMBETTE] MSG_EnemyName_GhostBombette,
|
||||
[ACTOR_TYPE_GHOST_PARAKARRY] MSG_EnemyName_GhostParakarry,
|
||||
[ACTOR_TYPE_GHOST_BOW] MSG_EnemyName_GhostBow,
|
||||
[ACTOR_TYPE_GHOST_WATT] MSG_EnemyName_GhostWatt,
|
||||
[ACTOR_TYPE_GHOST_SUSHIE] MSG_EnemyName_GhostSushie,
|
||||
[ACTOR_TYPE_GHOST_LAKILESTER] MSG_EnemyName_GhostLakilester,
|
||||
[ACTOR_TYPE_ALBINO_DINO] MSG_EnemyName_AlbinoDino,
|
||||
[ACTOR_TYPE_EMBER] MSG_EnemyName_Ember,
|
||||
[ACTOR_TYPE_BONY_BEETLE] MSG_EnemyName_BonyBeetle,
|
||||
[ACTOR_TYPE_DRY_BONES] MSG_EnemyName_DryBones,
|
||||
[ACTOR_TYPE_DRY_BONES2] MSG_EnemyName_DryBones,
|
||||
[ACTOR_TYPE_BOMBSHELL_BLASTER] MSG_EnemyName_BombshellBlaster,
|
||||
[ACTOR_TYPE_BOMBSHELL_BILL] MSG_EnemyName_BombshellBill,
|
||||
[ACTOR_TYPE_HAMMER_BROS] MSG_EnemyName_HammerBros,
|
||||
[ACTOR_TYPE_KOOPATROL] MSG_EnemyName_Koopatrol,
|
||||
[ACTOR_TYPE_MAGIKOOPA] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FLYING_MAGIKOOPA] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_MAGICLONE] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FLYING_MAGICLONE] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_RED_MAGIKOOPA] MSG_EnemyName_RedMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_RED_MAGIKOOPA] MSG_EnemyName_RedMagikoopa,
|
||||
[ACTOR_TYPE_GREEN_MAGIKOOPA] MSG_EnemyName_GreenMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_GREEN_MAGIKOOPA] MSG_EnemyName_GreenMagikoopa,
|
||||
[ACTOR_TYPE_YELLOW_MAGIKOOPA] MSG_EnemyName_YellowMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_YELLOW_MAGIKOOPA] MSG_EnemyName_YellowMagikoopa,
|
||||
[ACTOR_TYPE_GRAY_MAGIKOOPA] MSG_EnemyName_GrayMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_GRAY_MAGIKOOPA] MSG_EnemyName_GrayMagikoopa,
|
||||
[ACTOR_TYPE_WHITE_MAGIKOOPA] MSG_EnemyName_WhiteMagikoopa,
|
||||
[ACTOR_TYPE_FLYING_WHITE_MAGIKOOPA] MSG_EnemyName_WhiteMagikoopa,
|
||||
[ACTOR_TYPE_UNUSED_5B] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5C] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5D] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5E] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_5F] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_60] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_61] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_62] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_63] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_64] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_65] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_66] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_67] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_68] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_69] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_6A] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_MONTY_HOLE] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_6C] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_6D] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_PLAYER] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_GOOMBARIO] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_KOOPER] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_BOMBETTE] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_PARAKARRY] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_BOW] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_WATT] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_SUSHIE] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_LAKILESTER] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_TWINK] MSG_Menus_Party_Twink,
|
||||
[ACTOR_TYPE_UNUSED_78] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_UNUSED_79] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_THE_MASTER_1] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_THE_MASTER_2] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_THE_MASTER_3] MSG_EnemyName_TheMaster,
|
||||
[ACTOR_TYPE_CHAN] MSG_EnemyName_Chan,
|
||||
[ACTOR_TYPE_LEE] MSG_EnemyName_Lee,
|
||||
[ACTOR_TYPE_LEE_GOOMBARIO] MSG_Menus_Party_Goombario,
|
||||
[ACTOR_TYPE_LEE_KOOPER] MSG_Menus_Party_Kooper,
|
||||
[ACTOR_TYPE_LEE_BOMBETTE] MSG_Menus_Party_Bombette,
|
||||
[ACTOR_TYPE_LEE_PARAKARRY] MSG_Menus_Party_Parakarry,
|
||||
[ACTOR_TYPE_LEE_BOW] MSG_Menus_Party_Bow,
|
||||
[ACTOR_TYPE_LEE_WATT] MSG_Menus_Party_Watt,
|
||||
[ACTOR_TYPE_LEE_SUSHIE] MSG_Menus_Party_Sushie,
|
||||
[ACTOR_TYPE_LEE_LAKILESTER] MSG_Menus_Party_Lakilester,
|
||||
[ACTOR_TYPE_KAMMY_KOOPA] MSG_EnemyName_KammyKoopa,
|
||||
[ACTOR_TYPE_JR_TROOPA1] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA2] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA3] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA4] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA5] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA6] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA_DUP1] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_JR_TROOPA_DUP2] MSG_EnemyName_JrTroopa,
|
||||
[ACTOR_TYPE_BLUE_GOOMBA_BOSS] MSG_EnemyName_BlueGoombaBoss,
|
||||
[ACTOR_TYPE_RED_GOOMBA_BOSS] MSG_EnemyName_RedGoombaBoss,
|
||||
[ACTOR_TYPE_GOOMBA_KING] MSG_EnemyName_GoombaKing,
|
||||
[ACTOR_TYPE_GOOMNUT_TREE] MSG_EnemyName_GoomnutTree,
|
||||
[ACTOR_TYPE_GOOMBARIO_TUTOR1] MSG_Menus_Party_Goombario,
|
||||
[ACTOR_TYPE_MAGIKOOPA_BOSS] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FLYING_MAGIKOOPA_BOSS] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_MAGIKOOPA_DUP1] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_MAGIKOOPA_DUP2] MSG_EnemyName_Magikoopa,
|
||||
[ACTOR_TYPE_FAKE_BOWSER] MSG_EnemyName_FakeBowser,
|
||||
[ACTOR_TYPE_KOOPA_BROS] MSG_EnemyName_KoopaBros,
|
||||
[ACTOR_TYPE_GREEN_NINJAKOOPA] MSG_EnemyName_GreenNinjakoopa,
|
||||
[ACTOR_TYPE_RED_NINJAKOOPA] MSG_EnemyName_RedNinjakoopa,
|
||||
[ACTOR_TYPE_BLUE_NINJAKOOPA] MSG_EnemyName_BlueNinjakoopa,
|
||||
[ACTOR_TYPE_YELLOW_NINJAKOOPA] MSG_EnemyName_YellowNinjakoopa,
|
||||
[ACTOR_TYPE_ELDSTAR] MSG_Menus_Party_Goombario,
|
||||
[ACTOR_TYPE_BUZZAR] MSG_EnemyName_Buzzar,
|
||||
[ACTOR_TYPE_TUTANKOOPA] MSG_EnemyName_Tutankoopa,
|
||||
[ACTOR_TYPE_CHOMP] MSG_EnemyName_Chomp,
|
||||
[ACTOR_TYPE_TUBBA_BLUBBA_INVINCIBLE] MSG_EnemyName_TubbaBlubba,
|
||||
[ACTOR_TYPE_TUBBA_BLUBBA] MSG_EnemyName_TubbaBlubba,
|
||||
[ACTOR_TYPE_TUBBA_HEART] MSG_EnemyName_TubbaHeart,
|
||||
[ACTOR_TYPE_STILT_GUY] MSG_EnemyName_StiltGuy,
|
||||
[ACTOR_TYPE_SHY_STACK] MSG_EnemyName_ShyStack,
|
||||
[ACTOR_TYPE_SHY_SQUAD] MSG_EnemyName_ShySquad,
|
||||
[ACTOR_TYPE_GENERAL_GUY] MSG_EnemyName_GeneralGuyDup,
|
||||
[ACTOR_TYPE_TOY_TANK] MSG_EnemyName_GeneralGuy,
|
||||
[ACTOR_TYPE_LIGHT_BULB] MSG_EnemyName_Bulb,
|
||||
[ACTOR_TYPE_SIGNAL_GUY] MSG_EnemyName_ShyGuy,
|
||||
[ACTOR_TYPE_SHY_SQUAD_DUP] MSG_EnemyName_ShySquadDup,
|
||||
[ACTOR_TYPE_SHY_GUY_DUP] MSG_EnemyName_ShyGuy,
|
||||
[ACTOR_TYPE_ANTI_GUY] MSG_EnemyName_AntiGuy,
|
||||
[ACTOR_TYPE_ANTI_GUY_DUP] MSG_EnemyName_AntiGuy,
|
||||
[ACTOR_TYPE_BIG_LANTERN_GHOST] MSG_EnemyName_BigLanternGhost,
|
||||
[ACTOR_TYPE_GOOMBA_KING_DUP] MSG_EnemyName_GoombaKing,
|
||||
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] MSG_EnemyName_LavaPiranha,
|
||||
[ACTOR_TYPE_LAVA_PIRANHA_PHASE_2] MSG_EnemyName_LavaPiranha,
|
||||
[ACTOR_TYPE_LAVA_BUD_PHASE_1] MSG_EnemyName_LavaBud,
|
||||
[ACTOR_TYPE_LAVA_BUD_PHASE_2] MSG_EnemyName_LavaBud,
|
||||
[ACTOR_TYPE_PETIT_PIRANHA] MSG_EnemyName_PetitPiranha,
|
||||
[ACTOR_TYPE_PETIT_PIRANHA_BOMB] MSG_EnemyName_LavaPiranha,
|
||||
[ACTOR_TYPE_KENT_C_KOOPA] MSG_EnemyName_KentCKoopa,
|
||||
[ACTOR_TYPE_HUFF_N_PUFF] MSG_EnemyName_HuffNPuff,
|
||||
[ACTOR_TYPE_TUFF_PUFF] MSG_EnemyName_TuffPuff,
|
||||
[ACTOR_TYPE_MONSTAR] MSG_EnemyName_Monstar,
|
||||
[ACTOR_TYPE_CRYSTAL_KING] MSG_EnemyName_CrystalKing,
|
||||
[ACTOR_TYPE_CRYSTAL_CLONE] MSG_EnemyName_CrystalKing,
|
||||
[ACTOR_TYPE_CRYSTAL_BIT] MSG_EnemyName_CrystalBit,
|
||||
[ACTOR_TYPE_INTRO_BOWSER] MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_PHASE_1] MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_DUP1] MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_PHASE_2] MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_DUP2] MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_PHASE_3] MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BOWSER_DUP3] MSG_EnemyName_Bowser,
|
||||
[ACTOR_TYPE_BLOOPER] MSG_EnemyName_Blooper,
|
||||
[ACTOR_TYPE_ELECTRO_BLOOPER1] MSG_EnemyName_ElectroBlooper,
|
||||
[ACTOR_TYPE_ELECTRO_BLOOPER2] MSG_EnemyName_ElectroBlooper,
|
||||
[ACTOR_TYPE_SUPER_BLOOPER1] MSG_EnemyName_SuperBlooper,
|
||||
[ACTOR_TYPE_SUPER_BLOOPER2] MSG_EnemyName_SuperBlooper,
|
||||
[ACTOR_TYPE_BLOOPER_BABY] MSG_EnemyName_BlooperBaby,
|
||||
[ACTOR_TYPE_LAKILESTER_DUP] MSG_EnemyName_GhostLakilester,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START] MSG_EnemyName_SlotMachineStart,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_STOP] MSG_EnemyName_SlotMachineStop,
|
||||
[ACTOR_TYPE_WHACKA] MSG_EnemyName_Whacka,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START_DUP1] MSG_EnemyName_SlotMachineStart,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START_DUP2] MSG_EnemyName_SlotMachineStart,
|
||||
[ACTOR_TYPE_SLOT_MACHINE_START_DUP3] MSG_EnemyName_SlotMachineStart,
|
||||
};
|
||||
|
||||
s32 D_80281454[] = { 0x78, 0x93, 0x99, 0xB2, -1 };
|
||||
// enemy types to ignore when deciding initialEnemyCount
|
||||
s32 D_80281454[] = {
|
||||
ACTOR_TYPE_UNUSED_78,
|
||||
ACTOR_TYPE_GOOMNUT_TREE,
|
||||
ACTOR_TYPE_FAKE_BOWSER,
|
||||
ACTOR_TYPE_GOOMBA_KING_DUP,
|
||||
-1
|
||||
};
|
||||
|
||||
ActorSounds bActorSoundTable[ACTOR_TYPE_COUNT] = {
|
||||
[ACTOR_TYPE_RED_GOOMBA] = {
|
||||
|
@ -83,7 +83,7 @@ s32 calc_item_damage_enemy(void) {
|
||||
|
||||
target->lastDamageTaken = 0;
|
||||
actorClass = currentTargetID & ACTOR_CLASS_MASK;
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_80000)) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_PARTNER_ACTING)) {
|
||||
state = &player->state;
|
||||
} else {
|
||||
state = &partner->state;
|
||||
|
300
src/18C790.c
300
src/18C790.c
@ -26,14 +26,14 @@ enum {
|
||||
MENU_BP = 2,
|
||||
};
|
||||
|
||||
// first index for LevelUpStatTextHEIDs
|
||||
// first index for LevelUpStatTextIDs
|
||||
enum {
|
||||
LVL_UP_FP = 0,
|
||||
LVL_UP_HP = 1,
|
||||
LVL_UP_BP = 2,
|
||||
};
|
||||
|
||||
// second index for LevelUpStatTextHEIDs
|
||||
// second index for LevelUpStatTextIDs
|
||||
enum {
|
||||
LVL_UP_TITLE = 0,
|
||||
LVL_UP_CUR_TENS = 1,
|
||||
@ -44,13 +44,13 @@ enum {
|
||||
LVL_UP_BONUS = 6,
|
||||
};
|
||||
|
||||
BSS s32 LevelUpStatEmblemHEIDs[4];
|
||||
BSS s32 LevelUpStatTextHEIDs[3][7];
|
||||
BSS HudElemID LevelUpStatEmblemIDs[4];
|
||||
BSS HudElemID LevelUpStatTextIDs[3][7];
|
||||
BSS s32 D_8029FAE4; // unused?
|
||||
BSS s32 LevelUpSpotlightHEID;
|
||||
BSS HudElemID LevelUpSpotlightID;
|
||||
BSS s32 D_8029FAEC[23]; // unused?
|
||||
|
||||
BSS s32 LevelUpSelectTextHEID;
|
||||
BSS HudElemID LevelUpSelectTextID;
|
||||
BSS s32 CelebrateSubstateTime;
|
||||
BSS s32 D_8029FB50;
|
||||
BSS s32 EndBattleRewardStep;
|
||||
@ -198,7 +198,7 @@ HudScript* levelup_stat_scripts[3] = {
|
||||
&HES_level_up_BP,
|
||||
};
|
||||
|
||||
HudScript* level_up_digit_scripts[3][10] = {
|
||||
HudScript* HES_LevelUpDigits[3][10] = {
|
||||
{
|
||||
&HES_level_up_green_digit_0,
|
||||
&HES_level_up_green_digit_1,
|
||||
@ -650,57 +650,57 @@ void btl_state_update_celebration(void) {
|
||||
}
|
||||
} else {
|
||||
id = hud_element_create(&HES_level_up_heart);
|
||||
LevelUpStatEmblemHEIDs[0] = id;
|
||||
LevelUpStatEmblemIDs[0] = id;
|
||||
hud_element_set_render_pos(id, 310, 140);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
|
||||
id = hud_element_create(&HES_level_up_flower);
|
||||
LevelUpStatEmblemHEIDs[1] = id;
|
||||
LevelUpStatEmblemIDs[1] = id;
|
||||
hud_element_set_render_pos(id, 158, 340);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
|
||||
id = hud_element_create(&HES_level_up_leaves);
|
||||
LevelUpStatEmblemHEIDs[3] = id;
|
||||
LevelUpStatEmblemIDs[3] = id;
|
||||
hud_element_set_render_pos(id, 158, 340);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
|
||||
id = hud_element_create(&HES_level_up_badge);
|
||||
LevelUpStatEmblemHEIDs[2] = id;
|
||||
LevelUpStatEmblemIDs[2] = id;
|
||||
hud_element_set_render_pos(id, 6, 140);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
|
||||
id = hud_element_create(levelup_stat_scripts[0]);
|
||||
LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_TITLE] = id;
|
||||
LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_TITLE] = id;
|
||||
hud_element_set_render_pos(id, 160, 317);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
|
||||
for (i = 1; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
id = hud_element_create(level_up_digit_scripts[LVL_UP_FP][0]);
|
||||
LevelUpStatTextHEIDs[LVL_UP_FP][i] = id;
|
||||
for (i = 1; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
id = hud_element_create(HES_LevelUpDigits[LVL_UP_FP][0]);
|
||||
LevelUpStatTextIDs[LVL_UP_FP][i] = id;
|
||||
hud_element_set_render_pos(id, 160, 317);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80 | HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
|
||||
id = hud_element_create(levelup_stat_scripts[1]);
|
||||
LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_TITLE] = id;
|
||||
LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_TITLE] = id;
|
||||
hud_element_set_render_pos(id, 312, 117);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
|
||||
for (i = 1; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_HP]); i++) {
|
||||
id = hud_element_create(level_up_digit_scripts[LVL_UP_HP][0]);
|
||||
LevelUpStatTextHEIDs[LVL_UP_HP][i] = id;
|
||||
for (i = 1; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_HP]); i++) {
|
||||
id = hud_element_create(HES_LevelUpDigits[LVL_UP_HP][0]);
|
||||
LevelUpStatTextIDs[LVL_UP_HP][i] = id;
|
||||
hud_element_set_render_pos(id, 312, 117);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80 | HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
|
||||
id = hud_element_create(levelup_stat_scripts[2]);
|
||||
LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_TITLE] = id;
|
||||
LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_TITLE] = id;
|
||||
hud_element_set_render_pos(id, 8, 117);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
|
||||
for (i = 1; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_BP]); i++) {
|
||||
id = hud_element_create(level_up_digit_scripts[LVL_UP_BP][0]);
|
||||
LevelUpStatTextHEIDs[LVL_UP_BP][i] = id;
|
||||
for (i = 1; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_BP]); i++) {
|
||||
id = hud_element_create(HES_LevelUpDigits[LVL_UP_BP][0]);
|
||||
LevelUpStatTextIDs[LVL_UP_BP][i] = id;
|
||||
hud_element_set_render_pos(id, 8, 117);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80 | HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
@ -713,7 +713,7 @@ void btl_state_update_celebration(void) {
|
||||
// current FP
|
||||
tensDigit = playerData->curMaxFP / 10;
|
||||
onesDigit = playerData->curMaxFP % 10;
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_CUR_TENS];
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_CUR_TENS];
|
||||
hud_element_set_script(id, level_up_small_digit_scripts[LVL_UP_FP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
@ -721,13 +721,13 @@ void btl_state_update_celebration(void) {
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 14, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_CUR_ONES];
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_CUR_ONES];
|
||||
hud_element_set_script(id, level_up_small_digit_scripts[LVL_UP_FP][onesDigit]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 8, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_ARROW];
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_ARROW];
|
||||
hud_element_set_script(id, &HES_level_up_small_green_arrow);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
@ -736,33 +736,33 @@ void btl_state_update_celebration(void) {
|
||||
// upgraded FP
|
||||
tensDigit = (playerData->curMaxFP + 5) / 10;
|
||||
onesDigit = (playerData->curMaxFP + 5) % 10;
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_FP][tensDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_FP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 3, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_FP][onesDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_FP][onesDigit]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 10, y + 46);
|
||||
} else {
|
||||
// upgraded FP only
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_NEXT_TENS];
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_NEXT_TENS];
|
||||
tensDigit = playerData->curMaxFP / 10;
|
||||
onesDigit = playerData->curMaxFP % 10;
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_FP][tensDigit]);
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_FP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 6, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_FP][onesDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_FP][onesDigit]);
|
||||
hud_element_clear_flags(id, 2);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 2, y + 46);
|
||||
@ -770,7 +770,7 @@ void btl_state_update_celebration(void) {
|
||||
}
|
||||
|
||||
if (is_ability_active(ABILITY_FP_PLUS)) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][LVL_UP_BONUS];
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][LVL_UP_BONUS];
|
||||
itemHudElemID = gItemTable[ITEM_FP_PLUS_A].hudElemID;
|
||||
hud_element_set_script(id, gItemHudScripts[itemHudElemID].enabled);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
@ -784,7 +784,7 @@ void btl_state_update_celebration(void) {
|
||||
tensDigit = playerData->curMaxHP / 10;
|
||||
onesDigit = playerData->curMaxHP % 10;
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_CUR_TENS];
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_CUR_TENS];
|
||||
hud_element_set_script(id, level_up_small_digit_scripts[LVL_UP_HP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
@ -792,13 +792,13 @@ void btl_state_update_celebration(void) {
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 14, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_CUR_ONES];
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_CUR_ONES];
|
||||
hud_element_set_script(id, level_up_small_digit_scripts[LVL_UP_HP][onesDigit]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 8, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_ARROW];
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_ARROW];
|
||||
hud_element_set_script(id, &HES_level_up_small_red_arrow);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
@ -807,16 +807,16 @@ void btl_state_update_celebration(void) {
|
||||
tensDigit = (playerData->curMaxHP + 5) / 10;
|
||||
onesDigit = (playerData->curMaxHP + 5) % 10;
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_HP][tensDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_HP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 3, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_HP][onesDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_HP][onesDigit]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 10, y + 46);
|
||||
@ -824,16 +824,16 @@ void btl_state_update_celebration(void) {
|
||||
tensDigit = playerData->curMaxHP / 10;
|
||||
onesDigit = playerData->curMaxHP % 10;
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_HP][tensDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_HP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 6, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_HP][onesDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_HP][onesDigit]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 2, y + 46);
|
||||
@ -841,7 +841,7 @@ void btl_state_update_celebration(void) {
|
||||
}
|
||||
|
||||
if (is_ability_active(ABILITY_HP_PLUS)) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][LVL_UP_BONUS];
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][LVL_UP_BONUS];
|
||||
itemHudElemID = gItemTable[ITEM_HP_PLUS_A].hudElemID;
|
||||
hud_element_set_script(id, gItemHudScripts[itemHudElemID].enabled);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
@ -854,7 +854,7 @@ void btl_state_update_celebration(void) {
|
||||
tensDigit = playerData->maxBP / 10;
|
||||
onesDigit = playerData->maxBP % 10;
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_CUR_TENS];
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_CUR_TENS];
|
||||
hud_element_set_script(id, level_up_small_digit_scripts[LVL_UP_BP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
@ -862,13 +862,13 @@ void btl_state_update_celebration(void) {
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 14, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_CUR_ONES];
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_CUR_ONES];
|
||||
hud_element_set_script(id, level_up_small_digit_scripts[LVL_UP_BP][onesDigit]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 8, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_ARROW];
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_ARROW];
|
||||
hud_element_set_script(id, &HES_level_up_small_blue_arrow);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
@ -877,35 +877,35 @@ void btl_state_update_celebration(void) {
|
||||
tensDigit = (playerData->maxBP + 3) / 10;
|
||||
onesDigit = (playerData->maxBP + 3) % 10;
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_BP][tensDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_BP][tensDigit]);
|
||||
if (tensDigit != 0) {
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
}
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 3, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_BP][onesDigit]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_BP][onesDigit]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 10, y + 46);
|
||||
} else {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_BP][3]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_NEXT_TENS];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_BP][3]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x - 6, y + 46);
|
||||
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, level_up_digit_scripts[LVL_UP_BP][0]);
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][LVL_UP_NEXT_ONES];
|
||||
hud_element_set_script(id, HES_LevelUpDigits[LVL_UP_BP][0]);
|
||||
hud_element_clear_flags(id, HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
hud_element_set_render_pos(id, x + 2, y + 46);
|
||||
CantLevelUpStat[MENU_BP] = TRUE;
|
||||
}
|
||||
|
||||
id = LevelUpSpotlightHEID = hud_element_create(&HES_ProjectorBeam);
|
||||
id = LevelUpSpotlightID = hud_element_create(&HES_ProjectorBeam);
|
||||
hud_element_create_transform_B(id);
|
||||
hud_element_set_render_pos(id, 156, 13);
|
||||
hud_element_set_tint(id, 255, 255, 255);
|
||||
@ -915,7 +915,7 @@ void btl_state_update_celebration(void) {
|
||||
hud_element_set_alpha(id, 200);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_FILTER_TEX | HUD_ELEMENT_FLAG_80);
|
||||
|
||||
id = LevelUpSelectTextHEID = hud_element_create(&HES_level_up_select_one_to_upgrade);
|
||||
id = LevelUpSelectTextID = hud_element_create(&HES_level_up_select_one_to_upgrade);
|
||||
hud_element_set_render_pos(id, 0, 0);
|
||||
hud_element_set_flags(id, HUD_ELEMENT_FLAG_80);
|
||||
battleStatus->currentSubmenu = 1;
|
||||
@ -925,42 +925,42 @@ void btl_state_update_celebration(void) {
|
||||
}
|
||||
break;
|
||||
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_SHOW_HUD:
|
||||
id = LevelUpStatEmblemHEIDs[0];
|
||||
id = LevelUpStatEmblemIDs[0];
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
x -= 20;
|
||||
hud_element_set_render_pos(id, x, y);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][i];
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
x -= 20;
|
||||
hud_element_set_render_pos(id, x, y);
|
||||
}
|
||||
|
||||
id = LevelUpStatEmblemHEIDs[1];
|
||||
id = LevelUpStatEmblemIDs[1];
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
y -= 20;
|
||||
hud_element_set_render_pos(id, x, y);
|
||||
|
||||
id = LevelUpStatEmblemHEIDs[3];
|
||||
id = LevelUpStatEmblemIDs[3];
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
y -= 20;
|
||||
hud_element_set_render_pos(id, x, y);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][i];
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
y -= 20;
|
||||
hud_element_set_render_pos(id, x, y);
|
||||
}
|
||||
|
||||
id = LevelUpStatEmblemHEIDs[2];
|
||||
id = LevelUpStatEmblemIDs[2];
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
x += 20;
|
||||
hud_element_set_render_pos(id, x, y);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][i];
|
||||
hud_element_get_render_pos(id, &x, &y);
|
||||
x += 20;
|
||||
hud_element_set_render_pos(id, x, y);
|
||||
@ -1014,7 +1014,7 @@ void btl_state_update_celebration(void) {
|
||||
}
|
||||
break;
|
||||
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_UPGRADE:
|
||||
hud_element_free(LevelUpSpotlightHEID);
|
||||
hud_element_free(LevelUpSpotlightID);
|
||||
set_window_update(WINDOW_ID_8, WINDOW_UPDATE_HIDE);
|
||||
|
||||
switch (battleStatus->currentSubmenu) {
|
||||
@ -1068,27 +1068,27 @@ void btl_state_update_celebration(void) {
|
||||
if ((gGameStatusPtr->frameCounter % 2) != 0) {
|
||||
switch (battleStatus->currentSubmenu) {
|
||||
case 0:
|
||||
hud_element_set_flags(LevelUpStatEmblemHEIDs[0], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_set_flags(LevelUpStatEmblemIDs[0], HUD_ELEMENT_FLAG_DISABLED);
|
||||
break;
|
||||
case 1:
|
||||
hud_element_set_flags(LevelUpStatEmblemHEIDs[1], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_set_flags(LevelUpStatEmblemHEIDs[3], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_set_flags(LevelUpStatEmblemIDs[1], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_set_flags(LevelUpStatEmblemIDs[3], HUD_ELEMENT_FLAG_DISABLED);
|
||||
break;
|
||||
case 2:
|
||||
hud_element_set_flags(LevelUpStatEmblemHEIDs[2], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_set_flags(LevelUpStatEmblemIDs[2], HUD_ELEMENT_FLAG_DISABLED);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (battleStatus->currentSubmenu) {
|
||||
case 0:
|
||||
hud_element_clear_flags(LevelUpStatEmblemHEIDs[0], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_clear_flags(LevelUpStatEmblemIDs[0], HUD_ELEMENT_FLAG_DISABLED);
|
||||
break;
|
||||
case 1:
|
||||
hud_element_clear_flags(LevelUpStatEmblemHEIDs[1], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_clear_flags(LevelUpStatEmblemHEIDs[3], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_clear_flags(LevelUpStatEmblemIDs[1], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_clear_flags(LevelUpStatEmblemIDs[3], HUD_ELEMENT_FLAG_DISABLED);
|
||||
break;
|
||||
case 2:
|
||||
hud_element_clear_flags(LevelUpStatEmblemHEIDs[2], HUD_ELEMENT_FLAG_DISABLED);
|
||||
hud_element_clear_flags(LevelUpStatEmblemIDs[2], HUD_ELEMENT_FLAG_DISABLED);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1102,21 +1102,21 @@ void btl_state_update_celebration(void) {
|
||||
}
|
||||
break;
|
||||
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_DESTROY_HUD:
|
||||
hud_element_free(LevelUpStatEmblemHEIDs[0]);
|
||||
hud_element_free(LevelUpStatEmblemHEIDs[1]);
|
||||
hud_element_free(LevelUpStatEmblemHEIDs[3]);
|
||||
hud_element_free(LevelUpStatEmblemHEIDs[2]);
|
||||
hud_element_free(LevelUpStatEmblemIDs[0]);
|
||||
hud_element_free(LevelUpStatEmblemIDs[1]);
|
||||
hud_element_free(LevelUpStatEmblemIDs[3]);
|
||||
hud_element_free(LevelUpStatEmblemIDs[2]);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs); i++) {
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); j++) {
|
||||
hud_element_free(LevelUpStatTextHEIDs[i][j]);
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs); i++) {
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); j++) {
|
||||
hud_element_free(LevelUpStatTextIDs[i][j]);
|
||||
}
|
||||
}
|
||||
|
||||
hud_element_free(LevelUpSelectTextHEID);
|
||||
hud_element_free(LevelUpSelectTextID);
|
||||
set_background_color_blend(0, 0, 0, 0);
|
||||
btl_set_state(BATTLE_STATE_END_BATTLE);
|
||||
gBattleSubState = BTL_SUBSTATE_END_BATTLE_UNK_2;
|
||||
gBattleSubState = BTL_SUBSTATE_END_BATTLE_EXEC_STAGE_SCRIPT;
|
||||
break;
|
||||
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_INVALID:
|
||||
width = get_msg_width(MSG_Menus_CantIncrease, 0) + 31;
|
||||
@ -1191,7 +1191,7 @@ void btl_state_update_celebration(void) {
|
||||
kill_script_by_ID(partner->takeTurnScriptID);
|
||||
}
|
||||
btl_set_state(BATTLE_STATE_END_BATTLE);
|
||||
gBattleSubState = BTL_SUBSTATE_END_BATTLE_UNK_2;
|
||||
gBattleSubState = BTL_SUBSTATE_END_BATTLE_EXEC_STAGE_SCRIPT;
|
||||
break;
|
||||
}
|
||||
CelebrateStateTime++;
|
||||
@ -1237,13 +1237,13 @@ void btl_draw_upgrade_windows(s32 phase) {
|
||||
break;
|
||||
}
|
||||
|
||||
hud_element_get_render_pos(LevelUpStatEmblemHEIDs[0], &x, &y);
|
||||
hud_element_get_render_pos(LevelUpStatEmblemIDs[0], &x, &y);
|
||||
draw_box(0, WINDOW_STYLE_15, x - 22, y - 22, 0, 44, 44, 255, d1, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, NULL, NULL, NULL,
|
||||
SCREEN_WIDTH, SCREEN_HEIGHT, NULL);
|
||||
hud_element_get_render_pos(LevelUpStatEmblemHEIDs[3], &x, &y);
|
||||
hud_element_get_render_pos(LevelUpStatEmblemIDs[3], &x, &y);
|
||||
draw_box(0, WINDOW_STYLE_15, x - 22, y - 22, 0, 44, 44, 255, d2, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, NULL, NULL, NULL,
|
||||
SCREEN_WIDTH, SCREEN_HEIGHT, NULL);
|
||||
hud_element_get_render_pos(LevelUpStatEmblemHEIDs[2], &x, &y);
|
||||
hud_element_get_render_pos(LevelUpStatEmblemIDs[2], &x, &y);
|
||||
draw_box(0, WINDOW_STYLE_15, x - 22, y - 22, 0, 44, 44, 255, d3, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, NULL, NULL, NULL,
|
||||
SCREEN_WIDTH, SCREEN_HEIGHT, NULL);
|
||||
}
|
||||
@ -1258,22 +1258,22 @@ void btl_state_draw_celebration(void) {
|
||||
switch (gBattleSubState) {
|
||||
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_SHOW_HUD:
|
||||
btl_draw_upgrade_windows(0);
|
||||
id = LevelUpStatEmblemHEIDs[0];
|
||||
id = LevelUpStatEmblemIDs[0];
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
hud_element_draw_clipped(id);
|
||||
id = LevelUpStatEmblemHEIDs[3];
|
||||
id = LevelUpStatEmblemIDs[3];
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
hud_element_draw_clipped(id);
|
||||
id = LevelUpStatEmblemHEIDs[1];
|
||||
id = LevelUpStatEmblemIDs[1];
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
hud_element_draw_clipped(id);
|
||||
id = LevelUpStatEmblemHEIDs[2];
|
||||
id = LevelUpStatEmblemIDs[2];
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
hud_element_draw_clipped(id);
|
||||
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextHEIDs); j++) {
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[j][i];
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextIDs); j++) {
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextIDs[j][i];
|
||||
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
hud_element_draw_clipped(id);
|
||||
@ -1286,67 +1286,67 @@ void btl_state_draw_celebration(void) {
|
||||
switch (battleStatus->currentSubmenu) {
|
||||
case 0:
|
||||
rotZ = 152;
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[0], 255, 255, 255);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[3], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[1], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[2], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[0], 255, 255, 255);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[3], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[1], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[2], 128, 128, 128);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][i];
|
||||
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][i];
|
||||
|
||||
hud_element_set_tint(id, 255, 255, 255);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][i];
|
||||
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
}
|
||||
|
||||
id = LevelUpStatEmblemHEIDs[0];
|
||||
id = LevelUpStatEmblemIDs[0];
|
||||
if (hud_element_get_script(id) != &HES_level_up_heart_copy) {
|
||||
hud_element_set_script(id, &HES_level_up_heart_copy);
|
||||
}
|
||||
id = LevelUpStatEmblemHEIDs[3];
|
||||
id = LevelUpStatEmblemIDs[3];
|
||||
if (hud_element_get_script(id) != &HES_level_up_leaves) {
|
||||
hud_element_set_script(id, &HES_level_up_leaves);
|
||||
}
|
||||
id = LevelUpStatEmblemHEIDs[1];
|
||||
id = LevelUpStatEmblemIDs[1];
|
||||
if (hud_element_get_script(id) != &HES_level_up_flower) {
|
||||
hud_element_set_script(id, &HES_level_up_flower);
|
||||
}
|
||||
id = LevelUpStatEmblemHEIDs[2];
|
||||
id = LevelUpStatEmblemIDs[2];
|
||||
if (hud_element_get_script(id) != &HES_level_up_badge) {
|
||||
hud_element_set_script(id, &HES_level_up_badge);
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
rotZ = 180;
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[0], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[3], 255, 255, 255);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[1], 255, 255, 255);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[2], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[0], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[3], 255, 255, 255);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[1], 255, 255, 255);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[2], 128, 128, 128);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][i];
|
||||
|
||||
hud_element_set_tint(id, 255, 255, 255);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][i];
|
||||
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][i];
|
||||
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
}
|
||||
@ -1354,25 +1354,25 @@ void btl_state_draw_celebration(void) {
|
||||
case 2:
|
||||
default:
|
||||
rotZ = 208;
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[0], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[3], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[1], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemHEIDs[2], 255, 255, 255);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[0], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[3], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[1], 128, 128, 128);
|
||||
hud_element_set_tint(LevelUpStatEmblemIDs[2], 255, 255, 255);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_FP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_FP][i];
|
||||
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_HP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_HP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_HP][i];
|
||||
|
||||
hud_element_set_tint(id, 128, 128, 128);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextHEIDs[LVL_UP_BP][i];
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_BP]); i++) {
|
||||
id = LevelUpStatTextIDs[LVL_UP_BP][i];
|
||||
|
||||
hud_element_set_tint(id, 255, 255, 255);
|
||||
}
|
||||
@ -1380,33 +1380,33 @@ void btl_state_draw_celebration(void) {
|
||||
}
|
||||
|
||||
btl_draw_upgrade_windows(1);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[0]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[3]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[1]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[2]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[0]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[3]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[1]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[2]);
|
||||
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextHEIDs); j++) {
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
hud_element_draw_clipped(LevelUpStatTextHEIDs[j][i]);
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextIDs); j++) {
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
hud_element_draw_clipped(LevelUpStatTextIDs[j][i]);
|
||||
}
|
||||
}
|
||||
|
||||
func_80144218(-1);
|
||||
id = LevelUpSpotlightHEID;
|
||||
id = LevelUpSpotlightID;
|
||||
hud_element_set_transform_rotation(id, 0.0f, 0.0f, rotZ);
|
||||
func_80144238(id);
|
||||
break;
|
||||
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_UPGRADE:
|
||||
case BTL_SUBSTATE_CELEBRATE_LEVEL_UP_FADE_OUT:
|
||||
btl_draw_upgrade_windows(1);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[0]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[3]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[1]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemHEIDs[2]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[0]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[3]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[1]);
|
||||
hud_element_draw_clipped(LevelUpStatEmblemIDs[2]);
|
||||
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextHEIDs); j++) {
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextHEIDs[LVL_UP_FP]); i++) {
|
||||
hud_element_draw_clipped(LevelUpStatTextHEIDs[j][i]);
|
||||
for (j = 0; j < ARRAY_COUNT(LevelUpStatTextIDs); j++) {
|
||||
for (i = 0; i < ARRAY_COUNT(LevelUpStatTextIDs[LVL_UP_FP]); i++) {
|
||||
hud_element_draw_clipped(LevelUpStatTextIDs[j][i]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1432,7 +1432,7 @@ void btl_state_draw_celebration(void) {
|
||||
LevelUpSelectTextOffsetX = 200;
|
||||
LevelUpSelectTextVelX = -LevelUpSelectTextVelX / 3; // rebounding
|
||||
}
|
||||
id = LevelUpSelectTextHEID;
|
||||
id = LevelUpSelectTextID;
|
||||
hud_element_set_render_pos(id, LevelUpSelectTextOffsetX - 43, 176);
|
||||
hud_element_draw_clipped(id);
|
||||
break;
|
||||
@ -1442,7 +1442,7 @@ void btl_state_draw_celebration(void) {
|
||||
if (LevelUpSelectTextOffsetX > 500) {
|
||||
LevelUpSelectTextOffsetX = 500;
|
||||
}
|
||||
id = LevelUpSelectTextHEID;
|
||||
id = LevelUpSelectTextID;
|
||||
hud_element_set_render_pos(id, LevelUpSelectTextOffsetX - 43, 176);
|
||||
hud_element_draw_clipped(id);
|
||||
break;
|
||||
|
24
src/18F340.c
24
src/18F340.c
@ -131,8 +131,8 @@ ApiStatus ChoosePlayerCelebrationAnim(Evt* script, s32 isInitialCall) {
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ApiStatus func_80260DB8(Evt* script, s32 isInitialCall) {
|
||||
gBattleStatus.flags1 |= BS_FLAGS1_ENEMY_FLED;
|
||||
ApiStatus SetFledBattleFlag(Evt* script, s32 isInitialCall) {
|
||||
gBattleStatus.flags1 |= BS_FLAGS1_BATTLE_FLED;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
@ -169,7 +169,7 @@ ApiStatus func_80260E5C(Evt* script, s32 isInitialCall) {
|
||||
ApiStatus N(GiveRefund)(Evt* script, s32 isInitialCall) {
|
||||
BattleStatus* battleStatus = &gBattleStatus;
|
||||
Actor* player = battleStatus->playerActor;
|
||||
s32 sellValue = gItemTable[battleStatus->selectedItemID].sellValue;
|
||||
s32 sellValue = gItemTable[battleStatus->moveArgument].sellValue;
|
||||
f32 facingAngleSign = 0.0f;
|
||||
s32 sleepTime = 0;
|
||||
f32 posX, posY, posZ;
|
||||
@ -206,7 +206,7 @@ ApiStatus N(GiveRefund)(Evt* script, s32 isInitialCall) {
|
||||
}
|
||||
|
||||
ApiStatus N(GiveRefundCleanup)(Evt* script, s32 isInitialCall) {
|
||||
s32 sellValue = gItemTable[gBattleStatus.selectedItemID].sellValue;
|
||||
s32 sellValue = gItemTable[gBattleStatus.moveArgument].sellValue;
|
||||
|
||||
if (player_team_is_ability_active(gBattleStatus.playerActor, ABILITY_REFUND) && sellValue > 0) {
|
||||
hud_element_free(D_8029FBA0);
|
||||
@ -297,8 +297,8 @@ ApiStatus func_80261388(Evt* script, s32 isInitialCall) {
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ApiStatus func_802613A8(Evt* script, s32 isInitialCall) {
|
||||
gBattleStatus.selectedItemID = ITEM_LIFE_SHROOM;
|
||||
ApiStatus SetItemAsLifeShroom(Evt* script, s32 isInitialCall) {
|
||||
gBattleStatus.moveArgument = ITEM_LIFE_SHROOM;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
@ -646,12 +646,12 @@ ApiStatus func_802620F8(Evt* script, s32 isInitialCall) {
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
EvtScript D_80284A20 = {
|
||||
EvtScript EVS_Mario_OnActorCreate = {
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
|
||||
EvtScript D_80284A30 = {
|
||||
EvtScript EVS_Peach_OnActorCreate = {
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
@ -1021,7 +1021,7 @@ EvtScript HandleEvent_Player = {
|
||||
EVT_SET(LVar2, 0)
|
||||
EVT_EXEC_WAIT(D_802988F0)
|
||||
EVT_RETURN
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_CALL(SetActorJumpGravity, ACTOR_PLAYER, EVT_FLOAT(1.8))
|
||||
EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar7, LVar8, LVar9)
|
||||
EVT_CALL(SetJumpAnimations, ACTOR_PLAYER, 0, ANIM_Mario_AnimMidairStill, ANIM_Mario_AnimMidair, ANIM_Mario_BeforeJump)
|
||||
@ -1087,7 +1087,7 @@ EvtScript D_80286228 = {
|
||||
EVT_CALL(func_80273444, 8, 0, 0)
|
||||
EVT_CALL(func_80260DD8)
|
||||
EVT_IF_EQ(LVar0, 1)
|
||||
EVT_CALL(func_80260DB8)
|
||||
EVT_CALL(SetFledBattleFlag)
|
||||
EVT_CALL(PlaySoundAtActor, ACTOR_PLAYER, SOUND_15E)
|
||||
EVT_CALL(SetGoalPos, ACTOR_PLAYER, -240, 0, 10)
|
||||
EVT_CALL(SetActorSpeed, ACTOR_PLAYER, EVT_FLOAT(16.0))
|
||||
@ -1201,7 +1201,7 @@ EvtScript RunAwayStart = {
|
||||
EVT_CALL(GetActionSuccess, LVar0)
|
||||
EVT_CALL(func_80260DD8)
|
||||
EVT_IF_EQ(LVar0, 1)
|
||||
EVT_CALL(func_80260DB8)
|
||||
EVT_CALL(SetFledBattleFlag)
|
||||
EVT_CALL(PlaySoundAtActor, ACTOR_PLAYER, SOUND_15E)
|
||||
EVT_CALL(SetGoalPos, ACTOR_PLAYER, -240, 0, 10)
|
||||
EVT_CALL(SetActorSpeed, ACTOR_PLAYER, EVT_FLOAT(16.0))
|
||||
@ -1458,7 +1458,7 @@ EvtScript UseLifeShroom = {
|
||||
EVT_SET(LVar3, LVar0)
|
||||
EVT_SET(LVar4, LVar1)
|
||||
EVT_SET(LVar5, LVar2)
|
||||
EVT_CALL(func_802613A8)
|
||||
EVT_CALL(SetItemAsLifeShroom)
|
||||
EVT_CALL(base_GiveRefund)
|
||||
EVT_IF_GT(LVar0, 0)
|
||||
EVT_WAIT(LVar0)
|
||||
|
32
src/190B20.c
32
src/190B20.c
@ -200,8 +200,8 @@ void func_80263300(void) {
|
||||
ItemData* itemData = &gItemTable[itemID];
|
||||
|
||||
if (itemData->typeFlags & ITEM_TYPE_FLAG_BATTLE_USABLE) {
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_ITEM;
|
||||
battleStatus->selectedItemID = playerData->invItems[i];
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
|
||||
battleStatus->moveArgument = playerData->invItems[i];
|
||||
battleStatus->currentTargetListFlags = itemData->targetFlags;
|
||||
player_create_target_list(player);
|
||||
|
||||
@ -315,7 +315,7 @@ void btl_init_menu_boots(void) {
|
||||
|
||||
// See if there are any targets for this move
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
|
||||
battleStatus->selectedItemID = playerData->bootsLevel;
|
||||
battleStatus->moveArgument = playerData->bootsLevel;
|
||||
battleStatus->currentTargetListFlags = move->flags; // Controls target filters
|
||||
player_create_target_list(player);
|
||||
|
||||
@ -409,7 +409,7 @@ void btl_init_menu_hammer(void) {
|
||||
|
||||
// See if there are any targets for this move
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_SMASH;
|
||||
battleStatus->selectedItemID = playerData->hammerLevel;
|
||||
battleStatus->moveArgument = playerData->hammerLevel;
|
||||
battleStatus->currentTargetListFlags = move->flags;
|
||||
player_create_target_list(player);
|
||||
|
||||
@ -496,8 +496,8 @@ void btl_init_menu_partner(void) {
|
||||
}
|
||||
}
|
||||
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_5;
|
||||
battleStatus->selectedItemID = partner->actorBlueprint->level;
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_CHANGE_PARTNER;
|
||||
battleStatus->moveArgument = partner->actorBlueprint->level;
|
||||
battleStatus->currentTargetListFlags = move->flags;
|
||||
player_create_target_list(partner);
|
||||
|
||||
@ -886,7 +886,7 @@ void load_player_actor(void) {
|
||||
player->defenseBoost = 0;
|
||||
player->chillOutAmount = 0;
|
||||
player->chillOutTurns = 0;
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
player->actorTypeData1[0] = bActorSoundTable[player->actorType].walk[0];
|
||||
player->actorTypeData1[1] = bActorSoundTable[player->actorType].walk[1];
|
||||
player->actorTypeData1[2] = bActorSoundTable[player->actorType].fly[0];
|
||||
@ -1042,7 +1042,7 @@ void load_partner_actor(void) {
|
||||
x = -95.0f;
|
||||
y = partnerData->y;
|
||||
z = 0.0f;
|
||||
gBattleStatus.flags1 |= BS_FLAGS1_100000;
|
||||
gBattleStatus.flags1 |= BS_FLAGS1_PLAYER_IN_BACK;
|
||||
} else {
|
||||
x = -130.0f;
|
||||
y = partnerData->y;
|
||||
@ -1125,7 +1125,7 @@ void load_partner_actor(void) {
|
||||
partnerActor->defenseBoost = 0;
|
||||
partnerActor->chillOutAmount = 0;
|
||||
partnerActor->chillOutTurns = 0;
|
||||
partnerActor->status = 0;
|
||||
partnerActor->statusAfflicted = 0;
|
||||
partnerActor->actorTypeData1[0] = bActorSoundTable[partnerActor->actorType].walk[0];
|
||||
partnerActor->actorTypeData1[1] = bActorSoundTable[partnerActor->actorType].walk[1];
|
||||
partnerActor->actorTypeData1[2] = bActorSoundTable[partnerActor->actorType].fly[0];
|
||||
@ -1377,7 +1377,7 @@ Actor* create_actor(Formation formation) {
|
||||
actor->defenseBoost = 0;
|
||||
actor->chillOutAmount = 0;
|
||||
actor->chillOutTurns = 0;
|
||||
actor->status = 0;
|
||||
actor->statusAfflicted = 0;
|
||||
actor->actorTypeData1[0] = bActorSoundTable[actor->actorType].walk[0];
|
||||
actor->actorTypeData1[1] = bActorSoundTable[actor->actorType].walk[1];
|
||||
actor->actorTypeData1[2] = bActorSoundTable[actor->actorType].fly[0];
|
||||
@ -1396,7 +1396,7 @@ Actor* create_actor(Formation formation) {
|
||||
actor->state.varTable[2] = formation->var2;
|
||||
actor->state.varTable[3] = formation->var3;
|
||||
actor->renderMode = RENDER_MODE_ALPHATEST;
|
||||
actor->unk_208 = 0;
|
||||
actor->instigatorValue = 0;
|
||||
part = heap_malloc(sizeof(*part));
|
||||
actor->partsTable = part;
|
||||
ASSERT(part != NULL);
|
||||
@ -1691,7 +1691,7 @@ s32 inflict_status(Actor* target, s32 statusTypeKey, s32 duration) {
|
||||
|
||||
if (target->actorID != ACTOR_PARTNER) {
|
||||
if (target->debuff != statusTypeKey) {
|
||||
target->status = statusTypeKey;
|
||||
target->statusAfflicted = statusTypeKey;
|
||||
}
|
||||
target->disableEffect->data.disableX->koDuration = 0;
|
||||
target->debuff = statusTypeKey;
|
||||
@ -1748,7 +1748,7 @@ s32 inflict_status(Actor* target, s32 statusTypeKey, s32 duration) {
|
||||
if ((s8)duration > 9) {
|
||||
target->staticDuration = 9;
|
||||
}
|
||||
target->status = STATUS_STATIC;
|
||||
target->statusAfflicted = STATUS_STATIC;
|
||||
func_80266DAC(target, 4);
|
||||
create_status_static(target->hudElementDataIndex, STATUS_STATIC);
|
||||
}
|
||||
@ -1760,7 +1760,7 @@ s32 inflict_status(Actor* target, s32 statusTypeKey, s32 duration) {
|
||||
if ((s8)duration > 9) {
|
||||
target->stoneDuration = 9;
|
||||
}
|
||||
target->status = STATUS_STONE;
|
||||
target->statusAfflicted = STATUS_STONE;
|
||||
}
|
||||
return TRUE;
|
||||
case STATUS_DAZE:
|
||||
@ -1770,7 +1770,7 @@ s32 inflict_status(Actor* target, s32 statusTypeKey, s32 duration) {
|
||||
if ((s8)duration > 9) {
|
||||
target->koDuration = 9;
|
||||
}
|
||||
target->status = STATUS_DAZE;
|
||||
target->statusAfflicted = STATUS_DAZE;
|
||||
}
|
||||
return TRUE;
|
||||
case STATUS_TRANSPARENT:
|
||||
@ -1780,7 +1780,7 @@ s32 inflict_status(Actor* target, s32 statusTypeKey, s32 duration) {
|
||||
if ((s8)duration > 9) {
|
||||
target->transparentDuration = 9;
|
||||
}
|
||||
target->status = STATUS_TRANSPARENT;
|
||||
target->statusAfflicted = STATUS_TRANSPARENT;
|
||||
create_status_transparent(target->hudElementDataIndex, STATUS_TRANSPARENT);
|
||||
}
|
||||
return TRUE;
|
||||
|
@ -573,7 +573,7 @@ s32 calc_player_damage_enemy(void) {
|
||||
retVal = 0;
|
||||
target->hpChangeCounter -= currentAttackDamage;
|
||||
|
||||
if (!(targetPart->flags & ACTOR_PART_FLAG_2000) && !(gBattleStatus.flags1 & BS_FLAGS1_2000000) && !sp1C &&
|
||||
if (!(targetPart->flags & ACTOR_PART_FLAG_2000) && !(gBattleStatus.flags1 & BS_FLAGS1_TUTORIAL_BATTLE) && !sp1C &&
|
||||
!(targetPart->targetFlags & ACTOR_PART_FLAG_4)) {
|
||||
target->currentHP -= currentAttackDamage;
|
||||
|
||||
@ -1051,7 +1051,7 @@ ApiStatus GetMenuSelection(Evt* script, s32 isInitialCall) {
|
||||
s32 outVar3 = *args++;
|
||||
|
||||
evt_set_variable(script, outVar1, battleStatus->moveCategory);
|
||||
evt_set_variable(script, outVar2, battleStatus->selectedItemID);
|
||||
evt_set_variable(script, outVar2, battleStatus->moveArgument);
|
||||
evt_set_variable(script, outVar3, battleStatus->selectedMoveID);
|
||||
|
||||
return ApiStatus_DONE2;
|
||||
|
10
src/1A5830.c
10
src/1A5830.c
@ -473,7 +473,7 @@ s32 calc_enemy_damage_target(Actor* attacker) {
|
||||
battleStatus->lastAttackDamage = 0;
|
||||
hitResult = HIT_RESULT_HIT;
|
||||
if (!(targetPart->flags & ACTOR_PART_FLAG_2000)) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_2000000)) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_TUTORIAL_BATTLE)) {
|
||||
if (!(target->flags & ACTOR_FLAG_NO_DMG_APPLY)) {
|
||||
target->currentHP -= damage;
|
||||
}
|
||||
@ -3117,7 +3117,7 @@ ApiStatus AfflictActor(Evt* script, s32 isInitialCall) {
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ApiStatus func_8027D75C(Evt* script, s32 isInitialCall) {
|
||||
ApiStatus GetInstigatorValue(Evt* script, s32 isInitialCall) {
|
||||
Bytecode* args = script->ptrReadPos;
|
||||
s32 actorID = evt_get_variable(script, *args++);
|
||||
s32 outVar = *args++;
|
||||
@ -3126,7 +3126,7 @@ ApiStatus func_8027D75C(Evt* script, s32 isInitialCall) {
|
||||
actorID = script->owner1.actorID;
|
||||
}
|
||||
|
||||
evt_set_variable(script, outVar, get_actor(actorID)->unk_208);
|
||||
evt_set_variable(script, outVar, get_actor(actorID)->instigatorValue);
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
@ -3319,8 +3319,8 @@ ApiStatus CopyStatusEffects(Evt* script, s32 isInitialCall) {
|
||||
inflict_status(actorTo, actorFrom->koStatus, actorFrom->koDuration);
|
||||
inflict_status(actorTo, actorFrom->transparentStatus, actorFrom->transparentDuration);
|
||||
|
||||
actorFrom->status = 0;
|
||||
actorTo->status = 0;
|
||||
actorFrom->statusAfflicted = 0;
|
||||
actorTo->statusAfflicted = 0;
|
||||
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
@ -383,7 +383,7 @@ s32 calc_partner_damage_enemy(void) {
|
||||
dispatchEvent = EVENT_HIT_COMBO;
|
||||
retVal = 0;
|
||||
|
||||
if (!(targetPart->flags & ACTOR_PART_FLAG_2000) && !(gBattleStatus.flags1 & BS_FLAGS1_2000000) && !sp2C && !(targetPart->targetFlags & ACTOR_PART_FLAG_4)) {
|
||||
if (!(targetPart->flags & ACTOR_PART_FLAG_2000) && !(gBattleStatus.flags1 & BS_FLAGS1_TUTORIAL_BATTLE) && !sp2C && !(targetPart->targetFlags & ACTOR_PART_FLAG_4)) {
|
||||
target->currentHP -= damageDealt;
|
||||
|
||||
if (target->currentHP <= 0) {
|
||||
|
10
src/1AF230.c
10
src/1AF230.c
@ -117,12 +117,12 @@ s32 D_8029C890[][5] = {
|
||||
ApiStatus LoadStarPowerScript(Evt* script, s32 isInitialCall) {
|
||||
BattleStatus* battleStatus = &gBattleStatus;
|
||||
PlayerData* playerData = &gPlayerData;
|
||||
s16 selectedItemID;
|
||||
s16 starPowerIdx;
|
||||
|
||||
playerData->specialBarsFilled -= gMoveTable[battleStatus->selectedMoveID].costFP * 256;
|
||||
selectedItemID = battleStatus->selectedItemID;
|
||||
dma_copy((&D_8029C7D0[selectedItemID])->dmaStart, (&D_8029C7D0[selectedItemID])->dmaEnd,
|
||||
(&D_8029C7D0[selectedItemID])->dmaDest);
|
||||
script->varTable[0] = (s32) (&D_8029C7D0[selectedItemID])->init;
|
||||
starPowerIdx = battleStatus->moveArgument;
|
||||
dma_copy((&D_8029C7D0[starPowerIdx])->dmaStart, (&D_8029C7D0[starPowerIdx])->dmaEnd,
|
||||
(&D_8029C7D0[starPowerIdx])->dmaDest);
|
||||
script->varTable[0] = (s32) (&D_8029C7D0[starPowerIdx])->init;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
2233
src/415D90.c
2233
src/415D90.c
File diff suppressed because it is too large
Load Diff
@ -302,7 +302,7 @@ block_17:
|
||||
return;
|
||||
}
|
||||
create_popup_menu(popup);
|
||||
set_time_freeze_mode(TIME_FREEZE_PARTNER_MENU);
|
||||
set_time_freeze_mode(TIME_FREEZE_POPUP_MENU);
|
||||
if (*partnerActionState == PARTNER_ACTION_NONE) {
|
||||
set_action_state(ACTION_STATE_IDLE);
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
#include "common.h"
|
||||
#include "hud_element.h"
|
||||
#include "message_ids.h"
|
||||
|
||||
extern HudScript HES_HandPointer;
|
||||
extern HudScript HES_StatusStarPiece;
|
||||
@ -385,66 +386,66 @@ s32 popup_menu_update(void) {
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
case POPUP_MENU_USEKEY:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0x91, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
if (gPopupMenu->unk_31C == 0) {
|
||||
set_window_properties(WINDOW_ID_15, 0x19, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 145, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
if (gPopupMenu->dipMode == 0) {
|
||||
set_window_properties(WINDOW_ID_15, 25, -6, 95, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
} else {
|
||||
set_window_properties(WINDOW_ID_15, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 121, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
}
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0x8B, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 0xD, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 139, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 13, -6, 114, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW);
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0xA2, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 0x11, -6, 0x60, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 162, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 17, -6, 96, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0x92, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 0xC, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 146, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 12, -6, 114, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0xA7, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 0x16, -6, 0x5F, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 167, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 22, -6, 95, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0xAA, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 0x20, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 170, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 32, -6, 104, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0x91, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 0xC, -6, 0x79, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 145, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 121, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0x80, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 0xC, -6, 0x68, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 128, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 12, -6, 104, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0x95, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 6, -6, 0x8B, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 149, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_15, 6, -6, 139, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_SHOW);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_HIDE);
|
||||
break;
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 0x83, (D_8010D656 * 13) + 0x1A, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 0xA, -6, 0x72, 0x10, 0x15, popup_menu_draw_title_contents, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_14, posX, posY, 131, (D_8010D656 * 13) + 26, 0x14, popup_menu_draw_menu_contents, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_17, 10, -6, 114, 16, 0x15, popup_menu_draw_title_contents, NULL, WINDOW_ID_14);
|
||||
set_window_update(WINDOW_ID_15, WINDOW_UPDATE_HIDE);
|
||||
set_window_update(WINDOW_ID_17, WINDOW_UPDATE_SHOW);
|
||||
break;
|
||||
@ -452,15 +453,15 @@ s32 popup_menu_update(void) {
|
||||
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
set_window_properties(WINDOW_ID_16, 0x7E, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_16, 126, -14, 32, 32, 0x15, func_800F4C6C, NULL, WINDOW_ID_14);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
set_window_properties(WINDOW_ID_16, 0x83, -0xE, 0x20, 0x20, 0x15, func_800F4C6C, NULL, 0xE);
|
||||
set_window_properties(WINDOW_ID_16, 131, -14, 32, 32, 0x15, func_800F4C6C, NULL, WINDOW_ID_14);
|
||||
break;
|
||||
}
|
||||
|
||||
if (gPopupMenu->popupType == POPUP_MENU_TRADE_FOR_BADGE) {
|
||||
set_window_properties(WINDOW_ID_20, D_8010D688, D_8010D68A, 0x40, 0x14, 0x15, func_800F4D28, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_20, D_8010D688, D_8010D68A, 64, 20, 0x15, func_800F4D28, NULL, -1);
|
||||
}
|
||||
|
||||
do {
|
||||
@ -483,7 +484,7 @@ s32 popup_menu_update(void) {
|
||||
if (gPopupMenu->popupType >= POPUP_MENU_USE_ITEM
|
||||
&& (gPopupMenu->popupType < POPUP_MENU_READ_DIARY_PAGE || gPopupMenu->popupType == POPUP_MENU_USEKEY))
|
||||
{
|
||||
set_window_properties(WINDOW_ID_19, D_8010D680, D_8010D682, 0x118, 0x20, 0x14, func_800F48F4, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_19, D_8010D680, D_8010D682, 280, 32, 0x14, func_800F48F4, NULL, -1);
|
||||
}
|
||||
|
||||
posX = D_8010D684;
|
||||
@ -494,26 +495,26 @@ s32 popup_menu_update(void) {
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
case POPUP_MENU_USEKEY:
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 0x90, 0x20, 0x14, func_800F4944, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 144, 32, 0x14, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 0x90, 0x28, 0x14, func_800F4944, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 144, 40, 0x14, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 0x80, 0x28, 0x14, func_800F4944, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 128, 40, 0x14, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 0x88, 0x28, 0x14, func_800F4944, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 136, 40, 0x14, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 0x70, 0x28, 0x14, func_800F4944, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 112, 40, 0x14, func_800F4944, NULL, -1);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 0x78, 0x20, 0x14, func_800F4944, NULL, -1);
|
||||
set_window_properties(WINDOW_ID_21, posX, posY, 120, 32, 0x14, func_800F4944, NULL, -1);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -847,7 +848,7 @@ s32 popup_menu_update(void) {
|
||||
if (D_8010D68E) {
|
||||
set_window_update(WINDOW_ID_21, WINDOW_UPDATE_HIDE);
|
||||
}
|
||||
width = get_msg_width(0x1D006B, 0) + 23;
|
||||
width = get_msg_width(MSG_Menus_006B, 0) + 23;
|
||||
set_window_properties(WINDOW_ID_9, 160 - (width / 2), 0x50, width, 0x28, 0x14, func_800F4CF0, NULL, -1);
|
||||
set_window_update(WINDOW_ID_9, WINDOW_UPDATE_SHOW);
|
||||
D_8010D644 = 0x3C;
|
||||
@ -920,9 +921,9 @@ s32 popup_menu_update(void) {
|
||||
|
||||
D_8010D690 = MSG_PAL_0D;
|
||||
if (D_8010D699 == 1) {
|
||||
msgID = 0x1D0068;
|
||||
msgID = MSG_Menus_0068;
|
||||
} else {
|
||||
msgID = 0x1D0069;
|
||||
msgID = MSG_Menus_0069;
|
||||
}
|
||||
width = get_msg_width(msgID, 0) + 23;
|
||||
set_window_properties(WINDOW_ID_21, 160 - (width / 2), 76, width, 32, 0x13, func_800F4C1C, NULL, -1);
|
||||
@ -1197,7 +1198,7 @@ block_14:
|
||||
|
||||
}
|
||||
set_message_value(gPopupMenu->userIndex[i] + 1, 0);
|
||||
draw_msg(0x1D00CD, x + 8, var_s1_3, D_8010D650, s0, 1);
|
||||
draw_msg(MSG_Menus_00CD, x + 8, var_s1_3, D_8010D650, s0, 1);
|
||||
break;
|
||||
case 11:
|
||||
if (gPopupMenu->value[i] != 0) {
|
||||
@ -1443,48 +1444,48 @@ void popup_menu_draw_title_contents(
|
||||
{
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
switch (gPopupMenu->unk_31C) {
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
switch (gPopupMenu->dipMode) {
|
||||
case 0:
|
||||
draw_msg(0x1D003F, baseX + 26, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_Items, baseX + 26, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case 1:
|
||||
draw_msg(0x1D0041, baseX + 4, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_number(gPopupMenu->unk_320, baseX + 94, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, D_8010D650, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
draw_msg(MSG_Menus_DoubleDip, baseX + 4, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_number(gPopupMenu->titleNumber, baseX + 94, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, D_8010D650, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
draw_number(2, baseX + 114, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, D_8010D650, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
break;
|
||||
case 2:
|
||||
draw_msg(0x1D0042, baseX + 6, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_number(gPopupMenu->unk_320, baseX + 94, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, D_8010D650, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
draw_msg(MSG_Menus_TripleDip, baseX + 6, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_number(gPopupMenu->titleNumber, baseX + 94, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, D_8010D650, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
draw_number(3, baseX + 114, baseY + 2, DRAW_NUMBER_CHARSET_THIN, MSG_PAL_32, D_8010D650, DRAW_NUMBER_STYLE_MONOSPACE | DRAW_NUMBER_STYLE_ALIGN_RIGHT);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
draw_msg(0x1F0032, baseX + 27, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_MenuTip_0032, baseX + 27, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
draw_msg(0x1F0033, baseX + 23, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_MenuTip_0033, baseX + 23, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
draw_msg(0x1D00D7, baseX + 4, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_00D7, baseX + 4, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
draw_msg(0x1D00CE, baseX + 8, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_00CE, baseX + 8, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
draw_msg(0x1D00D0, baseX + 6, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_00D0, baseX + 6, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_USEKEY:
|
||||
draw_msg(0x1D003F, baseX + 27, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_Items, baseX + 27, baseY + 2, D_8010D650, MSG_PAL_32, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
draw_msg(0x1D003D, baseX + 8, baseY + 2, D_8010D650, MSG_PAL_34, DRAW_MSG_STYLE_MENU);
|
||||
draw_msg(MSG_Menus_PartyMember, baseX + 8, baseY + 2, D_8010D650, MSG_PAL_34, DRAW_MSG_STYLE_MENU);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1501,86 +1502,86 @@ void func_800F4944(s32* userData, s32 baseX, s32 baseY, s32 width, s32 height, s
|
||||
if (D_8010D68E) {
|
||||
switch (gPopupMenu->popupType) {
|
||||
case POPUP_MENU_USE_ITEM:
|
||||
msgWidth = get_msg_width(0x1D0061, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0061, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D0061, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0061, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_SWITCH_PARTNER:
|
||||
msgWidth = get_msg_width(0x1D0063, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0063, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D0063, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0063, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_THROW_AWAY_ITEM:
|
||||
msgWidth = get_msg_width(0x1D0064, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0064, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D0064, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0064, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_TRADE_FOR_BADGE:
|
||||
msgWidth = get_msg_width(0x1D0070, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0070, 0);
|
||||
baseX += 64 - (msgWidth / 2);
|
||||
draw_msg(0x1D0070, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0070, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_UPGRADE_PARTNER:
|
||||
msgWidth = get_msg_width(0x1D006A, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_006A, 0);
|
||||
baseX += 68 - (msgWidth / 2);
|
||||
draw_msg(0x1D006A, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_006A, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_SELL_ITEM:
|
||||
msgWidth = get_msg_width(0x1D0065, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0065, 0);
|
||||
baseX += 60 - (msgWidth / 2);
|
||||
draw_msg(0x1D0065, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0065, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_CHECK_ITEM:
|
||||
msgWidth = get_msg_width(0x1D0066, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0066, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D0066, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0066, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_CLAIM_ITEM:
|
||||
msgWidth = get_msg_width(0x1D0067, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0067, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D0067, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0067, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_POST_OFFICE:
|
||||
msgWidth = get_msg_width(0x1D006F, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_006F, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D006F, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_006F, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_READ_LETTER:
|
||||
msgWidth = get_msg_width(0x1D006D, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_006D, 0);
|
||||
baseX += 56 - (msgWidth / 2);
|
||||
draw_msg(0x1D006D, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_006D, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_TAKE_FROM_CHEST:
|
||||
msgWidth = get_msg_width(0x1D00D6, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_00D6, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D00D6, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_00D6, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_READ_DIARY_PAGE:
|
||||
msgWidth = get_msg_width(0x1D006C, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_006C, 0);
|
||||
baseX += 64 - (msgWidth / 2);
|
||||
draw_msg(0x1D006C, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_006C, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_READ_POSTCARD:
|
||||
msgWidth = get_msg_width(0x1D006D, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_006D, 0);
|
||||
baseX += 64 - (msgWidth / 2);
|
||||
draw_msg(0x1D006D, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_006D, baseX, baseY - 4, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
case POPUP_MENU_USEKEY:
|
||||
msgWidth = get_msg_width(0x1D0062, 0);
|
||||
msgWidth = get_msg_width(MSG_Menus_0062, 0);
|
||||
baseX += 72 - (msgWidth / 2);
|
||||
draw_msg(0x1D0062, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_0062, baseX, baseY, 255, MSG_PAL_0F, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_800F4C1C(PopupMessage* popup, s32 x, s32 y) {
|
||||
s32 msg = 0x1D0069;
|
||||
s32 msg = MSG_Menus_0069;
|
||||
s32 xPos = x + 11;
|
||||
s32 yPos = y + 8;
|
||||
|
||||
if (D_8010D699 == 1) {
|
||||
msg = 0x1D0068;
|
||||
msg = MSG_Menus_0068;
|
||||
}
|
||||
draw_msg(msg, xPos, yPos, 255, MSG_PAL_0F, 0);
|
||||
}
|
||||
@ -1611,7 +1612,7 @@ void func_800F4C6C(PopupMessage* popup, s32 x, s32 y) {
|
||||
}
|
||||
|
||||
void func_800F4CF0(PopupMessage* popup, s32 x, s32 y) {
|
||||
draw_msg(0x1D006B, x + 16, y + 2, 255, MSG_PAL_0F, 0);
|
||||
draw_msg(MSG_Menus_006B, x + 16, y + 2, 255, MSG_PAL_0F, 0);
|
||||
}
|
||||
|
||||
void func_800F4D28(PopupMessage* popup, s32 x, s32 y) {
|
||||
@ -1652,15 +1653,15 @@ void create_popup_menu(PopupMenu* popup) {
|
||||
open_status_menu_short();
|
||||
gPopupMenu = popup;
|
||||
popup->result = 0;
|
||||
popup->unk_31C = 0;
|
||||
popup->unk_320 = 0;
|
||||
popup->dipMode = 0;
|
||||
popup->titleNumber = 0;
|
||||
D_8010D699 = 0;
|
||||
D_8010D698 = 1;
|
||||
if (popup->popupType >= 100) {
|
||||
popup->popupType -= 100;
|
||||
if (popup->popupType >= POPUP_MENU_DOUBLE_DIP) {
|
||||
popup->popupType -= POPUP_MENU_DOUBLE_DIP;
|
||||
D_8010D699 = 1;
|
||||
if (popup->popupType >= 100) {
|
||||
popup->popupType -= 100;
|
||||
if (popup->popupType >= POPUP_MENU_DOUBLE_DIP) {
|
||||
popup->popupType -= POPUP_MENU_DOUBLE_DIP;
|
||||
D_8010D699 = 2;
|
||||
}
|
||||
D_8010D698 = 0;
|
||||
@ -1700,16 +1701,16 @@ void func_800F4FC4(PopupMenu* popup) {
|
||||
gPopupMenu = popup;
|
||||
|
||||
popup->result = 0;
|
||||
popup->unk_31C = 0;
|
||||
popup->unk_320 = 0;
|
||||
popup->dipMode = 0;
|
||||
popup->titleNumber = 0;
|
||||
D_8010D69A = func_800E98D4();
|
||||
D_8010D699 = 0;
|
||||
D_8010D698 = 1;
|
||||
if (gPopupMenu->popupType >= 100) {
|
||||
gPopupMenu->popupType -= 100;
|
||||
if (gPopupMenu->popupType >= POPUP_MENU_DOUBLE_DIP) {
|
||||
gPopupMenu->popupType -= POPUP_MENU_DOUBLE_DIP;
|
||||
D_8010D699 = 1;
|
||||
if (gPopupMenu->popupType >= 100) {
|
||||
gPopupMenu->popupType -= 100;
|
||||
if (gPopupMenu->popupType >= POPUP_MENU_DOUBLE_DIP) {
|
||||
gPopupMenu->popupType -= POPUP_MENU_DOUBLE_DIP;
|
||||
D_8010D699 = 2;
|
||||
}
|
||||
D_8010D698 = 0;
|
||||
@ -1745,15 +1746,15 @@ void func_800F513C(PopupMenu* popup) {
|
||||
gPopupMenu = popup;
|
||||
|
||||
popup->result = 0;
|
||||
D_8010D693 = popup->unk_320;
|
||||
D_8010D693 = popup->titleNumber;
|
||||
D_8010D69A = func_800E98D4();
|
||||
D_8010D699 = 0;
|
||||
D_8010D698 = 1;
|
||||
if (gPopupMenu->popupType >= 100) {
|
||||
gPopupMenu->popupType -= 100;
|
||||
if (gPopupMenu->popupType >= POPUP_MENU_DOUBLE_DIP) {
|
||||
gPopupMenu->popupType -= POPUP_MENU_DOUBLE_DIP;
|
||||
D_8010D699 = 1;
|
||||
if (gPopupMenu->popupType >= 100) {
|
||||
gPopupMenu->popupType -= 100;
|
||||
if (gPopupMenu->popupType >= POPUP_MENU_DOUBLE_DIP) {
|
||||
gPopupMenu->popupType -= POPUP_MENU_DOUBLE_DIP;
|
||||
D_8010D699 = 2;
|
||||
}
|
||||
D_8010D698 = 0;
|
||||
|
@ -2157,15 +2157,15 @@ ApiStatus func_8026DF88(Evt* script, s32 isInitialCall) {
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ApiStatus func_8026E020(Evt* script, s32 isInitialCall) {
|
||||
ApiStatus SetBattleMenuDisableFlags(Evt* script, s32 isInitialCall) {
|
||||
s32 flagsValue = *script->ptrReadPos;
|
||||
|
||||
gBattleStatus.menuDisableFlags = flagsValue;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ApiStatus func_8026E038(Evt* script, s32 isInitialCall) {
|
||||
gBattleStatus.unk_74 = *script->ptrReadPos;
|
||||
ApiStatus SetEnabledStarPowers(Evt* script, s32 isInitialCall) {
|
||||
gBattleStatus.enabledStarPowersMask = *script->ptrReadPos;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@ ApiStatus LoadActionCommand(Evt* script, s32 isInitialCall) {
|
||||
}
|
||||
|
||||
s32 adjust_action_command_difficulty(s32 arg0) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_80000)) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_PARTNER_ACTING)) {
|
||||
arg0 -= is_ability_active(ABILITY_DODGE_MASTER) * 3;
|
||||
}
|
||||
|
||||
@ -259,12 +259,12 @@ void action_command_init_status(void) {
|
||||
actionCommandStatus->autoSucceed = FALSE;
|
||||
actionCommandStatus->berserkerEnabled = FALSE;
|
||||
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_80000)) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_PARTNER_ACTING)) {
|
||||
if (is_ability_active(ABILITY_RIGHT_ON)) {
|
||||
actionCommandStatus->autoSucceed = TRUE;
|
||||
}
|
||||
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_80000) && is_ability_active(ABILITY_BERSERKER)) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_PARTNER_ACTING) && is_ability_active(ABILITY_BERSERKER)) {
|
||||
actionCommandStatus->showHud = FALSE;
|
||||
actionCommandStatus->berserkerEnabled = TRUE;
|
||||
|
||||
@ -548,7 +548,7 @@ s32 check_block_input(s32 buttonMask) {
|
||||
|
||||
battleStatus->blockResult = 0; // Fail
|
||||
|
||||
if (battleStatus->actionCommandMode == ACTION_COMMAND_MODE_TUTORIAL_BLOCK && (battleStatus->flags1 & BS_FLAGS1_2000000)) {
|
||||
if (battleStatus->actionCommandMode == ACTION_COMMAND_MODE_TUTORIAL_BLOCK && (battleStatus->flags1 & BS_FLAGS1_TUTORIAL_BATTLE)) {
|
||||
battleStatus->blockResult = 1;
|
||||
return TRUE;
|
||||
}
|
||||
@ -568,7 +568,7 @@ s32 check_block_input(s32 buttonMask) {
|
||||
blockWindow = 3;
|
||||
mashWindow = 10;
|
||||
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_80000) && is_ability_active(ABILITY_DODGE_MASTER)) {
|
||||
if (!(gBattleStatus.flags1 & BS_FLAGS1_PARTNER_ACTING) && is_ability_active(ABILITY_DODGE_MASTER)) {
|
||||
blockWindow = 5;
|
||||
}
|
||||
|
||||
|
@ -279,7 +279,7 @@ EvtScript N(80224414) = {
|
||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C)
|
||||
EVT_CALL(MoveBattleCamOver, 25)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_DMG_APPLY, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(func_8026F60C, 20)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
|
@ -341,7 +341,7 @@ EvtScript N(takeTurn_80219750) = {
|
||||
EVT_CALL(GetActorVar, ACTOR_SELF, 2, LVar0)
|
||||
EVT_KILL_THREAD(LVar0)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_DMG_APPLY, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(func_8026F60C, 10)
|
||||
EVT_RETURN
|
||||
EVT_END_IF
|
||||
|
@ -213,7 +213,7 @@ EvtScript N(takeTurn) = {
|
||||
EVT_CALL(GetActorVar, ACTOR_SELF, 2, LVar0)
|
||||
EVT_KILL_THREAD(LVar0)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_DMG_APPLY, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(func_8026F60C, 10)
|
||||
EVT_RETURN
|
||||
EVT_END_IF
|
||||
|
@ -12,7 +12,7 @@ ApiStatus func_80218644_6DE404(Evt* script, s32 isInitialCall) {
|
||||
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_SMASH;
|
||||
battleStatus->selectedMoveID = MOVE_HAMMER1;
|
||||
battleStatus->selectedItemID = gCurrentEncounter.hitTier;
|
||||
battleStatus->moveArgument = gCurrentEncounter.hitTier;
|
||||
battleStatus->currentTargetListFlags = gMoveTable[MOVE_HAMMER1].flags;
|
||||
|
||||
player_create_target_list(player);
|
||||
|
@ -10,7 +10,7 @@ ApiStatus func_802186E0_6DE4A0(Evt* script, s32 isInitialCall) {
|
||||
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_JUMP;
|
||||
battleStatus->selectedMoveID = MOVE_POWER_BOUNCE;
|
||||
battleStatus->selectedItemID = gCurrentEncounter.hitTier;
|
||||
battleStatus->moveArgument = gCurrentEncounter.hitTier;
|
||||
battleStatus->currentTargetListFlags = gMoveTable[MOVE_POWER_BOUNCE].flags;
|
||||
|
||||
player_create_target_list(player);
|
||||
|
@ -8,8 +8,8 @@ ApiStatus func_80218770_6DE530(Evt* script, s32 isInitialCall) {
|
||||
Actor* partner = battleStatus->partnerActor;
|
||||
SelectableTarget* selectableTarget;
|
||||
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_6;
|
||||
battleStatus->selectedItemID = 0;
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_ABILITY;
|
||||
battleStatus->moveArgument = 0;
|
||||
battleStatus->selectedMoveID = MOVE_SHELL_SHOT;
|
||||
battleStatus->currentTargetListFlags = gMoveTable[MOVE_SHELL_SHOT].flags;
|
||||
|
||||
|
@ -10,9 +10,9 @@ ApiStatus func_802187F0_6DE5B0(Evt* script, s32 isInitialCall) {
|
||||
Actor* player = battleStatus->playerActor;
|
||||
SelectableTarget* selectableTarget;
|
||||
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_ITEM;
|
||||
battleStatus->selectedItemID = ITEM_THUNDER_RAGE;
|
||||
selectedItemID = battleStatus->selectedItemID;
|
||||
battleStatus->moveCategory = BTL_MENU_TYPE_ITEMS;
|
||||
battleStatus->moveArgument = ITEM_THUNDER_RAGE;
|
||||
selectedItemID = battleStatus->moveArgument;
|
||||
battleStatus->selectedMoveID = 0;
|
||||
battleStatus->currentAttackElement = 0;
|
||||
playerData->invItems[0] = selectedItemID;
|
||||
|
@ -42,8 +42,8 @@ Stage NAMESPACE = {
|
||||
.preBattle = &N(beforeBattle),
|
||||
.postBattle = &N(afterBattle),
|
||||
.foregroundModelList = N(foregroundModelList),
|
||||
.specialFormationSize = 4,
|
||||
.specialFormation = &N(formation_slot_machine),
|
||||
.stageEnemyCount = 4,
|
||||
.stageFormation = &N(formation_slot_machine),
|
||||
};
|
||||
|
||||
Vec3i N(slot_machine_pos1) = { -49, 56, -68 };
|
||||
|
@ -352,7 +352,7 @@ EvtScript N(flee) = {
|
||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 0)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
||||
EVT_CALL(RemoveActor, ACTOR_SELF)
|
||||
EVT_RETURN
|
||||
|
@ -345,7 +345,7 @@ EvtScript N(flee) = {
|
||||
EVT_CALL(SetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 0)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
||||
EVT_CALL(RemoveActor, ACTOR_SELF)
|
||||
EVT_RETURN
|
||||
|
@ -4,6 +4,7 @@
|
||||
#include "battle/action_cmd/jump.h"
|
||||
#include "battle/action_cmd.h"
|
||||
#include "sprite/npc/BattleGoombario.h"
|
||||
#include "sprite/npc/Twink.h"
|
||||
|
||||
#define NAMESPACE b_area_hos_goombario_tutor
|
||||
|
||||
@ -99,7 +100,7 @@ EvtScript N(init_80219160) = {
|
||||
EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn_80219444)))
|
||||
EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle_802191D0)))
|
||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent_802191E0)))
|
||||
EVT_CALL(SetActorVar, -127, 0, 1)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1)
|
||||
EVT_EXEC(N(80219C74))
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
@ -283,7 +284,7 @@ ApiStatus func_80218000_47F0B0(Evt* script, s32 isInitialCall) {
|
||||
}
|
||||
|
||||
EvtScript N(80219C74) = {
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_2000000, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_TUTORIAL_BATTLE, 1)
|
||||
EVT_CALL(func_802535B4, 0)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MENU)
|
||||
EVT_WAIT(15)
|
||||
@ -294,9 +295,9 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2)
|
||||
EVT_CALL(JumpToGoal, ACTOR_PARTNER, 10, FALSE, FALSE, FALSE)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0019, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0019, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(func_8026E020, 1)
|
||||
EVT_CALL(SetBattleMenuDisableFlags, BTL_MENU_DISABLED_JUMP)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MOVE)
|
||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C)
|
||||
@ -304,7 +305,7 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(SetGoalPos, ACTOR_PARTNER, -73, 40, 202)
|
||||
EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 20, 10)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001A, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001A, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_LEARNED)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0)
|
||||
@ -320,7 +321,7 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 20, 10)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_0)
|
||||
EVT_CALL(SetBattleFlagBits2, 512, 1)
|
||||
EVT_CALL(SetBattleFlagBits2, BS_FLAGS2_200, 1)
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(GetActionCommandMode, LVar0)
|
||||
EVT_IF_NE(LVar0, ACTION_COMMAND_MODE_TUTORIAL)
|
||||
@ -329,22 +330,22 @@ EvtScript N(80219C74) = {
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001B, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001B, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(CheckButtonDown, 32768, LVar0)
|
||||
EVT_CALL(CheckButtonDown, BUTTON_A, LVar0)
|
||||
EVT_IF_EQ(LVar0, 0)
|
||||
EVT_BREAK_LOOP
|
||||
EVT_END_IF
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(CheckButtonPress, 32768, LVar0)
|
||||
EVT_CALL(CheckButtonPress, BUTTON_A, LVar0)
|
||||
EVT_IF_EQ(LVar0, 1)
|
||||
EVT_BREAK_LOOP
|
||||
EVT_END_IF
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(EndActorSpeech, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(EndActorSpeech, 256, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActionSuccess, 1)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_LEARNED)
|
||||
@ -352,13 +353,13 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C)
|
||||
EVT_WAIT(15)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001D, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001D, 256, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_9)
|
||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C)
|
||||
EVT_WAIT(15)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001E, 512, 1, 589839, 589825)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001E, BS_FLAGS2_200, 1, ANIM_BattleGoombario_Talk, ANIM_BattleGoombario_Idle)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_0)
|
||||
@ -370,22 +371,22 @@ EvtScript N(80219C74) = {
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001F, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_001F, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(CheckButtonDown, 32768, LVar0)
|
||||
EVT_CALL(CheckButtonDown, BUTTON_A, LVar0)
|
||||
EVT_IF_EQ(LVar0, 0)
|
||||
EVT_BREAK_LOOP
|
||||
EVT_END_IF
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(CheckButtonPress, 32768, LVar0)
|
||||
EVT_CALL(CheckButtonPress, BUTTON_A, LVar0)
|
||||
EVT_IF_EQ(LVar0, 1)
|
||||
EVT_BREAK_LOOP
|
||||
EVT_END_IF
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(EndActorSpeech, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(EndActorSpeech, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActionSuccess, 1)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL_BLOCK)
|
||||
@ -394,14 +395,14 @@ EvtScript N(80219C74) = {
|
||||
EVT_WAIT(15)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_LEARNED)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0020, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0020, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MENU)
|
||||
EVT_CALL(func_8026E020, 2)
|
||||
EVT_CALL(SetBattleMenuDisableFlags, BTL_MENU_DISABLED_SMASH)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MOVE)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0022, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0022, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(CheckButtonDown, 262144, LVar0)
|
||||
EVT_IF_EQ(LVar0, 0)
|
||||
@ -416,7 +417,7 @@ EvtScript N(80219C74) = {
|
||||
EVT_END_IF
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(EndActorSpeech, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(EndActorSpeech, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_LEARNED)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_0)
|
||||
@ -432,7 +433,7 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL_BLOCK)
|
||||
EVT_CALL(PauseTakeTurn, 0)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0023, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0023, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(CheckButtonPress, 262144, LVar0)
|
||||
EVT_IF_EQ(LVar0, 1)
|
||||
@ -440,7 +441,7 @@ EvtScript N(80219C74) = {
|
||||
EVT_END_IF
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(EndActorSpeech, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(EndActorSpeech, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL)
|
||||
EVT_CALL(ResumeTakeTurn, 0)
|
||||
@ -455,7 +456,7 @@ EvtScript N(80219C74) = {
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0024, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0024, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(CheckButtonDown, 262144, LVar0)
|
||||
EVT_IF_EQ(LVar0, 0)
|
||||
@ -463,7 +464,7 @@ EvtScript N(80219C74) = {
|
||||
EVT_END_IF
|
||||
EVT_WAIT(1)
|
||||
EVT_END_LOOP
|
||||
EVT_CALL(EndActorSpeech, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(EndActorSpeech, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActionSuccess, 1)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_LEARNED)
|
||||
@ -471,24 +472,24 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C)
|
||||
EVT_WAIT(15)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0025, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0025, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_ENEMY0, ACTOR_FLAG_NO_ATTACK, 1)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_0)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MENU)
|
||||
EVT_CALL(ShowBattleChoice, 1966109)
|
||||
EVT_CALL(EndActorSpeech, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ShowBattleChoice, MSG_Choice_001D)
|
||||
EVT_CALL(EndActorSpeech, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_IF_EQ(LVar0, 1)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0027, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0027, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_GOTO(100)
|
||||
EVT_END_IF
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0028, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0028, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetActorVar, -127, 0, 0)
|
||||
EVT_CALL(SetBattleFlagBits2, 512, 0)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0)
|
||||
EVT_CALL(SetBattleFlagBits2, BS_FLAGS2_200, 0)
|
||||
EVT_LABEL(10)
|
||||
EVT_CALL(func_8026E020, 131)
|
||||
EVT_CALL(SetBattleMenuDisableFlags, BTL_MENU_DISABLED_JUMP | BTL_MENU_DISABLED_SMASH | BTL_MENU_DISABLED_STRATEGIES)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_TUTORIAL)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MOVE)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
@ -501,14 +502,14 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(func_80269524, LVar0)
|
||||
EVT_SWITCH(LVar0)
|
||||
EVT_CASE_EQ(-1)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002A, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002A, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CASE_EQ(0)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002B, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002B, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CASE_EQ(1)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0029, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0029, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_END_SWITCH
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(SetEnemyHP, 512, 99)
|
||||
EVT_CALL(SetEnemyHP, ACTOR_ENEMY0, 99)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_ENEMY0, ACTOR_FLAG_NO_ATTACK, 0)
|
||||
EVT_CALL(SetActionCommandMode, ACTION_COMMAND_MODE_LEARNED)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_END_TURN)
|
||||
@ -516,18 +517,18 @@ EvtScript N(80219C74) = {
|
||||
EVT_CALL(GetBlockResult, LVar0)
|
||||
EVT_SWITCH(LVar0)
|
||||
EVT_CASE_EQ(-1)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002A, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002A, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CASE_EQ(0)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002B, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002B, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_CASE_EQ(1)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0029, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_0029, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_END_SWITCH
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MENU)
|
||||
EVT_GOTO(10)
|
||||
EVT_LABEL(99)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002C, 256, 1, 2097161, 2097157)
|
||||
EVT_CALL(ActorSpeak, MSG_HOS_002C, ACTOR_PARTNER, 1, ANIM_Twink_Talk, ANIM_Twink_Fly)
|
||||
EVT_LABEL(100)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_0)
|
||||
EVT_CALL(SetBattleState, 30)
|
||||
|
@ -219,17 +219,17 @@ EvtScript N(idle_8021D774) = {
|
||||
|
||||
EvtScript N(8021D784) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_200 | BS_FLAGS1_40)
|
||||
EVT_CALL(SetActorVar, -127, 2, 1)
|
||||
EVT_END_IF
|
||||
EVT_ELSE
|
||||
EVT_CALL(N(GetSelectedMoveID), LVar0)
|
||||
EVT_SWITCH(LVar0)
|
||||
EVT_CASE_OR_EQ(131)
|
||||
EVT_CASE_OR_EQ(132)
|
||||
EVT_CASE_OR_EQ(133)
|
||||
EVT_CASE_OR_EQ(136)
|
||||
EVT_CASE_OR_EQ(MOVE_HEADBONK1)
|
||||
EVT_CASE_OR_EQ(MOVE_HEADBONK2)
|
||||
EVT_CASE_OR_EQ(MOVE_HEADBONK3)
|
||||
EVT_CASE_OR_EQ(MOVE_MULTIBONK)
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_200 | BS_FLAGS1_40)
|
||||
EVT_CALL(SetActorVar, -127, 2, 1)
|
||||
|
@ -405,7 +405,7 @@ EvtScript N(handleEvent_80219050) = {
|
||||
EVT_END_CASE_GROUP
|
||||
EVT_CASE_EQ(EVENT_SPIKE_TAUNT)
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(AfflictActor, 0, 9, 3)
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
||||
|
@ -33,9 +33,9 @@ Stage NAMESPACE = {
|
||||
.preBattle = &N(beforeBattle_80220860),
|
||||
.postBattle = &N(afterBattle_80220894),
|
||||
.foregroundModelList = N(foregroundModelList_802208A4),
|
||||
.specialFormationSize = 1,
|
||||
.specialFormation = &N(specialFormation_802208E4),
|
||||
.unk_24 = 0x200,
|
||||
.stageEnemyCount = 1,
|
||||
.stageFormation = &N(specialFormation_802208E4),
|
||||
.stageEnemyChance = 512,
|
||||
};
|
||||
|
||||
Vec3i N(vector3D_802208D8) = { 116, 0, -30 };
|
||||
|
@ -519,14 +519,14 @@ EvtScript N(onDeath) = {
|
||||
EVT_CALL(AddActorDecoration, ACTOR_SELF, 1, 0, 3)
|
||||
EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleKammy_Anim03)
|
||||
EVT_WAIT(50)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_DMG_APPLY, 1)
|
||||
EVT_CALL(ActorSpeak, MSG_CH8_009B, ACTOR_SELF, 1, ANIM_BattleKammy_Anim03, ANIM_BattleKammy_Anim03)
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C)
|
||||
EVT_CALL(MoveBattleCamOver, 60)
|
||||
EVT_WAIT(40)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_100000, 0)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_PLAYER_IN_BACK, 0)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
|
@ -340,7 +340,7 @@ EvtScript N(802250E4) = {
|
||||
EVT_IF_EQ(LVar0, 0)
|
||||
EVT_CALL(GetLastDamage, -127, LVar1)
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_NOT_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_NE(LVar1, 0)
|
||||
EVT_CALL(SetActorVar, -127, 1, 1)
|
||||
EVT_CALL(GetStatusFlags, ACTOR_SELF, LVar0)
|
||||
|
@ -206,9 +206,9 @@ EvtScript N(8022C6D4) = {
|
||||
EVT_RETURN
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
EVT_IF_EQ(LVar2, 183)
|
||||
EVT_IF_EQ(LVar2, MOVE_SPOOK)
|
||||
EVT_CALL(SetActorVar, -127, 1, 1)
|
||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_263)
|
||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
||||
|
@ -137,9 +137,9 @@ EvtScript N(8022A750) = {
|
||||
EVT_RETURN
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
EVT_IF_EQ(LVar2, 183)
|
||||
EVT_IF_EQ(LVar2, MOVE_SPOOK)
|
||||
EVT_CALL(SetActorVar, -127, 3, 1)
|
||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_263)
|
||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
||||
|
@ -123,9 +123,9 @@ EvtScript N(80225F7C) = {
|
||||
EVT_RETURN
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
EVT_IF_EQ(LVar2, 183)
|
||||
EVT_IF_EQ(LVar2, MOVE_SPOOK)
|
||||
EVT_CALL(SetActorVar, -127, 1, 1)
|
||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_263)
|
||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
||||
|
@ -117,9 +117,9 @@ EvtScript N(80228084) = {
|
||||
EVT_RETURN
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
EVT_IF_EQ(LVar2, 183)
|
||||
EVT_IF_EQ(LVar2, MOVE_SPOOK)
|
||||
EVT_CALL(SetActorVar, -127, 2, 1)
|
||||
EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_263)
|
||||
EVT_CALL(GetActorPos, ACTOR_SELF, LVar0, LVar1, LVar2)
|
||||
|
@ -161,7 +161,7 @@ ActorBlueprint NAMESPACE = {
|
||||
|
||||
EvtScript N(init) = {
|
||||
EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVar0)
|
||||
EVT_CALL(func_8027D75C, ACTOR_SELF, LVar1)
|
||||
EVT_CALL(GetInstigatorValue, ACTOR_SELF, LVar1)
|
||||
EVT_IF_EQ(LVar0, 1)
|
||||
EVT_IF_EQ(LVar1, 1)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_STATE), N(STATE_SPIKY))
|
||||
|
@ -154,7 +154,7 @@ EvtScript N(init) = {
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_TURN_COUNTER), 0)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_PEACH_SPOKE), 0)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 14, 0)
|
||||
EVT_CALL(func_8026E020, 1)
|
||||
EVT_CALL(SetBattleMenuDisableFlags, BTL_MENU_DISABLED_JUMP)
|
||||
EVT_CALL(CreateNpc, 0, ANIM_ParadePeach_IdleRaisedArms)
|
||||
EVT_CALL(SetNpcYaw, 0, 90)
|
||||
EVT_CALL(SetNpcPos, 0, -130, 0, -12)
|
||||
|
@ -352,7 +352,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CALL(MoveBattleCamOver, 30)
|
||||
EVT_CALL(GetActorHP, ACTOR_SELF, GB_FinalBowserHP)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_DMG_APPLY, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(func_8026F60C, 20)
|
||||
EVT_RETURN
|
||||
EVT_CASE_EQ(20)
|
||||
|
@ -441,7 +441,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_EXEC_WAIT(N(onImmune))
|
||||
EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleBowser_Idle)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_DMG_APPLY, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(func_8026F60C, 10)
|
||||
EVT_RETURN
|
||||
EVT_CASE_EQ(EVENT_PEACH_BEAM)
|
||||
@ -639,7 +639,7 @@ EvtScript N(onDeath) = {
|
||||
EVT_END_IF
|
||||
EVT_CALL(ActorSpeak, MSG_CH8_00A9, ACTOR_SELF, 1, ANIM_BattleBowser_DefeatedTalk, ANIM_BattleBowser_DefeatedIdle)
|
||||
EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_DMG_APPLY, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_DISABLE_CELEBRATION | BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(func_8026F60C, 20)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
|
@ -131,7 +131,7 @@ EvtScript N(init_802275D4) = {
|
||||
EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent_80227ABC)))
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 2, 1)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 3, 0)
|
||||
EVT_CALL(func_8027D75C, ACTOR_SELF, LVar0)
|
||||
EVT_CALL(GetInstigatorValue, ACTOR_SELF, LVar0)
|
||||
EVT_IF_NE(LVar0, 0)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 2, 0)
|
||||
EVT_CALL(SetIdleAnimations, ACTOR_SELF, 1, EVT_PTR(N(idleAnimations_8022744C)))
|
||||
|
@ -42,8 +42,8 @@ Stage NAMESPACE = {
|
||||
.preBattle = &N(beforeBattle),
|
||||
.postBattle = &N(afterBattle),
|
||||
.foregroundModelList = N(foregroundModelList),
|
||||
.specialFormationSize = 4,
|
||||
.specialFormation = &N(fromation_slot_machine),
|
||||
.stageEnemyCount = 4,
|
||||
.stageFormation = &N(fromation_slot_machine),
|
||||
};
|
||||
|
||||
Vec3i N(slot_machine_pos1) = { -49, 56, -68 };
|
||||
|
@ -901,7 +901,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_OR_EQ(EVENT_SPIKE_TAUNT)
|
||||
EVT_CASE_OR_EQ(EVENT_AIR_LIFT_FAILED)
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
EVT_IF_EQ(LVar2, MOVE_SPOOK)
|
||||
EVT_SET(LVar1, ANIM_ShySquadGuy_Anim01)
|
||||
|
@ -488,11 +488,11 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_OR_EQ(EVENT_SPIN_SMASH_HIT)
|
||||
EVT_CASE_OR_EQ(EVENT_SPIN_SMASH_LAUNCH_HIT)
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
EVT_IF_EQ(LVar2, 183)
|
||||
EVT_IF_EQ(LVar2, MOVE_SPOOK)
|
||||
EVT_SET(LVar0, 2)
|
||||
EVT_SET(LVar1, 7340033)
|
||||
EVT_SET(LVar1, ANIM_StiltGuy_Anim01)
|
||||
EVT_EXEC_WAIT(DoImmune)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 1, 0)
|
||||
@ -599,7 +599,7 @@ EvtScript N(handleEvent) = {
|
||||
|
||||
EvtScript N(check_fall_off) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_40 | BS_FLAGS1_200)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 1, 1)
|
||||
EVT_END_IF
|
||||
@ -623,7 +623,7 @@ EvtScript N(check_fall_off) = {
|
||||
|
||||
EvtScript N(check_fall_off_2) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVarF, DAMAGE_TYPE_JUMP)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_40 | BS_FLAGS1_200)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 1, 1)
|
||||
|
@ -817,9 +817,9 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_OR_EQ(EVENT_IMMUNE)
|
||||
EVT_CASE_OR_EQ(EVENT_SPIKE_TAUNT)
|
||||
EVT_CALL(GetBattleFlags, LVar2)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar2, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2)
|
||||
EVT_IF_EQ(LVar2, 183)
|
||||
EVT_IF_EQ(LVar2, MOVE_SPOOK)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
||||
EVT_RETURN
|
||||
EVT_END_IF
|
||||
|
@ -42,8 +42,8 @@ Stage NAMESPACE = {
|
||||
.preBattle = &N(beforeBattle),
|
||||
.postBattle = &N(afterBattle),
|
||||
.foregroundModelList = N(foregroundModelList),
|
||||
.specialFormationSize = 4,
|
||||
.specialFormation = &N(fromation_slot_machine),
|
||||
.stageEnemyCount = 4,
|
||||
.stageFormation = &N(fromation_slot_machine),
|
||||
};
|
||||
|
||||
Vec3i N(slot_machine_pos1) = { -49, 56, -68 };
|
||||
|
@ -2728,7 +2728,7 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_SWITCH(LVar0)
|
||||
EVT_CASE_EQ(EVENT_HIT_COMBO)
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_BITWISE_OR_CONST(LVar0, 0x80)
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
@ -2752,7 +2752,7 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_EXEC_WAIT(N(802235E0))
|
||||
EVT_CASE_EQ(EVENT_HIT)
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_BITWISE_OR_CONST(LVar0, 0x80)
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
@ -2771,8 +2771,8 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_IF_FLAG(LVar0, 0x00000040)
|
||||
EVT_IF_FLAG(LVar0, 0x00000080)
|
||||
EVT_IF_FLAG(LVar0, 0x40)
|
||||
EVT_IF_FLAG(LVar0, 0x80)
|
||||
EVT_EXEC_WAIT(N(80223718))
|
||||
EVT_WAIT(20)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
||||
@ -2787,10 +2787,10 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_EXEC_WAIT(N(802235E0))
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_IF_FLAG(LVar0, 0x00000010)
|
||||
EVT_IF_NOT_FLAG(LVar0, 0x00000020)
|
||||
EVT_IF_FLAG(LVar0, 0x10)
|
||||
EVT_IF_NOT_FLAG(LVar0, 0x20)
|
||||
EVT_CALL(GetActorVar, ACTOR_SELF, 4, LVar0)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0109, LVar0, 1, -00001, -00001)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0109, LVar0, 1, -1, -1)
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_BITWISE_OR_CONST(LVar0, 0x20)
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
@ -2799,7 +2799,7 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_END_IF
|
||||
EVT_CASE_EQ(EVENT_BURN_HIT)
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_BITWISE_OR_CONST(LVar0, 0x80)
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
@ -2818,8 +2818,8 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_IF_FLAG(LVar0, 0x00000040)
|
||||
EVT_IF_FLAG(LVar0, 0x00000080)
|
||||
EVT_IF_FLAG(LVar0, 0x40)
|
||||
EVT_IF_FLAG(LVar0, 0x80)
|
||||
EVT_EXEC_WAIT(N(80223718))
|
||||
EVT_WAIT(20)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_SELF, TRUE)
|
||||
@ -2834,10 +2834,10 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_EXEC_WAIT(N(802235E0))
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_IF_FLAG(LVar0, 0x00000010)
|
||||
EVT_IF_NOT_FLAG(LVar0, 0x00000020)
|
||||
EVT_IF_FLAG(LVar0, 0x10)
|
||||
EVT_IF_NOT_FLAG(LVar0, 0x20)
|
||||
EVT_CALL(GetActorVar, ACTOR_SELF, 4, LVar0)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0109, LVar0, 1, -00001, -00001)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0109, LVar0, 1, -1, -1)
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_BITWISE_OR_CONST(LVar0, 0x20)
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
@ -2858,7 +2858,7 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_END_IF
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_IF_FLAG(LVar0, 0x00000040)
|
||||
EVT_IF_FLAG(LVar0, 0x40)
|
||||
EVT_IF_FLAG(LVar0, 0x00000080)
|
||||
EVT_EXEC_WAIT(N(80223718))
|
||||
EVT_WAIT(20)
|
||||
@ -2869,10 +2869,10 @@ EvtScript N(handleEvent_802242FC) = {
|
||||
EVT_SET(LVarA, 4)
|
||||
EVT_EXEC_WAIT(N(80223870))
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_IF_FLAG(LVar0, 0x00000010)
|
||||
EVT_IF_NOT_FLAG(LVar0, 0x00000020)
|
||||
EVT_IF_FLAG(LVar0, 0x10)
|
||||
EVT_IF_NOT_FLAG(LVar0, 0x20)
|
||||
EVT_CALL(GetActorVar, ACTOR_SELF, 4, LVar0)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0109, LVar0, 1, -00001, -00001)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0109, LVar0, 1, -1, -1)
|
||||
EVT_CALL(GetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
EVT_BITWISE_OR_CONST(LVar0, 0x20)
|
||||
EVT_CALL(SetActorVar, ACTOR_ENEMY4, 0, LVar0)
|
||||
|
@ -137,8 +137,8 @@ ApiStatus func_80218130_4CF2E0(Evt* script, s32 isInitialCall) {
|
||||
ApiStatus func_80218158_4CF308(Evt* script, s32 isInitialCall) {
|
||||
BattleStatus* battleStatus = &gBattleStatus;
|
||||
|
||||
battleStatus->unk_4C[0] = 0;
|
||||
battleStatus->unk_5C[0] = 0;
|
||||
battleStatus->lastPlayerMenuSelection[BTL_MENU_IDX_MAIN] = 0;
|
||||
battleStatus->lastPartnerMenuSelection[BTL_MENU_IDX_MAIN] = 0;
|
||||
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
@ -150,7 +150,7 @@ ApiStatus func_80218170_4CF320(Evt* script, s32 isInitialCall) {
|
||||
script->functionTemp[0] = 10;
|
||||
}
|
||||
|
||||
battleStatus->flags2 &= ~0x2;
|
||||
battleStatus->flags2 &= ~BS_FLAGS2_2;
|
||||
|
||||
if (script->functionTemp[0] != 0) {
|
||||
script->functionTemp[0]--;
|
||||
@ -167,7 +167,7 @@ ApiStatus func_802181B4_4CF364(Evt* script, s32 isInitialCall) {
|
||||
script->functionTemp[0] = 10;
|
||||
}
|
||||
|
||||
battleStatus->flags2 &= ~0x4;
|
||||
battleStatus->flags2 &= ~BS_FLAGS2_4;
|
||||
|
||||
if (script->functionTemp[0] != 0) {
|
||||
script->functionTemp[0]--;
|
||||
@ -202,7 +202,7 @@ EvtScript N(takeTurn_80218414) = {
|
||||
};
|
||||
|
||||
EvtScript N(80218424) = {
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_2000000, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_TUTORIAL_BATTLE, 1)
|
||||
EVT_CALL(func_80218158_4CF308)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MENU)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10002)
|
||||
@ -214,7 +214,7 @@ EvtScript N(80218424) = {
|
||||
EVT_CALL(SetGoalPos, ACTOR_SELF, -110, 100, 0)
|
||||
EVT_CALL(FlyToGoal, ACTOR_SELF, 20, 0, 10)
|
||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 0)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, 0x01002A)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_1002A)
|
||||
EVT_END_THREAD
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(func_802180C8_4CF278)
|
||||
@ -227,15 +227,15 @@ EvtScript N(80218424) = {
|
||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 0)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0115, ACTOR_SELF, 1, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle)
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, 0x01002A)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_1002A)
|
||||
EVT_CALL(func_802180C8_4CF278)
|
||||
EVT_WAIT(120)
|
||||
EVT_CALL(func_802180E8_4CF298)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10002)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0116, ACTOR_SELF, 1, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle)
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(func_8026E020, 256)
|
||||
EVT_CALL(func_8026E038, 2)
|
||||
EVT_CALL(SetBattleMenuDisableFlags, BTL_MENU_DISABLED_STAR_POWERS)
|
||||
EVT_CALL(SetEnabledStarPowers, 1 << STAR_POWER_INDEX(MOVE_REFRESH))
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MOVE)
|
||||
EVT_SET(LVar0, 255)
|
||||
EVT_LOOP(10)
|
||||
@ -266,7 +266,7 @@ EvtScript N(80218424) = {
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_0117, ACTOR_SELF, 1, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle)
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, FALSE)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, 0x01002A)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_1002A)
|
||||
EVT_CALL(func_802180C8_4CF278)
|
||||
EVT_WAIT(120)
|
||||
EVT_CALL(func_802180E8_4CF298)
|
||||
@ -284,10 +284,10 @@ EvtScript N(80218424) = {
|
||||
EVT_CALL(SetGoalPos, ACTOR_SELF, -110, 100, 0)
|
||||
EVT_CALL(FlyToGoal, ACTOR_SELF, 20, 0, 10)
|
||||
EVT_CALL(EnableActorBlur, ACTOR_SELF, 0)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, 0x01002A)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_1002A)
|
||||
EVT_END_THREAD
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, 0x01002A)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_1002A)
|
||||
EVT_CALL(func_802180C8_4CF278)
|
||||
EVT_WAIT(120)
|
||||
EVT_CALL(func_802180E8_4CF298)
|
||||
@ -301,8 +301,8 @@ EvtScript N(80218424) = {
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_011B, ACTOR_SELF, 1, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle)
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(func_8026E020, 256)
|
||||
EVT_CALL(func_8026E038, 1)
|
||||
EVT_CALL(SetBattleMenuDisableFlags, BTL_MENU_DISABLED_STAR_POWERS)
|
||||
EVT_CALL(SetEnabledStarPowers, 1 << STAR_POWER_INDEX(MOVE_FOCUS))
|
||||
EVT_CALL(func_80218158_4CF308)
|
||||
EVT_CALL(WaitForState, BATTLE_STATE_PLAYER_MOVE)
|
||||
EVT_SET(LVar0, 255)
|
||||
@ -334,7 +334,7 @@ EvtScript N(80218424) = {
|
||||
EVT_CALL(ActorSpeak, MSG_CH1_011C, ACTOR_SELF, 1, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle)
|
||||
EVT_WAIT(10)
|
||||
EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, FALSE)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, 0x01002A)
|
||||
EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_1002A)
|
||||
EVT_CALL(func_802180C8_4CF278)
|
||||
EVT_WAIT(120)
|
||||
EVT_CALL(func_802180E8_4CF298)
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include "sprite.h"
|
||||
|
||||
extern s32 D_800DC060;
|
||||
extern StageListRow* D_800DC064;
|
||||
extern StageListRow* gCurrentStagePtr;
|
||||
|
||||
BattleArea gBattleAreas[] = {
|
||||
[BTL_AREA_KMR_PART_1] = {
|
||||
@ -281,16 +281,16 @@ void reset_battle_status(void) {
|
||||
gBattleState = BATTLE_STATE_0;
|
||||
D_800DC4E0 = 1;
|
||||
gBattleSubState = BTL_SUBSTATE_INIT;
|
||||
D_800DC4D0 = BATTLE_STATE_0;
|
||||
gLastDrawBattleState = BATTLE_STATE_0;
|
||||
D_800DC4F0 = 0;
|
||||
D_800DC4D4 = 0;
|
||||
D_800DC4FC = NULL;
|
||||
gCurrentBattlePtr = NULL;
|
||||
D_800DC4F8 = 0;
|
||||
gCurrentBattleID = 0;
|
||||
D_800DC064 = NULL;
|
||||
gCurrentStagePtr = NULL;
|
||||
D_800DC060 = 0;
|
||||
D_800DC4EC = 0;
|
||||
D_800DC4F4 = NULL;
|
||||
gCurrentStageID = 0;
|
||||
gOverrideBattlePtr = NULL;
|
||||
}
|
||||
|
||||
void ALT_reset_battle_status(void) {
|
||||
@ -307,32 +307,32 @@ void load_battle_section(void) {
|
||||
|
||||
dma_copy(battleArea->dmaStart, battleArea->dmaEnd, battleArea->dmaDest);
|
||||
|
||||
D_800DC4FC = &(*battleArea->battles)[battleIdx];
|
||||
gCurrentBattlePtr = &(*battleArea->battles)[battleIdx];
|
||||
|
||||
if (D_800DC4EC < 0) {
|
||||
D_800DC064 = NULL;
|
||||
if (gCurrentStageID < 0) {
|
||||
gCurrentStagePtr = NULL;
|
||||
} else {
|
||||
D_800DC064 = &(*battleArea->stages)[D_800DC4EC];
|
||||
gCurrentStagePtr = &(*battleArea->stages)[gCurrentStageID];
|
||||
}
|
||||
|
||||
btl_set_state(BATTLE_STATE_NORMAL_START);
|
||||
D_800DC4D0 = BATTLE_STATE_0;
|
||||
gLastDrawBattleState = BATTLE_STATE_0;
|
||||
}
|
||||
|
||||
void load_battle(s32 battleID) {
|
||||
gCurrentBattleID = battleID;
|
||||
set_game_mode(GAME_MODE_BATTLE);
|
||||
gBattleState = BATTLE_STATE_0;
|
||||
D_800DC4D0 = BATTLE_STATE_0;
|
||||
gLastDrawBattleState = BATTLE_STATE_0;
|
||||
gBattleSubState = BTL_SUBSTATE_INIT;
|
||||
}
|
||||
|
||||
void set_battle_stage(s32 arg0) {
|
||||
D_800DC4EC = arg0;
|
||||
void set_battle_stage(s32 stageID) {
|
||||
gCurrentStageID = stageID;
|
||||
}
|
||||
|
||||
void set_battle_formation(Battle* battle) {
|
||||
D_800DC4F4 = battle;
|
||||
gOverrideBattlePtr = battle;
|
||||
}
|
||||
|
||||
void func_80072CEC(f32 arg0, f32 arg1, f32 arg2) {
|
||||
@ -501,8 +501,8 @@ void load_demo_battle(u32 index) {
|
||||
|
||||
evt_set_variable(NULL, GF_Tutorial_SwapTurnOrder, 1);
|
||||
gCurrentEncounter.unk_07 = 0;
|
||||
gCurrentEncounter.unk_10 = 0;
|
||||
set_battle_stage(-1);
|
||||
gCurrentEncounter.instigatorValue = 0;
|
||||
set_battle_stage(BTL_STAGE_DEFAULT);
|
||||
gGameStatusPtr->demoFlags |= 1;
|
||||
gOverrideFlags &= ~GLOBAL_OVERRIDES_8;
|
||||
load_battle(battleID);
|
||||
|
@ -339,13 +339,13 @@ typedef struct Stage {
|
||||
/* 0x00 */ char* texture;
|
||||
/* 0x04 */ const char* shape;
|
||||
/* 0x08 */ const char* hit;
|
||||
/* 0x0C */ EvtScript* preBattle;
|
||||
/* 0x10 */ EvtScript* postBattle;
|
||||
/* 0x0C */ EvtScript* preBattle; // sets BattleStatus::controlScript on battle start
|
||||
/* 0x10 */ EvtScript* postBattle; // sets BattleStatus::controlScript on battle end
|
||||
/* 0x14 */ char* bg;
|
||||
/* 0x18 */ s32* foregroundModelList;
|
||||
/* 0x1C */ s32 specialFormationSize;
|
||||
/* 0x20 */ Formation* specialFormation;
|
||||
/* 0x24 */ s32 unk_24;
|
||||
/* 0x1C */ s32 stageEnemyCount; // number of enemies in the stageFormation
|
||||
/* 0x20 */ Formation* stageFormation; // extra enemies native to this stage
|
||||
/* 0x24 */ s32 stageEnemyChance; // chance for stageFormation enemies to spawn: N = 0 means always, N > 0 is 1/N chance
|
||||
} Stage; // size = 0x28
|
||||
|
||||
/// Zero-terminated.
|
||||
@ -354,7 +354,7 @@ typedef struct Battle {
|
||||
/* 0x04 */ s32 formationSize;
|
||||
/* 0x08 */ Formation* formation;
|
||||
/* 0x0C */ Stage* stage;
|
||||
/* 0x10 */ EvtScript* unk_10;
|
||||
/* 0x10 */ EvtScript* onBattleStart; // sets BattleStatus::controlScript on battle start, overrides Stage::preBattle
|
||||
} Battle; // size = 0x14
|
||||
|
||||
typedef Battle BattleList[];
|
||||
@ -400,7 +400,7 @@ typedef struct ActorOffsets {
|
||||
/* 0x03 */ s8 shadow;
|
||||
} ActorOffsets; // size = 0x04
|
||||
|
||||
extern BattleList* D_800DC4FC;
|
||||
extern Battle* gCurrentBattlePtr;
|
||||
|
||||
extern ActorOffsets bActorOffsets[ACTOR_TYPE_COUNT];
|
||||
|
||||
|
@ -230,7 +230,7 @@ EvtScript N(dropCoin) = {
|
||||
EVT_CALL(PlaySoundAtActor, LVarA, SOUND_212)
|
||||
EVT_LOOP(0)
|
||||
EVT_CALL(GetBattleFlags, LVar1)
|
||||
EVT_IF_FLAG(LVar1, BS_FLAGS1_80000)
|
||||
EVT_IF_FLAG(LVar1, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_BREAK_LOOP
|
||||
EVT_END_IF
|
||||
EVT_IF_NOT_FLAG(LVar1, BS_FLAGS1_100)
|
||||
@ -494,7 +494,7 @@ EvtScript N(takeTurn) = {
|
||||
EVT_CALL(SetActorSpeed, ACTOR_SELF, EVT_FLOAT(10.0))
|
||||
EVT_CALL(SetGoalPos, ACTOR_SELF, 300, 0, 0)
|
||||
EVT_CALL(RunToGoal, ACTOR_SELF, 0, FALSE)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_ENEMY_FLED, 1)
|
||||
EVT_CALL(SetBattleFlagBits, BS_FLAGS1_BATTLE_FLED, 1)
|
||||
EVT_CALL(func_8027D32C, ACTOR_SELF)
|
||||
EVT_CALL(RemoveActor, ACTOR_SELF)
|
||||
EVT_RETURN
|
||||
|
@ -315,7 +315,7 @@ EvtScript N(handleEvent) = {
|
||||
|
||||
EvtScript N(canBeKnockedOff) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_40 | BS_FLAGS1_200)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1)
|
||||
EVT_END_IF
|
||||
|
@ -317,7 +317,7 @@ EvtScript N(handleEvent) = {
|
||||
|
||||
EvtScript N(canBeKnockedOff) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_40 | BS_FLAGS1_200)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1)
|
||||
EVT_END_IF
|
||||
|
@ -276,7 +276,7 @@ EvtScript N(idle) = {
|
||||
|
||||
EvtScript N(canBeKnockedOff) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_200 | BS_FLAGS1_40)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_CAN_FALL), 1)
|
||||
EVT_END_IF
|
||||
|
@ -315,7 +315,7 @@ EvtScript N(handleEvent) = {
|
||||
|
||||
EvtScript N(canBeKnockedOff) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_40 | BS_FLAGS1_200)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1)
|
||||
EVT_END_IF
|
||||
|
@ -318,7 +318,7 @@ EvtScript N(handleEvent_80223E24) = {
|
||||
|
||||
EvtScript N(canBeKnockedOff) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_40 | BS_FLAGS1_200)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1)
|
||||
EVT_END_IF
|
||||
|
@ -314,7 +314,7 @@ EvtScript N(handleEvent) = {
|
||||
|
||||
EvtScript N(canBeKnockedOff) = {
|
||||
EVT_CALL(GetBattleFlags, LVar0)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_80000)
|
||||
EVT_IF_NOT_FLAG(LVar0, BS_FLAGS1_PARTNER_ACTING)
|
||||
EVT_IF_FLAG(LVar0, BS_FLAGS1_40 | BS_FLAGS1_200)
|
||||
EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1)
|
||||
EVT_END_IF
|
||||
|
@ -7,7 +7,7 @@ static s32 itemIcon;
|
||||
ApiStatus N(GiveRefund)(Evt* script, s32 isInitialCall) {
|
||||
BattleStatus* battleStatus = &gBattleStatus;
|
||||
Actor* player = gBattleStatus.playerActor;
|
||||
s32 sellValue = gItemTable[battleStatus->selectedItemID].sellValue;
|
||||
s32 sellValue = gItemTable[battleStatus->moveArgument].sellValue;
|
||||
f32 posX;
|
||||
f32 posY = player->currentPos.y + player->size.y;
|
||||
f32 posZ;
|
||||
@ -51,7 +51,7 @@ ApiStatus N(GiveRefund)(Evt* script, s32 isInitialCall) {
|
||||
|
||||
ApiStatus N(GiveRefundCleanup)(Evt* script, s32 isInitialCall) {
|
||||
BattleStatus* battleStatus = &gBattleStatus;
|
||||
s32 sellValue = gItemTable[battleStatus->selectedItemID].sellValue;
|
||||
s32 sellValue = gItemTable[battleStatus->moveArgument].sellValue;
|
||||
|
||||
if (player_team_is_ability_active(battleStatus->playerActor, ABILITY_REFUND) && sellValue > 0) {
|
||||
hud_element_free(itemIcon);
|
||||
|
@ -8,7 +8,7 @@ ApiStatus N(func_802A123C_7307DC)(Evt* script, s32 isInitialCall) {
|
||||
Actor* player = battleStatus->playerActor;
|
||||
|
||||
inflict_status(player, STATUS_STATIC, script->varTable[0]);
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
|
@ -37,7 +37,7 @@ ApiStatus N(func_802A12EC_7333BC)(Evt* script, s32 isInitialCall) {
|
||||
partner->disableEffect->data.disableX->koDuration = partner->koDuration;
|
||||
} else {
|
||||
partner->koStatus = 0;
|
||||
dispatch_event_partner(EVENT_RECOVER_PARTNER);
|
||||
dispatch_event_partner(EVENT_RECOVER_FROM_KO);
|
||||
partner->disableEffect->data.disableX->koDuration = 0;
|
||||
}
|
||||
|
||||
|
@ -37,7 +37,7 @@ ApiStatus N(func_802A12EC_72E81C)(Evt* script, s32 isInitialCall) {
|
||||
partner->disableEffect->data.disableX->koDuration = partner->koDuration;
|
||||
} else {
|
||||
partner->koStatus = 0;
|
||||
dispatch_event_partner(EVENT_RECOVER_PARTNER);
|
||||
dispatch_event_partner(EVENT_RECOVER_FROM_KO);
|
||||
partner->disableEffect->data.disableX->koDuration = 0;
|
||||
}
|
||||
|
||||
|
@ -37,7 +37,7 @@ ApiStatus N(func_802A12EC_715B3C)(Evt* script, s32 isInitialCall) {
|
||||
partner->disableEffect->data.disableX->koDuration = partner->koDuration;
|
||||
} else {
|
||||
partner->koStatus = 0;
|
||||
dispatch_event_partner(EVENT_RECOVER_PARTNER);
|
||||
dispatch_event_partner(EVENT_RECOVER_FROM_KO);
|
||||
partner->disableEffect->data.disableX->koDuration = 0;
|
||||
}
|
||||
|
||||
|
@ -149,8 +149,8 @@ s32 N(func_802A13E4_72C994)(Evt* script, s32 isInitialCall) {
|
||||
}
|
||||
|
||||
var_v0_3 = i = D_802A25E8 / 26; // use of i required to match
|
||||
battleStatus->selectedItemID = D_802A25FC[D_802A25E8 / 26];
|
||||
script->varTable[0] = battleStatus->selectedItemID;
|
||||
battleStatus->moveArgument = D_802A25FC[D_802A25E8 / 26];
|
||||
script->varTable[0] = battleStatus->moveArgument;
|
||||
free_worker(D_802A25F8);
|
||||
for (i = 0; i < ARRAY_COUNT(D_802A25C8); i++) {
|
||||
hud_element_free(D_802A25C8[i]);
|
||||
|
@ -8,7 +8,7 @@ ApiStatus N(func_802A123C_72DDAC)(Evt* script, s32 isInitialCall) {
|
||||
ActorPart* part = player->partsTable;
|
||||
|
||||
inflict_status(player, STATUS_TRANSPARENT, script->varTable[0]);
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
part->flags |= ACTOR_PART_FLAG_100;
|
||||
|
||||
return ApiStatus_DONE2;
|
||||
|
@ -15,7 +15,7 @@ ApiStatus N(func_802A123C_7217DC)(Evt* script, s32 isInitialCall) {
|
||||
switch (script->functionTemp[0]) {
|
||||
case 0:
|
||||
inflict_status(player, STATUS_STONE, script->varTable[0]);
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
script->functionTemp[1] = 3;
|
||||
script->functionTemp[0] = 1;
|
||||
break;
|
||||
|
@ -140,8 +140,8 @@ s32 N(func_802A13E4_7316E4)(Evt* script, s32 isInitialCall) {
|
||||
}
|
||||
|
||||
var_v0_3 = i = D_802A2DF0 / 26; // use of i required to match
|
||||
battleStatus->selectedItemID = N(D_802A2858_732B58)[var_v0_3];
|
||||
script->varTable[0] = battleStatus->selectedItemID;
|
||||
battleStatus->moveArgument = N(D_802A2858_732B58)[var_v0_3];
|
||||
script->varTable[0] = battleStatus->moveArgument;
|
||||
free_worker(D_802A2E00);
|
||||
for (i = 0; i < ARRAY_COUNT(D_802A2DD8); i++) {
|
||||
hud_element_free(D_802A2DD8[i]);
|
||||
@ -210,7 +210,7 @@ ApiStatus N(func_802A1AD8_731DD8)(Evt* script, s32 isInitialCall) {
|
||||
Actor* player = battleStatus->playerActor;
|
||||
|
||||
inflict_status(player, STATUS_STATIC, 3);
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
@ -221,7 +221,7 @@ ApiStatus N(func_802A1B14_731E14)(Evt* script, s32 isInitialCall) {
|
||||
ActorPart* part = player->partsTable;
|
||||
|
||||
inflict_status(player, STATUS_TRANSPARENT, 3);
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
part->flags |= ACTOR_PART_FLAG_100;
|
||||
|
||||
return ApiStatus_DONE2;
|
||||
@ -232,7 +232,7 @@ ApiStatus N(func_802A1B68_731E68)(Evt* script, s32 isInitialCall) {
|
||||
Actor* player = battleStatus->playerActor;
|
||||
|
||||
inflict_status(player, STATUS_SLEEP, 3);
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
@ -37,7 +37,7 @@ ApiStatus N(func_802A12EC_724FCC)(Evt* script, s32 isInitialCall) {
|
||||
partner->disableEffect->data.disableX->koDuration = partner->koDuration;
|
||||
} else {
|
||||
partner->koStatus = 0;
|
||||
dispatch_event_partner(EVENT_RECOVER_PARTNER);
|
||||
dispatch_event_partner(EVENT_RECOVER_FROM_KO);
|
||||
partner->disableEffect->data.disableX->koDuration = 0;
|
||||
}
|
||||
|
||||
|
@ -7,7 +7,7 @@ ApiStatus N(func_802A123C_71AA2C)(Evt* script, s32 isInitialCall) {
|
||||
Actor* player = battleStatus->playerActor;
|
||||
|
||||
inflict_status(player, STATUS_STATIC, script->varTable[0]);
|
||||
player->status = 0;
|
||||
player->statusAfflicted = 0;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
|
@ -567,7 +567,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleBombette_Idle)
|
||||
EVT_SET_CONST(LVar2, ANIM_BattleBombette_Run)
|
||||
|
@ -284,7 +284,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleBow_Idle)
|
||||
EVT_SET_CONST(LVar2, ANIM_BattleBow_Run)
|
||||
|
@ -617,7 +617,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CALL(N(StopCharge))
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleGoombario_Idle)
|
||||
EVT_SET_CONST(LVar2, ANIM_BattleGoombario_Run)
|
||||
|
@ -123,7 +123,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_SET_CONST(LVar1, ANIM_Goompa_Injured)
|
||||
EVT_EXEC_WAIT(DoNormalHit)
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_Goompa_Idle)
|
||||
EVT_SET_CONST(LVar2, ANIM_Goompa_Run)
|
||||
|
@ -317,7 +317,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleKooper_Idle)
|
||||
EVT_SET_CONST(LVar2, ANIM_BattleKooper_Run)
|
||||
|
@ -241,7 +241,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Walk)
|
||||
EVT_SET_CONST(LVar2, ANIM_BattleLakilester_Run)
|
||||
|
@ -753,7 +753,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleParakarry_Walk)
|
||||
EVT_SET_CONST(LVar2, ANIM_BattleParakarry_Run)
|
||||
EVT_SET(LVar3, 30)
|
||||
|
@ -523,7 +523,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleSushie_Idle)
|
||||
EVT_SET_CONST(LVar2, ANIM_BattleSushie_Run)
|
||||
|
@ -588,7 +588,7 @@ EvtScript N(handleEvent) = {
|
||||
EVT_CASE_EQ(EVENT_33)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt)
|
||||
EVT_EXEC_WAIT(DoPartnerHit)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_PARTNER)
|
||||
EVT_CASE_EQ(EVENT_RECOVER_FROM_KO)
|
||||
EVT_CALL(N(WattFXBounce))
|
||||
EVT_SET_CONST(LVar0, 1)
|
||||
EVT_SET_CONST(LVar1, ANIM_BattleWatt_Idle)
|
||||
|
@ -121,7 +121,7 @@ EvtScript CamPreset_A = {
|
||||
EVT_END
|
||||
};
|
||||
|
||||
EvtScript D_80280EB8 = {
|
||||
EvtScript EVS_OnBattleInit = {
|
||||
EVT_CALL(SetCamPerspective, 1, 6, 25, 16, 1024)
|
||||
EVT_CALL(SetCamViewport, 1, 12, 20, 296, 200)
|
||||
EVT_CALL(SetCamBGColor, 1, 0, 0, 0)
|
||||
|
@ -843,7 +843,7 @@ void update_encounters_neutral(void) {
|
||||
break;
|
||||
}
|
||||
sfx_play_sound_at_position(SOUND_HIT_PLAYER_NORMAL, 0, playerStatus->position.x, playerStatus->position.y, playerStatus->position.z);
|
||||
enemy->encountered = 2;
|
||||
enemy->encountered = ENCOUNTER_STATE_NEUTRAL;
|
||||
currentEncounter->currentEncounter = encounter;
|
||||
currentEncounter->currentEnemy = enemy;
|
||||
currentEncounter->firstStrikeType = FIRST_STRIKE_PLAYER;
|
||||
@ -1160,7 +1160,7 @@ START_BATTLE:
|
||||
}
|
||||
enemy = currentEncounter->currentEnemy;
|
||||
if (enemy->interactBytecode != NULL) {
|
||||
enemy->encountered = 5;
|
||||
enemy->encountered = ENCOUNTER_TRIGGER_CONVERSATION;
|
||||
script = start_script(enemy->interactBytecode, EVT_PRIORITY_A, 0);
|
||||
enemy->interactScript = script;
|
||||
enemy->interactScriptID = script->id;
|
||||
@ -1374,7 +1374,7 @@ void update_encounters_pre_battle(void) {
|
||||
currentEncounter->dizzyAttackDuration = 0;
|
||||
|
||||
enemy = currentEncounter->currentEnemy;
|
||||
currentEncounter->unk_10 = enemy->unk_B5;
|
||||
currentEncounter->instigatorValue = enemy->instigatorValue;
|
||||
|
||||
if (is_ability_active(ABILITY_DIZZY_ATTACK) && currentEncounter->hitType == ENCOUNTER_TRIGGER_SPIN) {
|
||||
currentEncounter->dizzyAttackStatus = 4;
|
||||
@ -1938,7 +1938,7 @@ void update_encounters_post_battle(void) {
|
||||
}
|
||||
|
||||
if (enemy->defeatBytecode != NULL) {
|
||||
script = start_script(enemy->defeatBytecode, 0xA, 0);
|
||||
script = start_script(enemy->defeatBytecode, EVT_PRIORITY_A, 0);
|
||||
enemy->defeatScript = script;
|
||||
enemy->defeatScriptID = script->id;
|
||||
script->owner1.enemy = enemy;
|
||||
@ -2056,7 +2056,7 @@ void update_encounters_post_battle(void) {
|
||||
}
|
||||
|
||||
if (enemy->defeatBytecode != NULL) {
|
||||
script = start_script(enemy->defeatBytecode, 0xA, 0);
|
||||
script = start_script(enemy->defeatBytecode, EVT_PRIORITY_A, 0);
|
||||
enemy->defeatScript = script;
|
||||
enemy->defeatScriptID = script->id;
|
||||
script->owner1.enemy = enemy;
|
||||
@ -2486,7 +2486,7 @@ void create_encounters(void) {
|
||||
enemy->auxScriptID = 0;
|
||||
enemy->defeatScriptID = 0;
|
||||
enemy->unk_07 = 0;
|
||||
enemy->unk_B5 = 0;
|
||||
enemy->instigatorValue = 0;
|
||||
enemy->aiDetectFlags = npcData->aiDetectFlags;
|
||||
|
||||
|
||||
|
@ -764,14 +764,14 @@ ApiStatus func_80045798(Evt* script, s32 isInitialCall) {
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ApiStatus func_800457C4(Evt* script, s32 isInitialCall) {
|
||||
Enemy* ownerActor = script->owner1.enemy;
|
||||
ApiStatus SetOwnerInstigatorValue(Evt* script, s32 isInitialCall) {
|
||||
Enemy* enemy = script->owner1.enemy;
|
||||
|
||||
ownerActor->unk_B5 = evt_get_variable(script, *script->ptrReadPos);
|
||||
enemy->instigatorValue = evt_get_variable(script, *script->ptrReadPos);
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ApiStatus func_800457F8(Evt* script, s32 isInitialCall) {
|
||||
ApiStatus SetBattleAsScripted(Evt* script, s32 isInitialCall) {
|
||||
gCurrentEncounter.scriptedBattle = TRUE;
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
@ -783,16 +783,16 @@ ApiStatus GetEncounterTriggerHitTier(Evt* script, s32 isInitialCall) {
|
||||
|
||||
ApiStatus func_80045838(Evt* script, s32 isInitialCall) {
|
||||
Bytecode* args = script->ptrReadPos;
|
||||
s32 var1 = evt_get_variable(script, *args++);
|
||||
s32 var2 = evt_get_variable(script, *args++);
|
||||
s32 var3 = evt_get_variable(script, *args);
|
||||
Npc* npc = resolve_npc(script, var1);
|
||||
s32 npcID = evt_get_variable(script, *args++);
|
||||
s32 soundID = evt_get_variable(script, *args++);
|
||||
s32 upperSoundFLags = evt_get_variable(script, *args++);
|
||||
Npc* npc = resolve_npc(script, npcID);
|
||||
|
||||
if (npc == NULL) {
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
ai_enemy_play_sound(npc, var2, var3);
|
||||
ai_enemy_play_sound(npc, soundID, upperSoundFLags);
|
||||
return ApiStatus_DONE2;
|
||||
}
|
||||
|
||||
|
@ -46,7 +46,7 @@ ApiStatus PollMusicEvents(Evt* script, s32 isInitialCall) {
|
||||
kill_script_by_ID(RunningMusicEventIDs[musicEventID]);
|
||||
}
|
||||
if (newSource != NULL) {
|
||||
Evt* newEvt = start_script(newSource, 1, 0);
|
||||
Evt* newEvt = start_script(newSource, EVT_PRIORITY_1, 0);
|
||||
RunningMusicEvents[musicEventID] = newEvt;
|
||||
RunningMusicEventIDs[musicEventID] = newEvt->id;
|
||||
}
|
||||
|
@ -8,6 +8,8 @@
|
||||
|
||||
typedef s32 HudScript[0];
|
||||
|
||||
typedef s32 HudElemID;
|
||||
|
||||
enum {
|
||||
HUD_ELEMENT_OP_End,
|
||||
HUD_ELEMENT_OP_SetRGBA,
|
||||
@ -126,9 +128,9 @@ typedef struct PopupMenu {
|
||||
/* 0x290 */ char unk_290[0x4];
|
||||
/* 0x294 */ s32 descMsg[32];
|
||||
/* 0x314 */ char unk_314[0x4];
|
||||
/* 0x318 */ s32 popupType; // C = keys
|
||||
/* 0x31C */ s32 unk_31C;
|
||||
/* 0x320 */ s32 unk_320;
|
||||
/* 0x318 */ s32 popupType;
|
||||
/* 0x31C */ s32 dipMode;
|
||||
/* 0x320 */ s32 titleNumber; // used to display 2/3 with double/triple dip
|
||||
/* 0x324 */ s32 numEntries;
|
||||
/* 0x328 */ s32 initialPos;
|
||||
/* 0x32C */ s16 result;
|
||||
|
@ -118,7 +118,7 @@ u16 D_80293E04[] = {
|
||||
ApiStatus LoadItemScript(Evt* script, s32 isInitialCall) {
|
||||
PlayerData* playerData = &gPlayerData;
|
||||
BattleStatus* battleStatus = &gBattleStatus;
|
||||
s16 itemID = battleStatus->selectedItemID;
|
||||
s16 itemID = battleStatus->moveArgument;
|
||||
ItemData* item = &gItemTable[itemID];
|
||||
s32 i = 0;
|
||||
s32* itemPtr;
|
||||
@ -146,13 +146,13 @@ ApiStatus LoadItemScript(Evt* script, s32 isInitialCall) {
|
||||
|
||||
itemPtr = &D_80293B80[0];
|
||||
for (i = 0; *itemPtr != ITEM_NONE; i++, itemPtr++) {
|
||||
if (*itemPtr == battleStatus->selectedItemID) {
|
||||
if (*itemPtr == battleStatus->moveArgument) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (*itemPtr == ITEM_NONE) {
|
||||
if (item->typeFlags & 0x80) {
|
||||
if (item->typeFlags & ITEM_TYPE_FLAG_FOOD_OR_DRINK) {
|
||||
i = 0;
|
||||
} else {
|
||||
i = 1;
|
||||
@ -170,12 +170,12 @@ ApiStatus LoadItemScript(Evt* script, s32 isInitialCall) {
|
||||
ApiStatus LoadFreeItemScript(Evt* script, s32 isInitialCall) {
|
||||
BattleStatus* battleStatus = &gBattleStatus;
|
||||
Actor* actor = battleStatus->playerActor;
|
||||
ItemData* item = &gItemTable[battleStatus->selectedItemID];
|
||||
ItemData* item = &gItemTable[battleStatus->moveArgument];
|
||||
SelectableTarget* target;
|
||||
s32* itemPtr;
|
||||
s32 i;
|
||||
|
||||
battleStatus->currentTargetListFlags = item->targetFlags | 0x8000;
|
||||
battleStatus->currentTargetListFlags = item->targetFlags | ITEM_TARGET_FLAG_8000;
|
||||
battleStatus->currentAttackElement = 0;
|
||||
|
||||
player_create_target_list(actor);
|
||||
@ -186,13 +186,13 @@ ApiStatus LoadFreeItemScript(Evt* script, s32 isInitialCall) {
|
||||
|
||||
itemPtr = &D_80293B80[0];
|
||||
for (i = 0; *itemPtr != ITEM_NONE; i++, itemPtr++) {
|
||||
if (*itemPtr == battleStatus->selectedItemID){
|
||||
if (*itemPtr == battleStatus->moveArgument){
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (*itemPtr == ITEM_NONE) {
|
||||
if (item->typeFlags & 0x80) {
|
||||
if (item->typeFlags & ITEM_TYPE_FLAG_FOOD_OR_DRINK) {
|
||||
i = 0;
|
||||
} else {
|
||||
i = 1;
|
||||
|
@ -23,14 +23,22 @@ GameStatus* gGameStatusPtr = &gGameStatus;
|
||||
s16 D_800741A0 = 0;
|
||||
s16 D_800741A2 = 0;
|
||||
s32 D_800741A4 = 0;
|
||||
Mtx D_800741A8 = {
|
||||
.m = {
|
||||
{ 0x00010000, 0x00000000, 0x00000001, 0x00000000 },
|
||||
{ 0x00000000, 0x00010000, 0x00000000, 0x00000001 },
|
||||
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
|
||||
{ 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
|
||||
|
||||
Matrix4s MasterIdentityMtx = {
|
||||
.whole = {
|
||||
{1, 0, 0, 0},
|
||||
{0, 1, 0, 0},
|
||||
{0, 0, 1, 0},
|
||||
{0, 0, 0, 1}
|
||||
},
|
||||
.frac = {
|
||||
{0, 0, 0, 0},
|
||||
{0, 0, 0, 0},
|
||||
{0, 0, 0, 0},
|
||||
{0, 0, 0, 0}
|
||||
}
|
||||
};
|
||||
|
||||
s32 D_800741E8[2] = {0, 0}; // padding?
|
||||
u16 gMatrixListPos = 0;
|
||||
u16 D_800741F2 = 0;
|
||||
@ -192,7 +200,7 @@ void gfx_draw_frame(void) {
|
||||
return;
|
||||
}
|
||||
|
||||
gSPMatrix(gMasterGfxPos++, &D_800741A8, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPMatrix(gMasterGfxPos++, &MasterIdentityMtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
|
||||
spr_render_init();
|
||||
|
||||
@ -330,34 +338,34 @@ void load_engine_data(void) {
|
||||
/// 0: normal
|
||||
/// 1: NPCs move, can't be interacted with
|
||||
/// 2: NPCs don't move, no partner ability, can't interact, can't use exits
|
||||
/// 3: NPCs don't more or animate (partner switch menu)
|
||||
/// 3: NPCs don't more or animate
|
||||
/// 4: NPCs can move, animations don't update, can use exits
|
||||
void set_time_freeze_mode(s32 mode) {
|
||||
switch (mode) {
|
||||
case 0:
|
||||
case TIME_FREEZE_NORMAL:
|
||||
timeFreezeMode = mode;
|
||||
gOverrideFlags &= ~(GLOBAL_OVERRIDES_800 | GLOBAL_OVERRIDES_400 | GLOBAL_OVERRIDES_200 | GLOBAL_OVERRIDES_DISABLE_BATTLES);
|
||||
resume_all_group(EVT_GROUP_01 | EVT_GROUP_02);
|
||||
break;
|
||||
case 1:
|
||||
case TIME_FREEZE_PARTIAL:
|
||||
timeFreezeMode = mode;
|
||||
gOverrideFlags &= ~(GLOBAL_OVERRIDES_800 | GLOBAL_OVERRIDES_400 | GLOBAL_OVERRIDES_200);
|
||||
gOverrideFlags |= GLOBAL_OVERRIDES_DISABLE_BATTLES;
|
||||
suspend_all_group(EVT_GROUP_01);
|
||||
break;
|
||||
case 2:
|
||||
case TIME_FREEZE_FULL:
|
||||
timeFreezeMode = mode;
|
||||
gOverrideFlags &= ~(GLOBAL_OVERRIDES_400 | GLOBAL_OVERRIDES_800);
|
||||
gOverrideFlags |= GLOBAL_OVERRIDES_200 | GLOBAL_OVERRIDES_DISABLE_BATTLES;
|
||||
suspend_all_group(EVT_GROUP_02);
|
||||
break;
|
||||
case 3:
|
||||
case TIME_FREEZE_POPUP_MENU:
|
||||
timeFreezeMode = mode;
|
||||
gOverrideFlags &= ~GLOBAL_OVERRIDES_800;
|
||||
gOverrideFlags |= GLOBAL_OVERRIDES_400 | GLOBAL_OVERRIDES_200 | GLOBAL_OVERRIDES_DISABLE_BATTLES;
|
||||
suspend_all_group(EVT_GROUP_02);
|
||||
break;
|
||||
case 4:
|
||||
case TIME_FREEZE_EXIT:
|
||||
timeFreezeMode = mode;
|
||||
gOverrideFlags |= GLOBAL_OVERRIDES_800 | GLOBAL_OVERRIDES_400 | GLOBAL_OVERRIDES_200 | GLOBAL_OVERRIDES_DISABLE_BATTLES;
|
||||
break;
|
||||
|
@ -554,7 +554,7 @@ MoveData gMoveTable[] = {
|
||||
.fullDescMsg = 0,
|
||||
.shortDescMsg = 0,
|
||||
.flags = 0,
|
||||
.category = MOVE_TYPE_TACTICS,
|
||||
.category = MOVE_TYPE_SWITCH,
|
||||
.actionTip = MOVE_ACTION_TIP_NONE,
|
||||
.costFP = 0,
|
||||
.costBP = 0
|
||||
@ -564,7 +564,7 @@ MoveData gMoveTable[] = {
|
||||
.fullDescMsg = MSG_ItemFullDesc_QuickChange,
|
||||
.shortDescMsg = MSG_ItemShortDesc_QuickChange,
|
||||
.flags = 0,
|
||||
.category = MOVE_TYPE_TACTICS,
|
||||
.category = MOVE_TYPE_SWITCH,
|
||||
.actionTip = MOVE_ACTION_TIP_NONE,
|
||||
.costFP = 0,
|
||||
.costBP = 4
|
||||
|
@ -24,7 +24,7 @@ void state_init_pause(void) {
|
||||
D_800A0921 = 0;
|
||||
D_800A0922 = 0;
|
||||
disable_player_input();
|
||||
set_time_freeze_mode(TIME_FREEZE_PARTNER_MENU);
|
||||
set_time_freeze_mode(TIME_FREEZE_POPUP_MENU);
|
||||
set_windows_visible(WINDOW_GROUP_PAUSE_MENU);
|
||||
}
|
||||
|
||||
|
@ -96,10 +96,10 @@ API_CALLABLE(N(TryEnchantPlayer)) {
|
||||
playerData->merleeSpellType = MERLEE_SPELL_2;
|
||||
break;
|
||||
case 2:
|
||||
playerData->merleeSpellType = MERLEE_SPELL_3;
|
||||
playerData->merleeSpellType = MERLEE_SPELL_EXP_BOOST;
|
||||
break;
|
||||
case 3:
|
||||
playerData->merleeSpellType = MERLEE_SPELL_4;
|
||||
playerData->merleeSpellType = MERLEE_SPELL_COIN_BOOST;
|
||||
break;
|
||||
}
|
||||
evt_set_variable(script, outPrevented, FALSE);
|
||||
|
@ -61,21 +61,21 @@ EvtScript N(EVS_NpcIdle_Pokey_03) = {
|
||||
|
||||
EvtScript N(EVS_NpcInit_Pokey_01) = {
|
||||
EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Pokey_01)))
|
||||
EVT_CALL(func_800457C4, 3)
|
||||
EVT_CALL(SetOwnerInstigatorValue, 3)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
|
||||
EvtScript N(EVS_NpcInit_Pokey_02) = {
|
||||
EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Pokey_02)))
|
||||
EVT_CALL(func_800457C4, 3)
|
||||
EVT_CALL(SetOwnerInstigatorValue, 3)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
|
||||
EvtScript N(EVS_NpcInit_Pokey_03) = {
|
||||
EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Pokey_03)))
|
||||
EVT_CALL(func_800457C4, 3)
|
||||
EVT_CALL(SetOwnerInstigatorValue, 3)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
|
@ -145,7 +145,7 @@ EvtScript N(EVS_NpcInit_Pokey_01) = {
|
||||
EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Pokey_01)))
|
||||
EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_Pokey_01)))
|
||||
EVT_CALL(InterpNpcYaw, NPC_SELF, 100, 0)
|
||||
EVT_CALL(func_800457C4, 3)
|
||||
EVT_CALL(SetOwnerInstigatorValue, 3)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
@ -156,7 +156,7 @@ EvtScript N(EVS_NpcInit_Pokey_02) = {
|
||||
EVT_END_IF
|
||||
EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Pokey_02)))
|
||||
EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_Pokey_01)))
|
||||
EVT_CALL(func_800457C4, 3)
|
||||
EVT_CALL(SetOwnerInstigatorValue, 3)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
@ -167,7 +167,7 @@ EvtScript N(EVS_NpcInit_Pokey_03) = {
|
||||
EVT_END_IF
|
||||
EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Pokey_03)))
|
||||
EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_Pokey_01)))
|
||||
EVT_CALL(func_800457C4, 3)
|
||||
EVT_CALL(SetOwnerInstigatorValue, 3)
|
||||
EVT_RETURN
|
||||
EVT_END
|
||||
};
|
||||
|
@ -15,7 +15,7 @@ ApiStatus func_80240FC0_B45730(Evt* script, s32 isInitialCall) {
|
||||
Evt* newScript;
|
||||
|
||||
D_8024625C_B4A9CC++;
|
||||
newScript = start_script(rideScript, 0, EVT_FLAG_RUN_IMMEDIATELY);
|
||||
newScript = start_script(rideScript, EVT_PRIORITY_0, EVT_FLAG_RUN_IMMEDIATELY);
|
||||
newScript->varTable[1] = playerStatus->position.x - 10.0f;
|
||||
newScript->varTable[2] = playerStatus->position.y;
|
||||
newScript->varTable[3] = playerStatus->position.z;
|
||||
|
@ -32,6 +32,8 @@ API_CALLABLE(N(func_80242014_8B2084)) {
|
||||
#include "world/common/npc/GoombaFamily_Wander.inc.c"
|
||||
#include "world/common/npc/GoombaFamily.inc.c"
|
||||
|
||||
#include "world/common/enemy/complete/Kammy.h"
|
||||
|
||||
StationaryAISettings N(AISettings_Kammy) = {
|
||||
.playerSearchInterval = -1,
|
||||
.chaseRadius = 300.0f,
|
||||
@ -1958,11 +1960,7 @@ StaticNpc N(NpcData_Kammy) = {
|
||||
.yaw = 90,
|
||||
.flags = ENEMY_FLAG_1 | ENEMY_FLAG_8 | ENEMY_FLAG_800,
|
||||
.init = &N(EVS_NpcInit_Kammy),
|
||||
.drops = {
|
||||
.dropFlags = NPC_DROP_FLAG_80,
|
||||
.heartDrops = NO_DROPS,
|
||||
.flowerDrops = NO_DROPS,
|
||||
},
|
||||
.drops = NPC_NO_DROPS,
|
||||
.territory = {
|
||||
.wander = {
|
||||
.isFlying = TRUE,
|
||||
@ -1975,24 +1973,7 @@ StaticNpc N(NpcData_Kammy) = {
|
||||
.detectSize = { 100 },
|
||||
}
|
||||
},
|
||||
.animations = {
|
||||
.idle = ANIM_WorldKammy_Anim01,
|
||||
.walk = ANIM_WorldKammy_Anim02,
|
||||
.run = ANIM_WorldKammy_Anim03,
|
||||
.chase = ANIM_WorldKammy_Anim03,
|
||||
.anim_4 = ANIM_WorldKammy_Anim01,
|
||||
.anim_5 = ANIM_WorldKammy_Anim01,
|
||||
.death = ANIM_WorldKammy_Anim00,
|
||||
.hit = ANIM_WorldKammy_Anim00,
|
||||
.anim_8 = ANIM_WorldKammy_Anim03,
|
||||
.anim_9 = ANIM_WorldKammy_Anim03,
|
||||
.anim_A = ANIM_WorldKammy_Anim03,
|
||||
.anim_B = ANIM_WorldKammy_Anim03,
|
||||
.anim_C = ANIM_WorldKammy_Anim03,
|
||||
.anim_D = ANIM_WorldKammy_Anim03,
|
||||
.anim_E = ANIM_WorldKammy_Anim03,
|
||||
.anim_F = ANIM_WorldKammy_Anim03,
|
||||
},
|
||||
.animations = KAMMY_ANIMS,
|
||||
.extraAnimations = N(ExtraAnims_Kammy),
|
||||
};
|
||||
|
||||
|
@ -20,6 +20,30 @@ enum {
|
||||
AB_OMO_F = AreaByte(15),
|
||||
};
|
||||
|
||||
#define AF_OMO(index) AreaFlag(index)
|
||||
enum {
|
||||
AF_OMO07_NpcPool0 = AreaFlag(7),
|
||||
AF_OMO07_NpcPool1 = AreaFlag(8),
|
||||
AF_OMO07_NpcPool2 = AreaFlag(9),
|
||||
AF_OMO07_NpcPool3 = AreaFlag(10),
|
||||
AF_OMO07_DoorOpening = AreaFlag(15),
|
||||
};
|
||||
|
||||
extern MapSettings omo_01_settings;
|
||||
extern MapSettings omo_02_settings;
|
||||
extern MapSettings omo_03_settings;
|
||||
extern MapSettings omo_04_settings;
|
||||
extern MapSettings omo_05_settings;
|
||||
extern MapSettings omo_06_settings;
|
||||
extern MapSettings omo_07_settings;
|
||||
extern MapSettings omo_08_settings;
|
||||
extern MapSettings omo_09_settings;
|
||||
extern MapSettings omo_10_settings;
|
||||
extern MapSettings omo_11_settings;
|
||||
extern MapSettings omo_12_settings;
|
||||
extern MapSettings omo_13_settings;
|
||||
extern MapSettings omo_14_settings;
|
||||
extern MapSettings omo_15_settings;
|
||||
extern MapSettings omo_16_settings;
|
||||
extern MapSettings omo_17_settings;
|
||||
|
||||
#endif
|
||||
|
@ -61,6 +61,6 @@ INCLUDE_ASM(s32, "world/area_omo/omo_02/D9D510", func_8024043C_D9D90C);
|
||||
|
||||
#include "world/common/enemy/ai/RangedAttackAI.inc.c"
|
||||
|
||||
#include "world/common/todo/SetNpcB5_3.inc.c"
|
||||
#include "world/common/todo/SetInstigatorValue_3.inc.c"
|
||||
|
||||
#include "world/common/todo/GetEncounterEnemyIsOwner.inc.c"
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user