more battle labels

This commit is contained in:
DizzyEggg 2017-11-26 17:15:28 +01:00
parent 8c30c42c36
commit 1bb5b1fd07
6 changed files with 362 additions and 358 deletions

View File

@ -745,7 +745,7 @@ BattleScript_EffectLightScreen::
attackstring attackstring
ppreduce ppreduce
setlightscreen setlightscreen
goto BattleScript_82D928C goto BattleScript_PrintReflectLightScreenSafeguardString
BattleScript_EffectTriAttack:: BattleScript_EffectTriAttack::
setmoveeffect EFFECT_TRI_ATTACK setmoveeffect EFFECT_TRI_ATTACK
@ -755,8 +755,8 @@ BattleScript_EffectRest::
attackcanceler attackcanceler
attackstring attackstring
ppreduce ppreduce
jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_82D8FD6 jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_RestIsAlreadyAsleep
jumpifcantmakeasleep BattleScript_82D8FC6 jumpifcantmakeasleep BattleScript_RestCantSleep
trysetrest BattleScript_AlreadyAtFullHp trysetrest BattleScript_AlreadyAtFullHp
pause 0x20 pause 0x20
printfromtable gRestUsedStringIds printfromtable gRestUsedStringIds
@ -765,13 +765,13 @@ BattleScript_EffectRest::
waitstate waitstate
goto BattleScript_PresentHealTarget goto BattleScript_PresentHealTarget
BattleScript_82D8FC6:: BattleScript_RestCantSleep::
pause 0x40 pause 0x40
printfromtable gUproarAwakeStringIds printfromtable gUproarAwakeStringIds
waitmessage 0x40 waitmessage 0x40
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82D8FD6:: BattleScript_RestIsAlreadyAsleep::
various ATTACKER, 0x17 various ATTACKER, 0x17
pause 0x20 pause 0x20
printstring STRINGID_PKMNALREADYASLEEP2 printstring STRINGID_PKMNALREADYASLEEP2
@ -795,13 +795,13 @@ BattleScript_KOFail::
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_EffectRazorWind:: BattleScript_EffectRazorWind::
jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_82D9040 jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn
jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_82D9040 jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn
setbyte sTWOTURN_STRINGID, 0x0 setbyte sTWOTURN_STRINGID, 0x0
call BattleScriptFirstChargingTurn call BattleScriptFirstChargingTurn
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82D9040:: BattleScript_TwoTurnMovesSecondTurn::
attackcanceler attackcanceler
setmoveeffect EFFECT_CHARGING setmoveeffect EFFECT_CHARGING
setbyte sANIM_TURN, 0x1 setbyte sANIM_TURN, 0x1
@ -847,11 +847,11 @@ BattleScript_EffectDragonRage::
goto BattleScript_HitFromAtkAnimation goto BattleScript_HitFromAtkAnimation
BattleScript_EffectTrap:: BattleScript_EffectTrap::
jumpifnotmove MOVE_WHIRLPOOL, BattleScript_82D9105 jumpifnotmove MOVE_WHIRLPOOL, BattleScript_DoWrapEffect
jumpifnostatus3 TARGET, STATUS3_UNDERWATER, BattleScript_82D9105 jumpifnostatus3 TARGET, STATUS3_UNDERWATER, BattleScript_DoWrapEffect
orword gHitMarker, HITMARKER_IGNORE_UNDERWATER orword gHitMarker, HITMARKER_IGNORE_UNDERWATER
setbyte sDMG_MULTIPLIER, 0x2 setbyte sDMG_MULTIPLIER, 0x2
BattleScript_82D9105:: BattleScript_DoWrapEffect::
setmoveeffect EFFECT_WRAP setmoveeffect EFFECT_WRAP
goto BattleScript_EffectHit goto BattleScript_EffectHit
@ -996,7 +996,7 @@ BattleScript_EffectReflect::
attackstring attackstring
ppreduce ppreduce
setreflect setreflect
BattleScript_82D928C:: BattleScript_PrintReflectLightScreenSafeguardString::
attackanimation attackanimation
waitanimation waitanimation
printfromtable gReflectLightScreenSafeguardStringIds printfromtable gReflectLightScreenSafeguardStringIds
@ -1082,8 +1082,8 @@ BattleScript_EffectAccuracyDownHit::
goto BattleScript_EffectHit goto BattleScript_EffectHit
BattleScript_EffectSkyAttack:: BattleScript_EffectSkyAttack::
jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_82D9040 jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn
jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_82D9040 jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn
setbyte sTWOTURN_STRINGID, 0x3 setbyte sTWOTURN_STRINGID, 0x3
call BattleScriptFirstChargingTurn call BattleScriptFirstChargingTurn
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
@ -1107,21 +1107,21 @@ BattleScript_EffectSubstitute::
ppreduce ppreduce
attackstring attackstring
waitstate waitstate
jumpifstatus2 ATTACKER, STATUS2_SUBSTITUTE, BattleScript_82D943E jumpifstatus2 ATTACKER, STATUS2_SUBSTITUTE, BattleScript_AlreadyHasSubstitute
setsubstitute setsubstitute
jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0x1, BattleScript_82D942B jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0x1, BattleScript_SubstituteAnim
pause 0x20 pause 0x20
goto BattleScript_82D9431 goto BattleScript_SubstituteString
BattleScript_82D942B:: BattleScript_SubstituteAnim::
attackanimation attackanimation
waitanimation waitanimation
healthbarupdate ATTACKER healthbarupdate ATTACKER
datahpupdate ATTACKER datahpupdate ATTACKER
BattleScript_82D9431:: BattleScript_SubstituteString::
printfromtable gSubsituteUsedStringIds printfromtable gSubsituteUsedStringIds
waitmessage 0x40 waitmessage 0x40
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82D943E:: BattleScript_AlreadyHasSubstitute::
various ATTACKER, 0x17 various ATTACKER, 0x17
pause 0x20 pause 0x20
printstring STRINGID_PKMNHASSUBSTITUTE printstring STRINGID_PKMNHASSUBSTITUTE
@ -1180,8 +1180,8 @@ BattleScript_EffectLeechSeed::
pause 0x20 pause 0x20
ppreduce ppreduce
jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed
accuracycheck BattleScript_82D94E5, ACC_CURR_MOVE accuracycheck BattleScript_DoLeechSeed, ACC_CURR_MOVE
BattleScript_82D94E5:: BattleScript_DoLeechSeed::
setseeded setseeded
attackanimation attackanimation
waitanimation waitanimation
@ -1276,16 +1276,16 @@ BattleScript_EffectPainSplit::
BattleScript_EffectSnore:: BattleScript_EffectSnore::
attackcanceler attackcanceler
jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_82D95CE jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_SnoreIsAsleep
attackstring attackstring
ppreduce ppreduce
goto BattleScript_ButItFailed goto BattleScript_ButItFailed
BattleScript_82D95CE:: BattleScript_SnoreIsAsleep::
jumpifhalfword EQUAL, gOriginallyUsedMove, MOVE_SLEEP_TALK, BattleScript_82D95E2 jumpifhalfword EQUAL, gOriginallyUsedMove, MOVE_SLEEP_TALK, BattleScript_DoSnore
printstring STRINGID_PKMNFASTASLEEP printstring STRINGID_PKMNFASTASLEEP
waitmessage 0x40 waitmessage 0x40
statusanimation ATTACKER statusanimation ATTACKER
BattleScript_82D95E2:: BattleScript_DoSnore::
attackstring attackstring
ppreduce ppreduce
accuracycheck BattleScript_MoveMissedPause, ACC_CURR_MOVE accuracycheck BattleScript_MoveMissedPause, ACC_CURR_MOVE
@ -1388,15 +1388,15 @@ BattleScript_EffectHealBell::
waitanimation waitanimation
printfromtable gPartyStatusHealStringIds printfromtable gPartyStatusHealStringIds
waitmessage 0x40 waitmessage 0x40
jumpifnotmove MOVE_HEAL_BELL, BattleScript_82D96FE jumpifnotmove MOVE_HEAL_BELL, BattleScript_PartyHealEnd
jumpifbyte NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x1, BattleScript_82D96ED jumpifbyte NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x1, BattleScript_CheckHealBellMon2Unaffected
printstring STRINGID_PKMNSXBLOCKSY printstring STRINGID_PKMNSXBLOCKSY
waitmessage 0x40 waitmessage 0x40
BattleScript_82D96ED:: BattleScript_CheckHealBellMon2Unaffected::
jumpifbyte NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x2, BattleScript_82D96FE jumpifbyte NO_COMMON_BITS, cMULTISTRING_CHOOSER, 0x2, BattleScript_PartyHealEnd
printstring STRINGID_PKMNSXBLOCKSY2 printstring STRINGID_PKMNSXBLOCKSY2
waitmessage 0x40 waitmessage 0x40
BattleScript_82D96FE:: BattleScript_PartyHealEnd::
updatestatusicon ATTACKER_WITH_PARTNER updatestatusicon ATTACKER_WITH_PARTNER
waitstate waitstate
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
@ -1411,9 +1411,9 @@ BattleScript_EffectTripleKick::
BattleScript_TripleKickLoop:: BattleScript_TripleKickLoop::
jumpifhasnohp ATTACKER, BattleScript_TripleKickEnd jumpifhasnohp ATTACKER, BattleScript_TripleKickEnd
jumpifhasnohp TARGET, BattleScript_TripleKickNoMoreHits jumpifhasnohp TARGET, BattleScript_TripleKickNoMoreHits
jumpifhalfword EQUAL, gOriginallyUsedMove, MOVE_SLEEP_TALK, BattleScript_82D973A jumpifhalfword EQUAL, gOriginallyUsedMove, MOVE_SLEEP_TALK, BattleScript_DoTripleKickAttack
jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_TripleKickNoMoreHits jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_TripleKickNoMoreHits
BattleScript_82D973A:: BattleScript_DoTripleKickAttack::
accuracycheck BattleScript_TripleKickNoMoreHits, ACC_CURR_MOVE accuracycheck BattleScript_TripleKickNoMoreHits, ACC_CURR_MOVE
movevaluescleanup movevaluescleanup
addbyte sTRIPLE_KICK_POWER, 10 addbyte sTRIPLE_KICK_POWER, 10
@ -1613,16 +1613,16 @@ BattleScript_EffectSandstorm::
attackstring attackstring
ppreduce ppreduce
setsandstorm setsandstorm
goto BattleScript_82D9B41 goto BattleScript_MoveWeatherChange
BattleScript_EffectRollout:: BattleScript_EffectRollout::
attackcanceler attackcanceler
attackstring attackstring
jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_82D99CD jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_RolloutCheckAccuracy
ppreduce ppreduce
BattleScript_82D99CD:: BattleScript_RolloutCheckAccuracy::
accuracycheck BattleScript_82D99D4, ACC_CURR_MOVE accuracycheck BattleScript_RolloutHit, ACC_CURR_MOVE
BattleScript_82D99D4:: BattleScript_RolloutHit::
typecalc2 typecalc2
rolloutdamagecalculation rolloutdamagecalculation
goto BattleScript_HitFromCritCalc goto BattleScript_HitFromCritCalc
@ -1637,13 +1637,13 @@ BattleScript_EffectSwagger::
attackanimation attackanimation
waitanimation waitanimation
setstatchanger ATK, 2, FALSE setstatchanger ATK, 2, FALSE
statbuffchange 0x1, BattleScript_82D9A1E statbuffchange 0x1, BattleScript_SwaggerTryConfuse
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82D9A1E jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_SwaggerTryConfuse
setgraphicalstatchangevalues setgraphicalstatchangevalues
playanimation TARGET, ANIM_STATS_CHANGE, sANIM_ARG1 playanimation TARGET, ANIM_STATS_CHANGE, sANIM_ARG1
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82D9A1E:: BattleScript_SwaggerTryConfuse::
jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents
jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected
setmoveeffect EFFECT_CONFUSION setmoveeffect EFFECT_CONFUSION
@ -1654,13 +1654,13 @@ BattleScript_EffectFuryCutter::
attackcanceler attackcanceler
attackstring attackstring
ppreduce ppreduce
accuracycheck BattleScript_82D9A43, ACC_CURR_MOVE accuracycheck BattleScript_FuryCutterHit, ACC_CURR_MOVE
BattleScript_82D9A43:: BattleScript_FuryCutterHit::
furycuttercalc furycuttercalc
critcalc critcalc
damagecalc damagecalc
typecalc typecalc
jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_82D9A43 jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_FuryCutterHit
adjustnormaldamage adjustnormaldamage
goto BattleScript_HitFromAtkAnimation goto BattleScript_HitFromAtkAnimation
@ -1696,7 +1696,7 @@ BattleScript_EffectSafeguard::
attackstring attackstring
ppreduce ppreduce
setsafeguard setsafeguard
goto BattleScript_82D928C goto BattleScript_PrintReflectLightScreenSafeguardString
BattleScript_EffectThawHit:: BattleScript_EffectThawHit::
setmoveeffect EFFECT_BURN setmoveeffect EFFECT_BURN
@ -1768,7 +1768,7 @@ BattleScript_EffectRainDance::
attackstring attackstring
ppreduce ppreduce
setrain setrain
BattleScript_82D9B41:: BattleScript_MoveWeatherChange::
attackanimation attackanimation
waitanimation waitanimation
printfromtable gMoveWeatherChangeStringIds printfromtable gMoveWeatherChangeStringIds
@ -1781,7 +1781,7 @@ BattleScript_EffectSunnyDay::
attackstring attackstring
ppreduce ppreduce
setsunny setsunny
goto BattleScript_82D9B41 goto BattleScript_MoveWeatherChange
BattleScript_EffectDefenseUpHit:: BattleScript_EffectDefenseUpHit::
setmoveeffect EFFECT_DEF_PLUS_1 | AFFECTS_USER setmoveeffect EFFECT_DEF_PLUS_1 | AFFECTS_USER
@ -1831,25 +1831,25 @@ BattleScript_EffectMirrorCoat::
goto BattleScript_HitFromAtkAnimation goto BattleScript_HitFromAtkAnimation
BattleScript_EffectSkullBash:: BattleScript_EffectSkullBash::
jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_82D9040 jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn
jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_82D9040 jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn
setbyte sTWOTURN_STRINGID, 0x2 setbyte sTWOTURN_STRINGID, 0x2
call BattleScriptFirstChargingTurn call BattleScriptFirstChargingTurn
setstatchanger DEF, 1, FALSE setstatchanger DEF, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82D9C16 statbuffchange AFFECTS_USER | 0x1, BattleScript_SkullBashEnd
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82D9C16 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_SkullBashEnd
setgraphicalstatchangevalues setgraphicalstatchangevalues
playanimation ATTACKER, ANIM_STATS_CHANGE, sANIM_ARG1 playanimation ATTACKER, ANIM_STATS_CHANGE, sANIM_ARG1
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82D9C16:: BattleScript_SkullBashEnd::
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_EffectTwister:: BattleScript_EffectTwister::
jumpifnostatus3 TARGET, STATUS3_ON_AIR, BattleScript_82D9C35 jumpifnostatus3 TARGET, STATUS3_ON_AIR, BattleScript_FlinchEffect
orword gHitMarker, HITMARKER_IGNORE_ON_AIR orword gHitMarker, HITMARKER_IGNORE_ON_AIR
setbyte sDMG_MULTIPLIER, 0x2 setbyte sDMG_MULTIPLIER, 0x2
BattleScript_82D9C35:: BattleScript_FlinchEffect::
setmoveeffect EFFECT_FLINCH setmoveeffect EFFECT_FLINCH
goto BattleScript_EffectHit goto BattleScript_EffectHit
@ -1864,7 +1864,6 @@ BattleScript_82D9C44::
orword gHitMarker, HITMARKER_IGNORE_UNDERGROUND orword gHitMarker, HITMARKER_IGNORE_UNDERGROUND
setbyte sDMG_MULTIPLIER, 0x2 setbyte sDMG_MULTIPLIER, 0x2
goto BattleScript_82D9C73 goto BattleScript_82D9C73
BattleScript_82D9C64:: BattleScript_82D9C64::
bicword gHitMarker, HITMARKER_IGNORE_UNDERGROUND bicword gHitMarker, HITMARKER_IGNORE_UNDERGROUND
setbyte sDMG_MULTIPLIER, 0x1 setbyte sDMG_MULTIPLIER, 0x1
@ -1892,7 +1891,6 @@ BattleScript_82D9C73::
moveend 0x2, 0x10 moveend 0x2, 0x10
jumpifnexttargetvalid BattleScript_82D9C44 jumpifnexttargetvalid BattleScript_82D9C44
end end
BattleScript_82D9CAC:: BattleScript_82D9CAC::
pause 0x20 pause 0x20
typecalc typecalc
@ -1922,17 +1920,17 @@ BattleScript_EffectGust::
goto BattleScript_EffectHit goto BattleScript_EffectHit
BattleScript_EffectStomp:: BattleScript_EffectStomp::
jumpifnostatus3 TARGET, STATUS3_MINIMIZED, BattleScript_82D9C35 jumpifnostatus3 TARGET, STATUS3_MINIMIZED, BattleScript_FlinchEffect
setbyte sDMG_MULTIPLIER, 0x2 setbyte sDMG_MULTIPLIER, 0x2
goto BattleScript_82D9C35 goto BattleScript_FlinchEffect
BattleScript_EffectSolarbeam:: BattleScript_EffectSolarbeam::
jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_82D9D28 jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarbeamDecideTurn
jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_82D9D28 jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarbeamDecideTurn
jumpifhalfword COMMON_BITS, gBattleWeather, WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT, BattleScript_SolarbeamOnFirstTurn jumpifhalfword COMMON_BITS, gBattleWeather, WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT, BattleScript_SolarbeamOnFirstTurn
BattleScript_82D9D28:: BattleScript_SolarbeamDecideTurn::
jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_82D9040 jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn
jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_82D9040 jumpifword COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn
setbyte sTWOTURN_STRINGID, 0x1 setbyte sTWOTURN_STRINGID, 0x1
call BattleScriptFirstChargingTurn call BattleScriptFirstChargingTurn
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
@ -1941,7 +1939,7 @@ BattleScript_SolarbeamOnFirstTurn::
setmoveeffect EFFECT_CHARGING | AFFECTS_USER setmoveeffect EFFECT_CHARGING | AFFECTS_USER
seteffectprimary seteffectprimary
ppreduce ppreduce
goto BattleScript_82D9040 goto BattleScript_TwoTurnMovesSecondTurn
BattleScript_EffectThunder:: BattleScript_EffectThunder::
setmoveeffect EFFECT_PARALYSIS setmoveeffect EFFECT_PARALYSIS
@ -2027,9 +2025,9 @@ BattleScript_SecondTurnSemiInvulnerable::
setbyte sANIM_TURN, 0x1 setbyte sANIM_TURN, 0x1
clearstatusfromeffect ATTACKER clearstatusfromeffect ATTACKER
orword gHitMarker, HITMARKER_NO_PPDEDUCT orword gHitMarker, HITMARKER_NO_PPDEDUCT
jumpifnotmove MOVE_BOUNCE, BattleScript_82D9EA3 jumpifnotmove MOVE_BOUNCE, BattleScript_SemiInvulnerableTryHit
setmoveeffect EFFECT_PARALYSIS setmoveeffect EFFECT_PARALYSIS
BattleScript_82D9EA3:: BattleScript_SemiInvulnerableTryHit::
accuracycheck BattleScript_SemiInvulnerableMiss, ACC_CURR_MOVE accuracycheck BattleScript_SemiInvulnerableMiss, ACC_CURR_MOVE
clearsemiinvulnerablebit clearsemiinvulnerablebit
goto BattleScript_HitFromAtkString goto BattleScript_HitFromAtkString
@ -2044,11 +2042,11 @@ BattleScript_EffectDefenseCurl::
ppreduce ppreduce
setdefensecurlbit setdefensecurlbit
setstatchanger DEF, 1, FALSE setstatchanger DEF, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82D9ED3 statbuffchange AFFECTS_USER | 0x1, BattleScript_DefenseCurlDoStatUpAnim
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_StatUpPrintString jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_StatUpPrintString
attackanimation attackanimation
waitanimation waitanimation
BattleScript_82D9ED3:: BattleScript_DefenseCurlDoStatUpAnim::
goto BattleScript_StatUpDoAnim goto BattleScript_StatUpDoAnim
BattleScript_EffectSoftboiled:: BattleScript_EffectSoftboiled::
@ -2101,9 +2099,9 @@ BattleScript_EffectUproar::
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
setmoveeffect EFFECT_UPROAR | AFFECTS_USER setmoveeffect EFFECT_UPROAR | AFFECTS_USER
attackstring attackstring
jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_82D9F5A jumpifstatus2 ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_UproarHit
ppreduce ppreduce
BattleScript_82D9F5A:: BattleScript_UproarHit::
nop nop
goto BattleScript_HitFromCritCalc goto BattleScript_HitFromCritCalc
@ -2161,7 +2159,7 @@ BattleScript_EffectHail::
attackstring attackstring
ppreduce ppreduce
sethail sethail
goto BattleScript_82D9B41 goto BattleScript_MoveWeatherChange
BattleScript_EffectTorment:: BattleScript_EffectTorment::
attackcanceler attackcanceler
@ -2185,13 +2183,13 @@ BattleScript_EffectFlatter::
attackanimation attackanimation
waitanimation waitanimation
setstatchanger SPATK, 1, FALSE setstatchanger SPATK, 1, FALSE
statbuffchange 0x1, BattleScript_82DA03A statbuffchange 0x1, BattleScript_FlatterTryConfuse
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA03A jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_FlatterTryConfuse
setgraphicalstatchangevalues setgraphicalstatchangevalues
playanimation TARGET, ANIM_STATS_CHANGE, sANIM_ARG1 playanimation TARGET, ANIM_STATS_CHANGE, sANIM_ARG1
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA03A:: BattleScript_FlatterTryConfuse::
jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_OwnTempoPrevents
jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected
setmoveeffect EFFECT_CONFUSION setmoveeffect EFFECT_CONFUSION
@ -2203,7 +2201,7 @@ BattleScript_EffectWillOWisp::
attackstring attackstring
ppreduce ppreduce
jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed
jumpifstatus TARGET, STATUS_BURN, BattleScript_82DA0BB jumpifstatus TARGET, STATUS_BURN, BattleScript_AlreadyBurned
jumpiftype TARGET, TYPE_FIRE, BattleScript_NotAffected jumpiftype TARGET, TYPE_FIRE, BattleScript_NotAffected
jumpifability TARGET, ABILITY_WATER_VEIL, BattleScript_WaterVeilPrevents jumpifability TARGET, ABILITY_WATER_VEIL, BattleScript_WaterVeilPrevents
jumpifstatus TARGET, STATUS_ANY, BattleScript_ButItFailed jumpifstatus TARGET, STATUS_ANY, BattleScript_ButItFailed
@ -2221,7 +2219,7 @@ BattleScript_WaterVeilPrevents::
call BattleScript_BRNPrevention call BattleScript_BRNPrevention
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82DA0BB:: BattleScript_AlreadyBurned::
various ATTACKER, 0x17 various ATTACKER, 0x17
pause 0x20 pause 0x20
printstring STRINGID_PKMNALREADYHASBURN printstring STRINGID_PKMNALREADYHASBURN
@ -2679,9 +2677,9 @@ BattleScript_EffectTickle::
attackcanceler attackcanceler
attackstring attackstring
ppreduce ppreduce
jumpifstat TARGET, GREATER_THAN, ATK, 0x0, BattleScript_82DA571 jumpifstat TARGET, GREATER_THAN, ATK, 0x0, BattleScript_TickleDoMoveAnim
jumpifstat TARGET, EQUAL, DEF, 0x0, BattleScript_82DA5CF jumpifstat TARGET, EQUAL, DEF, 0x0, BattleScript_CantLowerMultipleStats
BattleScript_82DA571:: BattleScript_TickleDoMoveAnim::
accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE
attackanimation attackanimation
waitanimation waitanimation
@ -2689,21 +2687,21 @@ BattleScript_82DA571::
playstatchangeanimation TARGET, 0x6, 0x5 playstatchangeanimation TARGET, 0x6, 0x5
playstatchangeanimation TARGET, 0x2, 0x1 playstatchangeanimation TARGET, 0x2, 0x1
setstatchanger ATK, 1, TRUE setstatchanger ATK, 1, TRUE
statbuffchange 0x1, BattleScript_82DA5A7 statbuffchange 0x1, BattleScript_TickleTryLowerDef
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA5A7 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_TickleTryLowerDef
printfromtable gStatDownStringIds printfromtable gStatDownStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA5A7:: BattleScript_TickleTryLowerDef::
playstatchangeanimation TARGET, 0x4, 0x1 playstatchangeanimation TARGET, 0x4, 0x1
setstatchanger DEF, 1, TRUE setstatchanger DEF, 1, TRUE
statbuffchange 0x1, BattleScript_82DA5CA statbuffchange 0x1, BattleScript_TickleEnd
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA5CA jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_TickleEnd
printfromtable gStatDownStringIds printfromtable gStatDownStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA5CA:: BattleScript_TickleEnd::
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82DA5CF:: BattleScript_CantLowerMultipleStats::
pause 0x20 pause 0x20
orbyte gBattleMoveFlags, MOVESTATUS_FAILED orbyte gBattleMoveFlags, MOVESTATUS_FAILED
printstring STRINGID_STATSWONTDECREASE2 printstring STRINGID_STATSWONTDECREASE2
@ -2714,25 +2712,25 @@ BattleScript_EffectCosmicPower::
attackcanceler attackcanceler
attackstring attackstring
ppreduce ppreduce
jumpifstat ATTACKER, LESS_THAN, DEF, 0xC, BattleScript_82DA5F8 jumpifstat ATTACKER, LESS_THAN, DEF, 0xC, BattleScript_CosmicPowerDoMoveAnim
jumpifstat ATTACKER, EQUAL, SPDEF, 0xC, BattleScript_CantRaiseMultipleStats jumpifstat ATTACKER, EQUAL, SPDEF, 0xC, BattleScript_CantRaiseMultipleStats
BattleScript_82DA5F8:: BattleScript_CosmicPowerDoMoveAnim::
attackanimation attackanimation
waitanimation waitanimation
setbyte sFIELD_1B, 0x0 setbyte sFIELD_1B, 0x0
playstatchangeanimation ATTACKER, 0x24, 0x0 playstatchangeanimation ATTACKER, 0x24, 0x0
setstatchanger DEF, 1, FALSE setstatchanger DEF, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA623 statbuffchange AFFECTS_USER | 0x1, BattleScript_CosmicPowerTrySpDef
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA623 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CosmicPowerTrySpDef
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA623:: BattleScript_CosmicPowerTrySpDef::
setstatchanger SPDEF, 1, FALSE setstatchanger SPDEF, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA642 statbuffchange AFFECTS_USER | 0x1, BattleScript_CosmicPowerEnd
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA642 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CosmicPowerEnd
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA642:: BattleScript_CosmicPowerEnd::
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_EffectSkyUppercut:: BattleScript_EffectSkyUppercut::
@ -2743,50 +2741,50 @@ BattleScript_EffectBulkUp::
attackcanceler attackcanceler
attackstring attackstring
ppreduce ppreduce
jumpifstat ATTACKER, LESS_THAN, ATK, 0xC, BattleScript_82DA66A jumpifstat ATTACKER, LESS_THAN, ATK, 0xC, BattleScript_BulkUpDoMoveAnim
jumpifstat ATTACKER, EQUAL, DEF, 0xC, BattleScript_CantRaiseMultipleStats jumpifstat ATTACKER, EQUAL, DEF, 0xC, BattleScript_CantRaiseMultipleStats
BattleScript_82DA66A:: BattleScript_BulkUpDoMoveAnim::
attackanimation attackanimation
waitanimation waitanimation
setbyte sFIELD_1B, 0x0 setbyte sFIELD_1B, 0x0
playstatchangeanimation ATTACKER, 0x6, 0x0 playstatchangeanimation ATTACKER, 0x6, 0x0
setstatchanger ATK, 1, FALSE setstatchanger ATK, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA695 statbuffchange AFFECTS_USER | 0x1, BattleScript_BulkUpTryDef
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA695 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_BulkUpTryDef
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA695:: BattleScript_BulkUpTryDef::
setstatchanger DEF, 1, FALSE setstatchanger DEF, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA6B4 statbuffchange AFFECTS_USER | 0x1, BattleScript_BulkUpEnd
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA6B4 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_BulkUpEnd
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA6B4:: BattleScript_BulkUpEnd::
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_EffectCalmMind:: BattleScript_EffectCalmMind::
attackcanceler attackcanceler
attackstring attackstring
ppreduce ppreduce
jumpifstat ATTACKER, LESS_THAN, SPATK, 0xC, BattleScript_82DA6CE jumpifstat ATTACKER, LESS_THAN, SPATK, 0xC, BattleScript_CalmMindDoMoveAnim
jumpifstat ATTACKER, EQUAL, SPDEF, 0xC, BattleScript_CantRaiseMultipleStats jumpifstat ATTACKER, EQUAL, SPDEF, 0xC, BattleScript_CantRaiseMultipleStats
BattleScript_82DA6CE:: BattleScript_CalmMindDoMoveAnim::
attackanimation attackanimation
waitanimation waitanimation
setbyte sFIELD_1B, 0x0 setbyte sFIELD_1B, 0x0
playstatchangeanimation ATTACKER, 0x30, 0x0 playstatchangeanimation ATTACKER, 0x30, 0x0
setstatchanger SPATK, 1, FALSE setstatchanger SPATK, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA6F9 statbuffchange AFFECTS_USER | 0x1, BattleScript_CalmMindTrySpDef
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA6F9 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CalmMindTrySpDef
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA6F9:: BattleScript_CalmMindTrySpDef::
setstatchanger SPDEF, 1, FALSE setstatchanger SPDEF, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA718 statbuffchange AFFECTS_USER | 0x1, BattleScript_CalmMindEnd
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA718 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_CalmMindEnd
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA718:: BattleScript_CalmMindEnd::
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_CantRaiseMultipleStats:: BattleScript_CantRaiseMultipleStats::
@ -2800,25 +2798,25 @@ BattleScript_EffectDragonDance::
attackcanceler attackcanceler
attackstring attackstring
ppreduce ppreduce
jumpifstat ATTACKER, LESS_THAN, ATK, 0xC, BattleScript_82DA746 jumpifstat ATTACKER, LESS_THAN, ATK, 0xC, BattleScript_DragonDanceDoMoveAnim
jumpifstat ATTACKER, EQUAL, SPEED, 0xC, BattleScript_CantRaiseMultipleStats jumpifstat ATTACKER, EQUAL, SPEED, 0xC, BattleScript_CantRaiseMultipleStats
BattleScript_82DA746:: BattleScript_DragonDanceDoMoveAnim::
attackanimation attackanimation
waitanimation waitanimation
setbyte sFIELD_1B, 0x0 setbyte sFIELD_1B, 0x0
playstatchangeanimation ATTACKER, 0xA, 0x0 playstatchangeanimation ATTACKER, 0xA, 0x0
setstatchanger ATK, 1, FALSE setstatchanger ATK, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA771 statbuffchange AFFECTS_USER | 0x1, BattleScript_DragonDanceTrySpeed
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA771 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_DragonDanceTrySpeed
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA771:: BattleScript_DragonDanceTrySpeed::
setstatchanger SPEED, 1, FALSE setstatchanger SPEED, 1, FALSE
statbuffchange AFFECTS_USER | 0x1, BattleScript_82DA790 statbuffchange AFFECTS_USER | 0x1, BattleScript_DragonDanceEnd
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DA790 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_DragonDanceEnd
printfromtable gStatUpStringIds printfromtable gStatUpStringIds
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA790:: BattleScript_DragonDanceEnd::
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_EffectCamouflage:: BattleScript_EffectCamouflage::
@ -2964,23 +2962,22 @@ BattleScript_PayDayMoneyAndPickUpItems::
end2 end2
BattleScript_LocalBattleLost:: BattleScript_LocalBattleLost::
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_DOME, BattleScript_82DA9BE jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_DOME, BattleScript_CheckDomeDrew
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_x100000 | BATTLE_TYPE_PYRAMID, BattleScript_82DA9C9 jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_x100000 | BATTLE_TYPE_PYRAMID, BattleScript_LocalBattleLostPrintTrainersWinText
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_x4000000, BattleScript_82DA9C9 jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_x4000000, BattleScript_LocalBattleLostPrintTrainersWinText
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_EREADER_TRAINER, BattleScript_82DA9BD jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_EREADER_TRAINER, BattleScript_LocalBattleLostEnd
jumpifhalfword EQUAL, gTrainerBattleOpponent_A, 0x400, BattleScript_82DA9BD jumpifhalfword EQUAL, gTrainerBattleOpponent_A, 0x400, BattleScript_LocalBattleLostEnd
BattleScript_82DA9B1:: BattleScript_LocalBattleLostPrintWhiteOut::
printstring STRINGID_PLAYERWHITEOUT printstring STRINGID_PLAYERWHITEOUT
waitmessage 0x40 waitmessage 0x40
printstring STRINGID_PLAYERWHITEOUT2 printstring STRINGID_PLAYERWHITEOUT2
waitmessage 0x40 waitmessage 0x40
BattleScript_82DA9BD:: BattleScript_LocalBattleLostEnd::
end2 end2
BattleScript_CheckDomeDrew::
BattleScript_82DA9BE:: jumpifbyte EQUAL, gBattleOutcome, DREW, BattleScript_LocalBattleLostEnd_
jumpifbyte EQUAL, gBattleOutcome, DREW, BattleScript_82DAA0A BattleScript_LocalBattleLostPrintTrainersWinText::
BattleScript_82DA9C9:: jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_LocalBattleLostPrintWhiteOut
jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_82DA9B1
various ATTACKER, VARIOUS_RETURN_OPPONENT_MON1 various ATTACKER, VARIOUS_RETURN_OPPONENT_MON1
waitstate waitstate
various ATTACKER, VARIOUS_RETURN_OPPONENT_MON2 various ATTACKER, VARIOUS_RETURN_OPPONENT_MON2
@ -2988,15 +2985,15 @@ BattleScript_82DA9C9::
trainerslidein ATTACKER trainerslidein ATTACKER
waitstate waitstate
printstring STRINGID_TRAINER1WINTEXT printstring STRINGID_TRAINER1WINTEXT
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_x800000, BattleScript_82DAA01 jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_x800000, BattleScript_LocalBattleLostDoTrainer2WinText
jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_82DAA0A jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalBattleLostEnd_
BattleScript_82DAA01:: BattleScript_LocalBattleLostDoTrainer2WinText::
trainerslideout IDENTITY_OPPONENT_MON1 trainerslideout IDENTITY_OPPONENT_MON1
waitstate waitstate
trainerslidein GBANK_1 trainerslidein GBANK_1
waitstate waitstate
printstring STRINGID_TRAINER2WINTEXT printstring STRINGID_TRAINER2WINTEXT
BattleScript_82DAA0A:: BattleScript_LocalBattleLostEnd_::
end2 end2
BattleScript_82DAA0B:: BattleScript_82DAA0B::
@ -3022,9 +3019,9 @@ BattleScript_LinkBattleWonOrLost::
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_BATTLE_TOWER, BattleScript_82DAA5C jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_BATTLE_TOWER, BattleScript_82DAA5C
printstring STRINGID_BATTLEEND printstring STRINGID_BATTLEEND
waitmessage 0x40 waitmessage 0x40
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_RECORDED, BattleScript_82DAA58 jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_RECORDED, BattleScript_LinkBattleWonOrLostWaitEnd
atk57 atk57
BattleScript_82DAA58:: BattleScript_LinkBattleWonOrLostWaitEnd::
waitmessage 0x40 waitmessage 0x40
end2 end2
@ -3051,7 +3048,6 @@ BattleScript_FrontierTrainerBattleWon::
jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_82DAAAB jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_82DAAAB
printstring STRINGID_PLAYERDEFEATEDTRAINER1 printstring STRINGID_PLAYERDEFEATEDTRAINER1
goto BattleScript_82DAAAE goto BattleScript_82DAAAE
BattleScript_82DAAAB:: BattleScript_82DAAAB::
printstring STRINGID_TWOENEMIESDEFEATED printstring STRINGID_TWOENEMIESDEFEATED
BattleScript_82DAAAE:: BattleScript_82DAAAE::
@ -3104,7 +3100,7 @@ BattleScript_82DAB0B::
printselectionstringfromtable gNoEscapeStringIds printselectionstringfromtable gNoEscapeStringIds
endselectionscript endselectionscript
BattleScript_82DAB11:: BattleScript_PrintFullBox::
printselectionstring STRINGID_BOXISFULL printselectionstring STRINGID_BOXISFULL
endselectionscript endselectionscript
@ -3216,23 +3212,23 @@ BattleScript_LearnedNewMove::
BattleScript_LearnMoveReturn:: BattleScript_LearnMoveReturn::
return return
BattleScript_82DAC2C:: BattleScript_RainContinuesOrEnds::
printfromtable gRainContinuesStringIds printfromtable gRainContinuesStringIds
waitmessage 0x40 waitmessage 0x40
jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_82DAC46 jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_RainContinuesOrEndsEnd
playanimation ATTACKER, ANIM_RAIN_CONTINUES, NULL playanimation ATTACKER, ANIM_RAIN_CONTINUES, NULL
BattleScript_82DAC46:: BattleScript_RainContinuesOrEndsEnd::
end2 end2
BattleScript_82DAC47:: BattleScript_DamagingWeatherContinues::
printfromtable gSandStormHailContinuesStringIds printfromtable gSandStormHailContinuesStringIds
waitmessage 0x40 waitmessage 0x40
playanimation2 ATTACKER, sANIM_ARG1, NULL playanimation2 ATTACKER, sANIM_ARG1, NULL
setbyte gBattleCommunication, 0x0 setbyte gBattleCommunication, 0x0
BattleScript_82DAC5F:: BattleScript_DamagingWeatherLoop::
copyarraywithindex gBankAttacker, gBanksByTurnOrder, gBattleCommunication, 0x1 copyarraywithindex gBankAttacker, gBanksByTurnOrder, gBattleCommunication, 0x1
weatherdamage weatherdamage
jumpifword EQUAL, gBattleMoveDamage, 0x0, BattleScript_82DACA0 jumpifword EQUAL, gBattleMoveDamage, 0x0, BattleScript_DamagingWeatherLoopIncrement
printfromtable gSandStormHailDmgStringIds printfromtable gSandStormHailDmgStringIds
waitmessage 0x40 waitmessage 0x40
orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE
@ -3241,38 +3237,38 @@ BattleScript_82DAC5F::
healthbarupdate ATTACKER healthbarupdate ATTACKER
datahpupdate ATTACKER datahpupdate ATTACKER
tryfaintmon ATTACKER, FALSE, NULL tryfaintmon ATTACKER, FALSE, NULL
atk24 BattleScript_82DACA0 atk24 BattleScript_DamagingWeatherLoopIncrement
BattleScript_82DACA0:: BattleScript_DamagingWeatherLoopIncrement::
jumpifbyte NOT_EQUAL, gBattleOutcome, 0, BattleScript_82DACBF jumpifbyte NOT_EQUAL, gBattleOutcome, 0, BattleScript_DamagingWeatherContinuesEnd
addbyte gBattleCommunication, 0x1 addbyte gBattleCommunication, 0x1
jumpifbytenotequal gBattleCommunication, gNoOfAllBanks, BattleScript_82DAC5F jumpifbytenotequal gBattleCommunication, gNoOfAllBanks, BattleScript_DamagingWeatherLoop
BattleScript_82DACBF:: BattleScript_DamagingWeatherContinuesEnd::
bicword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE bicword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 | HITMARKER_GRUDGE
end2 end2
BattleScript_82DACC9:: BattleScript_SandStormHailEnds::
printfromtable gSandStormHailEndStringIds printfromtable gSandStormHailEndStringIds
waitmessage 0x40 waitmessage 0x40
end2 end2
BattleScript_82DACD2:: BattleScript_SunlightContinues::
printstring STRINGID_SUNLIGHTSTRONG printstring STRINGID_SUNLIGHTSTRONG
waitmessage 0x40 waitmessage 0x40
playanimation ATTACKER, ANIM_SUN_CONTINUES, NULL playanimation ATTACKER, ANIM_SUN_CONTINUES, NULL
end2 end2
BattleScript_82DACE0:: BattleScript_SunlightFaded::
printstring STRINGID_SUNLIGHTFADED printstring STRINGID_SUNLIGHTFADED
waitmessage 0x40 waitmessage 0x40
end2 end2
BattleScript_82DACE7:: BattleScript_OverworldWeatherStarts::
printfromtable gWeatherContinuesStringIds printfromtable gWeatherContinuesStringIds
waitmessage 0x40 waitmessage 0x40
playanimation2 ATTACKER, sANIM_ARG1, NULL playanimation2 ATTACKER, sANIM_ARG1, NULL
end3 end3
BattleScript_82DACFA:: BattleScript_SideStatusWoreOff::
printstring STRINGID_PKMNSXWOREOFF printstring STRINGID_PKMNSXWOREOFF
waitmessage 0x40 waitmessage 0x40
end2 end2
@ -3283,7 +3279,7 @@ BattleScript_SafeguardProtected::
waitmessage 0x40 waitmessage 0x40
end2 end2
BattleScript_82DAD0B:: BattleScript_SafeguardEnds::
pause 0x20 pause 0x20
printstring STRINGID_PKMNSAFEGUARDEXPIRED printstring STRINGID_PKMNSAFEGUARDEXPIRED
waitmessage 0x40 waitmessage 0x40
@ -3384,7 +3380,7 @@ BattleScript_MoveUsedIsDisabled::
waitmessage 0x40 waitmessage 0x40
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82DAE1F:: BattleScript_SelectingDisabledMove::
printselectionstring STRINGID_PKMNMOVEISDISABLED printselectionstring STRINGID_PKMNMOVEISDISABLED
endselectionscript endselectionscript
@ -3583,7 +3579,7 @@ BattleScript_NoMovesLeft::
printselectionstring STRINGID_PKMNHASNOMOVESLEFT printselectionstring STRINGID_PKMNHASNOMOVESLEFT
endselectionscript endselectionscript
BattleScript_82DB076:: BattleScript_SelectingMoveWithNoPP::
printselectionstring STRINGID_NOPPLEFT printselectionstring STRINGID_NOPPLEFT
endselectionscript endselectionscript
@ -3594,7 +3590,7 @@ BattleScript_NoPPForMove::
waitmessage 0x40 waitmessage 0x40
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82DB089:: BattleScript_SelectingTormentedMove::
printselectionstring STRINGID_PKMNCANTUSEMOVETORMENT printselectionstring STRINGID_PKMNCANTUSEMOVETORMENT
endselectionscript endselectionscript
@ -3607,7 +3603,7 @@ BattleScript_82DB098::
printstring STRINGID_PKMNCANTUSEMOVETORMENT printstring STRINGID_PKMNCANTUSEMOVETORMENT
goto BattleScript_82DAE2D goto BattleScript_82DAE2D
BattleScript_82DB0A0:: BattleScript_SelectingNotAllowedMoveTaunt::
printselectionstring STRINGID_PKMNCANTUSEMOVETAUNT printselectionstring STRINGID_PKMNCANTUSEMOVETAUNT
endselectionscript endselectionscript
@ -3685,7 +3681,7 @@ BattleScript_MoveUsedIsImprisoned::
waitmessage 0x40 waitmessage 0x40
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82DB181:: BattleScript_SelectingImprisionedMove::
printselectionstring STRINGID_PKMNCANTUSEMOVESEALED printselectionstring STRINGID_PKMNCANTUSEMOVESEALED
endselectionscript endselectionscript
@ -4123,9 +4119,9 @@ BattleScript_MoveHPDrain::
orbyte gBattleMoveFlags, MOVESTATUS_NOTAFFECTED orbyte gBattleMoveFlags, MOVESTATUS_NOTAFFECTED
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
BattleScript_82DB591:: BattleScript_MonMadeMoveUseless_PPLoss::
ppreduce ppreduce
BattleScript_82DB592:: BattleScript_MonMadeMoveUseless::
attackstring attackstring
pause 0x20 pause 0x20
printstring STRINGID_PKMNSXMADEYUSELESS printstring STRINGID_PKMNSXMADEYUSELESS
@ -4247,7 +4243,7 @@ BattleScript_NoItemSteal::
waitmessage 0x40 waitmessage 0x40
return return
BattleScript_82DB68C:: BattleScript_AbilityCuredStatus::
printstring STRINGID_PKMNSXCUREDITSYPROBLEM printstring STRINGID_PKMNSXCUREDITSYPROBLEM
waitmessage 0x40 waitmessage 0x40
updatestatusicon SCRIPTING_BANK updatestatusicon SCRIPTING_BANK
@ -4260,7 +4256,7 @@ BattleScript_82DB695::
moveend 0x2, 0x10 moveend 0x2, 0x10
end end
BattleScript_82DB6A5:: BattleScript_IgnoresAndUsesRandomMove::
printstring STRINGID_PKMNIGNOREDORDERS printstring STRINGID_PKMNIGNOREDORDERS
waitmessage 0x40 waitmessage 0x40
jumptorandomattack 0x0 jumptorandomattack 0x0
@ -4277,7 +4273,7 @@ BattleScript_82DB6C7::
moveend 0x2, 0x10 moveend 0x2, 0x10
end end
BattleScript_82DB6D9:: BattleScript_IgnoresAndFallsAsleep::
printstring STRINGID_PKMNBEGANTONAP printstring STRINGID_PKMNBEGANTONAP
waitmessage 0x40 waitmessage 0x40
setmoveeffect EFFECT_SLEEP | AFFECTS_USER setmoveeffect EFFECT_SLEEP | AFFECTS_USER
@ -4420,7 +4416,7 @@ BattleScript_ItemHealHP_Ret::
datahpupdate ATTACKER datahpupdate ATTACKER
return return
BattleScript_82DB812:: BattleScript_SelectingNotAllowedMoveChoiceItem::
printselectionstring STRINGID_ITEMALLOWSONLYYMOVE printselectionstring STRINGID_ITEMALLOWSONLYYMOVE
endselectionscript endselectionscript

