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

View File

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

View File

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

View File

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

View File

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

View File

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