.include "macros/btlcmd.inc" .data _000: Call BATTLE_SUBSCRIPT_PUSH_ATTACKER_AND_DEFENDER _001: TryPursuit _238 UpdateVar OPCODE_SET, BSCRIPT_VAR_POWER_MULTI, 20 CalcCrit CalcDamage ApplyTypeEffectiveness UpdateVar OPCODE_FLAG_OFF, BSCRIPT_VAR_BATTLE_STATUS, BATTLE_STATUS_NO_ATTACK_MESSAGE UpdateVar OPCODE_FLAG_OFF, BSCRIPT_VAR_BATTLE_STATUS, BATTLE_STATUS_MOVE_ANIMATIONS_OFF PrintAttackMessage Wait CompareVarToValue OPCODE_FLAG_SET, BSCRIPT_VAR_MOVE_STATUS_FLAGS, MOVE_STATUS_DID_NOT_HIT, _154 PlayMoveAnimation BATTLER_CATEGORY_ATTACKER Wait CheckSubstitute BATTLER_CATEGORY_DEFENDER, _108 UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_TEMP_DATA, BSCRIPT_VAR_DAMAGE UpdateVar OPCODE_MUL, BSCRIPT_VAR_TEMP_DATA, -1 CompareMonDataToVar OPCODE_LTE, BATTLER_CATEGORY_DEFENDER, BMON_DATA_HP, BSCRIPT_VAR_TEMP_DATA, _051 UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_ATTACKER_SHELL_BELL_DAMAGE_DEALT, BSCRIPT_VAR_DAMAGE GoTo _060 _051: UpdateMonDataFromVar OPCODE_GET, BATTLER_CATEGORY_DEFENDER, BMON_DATA_HP, BSCRIPT_VAR_ATTACKER_SHELL_BELL_DAMAGE_DEALT UpdateVar OPCODE_MUL, BSCRIPT_VAR_ATTACKER_SHELL_BELL_DAMAGE_DEALT, -1 _060: UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_HP_CALC, BSCRIPT_VAR_DAMAGE UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_PHYSICAL_DAMAGE_TAKEN, BSCRIPT_VAR_DAMAGE UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_MSG_BATTLER_TEMP, BSCRIPT_VAR_BATTLER_TARGET CheckHoldOnWith1HP BATTLER_CATEGORY_MSG_TEMP Call BATTLE_SUBSCRIPT_UPDATE_HP Call BATTLE_SUBSCRIPT_CRITICAL_HIT Call BATTLE_SUBSCRIPT_MOVE_FOLLOWUP_MESSAGE CompareMonDataToValue OPCODE_EQU, BATTLER_CATEGORY_DEFENDER, BMON_DATA_HP, 0, _166 TriggerAbilityOnHit _090 CallFromVar BSCRIPT_VAR_TEMP_DATA _090: TriggerHeldItemOnHit _094 CallFromVar BSCRIPT_VAR_TEMP_DATA _094: UpdateVar OPCODE_FLAG_ON, BSCRIPT_VAR_BATTLE_STATUS, BATTLE_STATUS_MOVE_SUCCESSFUL TriggerHeldItemOnPivotMove _102 CallFromVar BSCRIPT_VAR_TEMP_DATA _102: UpdateVar OPCODE_FLAG_OFF, BSCRIPT_VAR_BATTLE_STATUS, BATTLE_STATUS_MOVE_SUCCESSFUL GoTo _158 _108: UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_TEMP_DATA, BSCRIPT_VAR_DAMAGE UpdateVar OPCODE_MUL, BSCRIPT_VAR_TEMP_DATA, -1 CompareMonDataToVar OPCODE_LTE, BATTLER_CATEGORY_DEFENDER, BMON_DATA_SUBSTITUTE_HP, BSCRIPT_VAR_TEMP_DATA, _128 UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_ATTACKER_SHELL_BELL_DAMAGE_DEALT, BSCRIPT_VAR_DAMAGE GoTo _142 _128: UpdateMonData OPCODE_FLAG_OFF, BATTLER_CATEGORY_DEFENDER, BMON_DATA_STATUS2, STATUS2_SUBSTITUTE UpdateMonDataFromVar OPCODE_GET, BATTLER_CATEGORY_DEFENDER, BMON_DATA_SUBSTITUTE_HP, BSCRIPT_VAR_ATTACKER_SHELL_BELL_DAMAGE_DEALT UpdateVar OPCODE_MUL, BSCRIPT_VAR_ATTACKER_SHELL_BELL_DAMAGE_DEALT, -1 _142: UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_MSG_BATTLER_TEMP, BSCRIPT_VAR_BATTLER_TARGET Call BATTLE_SUBSCRIPT_HIT_SUBSTITUTE Call BATTLE_SUBSCRIPT_CRITICAL_HIT Call BATTLE_SUBSCRIPT_MOVE_FOLLOWUP_MESSAGE GoTo _158 _154: WaitButtonABTime 15 Call BATTLE_SUBSCRIPT_MISSED _158: Call BATTLE_SUBSCRIPT_POP_ATTACKER_AND_DEFENDER UpdateVarFromVar OPCODE_GET, BSCRIPT_VAR_MOVE_NO_TEMP, BSCRIPT_VAR_MOVE_NO_CUR GoTo _001 _166: Call BATTLE_SUBSCRIPT_FAINT_CHECK_DESTINY_BOND TriggerAbilityOnHit _172 CallFromVar BSCRIPT_VAR_TEMP_DATA _172: TriggerHeldItemOnHit _176 CallFromVar BSCRIPT_VAR_TEMP_DATA _176: UpdateVar OPCODE_FLAG_ON, BSCRIPT_VAR_BATTLE_STATUS, BATTLE_STATUS_MOVE_SUCCESSFUL TriggerHeldItemOnPivotMove _184 CallFromVar BSCRIPT_VAR_TEMP_DATA _184: UpdateVar OPCODE_FLAG_OFF, BSCRIPT_VAR_BATTLE_STATUS, BATTLE_STATUS_MOVE_SUCCESSFUL UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_TEMP_DATA, BSCRIPT_VAR_BATTLER_FAINTED UpdateVar OPCODE_SET, BSCRIPT_VAR_BATTLER_FAINTED, BATTLER_PLAYER UpdateVarFromVar OPCODE_SET, BSCRIPT_VAR_CALC_TEMP, BSCRIPT_VAR_BATTLE_STATUS_2 UpdateVar OPCODE_RIGHT_SHIFT, BSCRIPT_VAR_CALC_TEMP, 0x0000001C UpdateVar OPCODE_FLAG_OFF, BSCRIPT_VAR_BATTLE_STATUS_2, BATTLE_STATUS2_EXP_GAIN _208: CompareVarToValue OPCODE_FLAG_NOT, BSCRIPT_VAR_CALC_TEMP, 0x00000001, _215 Call BATTLE_SUBSCRIPT_GRANT_EXP _215: UpdateVar OPCODE_ADD, BSCRIPT_VAR_BATTLER_FAINTED, BATTLER_ENEMY UpdateVar OPCODE_RIGHT_SHIFT, BSCRIPT_VAR_CALC_TEMP, 0x00000001 CompareVarToValue OPCODE_NEQ, BSCRIPT_VAR_CALC_TEMP, 0x00000000, _208 UpdateVarFromVar OPCODE_SUB_TO_ZERO, BSCRIPT_VAR_FIELD_CONDITION, BSCRIPT_VAR_TEMP_DATA Call BATTLE_SUBSCRIPT_POP_ATTACKER_AND_DEFENDER UpdateVarFromVar OPCODE_GET, BSCRIPT_VAR_MOVE_NO_TEMP, BSCRIPT_VAR_MOVE_NO_CUR _238: End