View File

@ -58,7 +58,7 @@ BattleScript_SafariBallThrow::
handleballthrow handleballthrow
BattleScript_SuccessBallThrow:: BattleScript_SuccessBallThrow::
jumpifhalfword EQUAL, gLastUsedItem, 0x5, BattleScript_82DBD92 jumpifhalfword EQUAL, gLastUsedItem, ITEM_SAFARI_BALL, BattleScript_82DBD92
incrementgamestat 0xB incrementgamestat 0xB
BattleScript_82DBD92:: BattleScript_82DBD92::
printstring STRINGID_GOTCHAPKMNCAUGHT printstring STRINGID_GOTCHAPKMNCAUGHT

View File

@ -76,17 +76,17 @@ extern const u8 BattleScript_EffectPayDay[];
extern const u8 BattleScript_EffectLightScreen[]; extern const u8 BattleScript_EffectLightScreen[];
extern const u8 BattleScript_EffectTriAttack[]; extern const u8 BattleScript_EffectTriAttack[];
extern const u8 BattleScript_EffectRest[]; extern const u8 BattleScript_EffectRest[];
extern const u8 BattleScript_82D8FC6[]; extern const u8 BattleScript_RestCantSleep[];
extern const u8 BattleScript_82D8FD6[]; extern const u8 BattleScript_RestIsAlreadyAsleep[];
extern const u8 BattleScript_EffectOHKO[]; extern const u8 BattleScript_EffectOHKO[];
extern const u8 BattleScript_KOFail[]; extern const u8 BattleScript_KOFail[];
extern const u8 BattleScript_EffectRazorWind[]; extern const u8 BattleScript_EffectRazorWind[];
extern const u8 BattleScript_82D9040[]; extern const u8 BattleScript_TwoTurnMovesSecondTurn[];
extern const u8 BattleScriptFirstChargingTurn[]; extern const u8 BattleScriptFirstChargingTurn[];
extern const u8 BattleScript_EffectSuperFang[]; extern const u8 BattleScript_EffectSuperFang[];
extern const u8 BattleScript_EffectDragonRage[]; extern const u8 BattleScript_EffectDragonRage[];
extern const u8 BattleScript_EffectTrap[]; extern const u8 BattleScript_EffectTrap[];
extern const u8 BattleScript_82D9105[]; extern const u8 BattleScript_DoWrapEffect[];
extern const u8 BattleScript_EffectDoubleHit[]; extern const u8 BattleScript_EffectDoubleHit[];
extern const u8 BattleScript_EffectRecoilIfMiss[]; extern const u8 BattleScript_EffectRecoilIfMiss[];
extern const u8 BattleScript_82D9135[]; extern const u8 BattleScript_82D9135[];
@ -106,7 +106,7 @@ extern const u8 BattleScript_EffectDefenseDown2[];
extern const u8 BattleScript_EffectSpeedDown2[]; extern const u8 BattleScript_EffectSpeedDown2[];
extern const u8 BattleScript_EffectSpecialDefenseDown2[]; extern const u8 BattleScript_EffectSpecialDefenseDown2[];
extern const u8 BattleScript_EffectReflect[]; extern const u8 BattleScript_EffectReflect[];
extern const u8 BattleScript_82D928C[]; extern const u8 BattleScript_PrintReflectLightScreenSafeguardString[];
extern const u8 BattleScript_EffectPoison[]; extern const u8 BattleScript_EffectPoison[];
extern const u8 BattleScript_EffectParalyze[]; extern const u8 BattleScript_EffectParalyze[];
extern const u8 BattleScript_AlreadyParalyzed[]; extern const u8 BattleScript_AlreadyParalyzed[];
@ -121,9 +121,9 @@ extern const u8 BattleScript_EffectSkyAttack[];
extern const u8 BattleScript_EffectConfuseHit[]; extern const u8 BattleScript_EffectConfuseHit[];
extern const u8 BattleScript_EffectTwineedle[]; extern const u8 BattleScript_EffectTwineedle[];
extern const u8 BattleScript_EffectSubstitute[]; extern const u8 BattleScript_EffectSubstitute[];
extern const u8 BattleScript_82D942B[]; extern const u8 BattleScript_SubstituteAnim[];
extern const u8 BattleScript_82D9431[]; extern const u8 BattleScript_SubstituteString[];
extern const u8 BattleScript_82D943E[]; extern const u8 BattleScript_AlreadyHasSubstitute[];
extern const u8 BattleScript_EffectRecharge[]; extern const u8 BattleScript_EffectRecharge[];
extern const u8 BattleScript_MoveUsedMustRecharge[]; extern const u8 BattleScript_MoveUsedMustRecharge[];
extern const u8 BattleScript_EffectRage[]; extern const u8 BattleScript_EffectRage[];
@ -131,7 +131,7 @@ extern const u8 BattleScript_RageMiss[];
extern const u8 BattleScript_EffectMimic[]; extern const u8 BattleScript_EffectMimic[];
extern const u8 BattleScript_EffectMetronome[]; extern const u8 BattleScript_EffectMetronome[];
extern const u8 BattleScript_EffectLeechSeed[]; extern const u8 BattleScript_EffectLeechSeed[];
extern const u8 BattleScript_82D94E5[]; extern const u8 BattleScript_DoLeechSeed[];
extern const u8 BattleScript_EffectSplash[]; extern const u8 BattleScript_EffectSplash[];
extern const u8 BattleScript_EffectDisable[]; extern const u8 BattleScript_EffectDisable[];
extern const u8 BattleScript_EffectLevelDamage[]; extern const u8 BattleScript_EffectLevelDamage[];
@ -140,8 +140,8 @@ extern const u8 BattleScript_EffectCounter[];
extern const u8 BattleScript_EffectEncore[]; extern const u8 BattleScript_EffectEncore[];
extern const u8 BattleScript_EffectPainSplit[]; extern const u8 BattleScript_EffectPainSplit[];
extern const u8 BattleScript_EffectSnore[]; extern const u8 BattleScript_EffectSnore[];
extern const u8 BattleScript_82D95CE[]; extern const u8 BattleScript_SnoreIsAsleep[];
extern const u8 BattleScript_82D95E2[]; extern const u8 BattleScript_DoSnore[];
extern const u8 BattleScript_EffectConversion2[]; extern const u8 BattleScript_EffectConversion2[];
extern const u8 BattleScript_EffectLockOn[]; extern const u8 BattleScript_EffectLockOn[];
extern const u8 BattleScript_EffectSketch[]; extern const u8 BattleScript_EffectSketch[];
@ -152,11 +152,11 @@ extern const u8 BattleScript_EffectDestinyBond[];
extern const u8 BattleScript_EffectFlail[]; extern const u8 BattleScript_EffectFlail[];
extern const u8 BattleScript_EffectSpite[]; extern const u8 BattleScript_EffectSpite[];
extern const u8 BattleScript_EffectHealBell[]; extern const u8 BattleScript_EffectHealBell[];
extern const u8 BattleScript_82D96ED[]; extern const u8 BattleScript_CheckHealBellMon2Unaffected[];
extern const u8 BattleScript_82D96FE[]; extern const u8 BattleScript_PartyHealEnd[];
extern const u8 BattleScript_EffectTripleKick[]; extern const u8 BattleScript_EffectTripleKick[];
extern const u8 BattleScript_TripleKickLoop[]; extern const u8 BattleScript_TripleKickLoop[];
extern const u8 BattleScript_82D973A[]; extern const u8 BattleScript_DoTripleKickAttack[];
extern const u8 BattleScript_TripleKickNoMoreHits[]; extern const u8 BattleScript_TripleKickNoMoreHits[];
extern const u8 BattleScript_TripleKickPrintStrings[]; extern const u8 BattleScript_TripleKickPrintStrings[];
extern const u8 BattleScript_TripleKickEnd[]; extern const u8 BattleScript_TripleKickEnd[];
@ -181,12 +181,12 @@ extern const u8 BattleScript_PerishSongLoopIncrement[];
extern const u8 BattleScript_PerishSongNotAffected[]; extern const u8 BattleScript_PerishSongNotAffected[];
extern const u8 BattleScript_EffectSandstorm[]; extern const u8 BattleScript_EffectSandstorm[];
extern const u8 BattleScript_EffectRollout[]; extern const u8 BattleScript_EffectRollout[];
extern const u8 BattleScript_82D99CD[]; extern const u8 BattleScript_RolloutCheckAccuracy[];
extern const u8 BattleScript_82D99D4[]; extern const u8 BattleScript_RolloutHit[];
extern const u8 BattleScript_EffectSwagger[]; extern const u8 BattleScript_EffectSwagger[];
extern const u8 BattleScript_82D9A1E[]; extern const u8 BattleScript_SwaggerTryConfuse[];
extern const u8 BattleScript_EffectFuryCutter[]; extern const u8 BattleScript_EffectFuryCutter[];
extern const u8 BattleScript_82D9A43[]; extern const u8 BattleScript_FuryCutterHit[];
extern const u8 BattleScript_EffectAttract[]; extern const u8 BattleScript_EffectAttract[];
extern const u8 BattleScript_EffectReturn[]; extern const u8 BattleScript_EffectReturn[];
extern const u8 BattleScript_EffectPresent[]; extern const u8 BattleScript_EffectPresent[];
@ -199,7 +199,7 @@ extern const u8 BattleScript_EffectSonicboom[];
extern const u8 BattleScript_EffectMorningSun[]; extern const u8 BattleScript_EffectMorningSun[];
extern const u8 BattleScript_EffectHiddenPower[]; extern const u8 BattleScript_EffectHiddenPower[];
extern const u8 BattleScript_EffectRainDance[]; extern const u8 BattleScript_EffectRainDance[];
extern const u8 BattleScript_82D9B41[]; extern const u8 BattleScript_MoveWeatherChange[];
extern const u8 BattleScript_EffectSunnyDay[]; extern const u8 BattleScript_EffectSunnyDay[];
extern const u8 BattleScript_EffectDefenseUpHit[]; extern const u8 BattleScript_EffectDefenseUpHit[];
extern const u8 BattleScript_EffectAttackUpHit[]; extern const u8 BattleScript_EffectAttackUpHit[];
@ -208,9 +208,9 @@ extern const u8 BattleScript_EffectBellyDrum[];
extern const u8 BattleScript_EffectPsychUp[]; extern const u8 BattleScript_EffectPsychUp[];
extern const u8 BattleScript_EffectMirrorCoat[]; extern const u8 BattleScript_EffectMirrorCoat[];
extern const u8 BattleScript_EffectSkullBash[]; extern const u8 BattleScript_EffectSkullBash[];
extern const u8 BattleScript_82D9C16[]; extern const u8 BattleScript_SkullBashEnd[];
extern const u8 BattleScript_EffectTwister[]; extern const u8 BattleScript_EffectTwister[];
extern const u8 BattleScript_82D9C35[]; extern const u8 BattleScript_FlinchEffect[];
extern const u8 BattleScript_EffectEarthquake[]; extern const u8 BattleScript_EffectEarthquake[];
extern const u8 BattleScript_82D9C44[]; extern const u8 BattleScript_82D9C44[];
extern const u8 BattleScript_82D9C64[]; extern const u8 BattleScript_82D9C64[];
@ -220,7 +220,7 @@ extern const u8 BattleScript_EffectFutureSight[];
extern const u8 BattleScript_EffectGust[]; extern const u8 BattleScript_EffectGust[];
extern const u8 BattleScript_EffectStomp[]; extern const u8 BattleScript_EffectStomp[];
extern const u8 BattleScript_EffectSolarbeam[]; extern const u8 BattleScript_EffectSolarbeam[];
extern const u8 BattleScript_82D9D28[]; extern const u8 BattleScript_SolarbeamDecideTurn[];
extern const u8 BattleScript_SolarbeamOnFirstTurn[]; extern const u8 BattleScript_SolarbeamOnFirstTurn[];
extern const u8 BattleScript_EffectThunder[]; extern const u8 BattleScript_EffectThunder[];
extern const u8 BattleScript_EffectTeleport[]; extern const u8 BattleScript_EffectTeleport[];
@ -234,10 +234,10 @@ extern const u8 BattleScript_FirstTurnDive[];
extern const u8 BattleScript_FirstTurnFly[]; extern const u8 BattleScript_FirstTurnFly[];
extern const u8 BattleScript_FirstTurnSemiInvulnerable[]; extern const u8 BattleScript_FirstTurnSemiInvulnerable[];
extern const u8 BattleScript_SecondTurnSemiInvulnerable[]; extern const u8 BattleScript_SecondTurnSemiInvulnerable[];
extern const u8 BattleScript_82D9EA3[]; extern const u8 BattleScript_SemiInvulnerableTryHit[];
extern const u8 BattleScript_SemiInvulnerableMiss[]; extern const u8 BattleScript_SemiInvulnerableMiss[];
extern const u8 BattleScript_EffectDefenseCurl[]; extern const u8 BattleScript_EffectDefenseCurl[];
extern const u8 BattleScript_82D9ED3[]; extern const u8 BattleScript_DefenseCurlDoStatUpAnim[];
extern const u8 BattleScript_EffectSoftboiled[]; extern const u8 BattleScript_EffectSoftboiled[];
extern const u8 BattleScript_PresentHealTarget[]; extern const u8 BattleScript_PresentHealTarget[];
extern const u8 BattleScript_AlreadyAtFullHp[]; extern const u8 BattleScript_AlreadyAtFullHp[];
@ -247,7 +247,7 @@ extern const u8 BattleScript_ButItFailedPpReduce[];
extern const u8 BattleScript_ButItFailed[]; extern const u8 BattleScript_ButItFailed[];
extern const u8 BattleScript_NotAffected[]; extern const u8 BattleScript_NotAffected[];
extern const u8 BattleScript_EffectUproar[]; extern const u8 BattleScript_EffectUproar[];
extern const u8 BattleScript_82D9F5A[]; extern const u8 BattleScript_UproarHit[];
extern const u8 BattleScript_EffectStockpile[]; extern const u8 BattleScript_EffectStockpile[];
extern const u8 BattleScript_EffectSpitUp[]; extern const u8 BattleScript_EffectSpitUp[];
extern const u8 BattleScript_SpitUpFail[]; extern const u8 BattleScript_SpitUpFail[];
@ -257,10 +257,10 @@ extern const u8 BattleScript_SwallowFail[];
extern const u8 BattleScript_EffectHail[]; extern const u8 BattleScript_EffectHail[];
extern const u8 BattleScript_EffectTorment[]; extern const u8 BattleScript_EffectTorment[];
extern const u8 BattleScript_EffectFlatter[]; extern const u8 BattleScript_EffectFlatter[];
extern const u8 BattleScript_82DA03A[]; extern const u8 BattleScript_FlatterTryConfuse[];
extern const u8 BattleScript_EffectWillOWisp[]; extern const u8 BattleScript_EffectWillOWisp[];
extern const u8 BattleScript_WaterVeilPrevents[]; extern const u8 BattleScript_WaterVeilPrevents[];
extern const u8 BattleScript_82DA0BB[]; extern const u8 BattleScript_AlreadyBurned[];
extern const u8 BattleScript_EffectMemento[]; extern const u8 BattleScript_EffectMemento[];
extern const u8 BattleScript_82DA119[]; extern const u8 BattleScript_82DA119[];
extern const u8 BattleScript_82DA13C[]; extern const u8 BattleScript_82DA13C[];
@ -317,28 +317,28 @@ extern const u8 BattleScript_EffectPoisonFang[];
extern const u8 BattleScript_EffectWeatherBall[]; extern const u8 BattleScript_EffectWeatherBall[];
extern const u8 BattleScript_EffectOverheat[]; extern const u8 BattleScript_EffectOverheat[];
extern const u8 BattleScript_EffectTickle[]; extern const u8 BattleScript_EffectTickle[];
extern const u8 BattleScript_82DA571[]; extern const u8 BattleScript_TickleDoMoveAnim[];
extern const u8 BattleScript_82DA5A7[]; extern const u8 BattleScript_TickleTryLowerDef[];
extern const u8 BattleScript_82DA5CA[]; extern const u8 BattleScript_TickleEnd[];
extern const u8 BattleScript_82DA5CF[]; extern const u8 BattleScript_CantLowerMultipleStats[];
extern const u8 BattleScript_EffectCosmicPower[]; extern const u8 BattleScript_EffectCosmicPower[];
extern const u8 BattleScript_82DA5F8[]; extern const u8 BattleScript_CosmicPowerDoMoveAnim[];
extern const u8 BattleScript_82DA623[]; extern const u8 BattleScript_CosmicPowerTrySpDef[];
extern const u8 BattleScript_82DA642[]; extern const u8 BattleScript_CosmicPowerEnd[];
extern const u8 BattleScript_EffectSkyUppercut[]; extern const u8 BattleScript_EffectSkyUppercut[];
extern const u8 BattleScript_EffectBulkUp[]; extern const u8 BattleScript_EffectBulkUp[];
extern const u8 BattleScript_82DA66A[]; extern const u8 BattleScript_BulkUpDoMoveAnim[];
extern const u8 BattleScript_82DA695[]; extern const u8 BattleScript_BulkUpTryDef[];
extern const u8 BattleScript_82DA6B4[]; extern const u8 BattleScript_BulkUpEnd[];
extern const u8 BattleScript_EffectCalmMind[]; extern const u8 BattleScript_EffectCalmMind[];
extern const u8 BattleScript_82DA6CE[]; extern const u8 BattleScript_CalmMindDoMoveAnim[];
extern const u8 BattleScript_82DA6F9[]; extern const u8 BattleScript_CalmMindTrySpDef[];
extern const u8 BattleScript_82DA718[]; extern const u8 BattleScript_CalmMindEnd[];
extern const u8 BattleScript_CantRaiseMultipleStats[]; extern const u8 BattleScript_CantRaiseMultipleStats[];
extern const u8 BattleScript_EffectDragonDance[]; extern const u8 BattleScript_EffectDragonDance[];
extern const u8 BattleScript_82DA746[]; extern const u8 BattleScript_DragonDanceDoMoveAnim[];
extern const u8 BattleScript_82DA771[]; extern const u8 BattleScript_DragonDanceTrySpeed[];
extern const u8 BattleScript_82DA790[]; extern const u8 BattleScript_DragonDanceEnd[];
extern const u8 BattleScript_EffectCamouflage[]; extern const u8 BattleScript_EffectCamouflage[];
extern const u8 BattleScript_FaintAttacker[]; extern const u8 BattleScript_FaintAttacker[];
extern const u8 BattleScript_FaintTarget[]; extern const u8 BattleScript_FaintTarget[];
@ -357,16 +357,16 @@ extern const u8 BattleScript_LocalBattleWonLoseTexts[];
extern const u8 BattleScript_LocalBattleWonReward[]; extern const u8 BattleScript_LocalBattleWonReward[];
extern const u8 BattleScript_PayDayMoneyAndPickUpItems[]; extern const u8 BattleScript_PayDayMoneyAndPickUpItems[];
extern const u8 BattleScript_LocalBattleLost[]; extern const u8 BattleScript_LocalBattleLost[];
extern const u8 BattleScript_82DA9B1[]; extern const u8 BattleScript_LocalBattleLostPrintWhiteOut[];
extern const u8 BattleScript_82DA9BD[]; extern const u8 BattleScript_LocalBattleLostEnd[];
extern const u8 BattleScript_82DA9BE[]; extern const u8 BattleScript_CheckDomeDrew[];
extern const u8 BattleScript_82DA9C9[]; extern const u8 BattleScript_LocalBattleLostPrintTrainersWinText[];
extern const u8 BattleScript_82DAA01[]; extern const u8 BattleScript_LocalBattleLostDoTrainer2WinText[];
extern const u8 BattleScript_82DAA0A[]; extern const u8 BattleScript_LocalBattleLostEnd_[];
extern const u8 BattleScript_82DAA0B[]; extern const u8 BattleScript_82DAA0B[];
extern const u8 BattleScript_82DAA31[]; extern const u8 BattleScript_82DAA31[];
extern const u8 BattleScript_LinkBattleWonOrLost[]; extern const u8 BattleScript_LinkBattleWonOrLost[];
extern const u8 BattleScript_82DAA58[]; extern const u8 BattleScript_LinkBattleWonOrLostWaitEnd[];
extern const u8 BattleScript_82DAA5C[]; extern const u8 BattleScript_82DAA5C[];
extern const u8 BattleScript_82DAA83[]; extern const u8 BattleScript_82DAA83[];
extern const u8 BattleScript_FrontierTrainerBattleWon[]; extern const u8 BattleScript_FrontierTrainerBattleWon[];
@ -381,7 +381,7 @@ extern const u8 BattleScript_WildMonFled[];
extern const u8 BattleScript_82DAAFE[]; extern const u8 BattleScript_82DAAFE[];
extern const u8 BattleScript_PrintFailedToRunString[]; extern const u8 BattleScript_PrintFailedToRunString[];
extern const u8 BattleScript_82DAB0B[]; extern const u8 BattleScript_82DAB0B[];
extern const u8 BattleScript_82DAB11[]; extern const u8 BattleScript_PrintFullBox[];
extern const u8 BattleScript_ActionSwitch[]; extern const u8 BattleScript_ActionSwitch[];
extern const u8 BattleScript_82DAB35[]; extern const u8 BattleScript_82DAB35[];
extern const u8 BattleScript_82DAB37[]; extern const u8 BattleScript_82DAB37[];
@ -395,19 +395,19 @@ extern const u8 BattleScript_AskToLearnMove[];
extern const u8 BattleScript_ForgotAndLearnedNewMove[]; extern const u8 BattleScript_ForgotAndLearnedNewMove[];
extern const u8 BattleScript_LearnedNewMove[]; extern const u8 BattleScript_LearnedNewMove[];
extern const u8 BattleScript_LearnMoveReturn[]; extern const u8 BattleScript_LearnMoveReturn[];
extern const u8 BattleScript_82DAC2C[]; extern const u8 BattleScript_RainContinuesOrEnds[];
extern const u8 BattleScript_82DAC46[]; extern const u8 BattleScript_RainContinuesOrEndsEnd[];
extern const u8 BattleScript_82DAC47[]; extern const u8 BattleScript_DamagingWeatherContinues[];
extern const u8 BattleScript_82DAC5F[]; extern const u8 BattleScript_DamagingWeatherLoop[];
extern const u8 BattleScript_82DACA0[]; extern const u8 BattleScript_DamagingWeatherLoopIncrement[];
extern const u8 BattleScript_82DACBF[]; extern const u8 BattleScript_DamagingWeatherContinuesEnd[];
extern const u8 BattleScript_82DACC9[]; extern const u8 BattleScript_SandStormHailEnds[];
extern const u8 BattleScript_82DACD2[]; extern const u8 BattleScript_SunlightContinues[];
extern const u8 BattleScript_82DACE0[]; extern const u8 BattleScript_SunlightFaded[];
extern const u8 BattleScript_82DACE7[]; extern const u8 BattleScript_OverworldWeatherStarts[];
extern const u8 BattleScript_82DACFA[]; extern const u8 BattleScript_SideStatusWoreOff[];
extern const u8 BattleScript_SafeguardProtected[]; extern const u8 BattleScript_SafeguardProtected[];
extern const u8 BattleScript_82DAD0B[]; extern const u8 BattleScript_SafeguardEnds[];
extern const u8 BattleScript_LeechSeedTurnDrain[]; extern const u8 BattleScript_LeechSeedTurnDrain[];
extern const u8 BattleScript_82DAD47[]; extern const u8 BattleScript_82DAD47[];
extern const u8 BattleScript_82DAD4D[]; extern const u8 BattleScript_82DAD4D[];
@ -419,7 +419,7 @@ extern const u8 BattleScript_82DADF1[];
extern const u8 BattleScript_MistProtected[]; extern const u8 BattleScript_MistProtected[];
extern const u8 BattleScript_RageIsBuilding[]; extern const u8 BattleScript_RageIsBuilding[];
extern const u8 BattleScript_MoveUsedIsDisabled[]; extern const u8 BattleScript_MoveUsedIsDisabled[];
extern const u8 BattleScript_82DAE1F[]; extern const u8 BattleScript_SelectingDisabledMove[];
extern const u8 BattleScript_DisabledNoMore[]; extern const u8 BattleScript_DisabledNoMore[];
extern const u8 BattleScript_82DAE2A[]; extern const u8 BattleScript_82DAE2A[];
extern const u8 BattleScript_82DAE2D[]; extern const u8 BattleScript_82DAE2D[];
@ -453,12 +453,12 @@ extern const u8 BattleScript_82DB027[];
extern const u8 BattleScript_82DB03F[]; extern const u8 BattleScript_82DB03F[];
extern const u8 BattleScript_82DB058[]; extern const u8 BattleScript_82DB058[];
extern const u8 BattleScript_NoMovesLeft[]; extern const u8 BattleScript_NoMovesLeft[];
extern const u8 BattleScript_82DB076[]; extern const u8 BattleScript_SelectingMoveWithNoPP[];
extern const u8 BattleScript_NoPPForMove[]; extern const u8 BattleScript_NoPPForMove[];
extern const u8 BattleScript_82DB089[]; extern const u8 BattleScript_SelectingTormentedMove[];
extern const u8 BattleScript_82DB08D[]; extern const u8 BattleScript_82DB08D[];
extern const u8 BattleScript_82DB098[]; extern const u8 BattleScript_82DB098[];
extern const u8 BattleScript_82DB0A0[]; extern const u8 BattleScript_SelectingNotAllowedMoveTaunt[];
extern const u8 BattleScript_MoveUsedIsTaunted[]; extern const u8 BattleScript_MoveUsedIsTaunted[];
extern const u8 BattleScript_82DB0AF[]; extern const u8 BattleScript_82DB0AF[];
extern const u8 BattleScript_WishComesTrue[]; extern const u8 BattleScript_WishComesTrue[];
@ -470,7 +470,7 @@ extern const u8 BattleScript_82DB144[];
extern const u8 BattleScript_82DB167[]; extern const u8 BattleScript_82DB167[];
extern const u8 BattleScript_KnockedOff[]; extern const u8 BattleScript_KnockedOff[];
extern const u8 BattleScript_MoveUsedIsImprisoned[]; extern const u8 BattleScript_MoveUsedIsImprisoned[];
extern const u8 BattleScript_82DB181[]; extern const u8 BattleScript_SelectingImprisionedMove[];
extern const u8 BattleScript_82DB185[]; extern const u8 BattleScript_82DB185[];
extern const u8 BattleScript_GrudgeTakesPp[]; extern const u8 BattleScript_GrudgeTakesPp[];
extern const u8 BattleScript_MagicCoatBounce[]; extern const u8 BattleScript_MagicCoatBounce[];
@ -546,8 +546,8 @@ extern const u8 BattleScript_SturdyPreventsOHKO[];
extern const u8 BattleScript_DampStopsExplosion[]; extern const u8 BattleScript_DampStopsExplosion[];
extern const u8 BattleScript_MoveHPDrain_PPLoss[]; extern const u8 BattleScript_MoveHPDrain_PPLoss[];
extern const u8 BattleScript_MoveHPDrain[]; extern const u8 BattleScript_MoveHPDrain[];
extern const u8 BattleScript_82DB591[]; extern const u8 BattleScript_MonMadeMoveUseless_PPLoss[];
extern const u8 BattleScript_82DB592[]; extern const u8 BattleScript_MonMadeMoveUseless[];
extern const u8 BattleScript_FlashFireBoost_PPLoss[]; extern const u8 BattleScript_FlashFireBoost_PPLoss[];
extern const u8 BattleScript_FlashFireBoost[]; extern const u8 BattleScript_FlashFireBoost[];
extern const u8 BattleScript_82DB5B9[]; extern const u8 BattleScript_82DB5B9[];
@ -567,12 +567,12 @@ extern const u8 BattleScript_CuteCharmActivates[];
extern const u8 BattleScript_ApplySecondaryEffect[]; extern const u8 BattleScript_ApplySecondaryEffect[];
extern const u8 BattleScript_SynchronizeActivates[]; extern const u8 BattleScript_SynchronizeActivates[];
extern const u8 BattleScript_NoItemSteal[]; extern const u8 BattleScript_NoItemSteal[];
extern const u8 BattleScript_82DB68C[]; extern const u8 BattleScript_AbilityCuredStatus[];
extern const u8 BattleScript_82DB695[]; extern const u8 BattleScript_82DB695[];
extern const u8 BattleScript_82DB6A5[]; extern const u8 BattleScript_IgnoresAndUsesRandomMove[];
extern const u8 BattleScript_MoveUsedLoafingAround[]; extern const u8 BattleScript_MoveUsedLoafingAround[];
extern const u8 BattleScript_82DB6C7[]; extern const u8 BattleScript_82DB6C7[];
extern const u8 BattleScript_82DB6D9[]; extern const u8 BattleScript_IgnoresAndFallsAsleep[];
extern const u8 BattleScript_82DB6F0[]; extern const u8 BattleScript_82DB6F0[];
extern const u8 BattleScript_SubstituteFade[]; extern const u8 BattleScript_SubstituteFade[];
extern const u8 BattleScript_BerryCurePrlzEnd2[]; extern const u8 BattleScript_BerryCurePrlzEnd2[];
@ -595,7 +595,7 @@ extern const u8 BattleScript_ItemHealHP_RemoveItem[];
extern const u8 BattleScript_BerryPPHealEnd2[]; extern const u8 BattleScript_BerryPPHealEnd2[];
extern const u8 BattleScript_ItemHealHP_End2[]; extern const u8 BattleScript_ItemHealHP_End2[];
extern const u8 BattleScript_ItemHealHP_Ret[]; extern const u8 BattleScript_ItemHealHP_Ret[];
extern const u8 BattleScript_82DB812[]; extern const u8 BattleScript_SelectingNotAllowedMoveChoiceItem[];
extern const u8 BattleScript_HangedOnMsg[]; extern const u8 BattleScript_HangedOnMsg[];
extern const u8 BattleScript_BerryConfuseHealEnd2[]; extern const u8 BattleScript_BerryConfuseHealEnd2[];
extern const u8 BattleScript_BerryStatRaiseEnd2[]; extern const u8 BattleScript_BerryStatRaiseEnd2[];

View File

@ -120,7 +120,7 @@ extern u32 gBattleExecBuffer;
extern u8 gMultiHitCounter; extern u8 gMultiHitCounter;
extern u8 gBattleMoveFlags; extern u8 gBattleMoveFlags;
extern s32 gBattleMoveDamage; extern s32 gBattleMoveDamage;
extern const u8* gSelectionBattleScripts[BATTLE_BANKS_COUNT]; extern const u8* gPalaceSelectionBattleScripts[BATTLE_BANKS_COUNT];
extern u16 gOriginallyLastPrintedMoves[BATTLE_BANKS_COUNT]; extern u16 gOriginallyLastPrintedMoves[BATTLE_BANKS_COUNT];
extern u16 gOriginallyLastMoves[BATTLE_BANKS_COUNT]; extern u16 gOriginallyLastMoves[BATTLE_BANKS_COUNT];
extern u16 gLastLandedMoves[BATTLE_BANKS_COUNT]; extern u16 gLastLandedMoves[BATTLE_BANKS_COUNT];
@ -141,7 +141,7 @@ extern u16 gChosenMovesByBanks[BATTLE_BANKS_COUNT];
extern u8 gCurrentActionFuncId; extern u8 gCurrentActionFuncId;
extern u8 gLastUsedAbility; extern u8 gLastUsedAbility;
extern u8 gUnknown_0203CF00[]; extern u8 gUnknown_0203CF00[];
extern const u8* gBattlescriptPtrsForSelection[BATTLE_BANKS_COUNT]; extern const u8* gSelectionBattleScripts[BATTLE_BANKS_COUNT];
extern const u8* gBattlescriptCurrInstr; extern const u8* gBattlescriptCurrInstr;
extern u8 gActionsByTurnOrder[BATTLE_BANKS_COUNT]; extern u8 gActionsByTurnOrder[BATTLE_BANKS_COUNT];
extern u8 gCurrentTurnActionNumber; extern u8 gCurrentTurnActionNumber;
@ -2751,7 +2751,7 @@ static void BattleStartClearSetData(void)
gLockedMoves[i] = 0; gLockedMoves[i] = 0;
gOriginallyLastPrintedMoves[i] = 0; gOriginallyLastPrintedMoves[i] = 0;
gBattleResources->flags->flags[i] = 0; gBattleResources->flags->flags[i] = 0;
gSelectionBattleScripts[i] = 0; gPalaceSelectionBattleScripts[i] = 0;
} }
for (i = 0; i < 2; i++) for (i = 0; i < 2; i++)
@ -3983,7 +3983,7 @@ static void HandleTurnActionSelectionState(void)
| BATTLE_TYPE_x2000000)) | BATTLE_TYPE_x2000000))
{ {
RecordedBattle_ClearBankAction(gActiveBank, 1); RecordedBattle_ClearBankAction(gActiveBank, 1);
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_ActionSelectionItemsCantBeUsed; gSelectionBattleScripts[gActiveBank] = BattleScript_ActionSelectionItemsCantBeUsed;
gBattleCommunication[gActiveBank] = STATE_SELECTION_SCRIPT; gBattleCommunication[gActiveBank] = STATE_SELECTION_SCRIPT;
*(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE; *(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE;
*(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN; *(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN;
@ -4028,7 +4028,7 @@ static void HandleTurnActionSelectionState(void)
case ACTION_SAFARI_ZONE_BALL: case ACTION_SAFARI_ZONE_BALL:
if (IsPlayerPartyAndPokemonStorageFull()) if (IsPlayerPartyAndPokemonStorageFull())
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DAB11; gSelectionBattleScripts[gActiveBank] = BattleScript_PrintFullBox;
gBattleCommunication[gActiveBank] = STATE_SELECTION_SCRIPT; gBattleCommunication[gActiveBank] = STATE_SELECTION_SCRIPT;
*(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE; *(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE;
*(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN; *(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN;
@ -4083,7 +4083,7 @@ static void HandleTurnActionSelectionState(void)
&& gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_x4000000) && gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_x4000000)
&& gBattleBufferB[gActiveBank][1] == ACTION_RUN) && gBattleBufferB[gActiveBank][1] == ACTION_RUN)
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DB9BA; gSelectionBattleScripts[gActiveBank] = BattleScript_82DB9BA;
gBattleCommunication[gActiveBank] = 8; gBattleCommunication[gActiveBank] = 8;
*(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE; *(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE;
*(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN; *(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN;
@ -4099,7 +4099,7 @@ static void HandleTurnActionSelectionState(void)
else if (IsRunningFromBattleImpossible() != 0 else if (IsRunningFromBattleImpossible() != 0
&& gBattleBufferB[gActiveBank][1] == ACTION_RUN) && gBattleBufferB[gActiveBank][1] == ACTION_RUN)
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DAB0B; gSelectionBattleScripts[gActiveBank] = BattleScript_82DAB0B;
gBattleCommunication[gActiveBank] = STATE_SELECTION_SCRIPT; gBattleCommunication[gActiveBank] = STATE_SELECTION_SCRIPT;
*(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE; *(gBattleStruct->selectionScriptFinished + gActiveBank) = FALSE;
*(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN; *(gBattleStruct->stateIdAfterSelScript + gActiveBank) = STATE_BEFORE_ACTION_CHOSEN;
@ -4252,12 +4252,12 @@ static void HandleTurnActionSelectionState(void)
else else
{ {
gBankAttacker = gActiveBank; gBankAttacker = gActiveBank;
gBattlescriptCurrInstr = gBattlescriptPtrsForSelection[gActiveBank]; gBattlescriptCurrInstr = gSelectionBattleScripts[gActiveBank];
if (!(gBattleExecBuffer & ((gBitTable[gActiveBank]) | (0xF0000000) | (gBitTable[gActiveBank] << 4) | (gBitTable[gActiveBank] << 8) | (gBitTable[gActiveBank] << 0xC)))) if (!(gBattleExecBuffer & ((gBitTable[gActiveBank]) | (0xF0000000) | (gBitTable[gActiveBank] << 4) | (gBitTable[gActiveBank] << 8) | (gBitTable[gActiveBank] << 0xC))))
{ {
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]](); gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
} }
gBattlescriptPtrsForSelection[gActiveBank] = gBattlescriptCurrInstr; gSelectionBattleScripts[gActiveBank] = gBattlescriptCurrInstr;
} }
break; break;
case STATE_WAIT_SET_BEFORE_ACTION: case STATE_WAIT_SET_BEFORE_ACTION:
@ -4284,12 +4284,12 @@ static void HandleTurnActionSelectionState(void)
else else
{ {
gBankAttacker = gActiveBank; gBankAttacker = gActiveBank;
gBattlescriptCurrInstr = gBattlescriptPtrsForSelection[gActiveBank]; gBattlescriptCurrInstr = gSelectionBattleScripts[gActiveBank];
if (!(gBattleExecBuffer & ((gBitTable[gActiveBank]) | (0xF0000000) | (gBitTable[gActiveBank] << 4) | (gBitTable[gActiveBank] << 8) | (gBitTable[gActiveBank] << 0xC)))) if (!(gBattleExecBuffer & ((gBitTable[gActiveBank]) | (0xF0000000) | (gBitTable[gActiveBank] << 4) | (gBitTable[gActiveBank] << 8) | (gBitTable[gActiveBank] << 0xC))))
{ {
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]](); gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
} }
gBattlescriptPtrsForSelection[gActiveBank] = gBattlescriptCurrInstr; gSelectionBattleScripts[gActiveBank] = gBattlescriptCurrInstr;
} }
break; break;
} }
@ -5217,11 +5217,11 @@ static void HandleAction_UseMove(void)
gCurrentActionFuncId = 12; gCurrentActionFuncId = 12;
return; return;
} }
else if (gSelectionBattleScripts[gBankAttacker] != NULL) else if (gPalaceSelectionBattleScripts[gBankAttacker] != NULL)
{ {
gBattleCommunication[MULTISTRING_CHOOSER] = 4; gBattleCommunication[MULTISTRING_CHOOSER] = 4;
gBattlescriptCurrInstr = gSelectionBattleScripts[gBankAttacker]; gBattlescriptCurrInstr = gPalaceSelectionBattleScripts[gBankAttacker];
gSelectionBattleScripts[gBankAttacker] = NULL; gPalaceSelectionBattleScripts[gBankAttacker] = NULL;
} }
else else
{ {

View File

@ -22,8 +22,8 @@
#include "link.h" #include "link.h"
extern const u8* gBattlescriptCurrInstr; extern const u8* gBattlescriptCurrInstr;
extern const u8* gBattlescriptPtrsForSelection[BATTLE_BANKS_COUNT];
extern const u8* gSelectionBattleScripts[BATTLE_BANKS_COUNT]; extern const u8* gSelectionBattleScripts[BATTLE_BANKS_COUNT];
extern const u8* gPalaceSelectionBattleScripts[BATTLE_BANKS_COUNT];
extern struct BattlePokemon gBattleMons[BATTLE_BANKS_COUNT]; extern struct BattlePokemon gBattleMons[BATTLE_BANKS_COUNT];
extern u8 gActiveBank; extern u8 gActiveBank;
extern u8 gStringBank; extern u8 gStringBank;
@ -363,12 +363,12 @@ u8 TrySetCantSelectMoveBattleScript(void)
gCurrentMove = move; gCurrentMove = move;
if (gBattleTypeFlags & BATTLE_TYPE_PALACE) if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
{ {
gSelectionBattleScripts[gActiveBank] = BattleScript_82DAE2A; gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DAE2A;
gProtectStructs[gActiveBank].flag_x10 = 1; gProtectStructs[gActiveBank].flag_x10 = 1;
} }
else else
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DAE1F; gSelectionBattleScripts[gActiveBank] = BattleScript_SelectingDisabledMove;
limitations = 1; limitations = 1;
} }
} }
@ -378,12 +378,12 @@ u8 TrySetCantSelectMoveBattleScript(void)
CancelMultiTurnMoves(gActiveBank); CancelMultiTurnMoves(gActiveBank);
if (gBattleTypeFlags & BATTLE_TYPE_PALACE) if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
{ {
gSelectionBattleScripts[gActiveBank] = BattleScript_82DB098; gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DB098;
gProtectStructs[gActiveBank].flag_x10 = 1; gProtectStructs[gActiveBank].flag_x10 = 1;
} }
else else
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DB089; gSelectionBattleScripts[gActiveBank] = BattleScript_SelectingTormentedMove;
limitations++; limitations++;
} }
} }
@ -393,12 +393,12 @@ u8 TrySetCantSelectMoveBattleScript(void)
gCurrentMove = move; gCurrentMove = move;
if (gBattleTypeFlags & BATTLE_TYPE_PALACE) if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
{ {
gSelectionBattleScripts[gActiveBank] = BattleScript_82DB0AF; gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DB0AF;
gProtectStructs[gActiveBank].flag_x10 = 1; gProtectStructs[gActiveBank].flag_x10 = 1;
} }
else else
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DB0A0; gSelectionBattleScripts[gActiveBank] = BattleScript_SelectingNotAllowedMoveTaunt;
limitations++; limitations++;
} }
} }
@ -408,12 +408,12 @@ u8 TrySetCantSelectMoveBattleScript(void)
gCurrentMove = move; gCurrentMove = move;
if (gBattleTypeFlags & BATTLE_TYPE_PALACE) if (gBattleTypeFlags & BATTLE_TYPE_PALACE)
{ {
gSelectionBattleScripts[gActiveBank] = BattleScript_82DB185; gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DB185;
gProtectStructs[gActiveBank].flag_x10 = 1; gProtectStructs[gActiveBank].flag_x10 = 1;
} }
else else
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DB181; gSelectionBattleScripts[gActiveBank] = BattleScript_SelectingImprisionedMove;
limitations++; limitations++;
} }
} }
@ -435,7 +435,7 @@ u8 TrySetCantSelectMoveBattleScript(void)
} }
else else
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DB812; gSelectionBattleScripts[gActiveBank] = BattleScript_SelectingNotAllowedMoveChoiceItem;
limitations++; limitations++;
} }
} }
@ -448,7 +448,7 @@ u8 TrySetCantSelectMoveBattleScript(void)
} }
else else
{ {
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_82DB076; gSelectionBattleScripts[gActiveBank] = BattleScript_SelectingMoveWithNoPP;
limitations++; limitations++;
} }
} }
@ -499,7 +499,7 @@ bool8 AreAllMovesUnusable(void)
if (unusable == 0xF) // all moves are unusable if (unusable == 0xF) // all moves are unusable
{ {
gProtectStructs[gActiveBank].onlyStruggle = 1; gProtectStructs[gActiveBank].onlyStruggle = 1;
gBattlescriptPtrsForSelection[gActiveBank] = BattleScript_NoMovesLeft; gSelectionBattleScripts[gActiveBank] = BattleScript_NoMovesLeft;
} }
else else
{ {
@ -583,7 +583,7 @@ u8 UpdateTurnCounters(void)
if (--gSideTimers[sideBank].reflectTimer == 0) if (--gSideTimers[sideBank].reflectTimer == 0)
{ {
gSideAffecting[sideBank] &= ~SIDE_STATUS_REFLECT; gSideAffecting[sideBank] &= ~SIDE_STATUS_REFLECT;
BattleScriptExecute(BattleScript_82DACFA); BattleScriptExecute(BattleScript_SideStatusWoreOff);
PREPARE_MOVE_BUFFER(gBattleTextBuff1, MOVE_REFLECT); PREPARE_MOVE_BUFFER(gBattleTextBuff1, MOVE_REFLECT);
effect++; effect++;
} }
@ -608,7 +608,7 @@ u8 UpdateTurnCounters(void)
if (--gSideTimers[sideBank].lightscreenTimer == 0) if (--gSideTimers[sideBank].lightscreenTimer == 0)
{ {
gSideAffecting[sideBank] &= ~SIDE_STATUS_LIGHTSCREEN; gSideAffecting[sideBank] &= ~SIDE_STATUS_LIGHTSCREEN;
BattleScriptExecute(BattleScript_82DACFA); BattleScriptExecute(BattleScript_SideStatusWoreOff);
gBattleCommunication[MULTISTRING_CHOOSER] = sideBank; gBattleCommunication[MULTISTRING_CHOOSER] = sideBank;
PREPARE_MOVE_BUFFER(gBattleTextBuff1, MOVE_LIGHT_SCREEN); PREPARE_MOVE_BUFFER(gBattleTextBuff1, MOVE_LIGHT_SCREEN);
effect++; effect++;
@ -633,7 +633,7 @@ u8 UpdateTurnCounters(void)
&& --gSideTimers[sideBank].mistTimer == 0) && --gSideTimers[sideBank].mistTimer == 0)
{ {
gSideAffecting[sideBank] &= ~SIDE_STATUS_MIST; gSideAffecting[sideBank] &= ~SIDE_STATUS_MIST;
BattleScriptExecute(BattleScript_82DACFA); BattleScriptExecute(BattleScript_SideStatusWoreOff);
gBattleCommunication[MULTISTRING_CHOOSER] = sideBank; gBattleCommunication[MULTISTRING_CHOOSER] = sideBank;
PREPARE_MOVE_BUFFER(gBattleTextBuff1, MOVE_MIST); PREPARE_MOVE_BUFFER(gBattleTextBuff1, MOVE_MIST);
effect++; effect++;
@ -658,7 +658,7 @@ u8 UpdateTurnCounters(void)
if (--gSideTimers[sideBank].safeguardTimer == 0) if (--gSideTimers[sideBank].safeguardTimer == 0)
{ {
gSideAffecting[sideBank] &= ~SIDE_STATUS_SAFEGUARD; gSideAffecting[sideBank] &= ~SIDE_STATUS_SAFEGUARD;
BattleScriptExecute(BattleScript_82DAD0B); BattleScriptExecute(BattleScript_SafeguardEnds);
effect++; effect++;
} }
} }
@ -710,10 +710,15 @@ u8 UpdateTurnCounters(void)
gBattleCommunication[MULTISTRING_CHOOSER] = 0; gBattleCommunication[MULTISTRING_CHOOSER] = 0;
} }
else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR) else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR)
{
gBattleCommunication[MULTISTRING_CHOOSER] = 1; gBattleCommunication[MULTISTRING_CHOOSER] = 1;
}
else else
{
gBattleCommunication[MULTISTRING_CHOOSER] = 0; gBattleCommunication[MULTISTRING_CHOOSER] = 0;
BattleScriptExecute(BattleScript_82DAC2C); }
BattleScriptExecute(BattleScript_RainContinuesOrEnds);
effect++; effect++;
} }
gBattleStruct->turncountersTracker++; gBattleStruct->turncountersTracker++;
@ -724,12 +729,14 @@ u8 UpdateTurnCounters(void)
if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0) if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
{ {
gBattleWeather &= ~WEATHER_SANDSTORM_TEMPORARY; gBattleWeather &= ~WEATHER_SANDSTORM_TEMPORARY;
gBattlescriptCurrInstr = BattleScript_82DACC9; gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
} }
else else
gBattlescriptCurrInstr = BattleScript_82DAC47; {
gBattlescriptCurrInstr = BattleScript_DamagingWeatherContinues;
}
gBattleScripting.animArg1 = 0xC; gBattleScripting.animArg1 = B_ANIM_SANDSTORM_CONTINUES;
gBattleCommunication[MULTISTRING_CHOOSER] = 0; gBattleCommunication[MULTISTRING_CHOOSER] = 0;
BattleScriptExecute(gBattlescriptCurrInstr); BattleScriptExecute(gBattlescriptCurrInstr);
effect++; effect++;
@ -742,10 +749,12 @@ u8 UpdateTurnCounters(void)
if (!(gBattleWeather & WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0) if (!(gBattleWeather & WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
{ {
gBattleWeather &= ~WEATHER_SUN_TEMPORARY; gBattleWeather &= ~WEATHER_SUN_TEMPORARY;
gBattlescriptCurrInstr = BattleScript_82DACE0; gBattlescriptCurrInstr = BattleScript_SunlightFaded;
} }
else else
gBattlescriptCurrInstr = BattleScript_82DACD2; {
gBattlescriptCurrInstr = BattleScript_SunlightContinues;
}
BattleScriptExecute(gBattlescriptCurrInstr); BattleScriptExecute(gBattlescriptCurrInstr);
effect++; effect++;
@ -758,12 +767,13 @@ u8 UpdateTurnCounters(void)
if (--gWishFutureKnock.weatherDuration == 0) if (--gWishFutureKnock.weatherDuration == 0)
{ {
gBattleWeather &= ~WEATHER_HAIL; gBattleWeather &= ~WEATHER_HAIL;
gBattlescriptCurrInstr = BattleScript_82DACC9; gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
} }
else else
{ {
gBattlescriptCurrInstr = BattleScript_82DAC47; gBattlescriptCurrInstr = BattleScript_DamagingWeatherContinues;
} }
gBattleScripting.animArg1 = B_ANIM_HAIL_CONTINUES; gBattleScripting.animArg1 = B_ANIM_HAIL_CONTINUES;
gBattleCommunication[MULTISTRING_CHOOSER] = 1; gBattleCommunication[MULTISTRING_CHOOSER] = 1;
BattleScriptExecute(gBattlescriptCurrInstr); BattleScriptExecute(gBattlescriptCurrInstr);
@ -1828,7 +1838,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)
if (effect) if (effect)
{ {
gBattleCommunication[MULTISTRING_CHOOSER] = weather_get_current(); gBattleCommunication[MULTISTRING_CHOOSER] = weather_get_current();
BattleScriptPushCursorAndCallback(BattleScript_82DACE7); BattleScriptPushCursorAndCallback(BattleScript_OverworldWeatherStarts);
} }
break; break;
case ABILITY_DRIZZLE: case ABILITY_DRIZZLE:
@ -2034,9 +2044,9 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)
if (gBattleMons[bank].maxHP == gBattleMons[bank].hp) if (gBattleMons[bank].maxHP == gBattleMons[bank].hp)
{ {
if ((gProtectStructs[gBankAttacker].notFirstStrike)) if ((gProtectStructs[gBankAttacker].notFirstStrike))
gBattlescriptCurrInstr = BattleScript_82DB592; gBattlescriptCurrInstr = BattleScript_MonMadeMoveUseless;
else else
gBattlescriptCurrInstr = BattleScript_82DB591; gBattlescriptCurrInstr = BattleScript_MonMadeMoveUseless_PPLoss;
} }
else else
{ {
@ -2174,86 +2184,84 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)
} }
break; break;
case ABILITYEFFECT_IMMUNITY: // 5 case ABILITYEFFECT_IMMUNITY: // 5
for (bank = 0; bank < gNoOfAllBanks; bank++)
{ {
for (bank = 0; bank < gNoOfAllBanks; bank++) switch (gBattleMons[bank].ability)
{ {
switch (gBattleMons[bank].ability) case ABILITY_IMMUNITY:
if (gBattleMons[bank].status1 & (STATUS_POISON | STATUS_TOXIC_POISON | STATUS_TOXIC_COUNTER))
{ {
case ABILITY_IMMUNITY: StringCopy(gBattleTextBuff1, gStatusConditionString_PoisonJpn);
if (gBattleMons[bank].status1 & (STATUS_POISON | STATUS_TOXIC_POISON | STATUS_TOXIC_COUNTER)) effect = 1;
{ }
StringCopy(gBattleTextBuff1, gStatusConditionString_PoisonJpn); break;
effect = 1; case ABILITY_OWN_TEMPO:
} if (gBattleMons[bank].status2 & STATUS2_CONFUSION)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn);
effect = 2;
}
break;
case ABILITY_LIMBER:
if (gBattleMons[bank].status1 & STATUS_PARALYSIS)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_ParalysisJpn);
effect = 1;
}
break;
case ABILITY_INSOMNIA:
case ABILITY_VITAL_SPIRIT:
if (gBattleMons[bank].status1 & STATUS_SLEEP)
{
gBattleMons[bank].status2 &= ~(STATUS2_NIGHTMARE);
StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn);
effect = 1;
}
break;
case ABILITY_WATER_VEIL:
if (gBattleMons[bank].status1 & STATUS_BURN)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_BurnJpn);
effect = 1;
}
break;
case ABILITY_MAGMA_ARMOR:
if (gBattleMons[bank].status1 & STATUS_FREEZE)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn);
effect = 1;
}
break;
case ABILITY_OBLIVIOUS:
if (gBattleMons[bank].status2 & STATUS2_INFATUATION)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn);
effect = 3;
}
break;
}
if (effect)
{
switch (effect)
{
case 1: // status cleared
gBattleMons[bank].status1 = 0;
break; break;
case ABILITY_OWN_TEMPO: case 2: // get rid of confusion
if (gBattleMons[bank].status2 & STATUS2_CONFUSION) gBattleMons[bank].status2 &= ~(STATUS2_CONFUSION);
{
StringCopy(gBattleTextBuff1, gStatusConditionString_ConfusionJpn);
effect = 2;
}
break; break;
case ABILITY_LIMBER: case 3: // get rid of infatuation
if (gBattleMons[bank].status1 & STATUS_PARALYSIS) gBattleMons[bank].status2 &= ~(STATUS2_INFATUATION);
{
StringCopy(gBattleTextBuff1, gStatusConditionString_ParalysisJpn);
effect = 1;
}
break;
case ABILITY_INSOMNIA:
case ABILITY_VITAL_SPIRIT:
if (gBattleMons[bank].status1 & STATUS_SLEEP)
{
gBattleMons[bank].status2 &= ~(STATUS2_NIGHTMARE);
StringCopy(gBattleTextBuff1, gStatusConditionString_SleepJpn);
effect = 1;
}
break;
case ABILITY_WATER_VEIL:
if (gBattleMons[bank].status1 & STATUS_BURN)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_BurnJpn);
effect = 1;
}
break;
case ABILITY_MAGMA_ARMOR:
if (gBattleMons[bank].status1 & STATUS_FREEZE)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_IceJpn);
effect = 1;
}
break;
case ABILITY_OBLIVIOUS:
if (gBattleMons[bank].status2 & STATUS2_INFATUATION)
{
StringCopy(gBattleTextBuff1, gStatusConditionString_LoveJpn);
effect = 3;
}
break; break;
} }
if (effect)
{
switch (effect)
{
case 1: // status cleared
gBattleMons[bank].status1 = 0;
break;
case 2: // get rid of confusion
gBattleMons[bank].status2 &= ~(STATUS2_CONFUSION);
break;
case 3: // get rid of infatuation
gBattleMons[bank].status2 &= ~(STATUS2_INFATUATION);
break;
}
BattleScriptPushCursor(); BattleScriptPushCursor();
gBattlescriptCurrInstr = BattleScript_82DB68C; gBattlescriptCurrInstr = BattleScript_AbilityCuredStatus;
gBattleScripting.bank = bank; gBattleScripting.bank = bank;
gActiveBank = bank; gActiveBank = bank;
EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1); EmitSetMonData(0, REQUEST_STATUS_BATTLE, 0, 4, &gBattleMons[gActiveBank].status1);
MarkBufferBankForExecution(gActiveBank); MarkBufferBankForExecution(gActiveBank);
return effect; return effect;
}
} }
} }
break; break;
@ -3387,7 +3395,7 @@ u8 IsPokeDisobedient(void)
} while (gBitTable[gCurrMovePos] & calc); } while (gBitTable[gCurrMovePos] & calc);
gRandomMove = gBattleMons[gBankAttacker].moves[gCurrMovePos]; gRandomMove = gBattleMons[gBankAttacker].moves[gCurrMovePos];
gBattlescriptCurrInstr = BattleScript_82DB6A5; gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove;
gBankTarget = GetMoveTarget(gRandomMove, 0); gBankTarget = GetMoveTarget(gRandomMove, 0);
gHitMarker |= HITMARKER_x200000; gHitMarker |= HITMARKER_x200000;
return 2; return 2;
@ -3409,7 +3417,7 @@ u8 IsPokeDisobedient(void)
} }
if (i == gNoOfAllBanks) if (i == gNoOfAllBanks)
{ {
gBattlescriptCurrInstr = BattleScript_82DB6D9; gBattlescriptCurrInstr = BattleScript_IgnoresAndFallsAsleep;
return 1; return 1;
} }
} }

View File

@ -363,10 +363,10 @@ gBattlescriptCurrInstr: @ 2024214
gActionForBanks: @ 202421C gActionForBanks: @ 202421C
.space 0x4 .space 0x4
gBattlescriptPtrsForSelection: @ 2024220 gSelectionBattleScripts: @ 2024220
.space 0x10 .space 0x10
gSelectionBattleScripts: @ 2024230 gPalaceSelectionBattleScripts: @ 2024230
.space 0x10 .space 0x10
gOriginallyLastPrintedMoves: @ 2024240 gOriginallyLastPrintedMoves: @ 2024240