Merge pull request #524 from AsparagusEduardo/pokefirered_pokeemeraldSync
Sync with pokeemerald
This commit is contained in:
@@ -183,7 +183,7 @@
|
|||||||
.byte \battler
|
.byte \battler
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro atk24 ptr:req
|
.macro checkteamslost ptr:req
|
||||||
.byte 0x24
|
.byte 0x24
|
||||||
.4byte \ptr
|
.4byte \ptr
|
||||||
.endm
|
.endm
|
||||||
@@ -503,7 +503,7 @@
|
|||||||
.byte \battler
|
.byte \battler
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro atk57
|
.macro endlinkbattle
|
||||||
.byte 0x57
|
.byte 0x57
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
@@ -539,7 +539,7 @@
|
|||||||
.4byte \addr
|
.4byte \addr
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro atk5E battler:req
|
.macro updatebattlermoves battler:req
|
||||||
.byte 0x5e
|
.byte 0x5e
|
||||||
.byte \battler
|
.byte \battler
|
||||||
.endm
|
.endm
|
||||||
@@ -1259,8 +1259,8 @@
|
|||||||
various \battler, VARIOUS_GET_MOVE_TARGET
|
various \battler, VARIOUS_GET_MOVE_TARGET
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro various4 battler:req
|
.macro getbattlerfainted battler:req
|
||||||
various \battler, 4
|
various \battler, VARIOUS_GET_BATTLER_FAINTED
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro resetintimidatetracebits battler:req
|
.macro resetintimidatetracebits battler:req
|
||||||
@@ -1271,8 +1271,8 @@
|
|||||||
various \battler, VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP
|
various \battler, VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro various7 battler:req
|
.macro resetplayerfainted battler:req
|
||||||
various \battler, 7
|
various \battler, VARIOUS_RESET_PLAYER_FAINTED
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro various8 battler:req
|
.macro various8 battler:req
|
||||||
@@ -1288,11 +1288,11 @@
|
|||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro checkpokeflute battler:req
|
.macro checkpokeflute battler:req
|
||||||
various \battler, 11
|
various \battler, VARIOUS_CHECK_POKEFLUTE
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro waitfanfare battler:req
|
.macro waitfanfare battler:req
|
||||||
various \battler, 12
|
various \battler, VARIOUS_WAIT_FANFARE
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
@ helpful macros
|
@ helpful macros
|
||||||
@@ -1301,7 +1301,7 @@
|
|||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro setmoveeffect effect:req
|
.macro setmoveeffect effect:req
|
||||||
setbyte cEFFECT_CHOOSER \effect
|
setbyte cEFFECT_CHOOSER, \effect
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro chosenstatus1animation battler:req, status:req
|
.macro chosenstatus1animation battler:req, status:req
|
||||||
|
|||||||
@@ -737,7 +737,7 @@ AI_CheckViability::
|
|||||||
if_effect EFFECT_PSYCH_UP, AI_CV_PsychUp
|
if_effect EFFECT_PSYCH_UP, AI_CV_PsychUp
|
||||||
if_effect EFFECT_MIRROR_COAT, AI_CV_MirrorCoat
|
if_effect EFFECT_MIRROR_COAT, AI_CV_MirrorCoat
|
||||||
if_effect EFFECT_SKULL_BASH, AI_CV_ChargeUpMove
|
if_effect EFFECT_SKULL_BASH, AI_CV_ChargeUpMove
|
||||||
if_effect EFFECT_SOLARBEAM, AI_CV_ChargeUpMove
|
if_effect EFFECT_SOLAR_BEAM, AI_CV_ChargeUpMove
|
||||||
if_effect EFFECT_SEMI_INVULNERABLE, AI_CV_SemiInvulnerable
|
if_effect EFFECT_SEMI_INVULNERABLE, AI_CV_SemiInvulnerable
|
||||||
if_effect EFFECT_SOFTBOILED, AI_CV_Heal
|
if_effect EFFECT_SOFTBOILED, AI_CV_Heal
|
||||||
if_effect EFFECT_FAKE_OUT, AI_CV_FakeOut
|
if_effect EFFECT_FAKE_OUT, AI_CV_FakeOut
|
||||||
@@ -3097,7 +3097,7 @@ AI_HPAware_DiscouragedEffectsWhenLowHP::
|
|||||||
.byte EFFECT_BELLY_DRUM
|
.byte EFFECT_BELLY_DRUM
|
||||||
.byte EFFECT_PSYCH_UP
|
.byte EFFECT_PSYCH_UP
|
||||||
.byte EFFECT_MIRROR_COAT
|
.byte EFFECT_MIRROR_COAT
|
||||||
.byte EFFECT_SOLARBEAM
|
.byte EFFECT_SOLAR_BEAM
|
||||||
.byte EFFECT_ERUPTION
|
.byte EFFECT_ERUPTION
|
||||||
.byte EFFECT_TICKLE
|
.byte EFFECT_TICKLE
|
||||||
.byte EFFECT_COSMIC_POWER
|
.byte EFFECT_COSMIC_POWER
|
||||||
|
|||||||
+32
-32
@@ -5591,46 +5591,46 @@ SolarBeamAbsorbEffect::
|
|||||||
return
|
return
|
||||||
|
|
||||||
SolarBeamUnleash::
|
SolarBeamUnleash::
|
||||||
call SetSolarbeamBg
|
call SetSolarBeamBg
|
||||||
panse_1B SE_M_SOLAR_BEAM, 192, 63, 2, 0
|
panse_1B SE_M_SOLAR_BEAM, 192, 63, 2, 0
|
||||||
createvisualtask AnimTask_CreateSmallSolarbeamOrbs, 5,
|
createvisualtask AnimTask_CreateSmallSolarBeamOrbs, 5,
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1
|
||||||
delay 4
|
delay 4
|
||||||
createvisualtask AnimTask_BlendSelected, 10, 4, 1, 0, 10, RGB(25, 31, 0)
|
createvisualtask AnimTask_BlendSelected, 10, 4, 1, 0, 10, RGB(25, 31, 0)
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2
|
||||||
delay 4
|
delay 4
|
||||||
createvisualtask AnimTask_ShakeMon2, 5, 1, 2, 0, 65, 1
|
createvisualtask AnimTask_ShakeMon2, 5, 1, 2, 0, 65, 1
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6
|
||||||
delay 4
|
delay 4
|
||||||
call SolarBeamUnleash1
|
call SolarBeamUnleash1
|
||||||
call SolarBeamUnleash1
|
call SolarBeamUnleash1
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
createvisualtask AnimTask_BlendSelected, 10, 4, 1, 10, 0, RGB(25, 31, 0)
|
createvisualtask AnimTask_BlendSelected, 10, 4, 1, 10, 0, RGB(25, 31, 0)
|
||||||
call UnsetSolarbeamBg
|
call UnsetSolarBeamBg
|
||||||
goto SolarBeamEnd
|
goto SolarBeamEnd
|
||||||
|
|
||||||
SolarBeamUnleash1::
|
SolarBeamUnleash1::
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 0
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 1
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 2
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 3
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 4
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 5
|
||||||
delay 4
|
delay 4
|
||||||
createsprite gSolarbeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6
|
createsprite gSolarBeamBigOrbSpriteTemplate, ANIM_TARGET, 3, 15, 0, 20, 6
|
||||||
delay 4
|
delay 4
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -10407,29 +10407,29 @@ UnsetSkyBg::
|
|||||||
waitbgfadein
|
waitbgfadein
|
||||||
return
|
return
|
||||||
|
|
||||||
SetSolarbeamBg::
|
SetSolarBeamBg::
|
||||||
createvisualtask AnimTask_IsContest, 2,
|
createvisualtask AnimTask_IsContest, 2,
|
||||||
jumpargeq 7, 1, SetSolarbeamBgContest
|
jumpargeq 7, 1, SetSolarBeamBgContest
|
||||||
createvisualtask AnimTask_IsTargetPlayerSide, 2,
|
createvisualtask AnimTask_IsTargetPlayerSide, 2,
|
||||||
jumpargeq 7, 0, SetSolarbeamBgOpponent
|
jumpargeq 7, 0, SetSolarBeamBgOpponent
|
||||||
goto SetSolarbeamBgPlayer
|
goto SetSolarBeamBgPlayer
|
||||||
SetSolarbeamBgContinue::
|
SetSolarBeamBgContinue::
|
||||||
waitbgfadein
|
waitbgfadein
|
||||||
return
|
return
|
||||||
|
|
||||||
SetSolarbeamBgContest::
|
SetSolarBeamBgContest::
|
||||||
fadetobg BG_SOLARBEAM_CONTESTS
|
fadetobg BG_SOLAR_BEAM_CONTESTS
|
||||||
goto SetSolarbeamBgContinue
|
goto SetSolarBeamBgContinue
|
||||||
|
|
||||||
SetSolarbeamBgPlayer::
|
SetSolarBeamBgPlayer::
|
||||||
fadetobg BG_SOLARBEAM_PLAYER
|
fadetobg BG_SOLAR_BEAM_PLAYER
|
||||||
goto SetSolarbeamBgContinue
|
goto SetSolarBeamBgContinue
|
||||||
|
|
||||||
SetSolarbeamBgOpponent::
|
SetSolarBeamBgOpponent::
|
||||||
fadetobg BG_SOLARBEAM_OPPONENT
|
fadetobg BG_SOLAR_BEAM_OPPONENT
|
||||||
goto SetSolarbeamBgContinue
|
goto SetSolarBeamBgContinue
|
||||||
|
|
||||||
UnsetSolarbeamBg::
|
UnsetSolarBeamBg::
|
||||||
restorebg
|
restorebg
|
||||||
waitbgfadein
|
waitbgfadein
|
||||||
return
|
return
|
||||||
|
|||||||
+65
-65
@@ -171,7 +171,7 @@ gBattleScriptsForMoveEffects::
|
|||||||
.4byte BattleScript_EffectFutureSight
|
.4byte BattleScript_EffectFutureSight
|
||||||
.4byte BattleScript_EffectGust
|
.4byte BattleScript_EffectGust
|
||||||
.4byte BattleScript_EffectFlinchMinimizeHit
|
.4byte BattleScript_EffectFlinchMinimizeHit
|
||||||
.4byte BattleScript_EffectSolarbeam
|
.4byte BattleScript_EffectSolarBeam
|
||||||
.4byte BattleScript_EffectThunder
|
.4byte BattleScript_EffectThunder
|
||||||
.4byte BattleScript_EffectTeleport
|
.4byte BattleScript_EffectTeleport
|
||||||
.4byte BattleScript_EffectBeatUp
|
.4byte BattleScript_EffectBeatUp
|
||||||
@@ -495,7 +495,7 @@ BattleScript_EffectStatUp::
|
|||||||
BattleScript_EffectStatUpAfterAtkCanceler::
|
BattleScript_EffectStatUpAfterAtkCanceler::
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_StatUpEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_StatUpEnd
|
||||||
jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_StatUpAttackAnim
|
jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_StatUpAttackAnim
|
||||||
pause 0x20
|
pause 0x20
|
||||||
goto BattleScript_StatUpPrintString
|
goto BattleScript_StatUpPrintString
|
||||||
@@ -542,7 +542,7 @@ BattleScript_EffectStatDown::
|
|||||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_StatDownEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_StatDownEnd
|
||||||
jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, 2, BattleScript_StatDownDoAnim
|
jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, 2, BattleScript_StatDownDoAnim
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 3, BattleScript_StatDownEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 3, BattleScript_StatDownEnd
|
||||||
pause 0x20
|
pause 0x20
|
||||||
@@ -1503,17 +1503,17 @@ BattleScript_CurseTrySpeed::
|
|||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
setstatchanger STAT_SPEED, 1, TRUE
|
setstatchanger STAT_SPEED, 1, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CurseTryAttack
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CurseTryAttack
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_CurseTryAttack::
|
BattleScript_CurseTryAttack::
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CurseTryDefence
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CurseTryDefence
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_CurseTryDefence::
|
BattleScript_CurseTryDefence::
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CurseEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CurseEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_CurseEnd::
|
BattleScript_CurseEnd::
|
||||||
@@ -1625,7 +1625,7 @@ BattleScript_EffectSwagger::
|
|||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
setstatchanger STAT_ATK, 2, FALSE
|
setstatchanger STAT_ATK, 2, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_SwaggerTryConfuse
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_SwaggerTryConfuse
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SwaggerTryConfuse
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SwaggerTryConfuse
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -1703,7 +1703,7 @@ BattleScript_EffectBatonPass::
|
|||||||
attackcanceler
|
attackcanceler
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
jumpifcantswitch BS_ATTACKER | ATK4F_DONT_CHECK_STATUSES, BattleScript_ButItFailed
|
jumpifcantswitch BS_ATTACKER | SWITCH_IGNORE_ESCAPE_PREVENTION, BattleScript_ButItFailed
|
||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
openpartyscreen BS_ATTACKER, BattleScript_ButItFailed
|
openpartyscreen BS_ATTACKER, BattleScript_ButItFailed
|
||||||
@@ -1820,7 +1820,7 @@ BattleScript_EffectSkullBash::
|
|||||||
setbyte sTWOTURN_STRINGID, 2
|
setbyte sTWOTURN_STRINGID, 2
|
||||||
call BattleScriptFirstChargingTurn
|
call BattleScriptFirstChargingTurn
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_SkullBashEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_SkullBashEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SkullBashEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SkullBashEnd
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -1908,18 +1908,18 @@ BattleScript_EffectFlinchMinimizeHit::
|
|||||||
setbyte sDMG_MULTIPLIER, 2
|
setbyte sDMG_MULTIPLIER, 2
|
||||||
goto BattleScript_FlinchEffect
|
goto BattleScript_FlinchEffect
|
||||||
|
|
||||||
BattleScript_EffectSolarbeam::
|
BattleScript_EffectSolarBeam::
|
||||||
jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarbeamDecideTurn
|
jumpifabilitypresent ABILITY_CLOUD_NINE, BattleScript_SolarBeamDecideTurn
|
||||||
jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarbeamDecideTurn
|
jumpifabilitypresent ABILITY_AIR_LOCK, BattleScript_SolarBeamDecideTurn
|
||||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, 96, BattleScript_SolarbeamOnFirstTurn
|
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, 96, BattleScript_SolarBeamOnFirstTurn
|
||||||
BattleScript_SolarbeamDecideTurn::
|
BattleScript_SolarBeamDecideTurn::
|
||||||
jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn
|
jumpifstatus2 BS_ATTACKER, STATUS2_MULTIPLETURNS, BattleScript_TwoTurnMovesSecondTurn
|
||||||
jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn
|
jumpifword CMP_COMMON_BITS, gHitMarker, HITMARKER_NO_ATTACKSTRING, BattleScript_TwoTurnMovesSecondTurn
|
||||||
setbyte sTWOTURN_STRINGID, 1
|
setbyte sTWOTURN_STRINGID, 1
|
||||||
call BattleScriptFirstChargingTurn
|
call BattleScriptFirstChargingTurn
|
||||||
goto BattleScript_MoveEnd
|
goto BattleScript_MoveEnd
|
||||||
|
|
||||||
BattleScript_SolarbeamOnFirstTurn::
|
BattleScript_SolarBeamOnFirstTurn::
|
||||||
orword gHitMarker, HITMARKER_CHARGING
|
orword gHitMarker, HITMARKER_CHARGING
|
||||||
setmoveeffect MOVE_EFFECT_CHARGING | MOVE_EFFECT_AFFECTS_USER
|
setmoveeffect MOVE_EFFECT_CHARGING | MOVE_EFFECT_AFFECTS_USER
|
||||||
seteffectprimary
|
seteffectprimary
|
||||||
@@ -2028,7 +2028,7 @@ BattleScript_EffectDefenseCurl::
|
|||||||
ppreduce
|
ppreduce
|
||||||
setdefensecurlbit
|
setdefensecurlbit
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_DefenseCurlDoStatUpAnim
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_DefenseCurlDoStatUpAnim
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_StatUpPrintString
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_StatUpPrintString
|
||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
@@ -2170,7 +2170,7 @@ BattleScript_EffectFlatter::
|
|||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
setstatchanger STAT_SPATK, 1, FALSE
|
setstatchanger STAT_SPATK, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_FlatterTryConfuse
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_FlatterTryConfuse
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_FlatterTryConfuse
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_FlatterTryConfuse
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -2223,17 +2223,17 @@ BattleScript_EffectMemento::
|
|||||||
waitanimation
|
waitanimation
|
||||||
jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_MementoSubstituteInvulnerable
|
jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_MementoSubstituteInvulnerable
|
||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_SPATK, ATK48_STAT_NEGATIVE | ATK48_STAT_BY_TWO | ATK48_ONLY_MULTIPLE
|
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO | STAT_CHANGE_MULTIPLE_STATS
|
||||||
playstatchangeanimation BS_TARGET, BIT_ATK, ATK48_STAT_NEGATIVE | ATK48_STAT_BY_TWO
|
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
||||||
setstatchanger STAT_ATK, 2, TRUE
|
setstatchanger STAT_ATK, 2, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_MementoSkipStatDown1
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_MementoSkipStatDown1
|
||||||
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_MementoSkipStatDown1
|
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_MementoSkipStatDown1
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_MementoSkipStatDown1::
|
BattleScript_MementoSkipStatDown1::
|
||||||
playstatchangeanimation BS_TARGET, BIT_SPATK, ATK48_STAT_NEGATIVE | ATK48_STAT_BY_TWO
|
playstatchangeanimation BS_TARGET, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
||||||
setstatchanger STAT_SPATK, 2, TRUE
|
setstatchanger STAT_SPATK, 2, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_MementoSkipStatDown2
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_MementoSkipStatDown2
|
||||||
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_MementoSkipStatDown2
|
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_MementoSkipStatDown2
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -2667,17 +2667,17 @@ BattleScript_TickleDoMoveAnim::
|
|||||||
attackanimation
|
attackanimation
|
||||||
waitanimation
|
waitanimation
|
||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_DEF, ATK48_STAT_NEGATIVE | ATK48_ONLY_MULTIPLE
|
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_DEF, STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS
|
||||||
playstatchangeanimation BS_TARGET, BIT_ATK, ATK48_STAT_NEGATIVE
|
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE
|
||||||
setstatchanger STAT_ATK, 1, TRUE
|
setstatchanger STAT_ATK, 1, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_TickleTryLowerDef
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_TickleTryLowerDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_TickleTryLowerDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_TickleTryLowerDef
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_TickleTryLowerDef::
|
BattleScript_TickleTryLowerDef::
|
||||||
playstatchangeanimation BS_TARGET, BIT_DEF, ATK48_STAT_NEGATIVE
|
playstatchangeanimation BS_TARGET, BIT_DEF, STAT_CHANGE_NEGATIVE
|
||||||
setstatchanger STAT_DEF, 1, TRUE
|
setstatchanger STAT_DEF, 1, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_TickleEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_TickleEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_TickleEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_TickleEnd
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -2703,13 +2703,13 @@ BattleScript_CosmicPowerDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CosmicPowerTrySpDef
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CosmicPowerTrySpDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CosmicPowerTrySpDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CosmicPowerTrySpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_CosmicPowerTrySpDef::
|
BattleScript_CosmicPowerTrySpDef::
|
||||||
setstatchanger STAT_SPDEF, 1, FALSE
|
setstatchanger STAT_SPDEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CosmicPowerEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CosmicPowerEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CosmicPowerEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CosmicPowerEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -2732,13 +2732,13 @@ BattleScript_BulkUpDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_BulkUpTryDef
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_BulkUpTryDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_BulkUpTryDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_BulkUpTryDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_BulkUpTryDef::
|
BattleScript_BulkUpTryDef::
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_BulkUpEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_BulkUpEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_BulkUpEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_BulkUpEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -2757,13 +2757,13 @@ BattleScript_CalmMindDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0
|
||||||
setstatchanger STAT_SPATK, 1, FALSE
|
setstatchanger STAT_SPATK, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CalmMindTrySpDef
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CalmMindTrySpDef
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CalmMindTrySpDef
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CalmMindTrySpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_CalmMindTrySpDef::
|
BattleScript_CalmMindTrySpDef::
|
||||||
setstatchanger STAT_SPDEF, 1, FALSE
|
setstatchanger STAT_SPDEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CalmMindEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_CalmMindEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CalmMindEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_CalmMindEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -2789,13 +2789,13 @@ BattleScript_DragonDanceDoMoveAnim::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0
|
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_DragonDanceTrySpeed
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_DragonDanceTrySpeed
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_DragonDanceTrySpeed
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_DragonDanceTrySpeed
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_DragonDanceTrySpeed::
|
BattleScript_DragonDanceTrySpeed::
|
||||||
setstatchanger STAT_SPEED, 1, FALSE
|
setstatchanger STAT_SPEED, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_DragonDanceEnd
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_DragonDanceEnd
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_DragonDanceEnd
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_DragonDanceEnd
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -2837,7 +2837,7 @@ BattleScript_GiveExp::
|
|||||||
end2
|
end2
|
||||||
|
|
||||||
BattleScript_HandleFaintedMon::
|
BattleScript_HandleFaintedMon::
|
||||||
atk24 BattleScript_LinkBattleHandleFaint
|
checkteamslost BattleScript_LinkBattleHandleFaint
|
||||||
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd
|
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd
|
||||||
jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother
|
jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother
|
||||||
jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChooseAnother
|
jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChooseAnother
|
||||||
@@ -2862,7 +2862,7 @@ BattleScript_FaintedMonTryChooseAnother::
|
|||||||
yesnobox
|
yesnobox
|
||||||
jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 1, BattleScript_FaintedMonChooseAnother
|
jumpifbyte CMP_EQUAL, gBattleCommunication + 1, 1, BattleScript_FaintedMonChooseAnother
|
||||||
setatktoplayer0
|
setatktoplayer0
|
||||||
openpartyscreen BS_ATTACKER | OPEN_PARTY_ALLOW_CANCEL, BattleScript_FaintedMonChooseAnother
|
openpartyscreen BS_ATTACKER | PARTY_SCREEN_OPTIONAL, BattleScript_FaintedMonChooseAnother
|
||||||
switchhandleorder BS_ATTACKER, 2
|
switchhandleorder BS_ATTACKER, 2
|
||||||
jumpifbyte CMP_EQUAL, gBattleCommunication, 6, BattleScript_FaintedMonChooseAnother
|
jumpifbyte CMP_EQUAL, gBattleCommunication, 6, BattleScript_FaintedMonChooseAnother
|
||||||
atknameinbuff1
|
atknameinbuff1
|
||||||
@@ -2892,7 +2892,7 @@ BattleScript_FaintedMonChooseAnother::
|
|||||||
hidepartystatussummary BS_FAINTED
|
hidepartystatussummary BS_FAINTED
|
||||||
switchinanim BS_FAINTED, 0
|
switchinanim BS_FAINTED, 0
|
||||||
waitstate
|
waitstate
|
||||||
various7 BS_ATTACKER
|
resetplayerfainted BS_ATTACKER
|
||||||
switchineffects BS_FAINTED
|
switchineffects BS_FAINTED
|
||||||
jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonEnd
|
jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonEnd
|
||||||
cancelallactions
|
cancelallactions
|
||||||
@@ -2900,10 +2900,10 @@ BattleScript_FaintedMonEnd::
|
|||||||
end2
|
end2
|
||||||
|
|
||||||
BattleScript_LinkBattleHandleFaint::
|
BattleScript_LinkBattleHandleFaint::
|
||||||
openpartyscreen BS_UNKNOWN_5, BattleScript_LinkBattleHandleFaintStart
|
openpartyscreen BS_FAINTED_LINK_MULTIPLE_1, BattleScript_LinkBattleHandleFaintStart
|
||||||
BattleScript_LinkBattleHandleFaintStart::
|
BattleScript_LinkBattleHandleFaintStart::
|
||||||
switchhandleorder BS_FAINTED, 0
|
switchhandleorder BS_FAINTED, 0
|
||||||
openpartyscreen BS_UNKNOWN_6, BattleScript_LinkBattleFaintedMonEnd
|
openpartyscreen BS_FAINTED_LINK_MULTIPLE_2, BattleScript_LinkBattleFaintedMonEnd
|
||||||
switchhandleorder BS_FAINTED, 0
|
switchhandleorder BS_FAINTED, 0
|
||||||
BattleScript_LinkBattleFaintedMonLoop::
|
BattleScript_LinkBattleFaintedMonLoop::
|
||||||
switchhandleorder BS_FAINTED, 2
|
switchhandleorder BS_FAINTED, 2
|
||||||
@@ -2996,7 +2996,7 @@ BattleScript_BattleTowerLostLostSkipDouble::
|
|||||||
BattleScript_LinkBattleWonOrLost::
|
BattleScript_LinkBattleWonOrLost::
|
||||||
printstring STRINGID_BATTLEEND
|
printstring STRINGID_BATTLEEND
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
atk57
|
endlinkbattle
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
end2
|
end2
|
||||||
|
|
||||||
@@ -3112,7 +3112,7 @@ BattleScript_PursuitDmgOnSwitchOut::
|
|||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
tryfaintmon BS_TARGET, 0, NULL
|
tryfaintmon BS_TARGET, 0, NULL
|
||||||
moveendfromto 3, 6
|
moveendfromto 3, 6
|
||||||
various4 BS_TARGET
|
getbattlerfainted BS_TARGET
|
||||||
jumpifbyte CMP_EQUAL, gBattleCommunication, 0, BattleScript_PursuitSwitchRivalSkip
|
jumpifbyte CMP_EQUAL, gBattleCommunication, 0, BattleScript_PursuitSwitchRivalSkip
|
||||||
setbyte sGIVEEXP_STATE, 0
|
setbyte sGIVEEXP_STATE, 0
|
||||||
getexp BS_TARGET
|
getexp BS_TARGET
|
||||||
@@ -3182,19 +3182,19 @@ BattleScript_DamagingWeatherLoop::
|
|||||||
jumpifword CMP_EQUAL, gBattleMoveDamage, NULL, BattleScript_DamagingWeatherContinuesEnd
|
jumpifword CMP_EQUAL, gBattleMoveDamage, NULL, BattleScript_DamagingWeatherContinuesEnd
|
||||||
printfromtable gSandstormHailDmgStringIds
|
printfromtable gSandstormHailDmgStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
orword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||||
effectivenesssound
|
effectivenesssound
|
||||||
hitanimation BS_ATTACKER
|
hitanimation BS_ATTACKER
|
||||||
healthbarupdate BS_ATTACKER
|
healthbarupdate BS_ATTACKER
|
||||||
datahpupdate BS_ATTACKER
|
datahpupdate BS_ATTACKER
|
||||||
tryfaintmon BS_ATTACKER, 0, NULL
|
tryfaintmon BS_ATTACKER, 0, NULL
|
||||||
atk24 BattleScript_DamagingWeatherContinuesEnd
|
checkteamslost BattleScript_DamagingWeatherContinuesEnd
|
||||||
BattleScript_DamagingWeatherContinuesEnd::
|
BattleScript_DamagingWeatherContinuesEnd::
|
||||||
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_WeatherDamageEndedBattle
|
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_WeatherDamageEndedBattle
|
||||||
addbyte gBattleCommunication, 1
|
addbyte gBattleCommunication, 1
|
||||||
jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamagingWeatherLoop
|
jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamagingWeatherLoop
|
||||||
BattleScript_WeatherDamageEndedBattle::
|
BattleScript_WeatherDamageEndedBattle::
|
||||||
bicword gHitMarker, HITMARKER_x20 | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
bicword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||||
end2
|
end2
|
||||||
|
|
||||||
BattleScript_SandStormHailEnds::
|
BattleScript_SandStormHailEnds::
|
||||||
@@ -3427,27 +3427,27 @@ BattleScript_AllStatsUpAtk::
|
|||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0
|
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0
|
||||||
setstatchanger STAT_ATK, 1, FALSE
|
setstatchanger STAT_ATK, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpDef
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_AllStatsUpDef::
|
BattleScript_AllStatsUpDef::
|
||||||
setstatchanger STAT_DEF, 1, FALSE
|
setstatchanger STAT_DEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpSpeed
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpSpeed
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_AllStatsUpSpeed::
|
BattleScript_AllStatsUpSpeed::
|
||||||
setstatchanger STAT_SPEED, 1, FALSE
|
setstatchanger STAT_SPEED, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpSpAtk
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpSpAtk
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_AllStatsUpSpAtk::
|
BattleScript_AllStatsUpSpAtk::
|
||||||
setstatchanger STAT_SPATK, 1, FALSE
|
setstatchanger STAT_SPATK, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpSpDef
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpSpDef
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_AllStatsUpSpDef::
|
BattleScript_AllStatsUpSpDef::
|
||||||
setstatchanger STAT_SPDEF, 1, FALSE
|
setstatchanger STAT_SPDEF, 1, FALSE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpRet
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_AllStatsUpRet
|
||||||
printfromtable gStatUpStringIds
|
printfromtable gStatUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_AllStatsUpRet::
|
BattleScript_AllStatsUpRet::
|
||||||
@@ -3499,7 +3499,7 @@ BattleScript_DoFutureAttackHit::
|
|||||||
resultmessage
|
resultmessage
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
tryfaintmon BS_TARGET, 0, NULL
|
tryfaintmon BS_TARGET, 0, NULL
|
||||||
atk24 BattleScript_FutureAttackEnd
|
checkteamslost BattleScript_FutureAttackEnd
|
||||||
BattleScript_FutureAttackEnd::
|
BattleScript_FutureAttackEnd::
|
||||||
moveendcase 0
|
moveendcase 0
|
||||||
moveendfromto 11, 14
|
moveendfromto 11, 14
|
||||||
@@ -3584,17 +3584,17 @@ BattleScript_PrintMonIsRooted::
|
|||||||
|
|
||||||
BattleScript_AtkDefDown::
|
BattleScript_AtkDefDown::
|
||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, ATK48_STAT_NEGATIVE | ATK48_ONLY_MULTIPLE | ATK48_DONT_CHECK_LOWER
|
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS | STAT_CHANGE_CANT_PREVENT
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_ATK, ATK48_STAT_NEGATIVE | ATK48_DONT_CHECK_LOWER
|
playstatchangeanimation BS_ATTACKER, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_CANT_PREVENT
|
||||||
setstatchanger STAT_ATK, 1, TRUE
|
setstatchanger STAT_ATK, 1, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN, BattleScript_AtkDefDownAtkFail
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN, BattleScript_AtkDefDownAtkFail
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_AtkDefDownAtkFail
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_AtkDefDownAtkFail
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
BattleScript_AtkDefDownAtkFail::
|
BattleScript_AtkDefDownAtkFail::
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_DEF, ATK48_STAT_NEGATIVE | ATK48_DONT_CHECK_LOWER
|
playstatchangeanimation BS_ATTACKER, BIT_DEF, STAT_CHANGE_NEGATIVE | STAT_CHANGE_CANT_PREVENT
|
||||||
setstatchanger STAT_DEF, 1, TRUE
|
setstatchanger STAT_DEF, 1, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN, BattleScript_AtkDefDownDefFail
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN, BattleScript_AtkDefDownDefFail
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_AtkDefDownDefFail
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_AtkDefDownDefFail
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -3627,7 +3627,7 @@ BattleScript_MagicCoatBounce::
|
|||||||
pause 0x20
|
pause 0x20
|
||||||
printstring STRINGID_PKMNMOVEBOUNCED
|
printstring STRINGID_PKMNMOVEBOUNCED
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000
|
orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_ALLOW_NO_PP
|
||||||
setmagiccoattarget BS_ATTACKER
|
setmagiccoattarget BS_ATTACKER
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -3638,7 +3638,7 @@ BattleScript_SnatchedMove::
|
|||||||
playanimation BS_TARGET, B_ANIM_SNATCH_MOVE, NULL
|
playanimation BS_TARGET, B_ANIM_SNATCH_MOVE, NULL
|
||||||
printstring STRINGID_PKMNSNATCHEDMOVE
|
printstring STRINGID_PKMNSNATCHEDMOVE
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_x800000
|
orword gHitMarker, HITMARKER_ATTACKSTRING_PRINTED | HITMARKER_NO_PPDEDUCT | HITMARKER_ALLOW_NO_PP
|
||||||
swapattackerwithtarget
|
swapattackerwithtarget
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -3654,9 +3654,9 @@ BattleScript_OneHitKOMsg::
|
|||||||
|
|
||||||
BattleScript_SAtkDown2::
|
BattleScript_SAtkDown2::
|
||||||
setbyte sSTAT_ANIM_PLAYED, 0
|
setbyte sSTAT_ANIM_PLAYED, 0
|
||||||
playstatchangeanimation BS_ATTACKER, BIT_SPATK, ATK48_STAT_NEGATIVE | ATK48_STAT_BY_TWO | ATK48_DONT_CHECK_LOWER
|
playstatchangeanimation BS_ATTACKER, BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO | STAT_CHANGE_CANT_PREVENT
|
||||||
setstatchanger STAT_SPATK, 2, TRUE
|
setstatchanger STAT_SPATK, 2, TRUE
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN, BattleScript_SAtkDown2End
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN, BattleScript_SAtkDown2End
|
||||||
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SAtkDown2End
|
jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 2, BattleScript_SAtkDown2End
|
||||||
printfromtable gStatDownStringIds
|
printfromtable gStatDownStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -3678,7 +3678,7 @@ BattleScript_MoveUsedIsAsleep::
|
|||||||
goto BattleScript_MoveEnd
|
goto BattleScript_MoveEnd
|
||||||
|
|
||||||
BattleScript_MoveUsedWokeUp::
|
BattleScript_MoveUsedWokeUp::
|
||||||
bicword gHitMarker, HITMARKER_x10
|
bicword gHitMarker, HITMARKER_WAKE_UP_CLEAR
|
||||||
printfromtable gWokeUpStringIds
|
printfromtable gWokeUpStringIds
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
updatestatusicon BS_ATTACKER
|
updatestatusicon BS_ATTACKER
|
||||||
@@ -3700,7 +3700,7 @@ BattleScript_DoTurnDmg::
|
|||||||
healthbarupdate BS_ATTACKER
|
healthbarupdate BS_ATTACKER
|
||||||
datahpupdate BS_ATTACKER
|
datahpupdate BS_ATTACKER
|
||||||
tryfaintmon BS_ATTACKER, 0, NULL
|
tryfaintmon BS_ATTACKER, 0, NULL
|
||||||
atk24 BattleScript_DoTurnDmgEnd
|
checkteamslost BattleScript_DoTurnDmgEnd
|
||||||
BattleScript_DoTurnDmgEnd::
|
BattleScript_DoTurnDmgEnd::
|
||||||
end2
|
end2
|
||||||
|
|
||||||
@@ -4009,7 +4009,7 @@ BattleScript_IntimidateActivationAnimLoop::
|
|||||||
jumpifability BS_TARGET, ABILITY_CLEAR_BODY, BattleScript_IntimidateAbilityFail
|
jumpifability BS_TARGET, ABILITY_CLEAR_BODY, BattleScript_IntimidateAbilityFail
|
||||||
jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, BattleScript_IntimidateAbilityFail
|
jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, BattleScript_IntimidateAbilityFail
|
||||||
jumpifability BS_TARGET, ABILITY_WHITE_SMOKE, BattleScript_IntimidateAbilityFail
|
jumpifability BS_TARGET, ABILITY_WHITE_SMOKE, BattleScript_IntimidateAbilityFail
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | STAT_CHANGE_NOT_PROTECT_AFFECTED, BattleScript_IntimidateFail
|
statbuffchange STAT_CHANGE_ALLOW_PTR | STAT_CHANGE_NOT_PROTECT_AFFECTED, BattleScript_IntimidateFail
|
||||||
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_IntimidateFail
|
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_IntimidateFail
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
@@ -4355,7 +4355,7 @@ BattleScript_SelectingNotAllowedMoveChoiceItem::
|
|||||||
printselectionstring STRINGID_ITEMALLOWSONLYYMOVE
|
printselectionstring STRINGID_ITEMALLOWSONLYYMOVE
|
||||||
endselectionscript
|
endselectionscript
|
||||||
|
|
||||||
BattleScript_HangedOnMsg::
|
BattleScript_FocusBandActivates::
|
||||||
playanimation BS_TARGET, B_ANIM_HANGED_ON, NULL
|
playanimation BS_TARGET, B_ANIM_HANGED_ON, NULL
|
||||||
printstring STRINGID_PKMNHUNGONWITHX
|
printstring STRINGID_PKMNHUNGONWITHX
|
||||||
waitmessage 0x40
|
waitmessage 0x40
|
||||||
@@ -4377,7 +4377,7 @@ BattleScript_BerryConfuseHealEnd2::
|
|||||||
|
|
||||||
BattleScript_BerryStatRaiseEnd2::
|
BattleScript_BerryStatRaiseEnd2::
|
||||||
playanimation BS_ATTACKER, B_ANIM_ITEM_EFFECT, NULL
|
playanimation BS_ATTACKER, B_ANIM_ITEM_EFFECT, NULL
|
||||||
statbuffchange STAT_CHANGE_BS_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_BerryStatRaiseDoStatUp
|
statbuffchange STAT_CHANGE_ALLOW_PTR | MOVE_EFFECT_AFFECTS_USER, BattleScript_BerryStatRaiseDoStatUp
|
||||||
BattleScript_BerryStatRaiseDoStatUp::
|
BattleScript_BerryStatRaiseDoStatUp::
|
||||||
setbyte cMULTISTRING_CHOOSER, 4
|
setbyte cMULTISTRING_CHOOSER, 4
|
||||||
call BattleScript_StatUp
|
call BattleScript_StatUp
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ BattleScript_CaughtPokemonDone::
|
|||||||
BattleScript_OldMan_Pokedude_CaughtMessage::
|
BattleScript_OldMan_Pokedude_CaughtMessage::
|
||||||
printstring STRINGID_GOTCHAPKMNCAUGHT2
|
printstring STRINGID_GOTCHAPKMNCAUGHT2
|
||||||
setbyte gBattleOutcome, B_OUTCOME_CAUGHT
|
setbyte gBattleOutcome, B_OUTCOME_CAUGHT
|
||||||
atk57
|
endlinkbattle
|
||||||
finishturn
|
finishturn
|
||||||
|
|
||||||
BattleScript_ShakeBallThrow::
|
BattleScript_ShakeBallThrow::
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 218 B After Width: | Height: | Size: 218 B |
@@ -153,7 +153,7 @@ $(UNUSEDGFXDIR)/color_frames.4bpp: %.4bpp: %.png
|
|||||||
$(BATINTGFXDIR)/unused_window2bar.4bpp: %.4bpp: %.png
|
$(BATINTGFXDIR)/unused_window2bar.4bpp: %.4bpp: %.png
|
||||||
$(GFX) $< $@ -num_tiles 5
|
$(GFX) $< $@ -num_tiles 5
|
||||||
|
|
||||||
$(BATINTGFXDIR)/unk_battlebox.4bpp: %.4bpp: %.png
|
$(BATINTGFXDIR)/level_up_banner.4bpp: %.4bpp: %.png
|
||||||
$(GFX) $< $@ -num_tiles 36
|
$(GFX) $< $@ -num_tiles 36
|
||||||
|
|
||||||
$(BATINTGFXDIR)/window.gbapal: $(BATINTGFXDIR)/window1.gbapal $(BATINTGFXDIR)/window2.gbapal
|
$(BATINTGFXDIR)/window.gbapal: $(BATINTGFXDIR)/window1.gbapal $(BATINTGFXDIR)/window2.gbapal
|
||||||
|
|||||||
+31
-26
@@ -4,6 +4,7 @@
|
|||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "constants/battle.h"
|
#include "constants/battle.h"
|
||||||
|
#include "constants/battle_script_commands.h"
|
||||||
#include "battle_util.h"
|
#include "battle_util.h"
|
||||||
#include "battle_script_commands.h"
|
#include "battle_script_commands.h"
|
||||||
#include "battle_main.h"
|
#include "battle_main.h"
|
||||||
@@ -23,11 +24,18 @@
|
|||||||
#define GET_BATTLER_SIDE(battler)((GetBattlerPosition(battler) & BIT_SIDE))
|
#define GET_BATTLER_SIDE(battler)((GetBattlerPosition(battler) & BIT_SIDE))
|
||||||
#define GET_BATTLER_SIDE2(battler)((GET_BATTLER_POSITION(battler) & BIT_SIDE))
|
#define GET_BATTLER_SIDE2(battler)((GET_BATTLER_POSITION(battler) & BIT_SIDE))
|
||||||
|
|
||||||
|
// Used to exclude moves learned temporarily by Transform or Mimic
|
||||||
|
#define MOVE_IS_PERMANENT(battler, moveSlot) \
|
||||||
|
(!(gBattleMons[battler].status2 & STATUS2_TRANSFORMED) \
|
||||||
|
&& !(gDisableStructs[battler].mimickedMoves & gBitTable[moveSlot]))
|
||||||
|
|
||||||
#define TRAINER_OPPONENT_3FE 0x3FE
|
#define TRAINER_OPPONENT_3FE 0x3FE
|
||||||
#define TRAINER_OPPONENT_C00 0xC00
|
#define TRAINER_OPPONENT_C00 0xC00
|
||||||
#define TRAINER_LINK_OPPONENT 0x800
|
#define TRAINER_LINK_OPPONENT 0x800
|
||||||
#define SECRET_BASE_OPPONENT 0x400
|
#define SECRET_BASE_OPPONENT 0x400
|
||||||
|
|
||||||
|
// Battle Actions
|
||||||
|
// These determine what each battler will do in a turn
|
||||||
#define B_ACTION_USE_MOVE 0
|
#define B_ACTION_USE_MOVE 0
|
||||||
#define B_ACTION_USE_ITEM 1
|
#define B_ACTION_USE_ITEM 1
|
||||||
#define B_ACTION_SWITCH 2
|
#define B_ACTION_SWITCH 2
|
||||||
@@ -47,26 +55,17 @@
|
|||||||
|
|
||||||
#define MAX_TRAINER_ITEMS 4
|
#define MAX_TRAINER_ITEMS 4
|
||||||
|
|
||||||
// array entries for battle communication
|
#define MOVE_TARGET_SELECTED 0
|
||||||
#define MULTIUSE_STATE 0x0
|
#define MOVE_TARGET_DEPENDS (1 << 0)
|
||||||
#define CURSOR_POSITION 0x1
|
#define MOVE_TARGET_USER_OR_SELECTED (1 << 1)
|
||||||
#define TASK_ID 0x1 // task Id and cursor position share the same field
|
#define MOVE_TARGET_RANDOM (1 << 2)
|
||||||
#define SPRITES_INIT_STATE1 0x1 // shares the Id as well
|
#define MOVE_TARGET_BOTH (1 << 3)
|
||||||
#define SPRITES_INIT_STATE2 0x2
|
#define MOVE_TARGET_USER (1 << 4)
|
||||||
#define MOVE_EFFECT_BYTE 0x3
|
#define MOVE_TARGET_FOES_AND_ALLY (1 << 5)
|
||||||
#define ACTIONS_CONFIRMED_COUNT 0x4
|
#define MOVE_TARGET_OPPONENTS_FIELD (1 << 6)
|
||||||
#define MULTISTRING_CHOOSER 0x5
|
|
||||||
#define MSG_DISPLAY 0x7
|
|
||||||
#define BATTLE_COMMUNICATION_ENTRIES_COUNT 0x8
|
|
||||||
|
|
||||||
#define MOVE_TARGET_SELECTED 0x0
|
// For the second argument of GetMoveTarget, when no target override is needed
|
||||||
#define MOVE_TARGET_DEPENDS 0x1
|
#define NO_TARGET_OVERRIDE 0
|
||||||
#define MOVE_TARGET_USER_OR_SELECTED 0x2
|
|
||||||
#define MOVE_TARGET_RANDOM 0x4
|
|
||||||
#define MOVE_TARGET_BOTH 0x8
|
|
||||||
#define MOVE_TARGET_USER 0x10
|
|
||||||
#define MOVE_TARGET_FOES_AND_ALLY 0x20
|
|
||||||
#define MOVE_TARGET_OPPONENTS_FIELD 0x40
|
|
||||||
|
|
||||||
struct TrainerMonNoItemDefaultMoves
|
struct TrainerMonNoItemDefaultMoves
|
||||||
{
|
{
|
||||||
@@ -159,7 +158,7 @@ struct DisableStruct
|
|||||||
/*0x16*/ u8 isFirstTurn;
|
/*0x16*/ u8 isFirstTurn;
|
||||||
/*0x17*/ u8 unk17;
|
/*0x17*/ u8 unk17;
|
||||||
/*0x18*/ u8 truantCounter : 1;
|
/*0x18*/ u8 truantCounter : 1;
|
||||||
/*0x18*/ u8 truantSwitchInHack : 1; // unused?
|
/*0x18*/ u8 truantSwitchInHack : 1; // Unused here, but used in pokeemerald
|
||||||
/*0x18*/ u8 unk18_a_2 : 2;
|
/*0x18*/ u8 unk18_a_2 : 2;
|
||||||
/*0x18*/ u8 mimickedMoves : 4;
|
/*0x18*/ u8 mimickedMoves : 4;
|
||||||
/*0x19*/ u8 rechargeTimer;
|
/*0x19*/ u8 rechargeTimer;
|
||||||
@@ -215,7 +214,7 @@ struct SpecialStatus
|
|||||||
u8 intimidatedMon:1; // 0x8
|
u8 intimidatedMon:1; // 0x8
|
||||||
u8 traced:1; // 0x10
|
u8 traced:1; // 0x10
|
||||||
u8 ppNotAffectedByPressure:1;
|
u8 ppNotAffectedByPressure:1;
|
||||||
u8 flag40 : 1;
|
u8 faintedHasReplacement:1;
|
||||||
u8 focusBanded:1;
|
u8 focusBanded:1;
|
||||||
u8 field1[3];
|
u8 field1[3];
|
||||||
s32 dmg;
|
s32 dmg;
|
||||||
@@ -455,17 +454,23 @@ struct BattleStruct
|
|||||||
|
|
||||||
extern struct BattleStruct *gBattleStruct;
|
extern struct BattleStruct *gBattleStruct;
|
||||||
|
|
||||||
|
#define F_DYNAMIC_TYPE_1 (1 << 6)
|
||||||
|
#define F_DYNAMIC_TYPE_2 (1 << 7)
|
||||||
|
#define DYNAMIC_TYPE_MASK (F_DYNAMIC_TYPE_1 - 1)
|
||||||
|
|
||||||
#define GET_MOVE_TYPE(move, typeArg) \
|
#define GET_MOVE_TYPE(move, typeArg) \
|
||||||
{ \
|
{ \
|
||||||
if (gBattleStruct->dynamicMoveType) \
|
if (gBattleStruct->dynamicMoveType) \
|
||||||
typeArg = gBattleStruct->dynamicMoveType & 0x3F; \
|
typeArg = gBattleStruct->dynamicMoveType & DYNAMIC_TYPE_MASK; \
|
||||||
else \
|
else \
|
||||||
typeArg = gBattleMoves[move].type; \
|
typeArg = gBattleMoves[move].type; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define IS_TYPE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY)
|
#define IS_TYPE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY)
|
||||||
#define IS_TYPE_SPECIAL(moveType)(moveType > TYPE_MYSTERY)
|
#define IS_TYPE_SPECIAL(moveType)(moveType > TYPE_MYSTERY)
|
||||||
|
|
||||||
#define TARGET_TURN_DAMAGED ((gSpecialStatuses[gBattlerTarget].physicalDmg != 0 || gSpecialStatuses[gBattlerTarget].specialDmg != 0))
|
#define TARGET_TURN_DAMAGED ((gSpecialStatuses[gBattlerTarget].physicalDmg != 0 || gSpecialStatuses[gBattlerTarget].specialDmg != 0))
|
||||||
|
|
||||||
#define IS_BATTLER_OF_TYPE(battlerId, type)((gBattleMons[battlerId].type1 == type || gBattleMons[battlerId].type2 == type))
|
#define IS_BATTLER_OF_TYPE(battlerId, type)((gBattleMons[battlerId].type1 == type || gBattleMons[battlerId].type2 == type))
|
||||||
#define SET_BATTLER_TYPE(battlerId, type) \
|
#define SET_BATTLER_TYPE(battlerId, type) \
|
||||||
{ \
|
{ \
|
||||||
@@ -492,7 +497,7 @@ struct BattleScripting
|
|||||||
u8 animArg1;
|
u8 animArg1;
|
||||||
u8 animArg2;
|
u8 animArg2;
|
||||||
u16 tripleKickPower;
|
u16 tripleKickPower;
|
||||||
u8 atk49_state;
|
u8 moveendState;
|
||||||
u8 battlerWithAbility;
|
u8 battlerWithAbility;
|
||||||
u8 multihitMoveEffect;
|
u8 multihitMoveEffect;
|
||||||
u8 battler;
|
u8 battler;
|
||||||
@@ -500,11 +505,11 @@ struct BattleScripting
|
|||||||
u8 animTargetsHit;
|
u8 animTargetsHit;
|
||||||
u8 statChanger;
|
u8 statChanger;
|
||||||
bool8 statAnimPlayed;
|
bool8 statAnimPlayed;
|
||||||
u8 atk23_state;
|
u8 getexpState;
|
||||||
u8 battleStyle;
|
u8 battleStyle;
|
||||||
u8 atk6C_state;
|
u8 drawlvlupboxState;
|
||||||
u8 learnMoveState;
|
u8 learnMoveState;
|
||||||
u8 field_20;
|
u8 pursuitDoublesAttacker;
|
||||||
u8 reshowMainState;
|
u8 reshowMainState;
|
||||||
u8 reshowHelperState;
|
u8 reshowHelperState;
|
||||||
u8 field_23;
|
u8 field_23;
|
||||||
|
|||||||
@@ -165,8 +165,8 @@ extern const union AnimCmd *const gMusicNotesAnimTable[];
|
|||||||
extern const struct SpriteTemplate gThoughtBubbleSpriteTemplate;
|
extern const struct SpriteTemplate gThoughtBubbleSpriteTemplate;
|
||||||
void AnimMovePowderParticle(struct Sprite *);
|
void AnimMovePowderParticle(struct Sprite *);
|
||||||
void AnimPowerAbsorptionOrb(struct Sprite *);
|
void AnimPowerAbsorptionOrb(struct Sprite *);
|
||||||
void AnimSolarbeamBigOrb(struct Sprite *);
|
void AnimSolarBeamBigOrb(struct Sprite *);
|
||||||
void AnimSolarbeamSmallOrb(struct Sprite *);
|
void AnimSolarBeamSmallOrb(struct Sprite *);
|
||||||
void AnimAbsorptionOrb(struct Sprite *);
|
void AnimAbsorptionOrb(struct Sprite *);
|
||||||
void AnimHyperBeamOrb(struct Sprite *);
|
void AnimHyperBeamOrb(struct Sprite *);
|
||||||
void AnimSporeParticle(struct Sprite *);
|
void AnimSporeParticle(struct Sprite *);
|
||||||
|
|||||||
@@ -68,17 +68,34 @@ enum
|
|||||||
REQUEST_TOUGH_RIBBON_BATTLE,
|
REQUEST_TOUGH_RIBBON_BATTLE,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define RESET_ACTION_MOVE_SELECTION 0
|
// Special arguments for Battle Controller functions.
|
||||||
#define RESET_ACTION_SELECTION 1
|
|
||||||
#define RESET_MOVE_SELECTION 2
|
|
||||||
|
|
||||||
#define BALL_NO_SHAKES 0
|
enum { // Values given to the emit functions to choose gBattleBufferA or gBattleBufferB
|
||||||
#define BALL_1_SHAKE 1
|
BUFFER_A,
|
||||||
#define BALL_2_SHAKES 2
|
BUFFER_B
|
||||||
#define BALL_3_SHAKES_FAIL 3
|
};
|
||||||
#define BALL_3_SHAKES_SUCCESS 4
|
|
||||||
#define BALL_TRAINER_BLOCK 5
|
enum {
|
||||||
#define BALL_GHOST_DODGE 6
|
RESET_ACTION_MOVE_SELECTION,
|
||||||
|
RESET_ACTION_SELECTION,
|
||||||
|
RESET_MOVE_SELECTION,
|
||||||
|
};
|
||||||
|
|
||||||
|
enum {
|
||||||
|
BALL_NO_SHAKES,
|
||||||
|
BALL_1_SHAKE,
|
||||||
|
BALL_2_SHAKES,
|
||||||
|
BALL_3_SHAKES_FAIL,
|
||||||
|
BALL_3_SHAKES_SUCCESS,
|
||||||
|
BALL_TRAINER_BLOCK,
|
||||||
|
BALL_GHOST_DODGE,
|
||||||
|
};
|
||||||
|
|
||||||
|
enum {
|
||||||
|
LINK_STANDBY_MSG_STOP_BOUNCE,
|
||||||
|
LINK_STANDBY_STOP_BOUNCE_ONLY,
|
||||||
|
LINK_STANDBY_MSG_ONLY,
|
||||||
|
};
|
||||||
|
|
||||||
#define RET_VALUE_LEVELLED_UP 11
|
#define RET_VALUE_LEVELLED_UP 11
|
||||||
|
|
||||||
@@ -149,7 +166,7 @@ enum
|
|||||||
CONTROLLER_STATUSXOR,
|
CONTROLLER_STATUSXOR,
|
||||||
CONTROLLER_DATATRANSFER,
|
CONTROLLER_DATATRANSFER,
|
||||||
CONTROLLER_DMA3TRANSFER,
|
CONTROLLER_DMA3TRANSFER,
|
||||||
CONTROLLER_31,
|
CONTROLLER_PLAYBGM,
|
||||||
CONTROLLER_32,
|
CONTROLLER_32,
|
||||||
CONTROLLER_TWORETURNVALUES,
|
CONTROLLER_TWORETURNVALUES,
|
||||||
CONTROLLER_CHOSENMONRETURNVALUE,
|
CONTROLLER_CHOSENMONRETURNVALUE,
|
||||||
@@ -173,7 +190,7 @@ enum
|
|||||||
CONTROLLER_BATTLEANIMATION,
|
CONTROLLER_BATTLEANIMATION,
|
||||||
CONTROLLER_LINKSTANDBYMSG,
|
CONTROLLER_LINKSTANDBYMSG,
|
||||||
CONTROLLER_RESETACTIONMOVESELECTION,
|
CONTROLLER_RESETACTIONMOVESELECTION,
|
||||||
CONTROLLER_55,
|
CONTROLLER_ENDLINKBATTLE,
|
||||||
/*new controllers should go here*/
|
/*new controllers should go here*/
|
||||||
CONTROLLER_TERMINATOR_NOP,
|
CONTROLLER_TERMINATOR_NOP,
|
||||||
CONTROLLER_CMDS_COUNT
|
CONTROLLER_CMDS_COUNT
|
||||||
@@ -193,7 +210,7 @@ void BtlController_EmitGetMonData(u8 bufferId, u8 requestId, u8 monToCheck);
|
|||||||
void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 bytes, void *data);
|
void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 bytes, void *data);
|
||||||
void BtlController_EmitLoadMonSprite(u8 bufferId);
|
void BtlController_EmitLoadMonSprite(u8 bufferId);
|
||||||
void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit);
|
void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit);
|
||||||
void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1);
|
void BtlController_EmitReturnMonToBall(u8 bufferId, bool8 skipAnim);
|
||||||
void BtlController_EmitDrawTrainerPic(u8 bufferId);
|
void BtlController_EmitDrawTrainerPic(u8 bufferId);
|
||||||
void BtlController_EmitTrainerSlide(u8 bufferId);
|
void BtlController_EmitTrainerSlide(u8 bufferId);
|
||||||
void BtlController_EmitTrainerSlideBack(u8 bufferId);
|
void BtlController_EmitTrainerSlideBack(u8 bufferId);
|
||||||
@@ -216,7 +233,7 @@ void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 b, u8 *c);
|
|||||||
void BtlController_EmitOneReturnValue(u8 bufferId, u16 arg1);
|
void BtlController_EmitOneReturnValue(u8 bufferId, u16 arg1);
|
||||||
void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 b);
|
void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 b);
|
||||||
void BtlController_EmitHitAnimation(u8 bufferId);
|
void BtlController_EmitHitAnimation(u8 bufferId);
|
||||||
void BtlController_EmitCmd42(u8 bufferId);
|
void BtlController_EmitCantSwitch(u8 bufferId);
|
||||||
void BtlController_EmitPlaySE(u8 bufferId, u16 songId);
|
void BtlController_EmitPlaySE(u8 bufferId, u16 songId);
|
||||||
void BtlController_EmitPlayFanfare(u8 bufferId, u16 songId);
|
void BtlController_EmitPlayFanfare(u8 bufferId, u16 songId);
|
||||||
void BtlController_EmitFaintingCry(u8 bufferId);
|
void BtlController_EmitFaintingCry(u8 bufferId);
|
||||||
@@ -227,9 +244,9 @@ void BtlController_EmitHidePartyStatusSummary(u8 bufferId);
|
|||||||
void BtlController_EmitEndBounceEffect(u8 bufferId);
|
void BtlController_EmitEndBounceEffect(u8 bufferId);
|
||||||
void BtlController_EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
|
void BtlController_EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
|
||||||
void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument);
|
void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument);
|
||||||
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 arg1);
|
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 mode);
|
||||||
void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId);
|
void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId);
|
||||||
void BtlController_EmitCmd55(u8 bufferId, u8 arg1);
|
void BtlController_EmitEndLinkBattle(u8 bufferId, u8 battleOutcome);
|
||||||
|
|
||||||
// player controller
|
// player controller
|
||||||
void PlayerDummy(void);
|
void PlayerDummy(void);
|
||||||
|
|||||||
@@ -69,9 +69,9 @@ void VBlankCB_Battle(void);
|
|||||||
void SpriteCB_VsLetterDummy(struct Sprite *sprite);
|
void SpriteCB_VsLetterDummy(struct Sprite *sprite);
|
||||||
void SpriteCB_VsLetterInit(struct Sprite *sprite);
|
void SpriteCB_VsLetterInit(struct Sprite *sprite);
|
||||||
void CB2_InitEndLinkBattle(void);
|
void CB2_InitEndLinkBattle(void);
|
||||||
u32 GetBattleBgAttribute(u8 arrayId, u8 caseId);
|
u32 GetBattleBgTemplateData(u8 arrayId, u8 caseId);
|
||||||
void SpriteCB_EnemyMon(struct Sprite *sprite);
|
void SpriteCB_EnemyMon(struct Sprite *sprite);
|
||||||
void SpriteCallbackDummy2(struct Sprite *sprite);
|
void SpriteCallbackDummy_2(struct Sprite *sprite);
|
||||||
void SpriteCB_FaintOpponentMon(struct Sprite *sprite);
|
void SpriteCB_FaintOpponentMon(struct Sprite *sprite);
|
||||||
void SpriteCb_ShowAsMoveTarget(struct Sprite *sprite);
|
void SpriteCb_ShowAsMoveTarget(struct Sprite *sprite);
|
||||||
void SpriteCb_HideAsMoveTarget(struct Sprite *sprite);
|
void SpriteCb_HideAsMoveTarget(struct Sprite *sprite);
|
||||||
|
|||||||
@@ -3,23 +3,21 @@
|
|||||||
|
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
|
||||||
#define STAT_CHANGE_WORKED 0
|
// Arguments for 'flags' in HandleBattleWindow
|
||||||
#define STAT_CHANGE_DIDNT_WORK 1
|
#define WINDOW_CLEAR (1 << 0)
|
||||||
|
#define WINDOW_BG1 (1 << 7)
|
||||||
|
|
||||||
#define WINDOW_CLEAR 0x1
|
|
||||||
#define WINDOW_x80 0x80
|
|
||||||
|
|
||||||
void SetMoveEffect(bool8 primary, u8 certain);
|
|
||||||
bool8 UproarWakeUpCheck(u8 battlerId);
|
|
||||||
u8 AI_TypeCalc(u16 move, u16 targetSpecies, u8 targetAbility);
|
|
||||||
u8 TypeCalc(u16 move, u8 attacker, u8 defender);
|
|
||||||
void AI_CalcDmg(u8 attacker, u8 defender);
|
void AI_CalcDmg(u8 attacker, u8 defender);
|
||||||
bool32 IsMonGettingExpSentOut(void);
|
u8 TypeCalc(u16 move, u8 attacker, u8 defender);
|
||||||
void BattleCreateYesNoCursorAt(void);
|
u8 AI_TypeCalc(u16 move, u16 targetSpecies, u8 targetAbility);
|
||||||
void BattleDestroyYesNoCursorAt(void);
|
|
||||||
void HandleBattleWindow(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags);
|
|
||||||
u8 GetBattlerTurnOrderNum(u8 battlerId);
|
u8 GetBattlerTurnOrderNum(u8 battlerId);
|
||||||
|
void SetMoveEffect(bool8 primary, u8 certain);
|
||||||
|
bool32 IsMonGettingExpSentOut(void);
|
||||||
|
void BattleDestroyYesNoCursorAt(void);
|
||||||
|
void BattleCreateYesNoCursorAt(void);
|
||||||
void BufferMoveToLearnIntoBattleTextBuff2(void);
|
void BufferMoveToLearnIntoBattleTextBuff2(void);
|
||||||
|
void HandleBattleWindow(u8 xStart, u8 yStart, u8 xEnd, u8 yEnd, u8 flags);
|
||||||
|
bool8 UproarWakeUpCheck(u8 battlerId);
|
||||||
|
|
||||||
extern void (* const gBattleScriptingCommandsTable[])(void);
|
extern void (* const gBattleScriptingCommandsTable[])(void);
|
||||||
|
|
||||||
|
|||||||
@@ -197,7 +197,7 @@ 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_SelectingNotAllowedMoveChoiceItem[];
|
extern const u8 BattleScript_SelectingNotAllowedMoveChoiceItem[];
|
||||||
extern const u8 BattleScript_HangedOnMsg[];
|
extern const u8 BattleScript_FocusBandActivates[];
|
||||||
extern const u8 BattleScript_BerryConfuseHealEnd2[];
|
extern const u8 BattleScript_BerryConfuseHealEnd2[];
|
||||||
extern const u8 BattleScript_BerryStatRaiseEnd2[];
|
extern const u8 BattleScript_BerryStatRaiseEnd2[];
|
||||||
extern const u8 BattleScript_BerryFocusEnergyEnd2[];
|
extern const u8 BattleScript_BerryFocusEnergyEnd2[];
|
||||||
|
|||||||
+208
-7
@@ -1,8 +1,6 @@
|
|||||||
#ifndef GUARD_BATTLE_STRING_IDS_H
|
#ifndef GUARD_BATTLE_STRING_IDS_H
|
||||||
#define GUARD_BATTLE_STRING_IDS_H
|
#define GUARD_BATTLE_STRING_IDS_H
|
||||||
|
|
||||||
#define BATTLESTRINGS_ID_ADDER 12 // all battlestrings have its ID + 12, because first 5 are reserved
|
|
||||||
|
|
||||||
#define STRINGID_INTROMSG 0
|
#define STRINGID_INTROMSG 0
|
||||||
#define STRINGID_INTROSENDOUT 1
|
#define STRINGID_INTROSENDOUT 1
|
||||||
#define STRINGID_RETURNMON 2
|
#define STRINGID_RETURNMON 2
|
||||||
@@ -213,10 +211,10 @@
|
|||||||
#define STRINGID_STATROSE 210
|
#define STRINGID_STATROSE 210
|
||||||
#define STRINGID_STATHARSHLY 211
|
#define STRINGID_STATHARSHLY 211
|
||||||
#define STRINGID_STATFELL 212
|
#define STRINGID_STATFELL 212
|
||||||
#define STRINGID_PKMNSSTATCHANGED 213
|
#define STRINGID_ATTACKERSSTATROSE 213
|
||||||
#define STRINGID_PKMNSSTATCHANGED2 214
|
#define STRINGID_DEFENDERSSTATROSE 214
|
||||||
#define STRINGID_PKMNSSTATCHANGED3 215
|
#define STRINGID_ATTACKERSSTATFELL 215
|
||||||
#define STRINGID_PKMNSSTATCHANGED4 216
|
#define STRINGID_DEFENDERSSTATFELL 216
|
||||||
#define STRINGID_CRITICALHIT 217
|
#define STRINGID_CRITICALHIT 217
|
||||||
#define STRINGID_ONEHITKO 218
|
#define STRINGID_ONEHITKO 218
|
||||||
#define STRINGID_123POOF 219
|
#define STRINGID_123POOF 219
|
||||||
@@ -325,7 +323,7 @@
|
|||||||
#define STRINGID_SOOTHINGAROMA 322
|
#define STRINGID_SOOTHINGAROMA 322
|
||||||
#define STRINGID_ITEMSCANTBEUSEDNOW 323
|
#define STRINGID_ITEMSCANTBEUSEDNOW 323
|
||||||
#define STRINGID_FORXCOMMAYZ 324
|
#define STRINGID_FORXCOMMAYZ 324
|
||||||
#define STRINGID_USINGXTHEYOFZN 325
|
#define STRINGID_USINGITEMSTATOFPKMNROSE 325
|
||||||
#define STRINGID_PKMNUSEDXTOGETPUMPED 326
|
#define STRINGID_PKMNUSEDXTOGETPUMPED 326
|
||||||
#define STRINGID_PKMNSXMADEYUSELESS 327
|
#define STRINGID_PKMNSXMADEYUSELESS 327
|
||||||
#define STRINGID_PKMNTRAPPEDBYSANDTOMB 328
|
#define STRINGID_PKMNTRAPPEDBYSANDTOMB 328
|
||||||
@@ -389,4 +387,207 @@
|
|||||||
|
|
||||||
#define BATTLESTRINGS_COUNT 374
|
#define BATTLESTRINGS_COUNT 374
|
||||||
|
|
||||||
|
// This is the string id that gBattleStringsTable starts with.
|
||||||
|
// String ids before this (e.g. STRINGID_INTROMSG) are not in the table,
|
||||||
|
// and are instead handled explicitly by BufferStringBattle.
|
||||||
|
#define BATTLESTRINGS_TABLE_START STRINGID_TRAINER1LOSETEXT
|
||||||
|
|
||||||
|
// The below IDs are all indexes into battle message tables,
|
||||||
|
// used to determine which of a set of messages to print.
|
||||||
|
// They are assigned to the MULTISTRING_CHOOSER byte of gBattleCommunication
|
||||||
|
// and read when e.g. the command printfromtable is used.
|
||||||
|
|
||||||
|
// gStatUpStringIds
|
||||||
|
#define B_MSG_ATTACKER_STAT_ROSE 0
|
||||||
|
#define B_MSG_DEFENDER_STAT_ROSE 1
|
||||||
|
#define B_MSG_STAT_WONT_INCREASE 2
|
||||||
|
#define B_MSG_STAT_ROSE_EMPTY 3
|
||||||
|
#define B_MSG_STAT_ROSE_ITEM 4
|
||||||
|
#define B_MSG_USED_DIRE_HIT 5
|
||||||
|
|
||||||
|
// gStatDownStringIds
|
||||||
|
#define B_MSG_ATTACKER_STAT_FELL 0
|
||||||
|
#define B_MSG_DEFENDER_STAT_FELL 1
|
||||||
|
#define B_MSG_STAT_WONT_DECREASE 2
|
||||||
|
#define B_MSG_STAT_FELL_EMPTY 3
|
||||||
|
|
||||||
|
// gMissStringIds
|
||||||
|
#define B_MSG_MISSED 0
|
||||||
|
#define B_MSG_PROTECTED 1
|
||||||
|
#define B_MSG_AVOIDED_ATK 2
|
||||||
|
#define B_MSG_AVOIDED_DMG 3
|
||||||
|
#define B_MSG_GROUND_MISS 4
|
||||||
|
|
||||||
|
// gAbsorbDrainStringIds
|
||||||
|
#define B_MSG_ABSORB 0
|
||||||
|
#define B_MSG_ABSORB_OOZE 1
|
||||||
|
|
||||||
|
// gLeechSeedStringIds
|
||||||
|
#define B_MSG_LEECH_SEED_SET 0
|
||||||
|
#define B_MSG_LEECH_SEED_MISS 1
|
||||||
|
#define B_MSG_LEECH_SEED_FAIL 2
|
||||||
|
#define B_MSG_LEECH_SEED_DRAIN 3
|
||||||
|
#define B_MSG_LEECH_SEED_OOZE 4
|
||||||
|
|
||||||
|
// gFirstTurnOfTwoStringIds
|
||||||
|
#define B_MSG_TURN1_RAZOR_WIND 0
|
||||||
|
#define B_MSG_TURN1_SOLAR_BEAM 1
|
||||||
|
#define B_MSG_TURN1_SKULL_BASH 2
|
||||||
|
#define B_MSG_TURN1_SKY_ATTACK 3
|
||||||
|
#define B_MSG_TURN1_FLY 4
|
||||||
|
#define B_MSG_TURN1_DIG 5
|
||||||
|
#define B_MSG_TURN1_DIVE 6
|
||||||
|
#define B_MSG_TURN1_BOUNCE 7
|
||||||
|
|
||||||
|
// gMoveWeatherChangeStringIds
|
||||||
|
#define B_MSG_STARTED_RAIN 0
|
||||||
|
#define B_MSG_STARTED_DOWNPOUR 1
|
||||||
|
#define B_MSG_WEATHER_FAILED 2
|
||||||
|
#define B_MSG_STARTED_SANDSTORM 3
|
||||||
|
#define B_MSG_STARTED_SUNLIGHT 4
|
||||||
|
#define B_MSG_STARTED_HAIL 5
|
||||||
|
|
||||||
|
// gRainContinuesStringIds
|
||||||
|
#define B_MSG_RAIN_CONTINUES 0
|
||||||
|
#define B_MSG_DOWNPOUR_CONTINUES 1
|
||||||
|
#define B_MSG_RAIN_STOPPED 2
|
||||||
|
|
||||||
|
// gSandStormHailContinuesStringIds / gSandStormHailDmgStringIds/ gSandStormHailEndStringIds
|
||||||
|
#define B_MSG_SANDSTORM 0
|
||||||
|
#define B_MSG_HAIL 1
|
||||||
|
|
||||||
|
// gReflectLightScreenSafeguardStringIds
|
||||||
|
#define B_MSG_SIDE_STATUS_FAILED 0
|
||||||
|
#define B_MSG_SET_REFLECT_SINGLE 1
|
||||||
|
#define B_MSG_SET_REFLECT_DOUBLE 2
|
||||||
|
#define B_MSG_SET_LIGHTSCREEN_SINGLE 3
|
||||||
|
#define B_MSG_SET_LIGHTSCREEN_DOUBLE 4
|
||||||
|
#define B_MSG_SET_SAFEGUARD 5
|
||||||
|
|
||||||
|
// gProtectLikeUsedStringIds
|
||||||
|
#define B_MSG_PROTECTED_ITSELF 0
|
||||||
|
#define B_MSG_BRACED_ITSELF 1
|
||||||
|
#define B_MSG_PROTECT_FAILED 2
|
||||||
|
|
||||||
|
// gRestUsedStringIds
|
||||||
|
#define B_MSG_REST 0
|
||||||
|
#define B_MSG_REST_STATUSED 1
|
||||||
|
|
||||||
|
// gWokeUpStringIds
|
||||||
|
#define B_MSG_WOKE_UP 0
|
||||||
|
#define B_MSG_WOKE_UP_UPROAR 1
|
||||||
|
|
||||||
|
// gUproarAwakeStringIds
|
||||||
|
#define B_MSG_CANT_SLEEP_UPROAR 0
|
||||||
|
#define B_MSG_UPROAR_KEPT_AWAKE 1
|
||||||
|
#define B_MSG_STAYED_AWAKE_USING 2
|
||||||
|
|
||||||
|
// gUproarOverTurnStringIds
|
||||||
|
#define B_MSG_UPROAR_CONTINUES 0
|
||||||
|
#define B_MSG_UPROAR_ENDS 1
|
||||||
|
|
||||||
|
// gStockpileUsedStringIds
|
||||||
|
#define B_MSG_STOCKPILED 0
|
||||||
|
#define B_MSG_CANT_STOCKPILE 1
|
||||||
|
|
||||||
|
// gSwallowFailStringIds
|
||||||
|
#define B_MSG_SWALLOW_FAILED 0
|
||||||
|
#define B_MSG_SWALLOW_FULL_HP 1
|
||||||
|
|
||||||
|
// gKOFailedStringIds
|
||||||
|
#define B_MSG_KO_MISS 0
|
||||||
|
#define B_MSG_KO_UNAFFECTED 1
|
||||||
|
|
||||||
|
// gMistUsedStringIds
|
||||||
|
#define B_MSG_SET_MIST 0
|
||||||
|
#define B_MSG_MIST_FAILED 1
|
||||||
|
|
||||||
|
// gFocusEnergyUsedStringIds
|
||||||
|
#define B_MSG_GETTING_PUMPED 0
|
||||||
|
#define B_MSG_FOCUS_ENERGY_FAILED 1
|
||||||
|
|
||||||
|
// gTransformUsedStringIds
|
||||||
|
#define B_MSG_TRANSFORMED 0
|
||||||
|
#define B_MSG_TRANSFORM_FAILED 1
|
||||||
|
|
||||||
|
// gSubstituteUsedStringIds
|
||||||
|
#define B_MSG_SET_SUBSTITUTE 0
|
||||||
|
#define B_MSG_SUBSTITUTE_FAILED 1
|
||||||
|
|
||||||
|
// gPartyStatusHealStringIds
|
||||||
|
#define B_MSG_BELL 0
|
||||||
|
#define B_MSG_BELL_SOUNDPROOF_ATTACKER 1
|
||||||
|
#define B_MSG_BELL_SOUNDPROOF_PARTNER 2
|
||||||
|
#define B_MSG_BELL_BOTH_SOUNDPROOF 3
|
||||||
|
#define B_MSG_SOOTHING_AROMA 4
|
||||||
|
|
||||||
|
// gFutureMoveUsedStringIds
|
||||||
|
#define B_MSG_FUTURE_SIGHT 0
|
||||||
|
#define B_MSG_DOOM_DESIRE 1
|
||||||
|
|
||||||
|
// gItemSwapStringIds
|
||||||
|
#define B_MSG_ITEM_SWAP_TAKEN 0
|
||||||
|
#define B_MSG_ITEM_SWAP_GIVEN 1
|
||||||
|
#define B_MSG_ITEM_SWAP_BOTH 2
|
||||||
|
|
||||||
|
// gSportsUsedStringIds
|
||||||
|
#define B_MSG_WEAKEN_ELECTRIC 0
|
||||||
|
#define B_MSG_WEAKEN_FIRE 1
|
||||||
|
|
||||||
|
// gCaughtMonStringIds
|
||||||
|
#define B_MSG_SENT_SOMEONES_PC 0
|
||||||
|
#define B_MSG_SENT_BILLS_PC 1
|
||||||
|
#define B_MSG_SOMEONES_BOX_FULL 2
|
||||||
|
#define B_MSG_BILLS_BOX_FULL 3
|
||||||
|
|
||||||
|
// gInobedientStringIds
|
||||||
|
#define B_MSG_LOAFING 0
|
||||||
|
#define B_MSG_WONT_OBEY 1
|
||||||
|
#define B_MSG_TURNED_AWAY 2
|
||||||
|
#define B_MSG_PRETEND_NOT_NOTICE 3
|
||||||
|
#define B_MSG_INCAPABLE_OF_POWER 4
|
||||||
|
// For randomly selecting a disobey string
|
||||||
|
// Skips the one used for Battle Palace
|
||||||
|
#define NUM_LOAF_STRINGS 4
|
||||||
|
|
||||||
|
// gSafariGetNearStringIds
|
||||||
|
#define B_MSG_CREPT_CLOSER 0
|
||||||
|
#define B_MSG_CANT_GET_CLOSER 1
|
||||||
|
|
||||||
|
// gSafariPokeblockResultStringIds
|
||||||
|
#define B_MSG_MON_CURIOUS 0
|
||||||
|
#define B_MSG_MON_ENTHRALLED 1
|
||||||
|
#define B_MSG_MON_IGNORED 2
|
||||||
|
|
||||||
|
// gFlashFireStringIds
|
||||||
|
#define B_MSG_FLASH_FIRE_BOOST 0
|
||||||
|
#define B_MSG_FLASH_FIRE_NO_BOOST 1
|
||||||
|
|
||||||
|
// gBerryEffectStringIds
|
||||||
|
#define B_MSG_CURED_PROBLEM 0
|
||||||
|
#define B_MSG_NORMALIZED_STATUS 1
|
||||||
|
|
||||||
|
// gNoEscapeStringIds
|
||||||
|
#define B_MSG_CANT_ESCAPE 0
|
||||||
|
#define B_MSG_DONT_LEAVE_BIRCH 1
|
||||||
|
#define B_MSG_PREVENTS_ESCAPE 2
|
||||||
|
#define B_MSG_CANT_ESCAPE_2 3
|
||||||
|
#define B_MSG_ATTACKER_CANT_ESCAPE 4
|
||||||
|
|
||||||
|
// gGotPoisonedStringIds / gGotParalyzedStringIds / gFellAsleepStringIds
|
||||||
|
// gGotBurnedStringIds / gGotFrozenStringIds / gAttractUsedStringIds
|
||||||
|
#define B_MSG_STATUSED 0
|
||||||
|
#define B_MSG_STATUSED_BY_ABILITY 1
|
||||||
|
|
||||||
|
// gBRNPreventionStringIds / gPRLZPreventionStringIds / gPSNPreventionStringIds
|
||||||
|
#define B_MSG_ABILITY_PREVENTS_MOVE_STATUS 0
|
||||||
|
#define B_MSG_ABILITY_PREVENTS_ABILITY_STATUS 1
|
||||||
|
#define B_MSG_STATUS_HAD_NO_EFFECT 2
|
||||||
|
|
||||||
|
// gGotDefrostedStringIds
|
||||||
|
#define B_MSG_DEFROSTED 0
|
||||||
|
#define B_MSG_DEFROSTED_BY_MOVE 1
|
||||||
|
|
||||||
|
#define NUM_TRAPPING_MOVES 6
|
||||||
|
|
||||||
#endif // GUARD_BATTLE_STRING_IDS_H
|
#endif // GUARD_BATTLE_STRING_IDS_H
|
||||||
|
|||||||
+23
-21
@@ -10,27 +10,29 @@
|
|||||||
#define MOVE_LIMITATION_TAUNT (1 << 4)
|
#define MOVE_LIMITATION_TAUNT (1 << 4)
|
||||||
#define MOVE_LIMITATION_IMPRISON (1 << 5)
|
#define MOVE_LIMITATION_IMPRISON (1 << 5)
|
||||||
|
|
||||||
#define ABILITYEFFECT_ON_SWITCHIN 0x0
|
#define ABILITYEFFECT_ON_SWITCHIN 0
|
||||||
#define ABILITYEFFECT_ENDTURN 0x1
|
#define ABILITYEFFECT_ENDTURN 1
|
||||||
#define ABILITYEFFECT_MOVES_BLOCK 0x2
|
#define ABILITYEFFECT_MOVES_BLOCK 2
|
||||||
#define ABILITYEFFECT_ABSORBING 0x3
|
#define ABILITYEFFECT_ABSORBING 3
|
||||||
#define ABILITYEFFECT_MOVE_END 0x4
|
#define ABILITYEFFECT_ON_DAMAGE 4
|
||||||
#define ABILITYEFFECT_IMMUNITY 0x5
|
#define ABILITYEFFECT_IMMUNITY 5
|
||||||
#define ABILITYEFFECT_FORECAST 0x6
|
#define ABILITYEFFECT_FORECAST 6
|
||||||
#define ABILITYEFFECT_SYNCHRONIZE 0x7
|
#define ABILITYEFFECT_SYNCHRONIZE 7
|
||||||
#define ABILITYEFFECT_ATK_SYNCHRONIZE 0x8
|
#define ABILITYEFFECT_ATK_SYNCHRONIZE 8
|
||||||
#define ABILITYEFFECT_INTIMIDATE1 0x9
|
#define ABILITYEFFECT_INTIMIDATE1 9
|
||||||
#define ABILITYEFFECT_INTIMIDATE2 0xA
|
#define ABILITYEFFECT_INTIMIDATE2 10
|
||||||
#define ABILITYEFFECT_TRACE 0xB
|
#define ABILITYEFFECT_TRACE 11
|
||||||
#define ABILITYEFFECT_CHECK_OTHER_SIDE 0xC
|
#define ABILITYEFFECT_CHECK_OTHER_SIDE 12
|
||||||
#define ABILITYEFFECT_CHECK_BATTLER_SIDE 0xD
|
#define ABILITYEFFECT_CHECK_BATTLER_SIDE 13
|
||||||
#define ABILITYEFFECT_FIELD_SPORT 0xE
|
#define ABILITYEFFECT_FIELD_SPORT 14
|
||||||
#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER 0xF // TODO: Is it correct?
|
#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER 15
|
||||||
#define ABILITYEFFECT_COUNT_OTHER_SIDE 0x10
|
#define ABILITYEFFECT_COUNT_OTHER_SIDE 16
|
||||||
#define ABILITYEFFECT_COUNT_BATTLER_SIDE 0x11
|
#define ABILITYEFFECT_COUNT_BATTLER_SIDE 17
|
||||||
#define ABILITYEFFECT_COUNT_ON_FIELD 0x12
|
#define ABILITYEFFECT_COUNT_ON_FIELD 18
|
||||||
#define ABILITYEFFECT_CHECK_ON_FIELD 0x13
|
#define ABILITYEFFECT_CHECK_ON_FIELD 19
|
||||||
#define ABILITYEFFECT_SWITCH_IN_WEATHER 0xFF
|
#define ABILITYEFFECT_MUD_SPORT 253
|
||||||
|
#define ABILITYEFFECT_WATER_SPORT 254
|
||||||
|
#define ABILITYEFFECT_SWITCH_IN_WEATHER 255
|
||||||
|
|
||||||
#define ABILITY_ON_OPPOSING_FIELD(battlerId, abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, battlerId, abilityId, 0, 0))
|
#define ABILITY_ON_OPPOSING_FIELD(battlerId, abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, battlerId, abilityId, 0, 0))
|
||||||
#define ABILITY_ON_FIELD(abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, abilityId, 0, 0))
|
#define ABILITY_ON_FIELD(abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, abilityId, 0, 0))
|
||||||
|
|||||||
+228
-195
@@ -44,39 +44,27 @@
|
|||||||
#define BIT_FLANK 2
|
#define BIT_FLANK 2
|
||||||
|
|
||||||
// Battle Type Flags
|
// Battle Type Flags
|
||||||
#define BATTLE_TYPE_DOUBLE 0x0001
|
#define BATTLE_TYPE_DOUBLE (1 << 0)
|
||||||
#define BATTLE_TYPE_LINK 0x0002
|
#define BATTLE_TYPE_LINK (1 << 1)
|
||||||
#define BATTLE_TYPE_IS_MASTER 0x0004 // In not-link battles, it's always set.
|
#define BATTLE_TYPE_IS_MASTER (1 << 2) // In not-link battles, it's always set.
|
||||||
#define BATTLE_TYPE_TRAINER 0x0008
|
#define BATTLE_TYPE_TRAINER (1 << 3)
|
||||||
#define BATTLE_TYPE_FIRST_BATTLE 0x0010
|
#define BATTLE_TYPE_FIRST_BATTLE (1 << 4)
|
||||||
#define BATTLE_TYPE_LINK_ESTABLISHED 0x0020 // Set when the link battle setup callback finishes.
|
#define BATTLE_TYPE_LINK_IN_BATTLE (1 << 5) // Set on battle entry, cleared on exit. Checked rarely
|
||||||
#define BATTLE_TYPE_MULTI 0x0040
|
#define BATTLE_TYPE_MULTI (1 << 6)
|
||||||
#define BATTLE_TYPE_SAFARI 0x0080
|
#define BATTLE_TYPE_SAFARI (1 << 7)
|
||||||
#define BATTLE_TYPE_BATTLE_TOWER 0x0100
|
#define BATTLE_TYPE_BATTLE_TOWER (1 << 8)
|
||||||
#define BATTLE_TYPE_OLD_MAN_TUTORIAL 0x0200
|
#define BATTLE_TYPE_OLD_MAN_TUTORIAL (1 << 9) // Used in pokeemerald as BATTLE_TYPE_WALLY_TUTORIAL.
|
||||||
#define BATTLE_TYPE_ROAMER 0x0400
|
#define BATTLE_TYPE_ROAMER (1 << 10)
|
||||||
#define BATTLE_TYPE_EREADER_TRAINER 0x0800
|
#define BATTLE_TYPE_EREADER_TRAINER (1 << 11)
|
||||||
#define BATTLE_TYPE_KYOGRE_GROUDON 0x1000
|
#define BATTLE_TYPE_KYOGRE_GROUDON (1 << 12)
|
||||||
#define BATTLE_TYPE_LEGENDARY 0x2000
|
#define BATTLE_TYPE_LEGENDARY (1 << 13)
|
||||||
#define BATTLE_TYPE_GHOST_UNVEILED 0x2000 // Re-use of BATTLE_TYPE_LEGENDARY, when combined with BATTLE_TYPE_GHOST
|
#define BATTLE_TYPE_GHOST_UNVEILED (1 << 13) // Re-use of BATTLE_TYPE_LEGENDARY, when combined with BATTLE_TYPE_GHOST
|
||||||
#define BATTLE_TYPE_REGI 0x4000
|
#define BATTLE_TYPE_REGI (1 << 14)
|
||||||
#define BATTLE_TYPE_GHOST 0x8000
|
#define BATTLE_TYPE_GHOST (1 << 15) // Used in pokeemerald as BATTLE_TYPE_TWO_OPPONENTS.
|
||||||
#define BATTLE_TYPE_POKEDUDE 0x10000
|
#define BATTLE_TYPE_POKEDUDE (1 << 16) // Used in pokeemerald as BATTLE_TYPE_DOME.
|
||||||
#define BATTLE_TYPE_WILD_SCRIPTED 0x20000
|
#define BATTLE_TYPE_WILD_SCRIPTED (1 << 17) // Used in pokeemerald as BATTLE_TYPE_PALACE.
|
||||||
#define BATTLE_TYPE_LEGENDARY_FRLG 0x40000
|
#define BATTLE_TYPE_LEGENDARY_FRLG (1 << 18) // Used in pokeemerald as BATTLE_TYPE_ARENA.
|
||||||
#define BATTLE_TYPE_TRAINER_TOWER 0x80000
|
#define BATTLE_TYPE_TRAINER_TOWER (1 << 19) // Used in pokeemerald as BATTLE_TYPE_FACTORY.
|
||||||
#define BATTLE_TYPE_x100000 0x100000
|
|
||||||
#define BATTLE_TYPE_x200000 0x200000
|
|
||||||
#define BATTLE_TYPE_INGAME_PARTNER 0x400000
|
|
||||||
#define BATTLE_TYPE_x800000 0x800000
|
|
||||||
#define BATTLE_TYPE_RECORDED 0x1000000
|
|
||||||
#define BATTLE_TYPE_x2000000 0x2000000
|
|
||||||
#define BATTLE_TYPE_x4000000 0x4000000
|
|
||||||
#define BATTLE_TYPE_SECRET_BASE 0x8000000
|
|
||||||
#define BATTLE_TYPE_GROUDON 0x10000000
|
|
||||||
#define BATTLE_TYPE_KYOGRE 0x20000000
|
|
||||||
#define BATTLE_TYPE_RAYQUAZA 0x40000000
|
|
||||||
#define BATTLE_TYPE_x80000000 0x80000000
|
|
||||||
|
|
||||||
#define IS_BATTLE_TYPE_GHOST_WITHOUT_SCOPE(flags) ((flags) & BATTLE_TYPE_GHOST && !((flags) & BATTLE_TYPE_GHOST_UNVEILED))
|
#define IS_BATTLE_TYPE_GHOST_WITHOUT_SCOPE(flags) ((flags) & BATTLE_TYPE_GHOST && !((flags) & BATTLE_TYPE_GHOST_UNVEILED))
|
||||||
#define IS_BATTLE_TYPE_GHOST_WITH_SCOPE(flags) ((flags) & BATTLE_TYPE_GHOST && (flags) & BATTLE_TYPE_GHOST_UNVEILED)
|
#define IS_BATTLE_TYPE_GHOST_WITH_SCOPE(flags) ((flags) & BATTLE_TYPE_GHOST && (flags) & BATTLE_TYPE_GHOST_UNVEILED)
|
||||||
@@ -85,103 +73,113 @@
|
|||||||
#define RIVAL_BATTLE_TUTORIAL 3
|
#define RIVAL_BATTLE_TUTORIAL 3
|
||||||
|
|
||||||
// Battle Outcome defines
|
// Battle Outcome defines
|
||||||
#define B_OUTCOME_WON 0x1
|
#define B_OUTCOME_WON 1
|
||||||
#define B_OUTCOME_LOST 0x2
|
#define B_OUTCOME_LOST 2
|
||||||
#define B_OUTCOME_DREW 0x3
|
#define B_OUTCOME_DREW 3
|
||||||
#define B_OUTCOME_RAN 0x4
|
#define B_OUTCOME_RAN 4
|
||||||
#define B_OUTCOME_PLAYER_TELEPORTED 0x5
|
#define B_OUTCOME_PLAYER_TELEPORTED 5
|
||||||
#define B_OUTCOME_MON_FLED 0x6
|
#define B_OUTCOME_MON_FLED 6
|
||||||
#define B_OUTCOME_CAUGHT 0x7
|
#define B_OUTCOME_CAUGHT 7
|
||||||
#define B_OUTCOME_NO_SAFARI_BALLS 0x8
|
#define B_OUTCOME_NO_SAFARI_BALLS 8
|
||||||
#define B_OUTCOME_FORFEITED 0x9
|
#define B_OUTCOME_FORFEITED 9
|
||||||
#define B_OUTCOME_MON_TELEPORTED 0xA
|
#define B_OUTCOME_MON_TELEPORTED 10
|
||||||
#define B_OUTCOME_LINK_BATTLE_RAN 0x80
|
#define B_OUTCOME_LINK_BATTLE_RAN (1 << 7) // 128
|
||||||
|
|
||||||
// Non-volatile status conditions
|
// Non-volatile status conditions
|
||||||
// These persist remain outside of battle and after switching out
|
// These persist remain outside of battle and after switching out
|
||||||
#define STATUS1_NONE 0x0
|
#define STATUS1_NONE 0
|
||||||
#define STATUS1_SLEEP 0x7
|
#define STATUS1_SLEEP (1 << 0 | 1 << 1 | 1 << 2) // First 3 bits (Number of turns to sleep)
|
||||||
#define STATUS1_POISON 0x8
|
#define STATUS1_SLEEP_TURN(num) ((num) << 0) // Just for readability (or if rearranging statuses)
|
||||||
#define STATUS1_BURN 0x10
|
#define STATUS1_POISON (1 << 3)
|
||||||
#define STATUS1_FREEZE 0x20
|
#define STATUS1_BURN (1 << 4)
|
||||||
#define STATUS1_PARALYSIS 0x40
|
#define STATUS1_FREEZE (1 << 5)
|
||||||
#define STATUS1_TOXIC_POISON 0x80
|
#define STATUS1_PARALYSIS (1 << 6)
|
||||||
#define STATUS1_TOXIC_COUNTER 0xF00
|
#define STATUS1_TOXIC_POISON (1 << 7)
|
||||||
|
#define STATUS1_TOXIC_COUNTER (1 << 8 | 1 << 9 | 1 << 10 | 1 << 11)
|
||||||
|
#define STATUS1_TOXIC_TURN(num) ((num) << 8)
|
||||||
#define STATUS1_PSN_ANY (STATUS1_POISON | STATUS1_TOXIC_POISON)
|
#define STATUS1_PSN_ANY (STATUS1_POISON | STATUS1_TOXIC_POISON)
|
||||||
#define STATUS1_ANY (STATUS1_SLEEP | STATUS1_POISON | STATUS1_BURN | STATUS1_FREEZE | STATUS1_PARALYSIS | STATUS1_TOXIC_POISON)
|
#define STATUS1_ANY (STATUS1_SLEEP | STATUS1_POISON | STATUS1_BURN | STATUS1_FREEZE | STATUS1_PARALYSIS | STATUS1_TOXIC_POISON)
|
||||||
|
|
||||||
// Volatile status ailments
|
// Volatile status ailments
|
||||||
// These are removed after exiting the battle or switching out
|
// These are removed after exiting the battle or switching out
|
||||||
#define STATUS2_CONFUSION 0x00000007
|
#define STATUS2_CONFUSION (1 << 0 | 1 << 1 | 1 << 2)
|
||||||
#define STATUS2_FLINCHED 0x00000008
|
#define STATUS2_CONFUSION_TURN(num) ((num) << 0)
|
||||||
#define STATUS2_UPROAR 0x00000070
|
#define STATUS2_FLINCHED (1 << 3)
|
||||||
#define STATUS2_BIDE 0x00000300 // two bits 0x100, 0x200
|
#define STATUS2_UPROAR (1 << 4 | 1 << 5 | 1 << 6)
|
||||||
#define STATUS2_LOCK_CONFUSE 0x00000C00
|
#define STATUS2_UPROAR_TURN(num) ((num) << 4)
|
||||||
#define STATUS2_MULTIPLETURNS 0x00001000
|
#define STATUS2_UNUSED (1 << 7)
|
||||||
#define STATUS2_WRAPPED 0x0000E000
|
#define STATUS2_BIDE (1 << 8 | 1 << 9)
|
||||||
#define STATUS2_INFATUATION 0x000F0000 // 4 bits, one for every battler
|
#define STATUS2_BIDE_TURN(num) (((num) << 8) & STATUS2_BIDE)
|
||||||
|
#define STATUS2_LOCK_CONFUSE (1 << 10 | 1 << 11) // e.g. Thrash
|
||||||
|
#define STATUS2_LOCK_CONFUSE_TURN(num)((num) << 10)
|
||||||
|
#define STATUS2_MULTIPLETURNS (1 << 12)
|
||||||
|
#define STATUS2_WRAPPED (1 << 13 | 1 << 14 | 1 << 15)
|
||||||
|
#define STATUS2_WRAPPED_TURN(num) ((num) << 13)
|
||||||
|
#define STATUS2_INFATUATION (1 << 16 | 1 << 17 | 1 << 18 | 1 << 19) // 4 bits, one for every battler
|
||||||
#define STATUS2_INFATUATED_WITH(battler) (gBitTable[battler] << 16)
|
#define STATUS2_INFATUATED_WITH(battler) (gBitTable[battler] << 16)
|
||||||
#define STATUS2_FOCUS_ENERGY 0x00100000
|
#define STATUS2_FOCUS_ENERGY (1 << 20)
|
||||||
#define STATUS2_TRANSFORMED 0x00200000
|
#define STATUS2_TRANSFORMED (1 << 21)
|
||||||
#define STATUS2_RECHARGE 0x00400000
|
#define STATUS2_RECHARGE (1 << 22)
|
||||||
#define STATUS2_RAGE 0x00800000
|
#define STATUS2_RAGE (1 << 23)
|
||||||
#define STATUS2_SUBSTITUTE 0x01000000
|
#define STATUS2_SUBSTITUTE (1 << 24)
|
||||||
#define STATUS2_DESTINY_BOND 0x02000000
|
#define STATUS2_DESTINY_BOND (1 << 25)
|
||||||
#define STATUS2_ESCAPE_PREVENTION 0x04000000
|
#define STATUS2_ESCAPE_PREVENTION (1 << 26)
|
||||||
#define STATUS2_NIGHTMARE 0x08000000
|
#define STATUS2_NIGHTMARE (1 << 27)
|
||||||
#define STATUS2_CURSED 0x10000000
|
#define STATUS2_CURSED (1 << 28)
|
||||||
#define STATUS2_FORESIGHT 0x20000000
|
#define STATUS2_FORESIGHT (1 << 29)
|
||||||
#define STATUS2_DEFENSE_CURL 0x40000000
|
#define STATUS2_DEFENSE_CURL (1 << 30)
|
||||||
#define STATUS2_TORMENT 0x80000000
|
#define STATUS2_TORMENT (1 << 31)
|
||||||
|
|
||||||
// Seems like per-battler statuses. Not quite sure how to categorize these
|
// Seems like per-battler statuses. Not quite sure how to categorize these
|
||||||
#define STATUS3_LEECHSEED_BATTLER 0x3
|
#define STATUS3_LEECHSEED_BATTLER (1 << 0 | 1 << 1) // The battler to receive HP from Leech Seed
|
||||||
#define STATUS3_LEECHSEED 0x4
|
#define STATUS3_LEECHSEED (1 << 2)
|
||||||
#define STATUS3_ALWAYS_HITS 0x18 // two bits
|
#define STATUS3_ALWAYS_HITS (1 << 3 | 1 << 4)
|
||||||
#define STATUS3_PERISH_SONG 0x20
|
#define STATUS3_ALWAYS_HITS_TURN(num) (((num) << 3) & STATUS3_ALWAYS_HITS) // "Always Hits" is set as a 2 turn timer, i.e. next turn is the last turn when it's active
|
||||||
#define STATUS3_ON_AIR 0x40
|
#define STATUS3_PERISH_SONG (1 << 5)
|
||||||
#define STATUS3_UNDERGROUND 0x80
|
#define STATUS3_ON_AIR (1 << 6)
|
||||||
#define STATUS3_MINIMIZED 0x100
|
#define STATUS3_UNDERGROUND (1 << 7)
|
||||||
#define STATUS3_ROOTED 0x400
|
#define STATUS3_MINIMIZED (1 << 8)
|
||||||
#define STATUS3_CHARGED_UP 0x200
|
#define STATUS3_CHARGED_UP (1 << 9)
|
||||||
#define STATUS3_YAWN 0x1800 // two bits
|
#define STATUS3_ROOTED (1 << 10)
|
||||||
#define STATUS3_IMPRISONED_OTHERS 0x2000
|
#define STATUS3_YAWN (1 << 11 | 1 << 12) // Number of turns to sleep
|
||||||
#define STATUS3_GRUDGE 0x4000
|
#define STATUS3_YAWN_TURN(num) (((num) << 11) & STATUS3_YAWN)
|
||||||
#define STATUS3_CANT_SCORE_A_CRIT 0x8000
|
#define STATUS3_IMPRISONED_OTHERS (1 << 13)
|
||||||
#define STATUS3_MUDSPORT 0x10000
|
#define STATUS3_GRUDGE (1 << 14)
|
||||||
#define STATUS3_WATERSPORT 0x20000
|
#define STATUS3_CANT_SCORE_A_CRIT (1 << 15)
|
||||||
#define STATUS3_UNDERWATER 0x40000
|
#define STATUS3_MUDSPORT (1 << 16)
|
||||||
#define STATUS3_INTIMIDATE_POKES 0x80000
|
#define STATUS3_WATERSPORT (1 << 17)
|
||||||
#define STATUS3_TRACE 0x100000
|
#define STATUS3_UNDERWATER (1 << 18)
|
||||||
|
#define STATUS3_INTIMIDATE_POKES (1 << 19)
|
||||||
|
#define STATUS3_TRACE (1 << 20)
|
||||||
#define STATUS3_SEMI_INVULNERABLE (STATUS3_UNDERGROUND | STATUS3_ON_AIR | STATUS3_UNDERWATER)
|
#define STATUS3_SEMI_INVULNERABLE (STATUS3_UNDERGROUND | STATUS3_ON_AIR | STATUS3_UNDERWATER)
|
||||||
|
|
||||||
// Not really sure what a "hitmarker" is.
|
// Not really sure what a "hitmarker" is.
|
||||||
#define HITMARKER_x10 0x00000010
|
#define HITMARKER_WAKE_UP_CLEAR (1 << 4) // Cleared when waking up. Never set or checked.
|
||||||
#define HITMARKER_x20 0x00000020
|
#define HITMARKER_SKIP_DMG_TRACK (1 << 5)
|
||||||
#define HITMARKER_DESTINYBOND 0x00000040
|
#define HITMARKER_DESTINYBOND (1 << 6)
|
||||||
#define HITMARKER_NO_ANIMATIONS 0x00000080
|
#define HITMARKER_NO_ANIMATIONS (1 << 7)
|
||||||
#define HITMARKER_IGNORE_SUBSTITUTE 0x00000100
|
#define HITMARKER_IGNORE_SUBSTITUTE (1 << 8)
|
||||||
#define HITMARKER_NO_ATTACKSTRING 0x00000200
|
#define HITMARKER_NO_ATTACKSTRING (1 << 9)
|
||||||
#define HITMARKER_ATTACKSTRING_PRINTED 0x00000400
|
#define HITMARKER_ATTACKSTRING_PRINTED (1 << 10)
|
||||||
#define HITMARKER_NO_PPDEDUCT 0x00000800
|
#define HITMARKER_NO_PPDEDUCT (1 << 11)
|
||||||
#define HITMARKER_SWAP_ATTACKER_TARGET 0x00001000
|
#define HITMARKER_SWAP_ATTACKER_TARGET (1 << 12)
|
||||||
#define HITMARKER_IGNORE_SAFEGUARD 0x00002000
|
#define HITMARKER_IGNORE_SAFEGUARD (1 << 13)
|
||||||
#define HITMARKER_SYNCHRONISE_EFFECT 0x00004000
|
#define HITMARKER_SYNCHRONISE_EFFECT (1 << 14)
|
||||||
#define HITMARKER_RUN 0x00008000
|
#define HITMARKER_RUN (1 << 15)
|
||||||
#define HITMARKER_IGNORE_ON_AIR 0x00010000
|
#define HITMARKER_IGNORE_ON_AIR (1 << 16)
|
||||||
#define HITMARKER_IGNORE_UNDERGROUND 0x00020000
|
#define HITMARKER_IGNORE_UNDERGROUND (1 << 17)
|
||||||
#define HITMARKER_IGNORE_UNDERWATER 0x00040000
|
#define HITMARKER_IGNORE_UNDERWATER (1 << 18)
|
||||||
#define HITMARKER_UNABLE_TO_USE_MOVE 0x00080000
|
#define HITMARKER_UNABLE_TO_USE_MOVE (1 << 19)
|
||||||
#define HITMARKER_PASSIVE_DAMAGE 0x00100000
|
#define HITMARKER_PASSIVE_DAMAGE (1 << 20)
|
||||||
#define HITMARKER_x200000 0x00200000
|
#define HITMARKER_DISOBEDIENT_MOVE (1 << 21)
|
||||||
#define HITMARKER_PLAYER_FAINTED 0x00400000
|
#define HITMARKER_PLAYER_FAINTED (1 << 22)
|
||||||
#define HITMARKER_x800000 0x00800000
|
#define HITMARKER_ALLOW_NO_PP (1 << 23)
|
||||||
#define HITMARKER_GRUDGE 0x01000000
|
#define HITMARKER_GRUDGE (1 << 24)
|
||||||
#define HITMARKER_OBEYS 0x02000000
|
#define HITMARKER_OBEYS (1 << 25)
|
||||||
#define HITMARKER_x4000000 0x04000000
|
#define HITMARKER_NEVER_SET (1 << 26) // Cleared as part of a large group. Never set or checked
|
||||||
#define HITMARKER_CHARGING 0x08000000
|
#define HITMARKER_CHARGING (1 << 27)
|
||||||
#define HITMARKER_FAINTED(battler) (gBitTable[battler] << 0x1C)
|
#define HITMARKER_FAINTED(battler) (gBitTable[battler] << 28)
|
||||||
#define HITMARKER_FAINTED2(battler) (0x10000000 << battler)
|
#define HITMARKER_FAINTED2(battler) ((1 << 28) << battler)
|
||||||
|
|
||||||
// Per-side statuses that affect an entire party
|
// Per-side statuses that affect an entire party
|
||||||
#define SIDE_STATUS_REFLECT (1 << 0)
|
#define SIDE_STATUS_REFLECT (1 << 0)
|
||||||
@@ -205,87 +203,85 @@
|
|||||||
#define MOVE_RESULT_NO_EFFECT (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE | MOVE_RESULT_FAILED)
|
#define MOVE_RESULT_NO_EFFECT (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE | MOVE_RESULT_FAILED)
|
||||||
|
|
||||||
// Battle Weather flags
|
// Battle Weather flags
|
||||||
#define WEATHER_RAIN_TEMPORARY (1 << 0)
|
#define B_WEATHER_RAIN_TEMPORARY (1 << 0)
|
||||||
#define WEATHER_RAIN_DOWNPOUR (1 << 1) // unused
|
#define B_WEATHER_RAIN_DOWNPOUR (1 << 1) // unused
|
||||||
#define WEATHER_RAIN_PERMANENT (1 << 2)
|
#define B_WEATHER_RAIN_PERMANENT (1 << 2)
|
||||||
#define WEATHER_RAIN_ANY (WEATHER_RAIN_TEMPORARY | WEATHER_RAIN_DOWNPOUR | WEATHER_RAIN_PERMANENT)
|
#define B_WEATHER_RAIN (B_WEATHER_RAIN_TEMPORARY | B_WEATHER_RAIN_DOWNPOUR | B_WEATHER_RAIN_PERMANENT)
|
||||||
#define WEATHER_SANDSTORM_TEMPORARY (1 << 3)
|
#define B_WEATHER_SANDSTORM_TEMPORARY (1 << 3)
|
||||||
#define WEATHER_SANDSTORM_PERMANENT (1 << 4)
|
#define B_WEATHER_SANDSTORM_PERMANENT (1 << 4)
|
||||||
#define WEATHER_SANDSTORM_ANY (WEATHER_SANDSTORM_TEMPORARY | WEATHER_SANDSTORM_PERMANENT)
|
#define B_WEATHER_SANDSTORM (B_WEATHER_SANDSTORM_TEMPORARY | B_WEATHER_SANDSTORM_PERMANENT)
|
||||||
#define WEATHER_SUN_TEMPORARY (1 << 5)
|
#define B_WEATHER_SUN_TEMPORARY (1 << 5)
|
||||||
#define WEATHER_SUN_PERMANENT (1 << 6)
|
#define B_WEATHER_SUN_PERMANENT (1 << 6)
|
||||||
#define WEATHER_SUN_ANY (WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT)
|
#define B_WEATHER_SUN (B_WEATHER_SUN_TEMPORARY | B_WEATHER_SUN_PERMANENT)
|
||||||
#define WEATHER_HAIL (1 << 7)
|
#define B_WEATHER_HAIL_TEMPORARY (1 << 7)
|
||||||
#define WEATHER_HAIL_ANY (WEATHER_HAIL)
|
#define B_WEATHER_HAIL (B_WEATHER_HAIL_TEMPORARY)
|
||||||
#define WEATHER_ANY (WEATHER_RAIN_ANY | WEATHER_SANDSTORM_ANY | WEATHER_SUN_ANY | WEATHER_HAIL_ANY)
|
#define B_WEATHER_ANY (B_WEATHER_RAIN | B_WEATHER_SANDSTORM | B_WEATHER_SUN | B_WEATHER_HAIL)
|
||||||
|
|
||||||
// Move Effects
|
// Move Effects
|
||||||
#define MOVE_EFFECT_NOTHING_0 0x0
|
#define MOVE_EFFECT_SLEEP 1
|
||||||
#define MOVE_EFFECT_SLEEP 0x1
|
#define MOVE_EFFECT_POISON 2
|
||||||
#define MOVE_EFFECT_POISON 0x2
|
#define MOVE_EFFECT_BURN 3
|
||||||
#define MOVE_EFFECT_BURN 0x3
|
#define MOVE_EFFECT_FREEZE 4
|
||||||
#define MOVE_EFFECT_FREEZE 0x4
|
#define MOVE_EFFECT_PARALYSIS 5
|
||||||
#define MOVE_EFFECT_PARALYSIS 0x5
|
#define MOVE_EFFECT_TOXIC 6
|
||||||
#define MOVE_EFFECT_TOXIC 0x6
|
#define PRIMARY_STATUS_MOVE_EFFECT MOVE_EFFECT_TOXIC // All above move effects apply primary status
|
||||||
#define MOVE_EFFECT_CONFUSION 0x7
|
#define MOVE_EFFECT_CONFUSION 7
|
||||||
#define MOVE_EFFECT_FLINCH 0x8
|
#define MOVE_EFFECT_FLINCH 8
|
||||||
#define MOVE_EFFECT_TRI_ATTACK 0x9
|
#define MOVE_EFFECT_TRI_ATTACK 9
|
||||||
#define MOVE_EFFECT_UPROAR 0xA
|
#define MOVE_EFFECT_UPROAR 10
|
||||||
#define MOVE_EFFECT_PAYDAY 0xB
|
#define MOVE_EFFECT_PAYDAY 11
|
||||||
#define MOVE_EFFECT_CHARGING 0xC
|
#define MOVE_EFFECT_CHARGING 12
|
||||||
#define MOVE_EFFECT_WRAP 0xD
|
#define MOVE_EFFECT_WRAP 13
|
||||||
#define MOVE_EFFECT_RECOIL_25 0xE
|
#define MOVE_EFFECT_RECOIL_25 14
|
||||||
#define MOVE_EFFECT_ATK_PLUS_1 0xF
|
#define MOVE_EFFECT_ATK_PLUS_1 15
|
||||||
#define MOVE_EFFECT_DEF_PLUS_1 0x10
|
#define MOVE_EFFECT_DEF_PLUS_1 16
|
||||||
#define MOVE_EFFECT_SPD_PLUS_1 0x11
|
#define MOVE_EFFECT_SPD_PLUS_1 17
|
||||||
#define MOVE_EFFECT_SP_ATK_PLUS_1 0x12
|
#define MOVE_EFFECT_SP_ATK_PLUS_1 18
|
||||||
#define MOVE_EFFECT_SP_DEF_PLUS_1 0x13
|
#define MOVE_EFFECT_SP_DEF_PLUS_1 19
|
||||||
#define MOVE_EFFECT_ACC_PLUS_1 0x14
|
#define MOVE_EFFECT_ACC_PLUS_1 20
|
||||||
#define MOVE_EFFECT_EVS_PLUS_1 0x15
|
#define MOVE_EFFECT_EVS_PLUS_1 21
|
||||||
#define MOVE_EFFECT_ATK_MINUS_1 0x16
|
#define MOVE_EFFECT_ATK_MINUS_1 22
|
||||||
#define MOVE_EFFECT_DEF_MINUS_1 0x17
|
#define MOVE_EFFECT_DEF_MINUS_1 23
|
||||||
#define MOVE_EFFECT_SPD_MINUS_1 0x18
|
#define MOVE_EFFECT_SPD_MINUS_1 24
|
||||||
#define MOVE_EFFECT_SP_ATK_MINUS_1 0x19
|
#define MOVE_EFFECT_SP_ATK_MINUS_1 25
|
||||||
#define MOVE_EFFECT_SP_DEF_MINUS_1 0x1A
|
#define MOVE_EFFECT_SP_DEF_MINUS_1 26
|
||||||
#define MOVE_EFFECT_ACC_MINUS_1 0x1B
|
#define MOVE_EFFECT_ACC_MINUS_1 27
|
||||||
#define MOVE_EFFECT_EVS_MINUS_1 0x1C
|
#define MOVE_EFFECT_EVS_MINUS_1 28
|
||||||
#define MOVE_EFFECT_RECHARGE 0x1D
|
#define MOVE_EFFECT_RECHARGE 29
|
||||||
#define MOVE_EFFECT_RAGE 0x1E
|
#define MOVE_EFFECT_RAGE 30
|
||||||
#define MOVE_EFFECT_STEAL_ITEM 0x1F
|
#define MOVE_EFFECT_STEAL_ITEM 31
|
||||||
#define MOVE_EFFECT_PREVENT_ESCAPE 0x20
|
#define MOVE_EFFECT_PREVENT_ESCAPE 32
|
||||||
#define MOVE_EFFECT_NIGHTMARE 0x21
|
#define MOVE_EFFECT_NIGHTMARE 33
|
||||||
#define MOVE_EFFECT_ALL_STATS_UP 0x22
|
#define MOVE_EFFECT_ALL_STATS_UP 34
|
||||||
#define MOVE_EFFECT_RAPIDSPIN 0x23
|
#define MOVE_EFFECT_RAPIDSPIN 35
|
||||||
#define MOVE_EFFECT_REMOVE_PARALYSIS 0x24
|
#define MOVE_EFFECT_REMOVE_PARALYSIS 36
|
||||||
#define MOVE_EFFECT_ATK_DEF_DOWN 0x25
|
#define MOVE_EFFECT_ATK_DEF_DOWN 37
|
||||||
#define MOVE_EFFECT_RECOIL_33 0x26
|
#define MOVE_EFFECT_RECOIL_33 38
|
||||||
#define MOVE_EFFECT_ATK_PLUS_2 0x27
|
#define MOVE_EFFECT_ATK_PLUS_2 39
|
||||||
#define MOVE_EFFECT_DEF_PLUS_2 0x28
|
#define MOVE_EFFECT_DEF_PLUS_2 40
|
||||||
#define MOVE_EFFECT_SPD_PLUS_2 0x29
|
#define MOVE_EFFECT_SPD_PLUS_2 41
|
||||||
#define MOVE_EFFECT_SP_ATK_PLUS_2 0x2A
|
#define MOVE_EFFECT_SP_ATK_PLUS_2 42
|
||||||
#define MOVE_EFFECT_SP_DEF_PLUS_2 0x2B
|
#define MOVE_EFFECT_SP_DEF_PLUS_2 43
|
||||||
#define MOVE_EFFECT_ACC_PLUS_2 0x2C
|
#define MOVE_EFFECT_ACC_PLUS_2 44
|
||||||
#define MOVE_EFFECT_EVS_PLUS_2 0x2D
|
#define MOVE_EFFECT_EVS_PLUS_2 45
|
||||||
#define MOVE_EFFECT_ATK_MINUS_2 0x2E
|
#define MOVE_EFFECT_ATK_MINUS_2 46
|
||||||
#define MOVE_EFFECT_DEF_MINUS_2 0x2F
|
#define MOVE_EFFECT_DEF_MINUS_2 47
|
||||||
#define MOVE_EFFECT_SPD_MINUS_2 0x30
|
#define MOVE_EFFECT_SPD_MINUS_2 48
|
||||||
#define MOVE_EFFECT_SP_ATK_MINUS_2 0x31
|
#define MOVE_EFFECT_SP_ATK_MINUS_2 49
|
||||||
#define MOVE_EFFECT_SP_DEF_MINUS_2 0x32
|
#define MOVE_EFFECT_SP_DEF_MINUS_2 50
|
||||||
#define MOVE_EFFECT_ACC_MINUS_2 0x33
|
#define MOVE_EFFECT_ACC_MINUS_2 51
|
||||||
#define MOVE_EFFECT_EVS_MINUS_2 0x34
|
#define MOVE_EFFECT_EVS_MINUS_2 52
|
||||||
#define MOVE_EFFECT_THRASH 0x35
|
#define MOVE_EFFECT_THRASH 53
|
||||||
#define MOVE_EFFECT_KNOCK_OFF 0x36
|
#define MOVE_EFFECT_KNOCK_OFF 54
|
||||||
#define MOVE_EFFECT_NOTHING_37 0x37
|
#define MOVE_EFFECT_NOTHING_37 55
|
||||||
#define MOVE_EFFECT_NOTHING_38 0x38
|
#define MOVE_EFFECT_NOTHING_38 56
|
||||||
#define MOVE_EFFECT_NOTHING_39 0x39
|
#define MOVE_EFFECT_NOTHING_39 57
|
||||||
#define MOVE_EFFECT_NOTHING_3A 0x3A
|
#define MOVE_EFFECT_NOTHING_3A 58
|
||||||
#define MOVE_EFFECT_SP_ATK_TWO_DOWN 0x3B
|
#define MOVE_EFFECT_SP_ATK_TWO_DOWN 59
|
||||||
#define MOVE_EFFECT_NOTHING_3C 0x3C
|
#define NUM_MOVE_EFFECTS 60
|
||||||
#define MOVE_EFFECT_NOTHING_3D 0x3D
|
|
||||||
#define MOVE_EFFECT_NOTHING_3E 0x3E
|
#define MOVE_EFFECT_AFFECTS_USER (1 << 6) // 64
|
||||||
#define MOVE_EFFECT_NOTHING_3F 0x3F
|
#define MOVE_EFFECT_CERTAIN (1 << 7) // 128
|
||||||
#define MOVE_EFFECT_AFFECTS_USER 0x40
|
|
||||||
#define MOVE_EFFECT_CERTAIN 0x80
|
|
||||||
|
|
||||||
// Battle terrain defines for gBattleTerrain.
|
// Battle terrain defines for gBattleTerrain.
|
||||||
#define BATTLE_TERRAIN_GRASS 0
|
#define BATTLE_TERRAIN_GRASS 0
|
||||||
@@ -309,9 +305,46 @@
|
|||||||
#define BATTLE_TERRAIN_LANCE 18
|
#define BATTLE_TERRAIN_LANCE 18
|
||||||
#define BATTLE_TERRAIN_CHAMPION 19
|
#define BATTLE_TERRAIN_CHAMPION 19
|
||||||
|
|
||||||
|
#define CASTFORM_NORMAL 0
|
||||||
|
#define CASTFORM_FIRE 1
|
||||||
|
#define CASTFORM_WATER 2
|
||||||
|
#define CASTFORM_ICE 3
|
||||||
|
#define NUM_CASTFORM_FORMS 4
|
||||||
|
#define CASTFORM_SUBSTITUTE (1 << 7)
|
||||||
|
|
||||||
// Return value for IsRunningFromBattleImpossible.
|
// Return value for IsRunningFromBattleImpossible.
|
||||||
#define BATTLE_RUN_SUCCESS 0
|
#define BATTLE_RUN_SUCCESS 0
|
||||||
#define BATTLE_RUN_FORBIDDEN 1
|
#define BATTLE_RUN_FORBIDDEN 1
|
||||||
#define BATTLE_RUN_FAILURE 2
|
#define BATTLE_RUN_FAILURE 2
|
||||||
|
|
||||||
|
// Window Ids for sStandardBattleWindowTemplates
|
||||||
|
#define B_WIN_MSG 0
|
||||||
|
#define B_WIN_ACTION_PROMPT 1 // "What will {x} do?"
|
||||||
|
#define B_WIN_ACTION_MENU 2 // "Fight/Pokémon/Bag/Run" menu
|
||||||
|
#define B_WIN_MOVE_NAME_1 3 // Top left
|
||||||
|
#define B_WIN_MOVE_NAME_2 4 // Top right
|
||||||
|
#define B_WIN_MOVE_NAME_3 5 // Bottom left
|
||||||
|
#define B_WIN_MOVE_NAME_4 6 // Bottom right
|
||||||
|
#define B_WIN_PP 7
|
||||||
|
#define B_WIN_MOVE_TYPE 8
|
||||||
|
#define B_WIN_PP_REMAINING 9
|
||||||
|
#define B_WIN_DUMMY 10
|
||||||
|
#define B_WIN_SWITCH_PROMPT 11 // "Switch which?"
|
||||||
|
#define B_WIN_LEVEL_UP_BOX 12
|
||||||
|
#define B_WIN_LEVEL_UP_BANNER 13
|
||||||
|
#define B_WIN_YESNO 14
|
||||||
|
#define B_WIN_VS_PLAYER 15
|
||||||
|
#define B_WIN_VS_OPPONENT 16
|
||||||
|
#define B_WIN_VS_MULTI_PLAYER_1 17
|
||||||
|
#define B_WIN_VS_MULTI_PLAYER_2 18
|
||||||
|
#define B_WIN_VS_MULTI_PLAYER_3 19
|
||||||
|
#define B_WIN_VS_MULTI_PLAYER_4 20
|
||||||
|
#define B_WIN_VS_OUTCOME_DRAW 21
|
||||||
|
#define B_WIN_VS_OUTCOME_LEFT 22
|
||||||
|
#define B_WIN_VS_OUTCOME_RIGHT 23
|
||||||
|
#define B_WIN_OAK_OLD_MAN 24
|
||||||
|
|
||||||
|
#define B_TEXT_FLAG_NPC_CONTEXT_FONT (1 << 6)
|
||||||
|
#define B_TEXT_FLAG_WINDOW_CLEAR (1 << 7)
|
||||||
|
|
||||||
#endif // GUARD_CONSTANTS_BATTLE_H
|
#endif // GUARD_CONSTANTS_BATTLE_H
|
||||||
|
|||||||
@@ -342,9 +342,9 @@
|
|||||||
#define BG_FISSURE 21
|
#define BG_FISSURE 21
|
||||||
#define BG_BUG_OPPONENT 22
|
#define BG_BUG_OPPONENT 22
|
||||||
#define BG_BUG_PLAYER 23
|
#define BG_BUG_PLAYER 23
|
||||||
#define BG_SOLARBEAM_OPPONENT 24
|
#define BG_SOLAR_BEAM_OPPONENT 24
|
||||||
#define BG_SOLARBEAM_PLAYER 25
|
#define BG_SOLAR_BEAM_PLAYER 25
|
||||||
#define BG_SOLARBEAM_CONTESTS 26
|
#define BG_SOLAR_BEAM_CONTESTS 26
|
||||||
|
|
||||||
// table ids for general animations
|
// table ids for general animations
|
||||||
#define B_ANIM_CASTFORM_CHANGE 0x0
|
#define B_ANIM_CASTFORM_CHANGE 0x0
|
||||||
|
|||||||
@@ -152,7 +152,7 @@
|
|||||||
#define EFFECT_FUTURE_SIGHT 148
|
#define EFFECT_FUTURE_SIGHT 148
|
||||||
#define EFFECT_GUST 149
|
#define EFFECT_GUST 149
|
||||||
#define EFFECT_FLINCH_MINIMIZE_HIT 150 // STOMP ASTONISH EXTRASENSORY NEEDLE_ARM
|
#define EFFECT_FLINCH_MINIMIZE_HIT 150 // STOMP ASTONISH EXTRASENSORY NEEDLE_ARM
|
||||||
#define EFFECT_SOLARBEAM 151
|
#define EFFECT_SOLAR_BEAM 151
|
||||||
#define EFFECT_THUNDER 152
|
#define EFFECT_THUNDER 152
|
||||||
#define EFFECT_TELEPORT 153
|
#define EFFECT_TELEPORT 153
|
||||||
#define EFFECT_BEAT_UP 154
|
#define EFFECT_BEAT_UP 154
|
||||||
|
|||||||
@@ -30,29 +30,40 @@
|
|||||||
#define sMULTIPLAYER_ID gBattleScripting + 0x25
|
#define sMULTIPLAYER_ID gBattleScripting + 0x25
|
||||||
#define sSPECIAL_TRAINER_BATTLE_TYPE gBattleScripting + 0x26
|
#define sSPECIAL_TRAINER_BATTLE_TYPE gBattleScripting + 0x26
|
||||||
|
|
||||||
#define cEFFECT_CHOOSER gBattleCommunication + 3
|
// Array entries for battle communication
|
||||||
#define cMULTISTRING_CHOOSER gBattleCommunication + 5
|
#define MULTIUSE_STATE 0
|
||||||
|
#define CURSOR_POSITION 1
|
||||||
|
#define TASK_ID 1 // task Id and cursor position share the same field
|
||||||
|
#define SPRITES_INIT_STATE1 1 // shares the Id as well
|
||||||
|
#define SPRITES_INIT_STATE2 2
|
||||||
|
#define MOVE_EFFECT_BYTE 3
|
||||||
|
#define ACTIONS_CONFIRMED_COUNT 4
|
||||||
|
#define MULTISTRING_CHOOSER 5
|
||||||
|
#define MISS_TYPE 6
|
||||||
|
#define MSG_DISPLAY 7
|
||||||
|
#define BATTLE_COMMUNICATION_ENTRIES_COUNT 8
|
||||||
|
|
||||||
|
#define cEFFECT_CHOOSER (gBattleCommunication + MOVE_EFFECT_BYTE)
|
||||||
|
#define cMULTISTRING_CHOOSER (gBattleCommunication + MULTISTRING_CHOOSER)
|
||||||
|
#define cMISS_TYPE (gBattleCommunication + MISS_TYPE)
|
||||||
|
|
||||||
// Battle Script defines for getting the wanted battler
|
// Battle Script defines for getting the wanted battler
|
||||||
#define BS_TARGET 0
|
#define BS_TARGET 0
|
||||||
#define BS_ATTACKER 1
|
#define BS_ATTACKER 1
|
||||||
#define BS_EFFECT_BATTLER 2
|
#define BS_EFFECT_BATTLER 2
|
||||||
#define BS_FAINTED 3
|
#define BS_FAINTED 3
|
||||||
#define BS_ATTACKER_WITH_PARTNER 4 // for atk98_updatestatusicon
|
#define BS_ATTACKER_WITH_PARTNER 4 // for Cmd_updatestatusicon
|
||||||
#define BS_UNKNOWN_5 5 // for openpartyscreen
|
#define BS_FAINTED_LINK_MULTIPLE_1 5 // for openpartyscreen
|
||||||
#define BS_UNKNOWN_6 6 // for openpartyscreen
|
#define BS_FAINTED_LINK_MULTIPLE_2 6 // for openpartyscreen
|
||||||
#define BS_BATTLER_0 7
|
#define BS_BATTLER_0 7
|
||||||
#define BS_ATTACKER_SIDE 8 // for atk1E_jumpifability
|
#define BS_ATTACKER_SIDE 8 // for Cmd_jumpifability
|
||||||
#define BS_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability
|
#define BS_NOT_ATTACKER_SIDE 9 // for Cmd_jumpifability
|
||||||
#define BS_SCRIPTING 10
|
#define BS_SCRIPTING 10
|
||||||
#define BS_PLAYER1 11
|
#define BS_PLAYER1 11
|
||||||
#define BS_OPPONENT1 12
|
#define BS_OPPONENT1 12
|
||||||
#define BS_PLAYER2 13 // for atk98_updatestatusicon
|
#define BS_PLAYER2 13 // for Cmd_updatestatusicon
|
||||||
#define BS_OPPONENT2 14
|
#define BS_OPPONENT2 14
|
||||||
|
|
||||||
// used for openpartyscreen
|
|
||||||
#define OPEN_PARTY_ALLOW_CANCEL 0x80
|
|
||||||
|
|
||||||
// atk 01, accuracy calc
|
// atk 01, accuracy calc
|
||||||
#define NO_ACC_CALC 0xFFFE
|
#define NO_ACC_CALC 0xFFFE
|
||||||
#define NO_ACC_CALC_CHECK_LOCK_ON 0xFFFF
|
#define NO_ACC_CALC_CHECK_LOCK_ON 0xFFFF
|
||||||
@@ -72,61 +83,64 @@
|
|||||||
#define VARIOUS_SET_MAGIC_COAT_TARGET 1
|
#define VARIOUS_SET_MAGIC_COAT_TARGET 1
|
||||||
#define VARIOUS_IS_RUNNING_IMPOSSIBLE 2
|
#define VARIOUS_IS_RUNNING_IMPOSSIBLE 2
|
||||||
#define VARIOUS_GET_MOVE_TARGET 3
|
#define VARIOUS_GET_MOVE_TARGET 3
|
||||||
#define VARIOUS_CASE_4 4
|
#define VARIOUS_GET_BATTLER_FAINTED 4
|
||||||
#define VARIOUS_RESET_INTIMIDATE_TRACE_BITS 5
|
#define VARIOUS_RESET_INTIMIDATE_TRACE_BITS 5
|
||||||
#define VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP 6
|
#define VARIOUS_UPDATE_CHOICE_MOVE_ON_LVL_UP 6
|
||||||
#define VARIOUS_RESET_PLAYER_FAINTED_FLAG 7
|
#define VARIOUS_RESET_PLAYER_FAINTED 7
|
||||||
#define VARIOUS_CASE_8 8
|
#define VARIOUS_CASE_8 8
|
||||||
#define VARIOUS_RETURN_OPPONENT_MON1 9
|
#define VARIOUS_RETURN_OPPONENT_MON1 9
|
||||||
#define VARIOUS_RETURN_OPPONENT_MON2 10
|
#define VARIOUS_RETURN_OPPONENT_MON2 10
|
||||||
#define VARIOUS_CHECK_POKEFLUTE 11
|
#define VARIOUS_CHECK_POKEFLUTE 11
|
||||||
#define VARIOUS_WAIT_FANFARE 12
|
#define VARIOUS_WAIT_FANFARE 12
|
||||||
|
|
||||||
// atk80, dmg manipulation
|
// Cmd_manipulatedmg
|
||||||
#define ATK80_DMG_CHANGE_SIGN 0
|
#define DMG_CHANGE_SIGN 0
|
||||||
#define ATK80_DMG_HALF_BY_TWO_NOT_MORE_THAN_HALF_MAX_HP 1
|
#define DMG_RECOIL_FROM_MISS 1
|
||||||
#define ATK80_DMG_DOUBLED 2
|
#define DMG_DOUBLED 2
|
||||||
|
|
||||||
// atk4F, a flag used for the jumpifcantswitch command
|
// Cmd_jumpifcantswitch
|
||||||
#define ATK4F_DONT_CHECK_STATUSES 0x80
|
#define SWITCH_IGNORE_ESCAPE_PREVENTION (1 << 7)
|
||||||
|
|
||||||
// statchange defines
|
// Cmd_statbuffchange
|
||||||
#define STAT_CHANGE_BS_PTR 0x1
|
#define STAT_CHANGE_ALLOW_PTR (1 << 0) // If set, allow use of jumpptr. Set in every use of statbuffchange
|
||||||
#define STAT_CHANGE_NOT_PROTECT_AFFECTED 0x20
|
#define STAT_CHANGE_NOT_PROTECT_AFFECTED (1 << 5)
|
||||||
|
|
||||||
// atk48
|
// stat change flags for Cmd_playstatchangeanimation
|
||||||
#define ATK48_STAT_NEGATIVE 0x1
|
#define STAT_CHANGE_NEGATIVE (1 << 0)
|
||||||
#define ATK48_STAT_BY_TWO 0x2
|
#define STAT_CHANGE_BY_TWO (1 << 1)
|
||||||
#define ATK48_ONLY_MULTIPLE 0x4
|
#define STAT_CHANGE_MULTIPLE_STATS (1 << 2)
|
||||||
#define ATK48_DONT_CHECK_LOWER 0x8
|
#define STAT_CHANGE_CANT_PREVENT (1 << 3)
|
||||||
|
|
||||||
// atk49, moveend cases
|
// stat flags for Cmd_playstatchangeanimation
|
||||||
#define ATK49_RAGE 0
|
#define BIT_HP (1 << 0)
|
||||||
#define ATK49_DEFROST 1
|
#define BIT_ATK (1 << 1)
|
||||||
#define ATK49_SYNCHRONIZE_TARGET 2
|
#define BIT_DEF (1 << 2)
|
||||||
#define ATK49_MOVE_END_ABILITIES 3
|
#define BIT_SPEED (1 << 3)
|
||||||
#define ATK49_STATUS_IMMUNITY_ABILITIES 4
|
#define BIT_SPATK (1 << 4)
|
||||||
#define ATK49_SYNCHRONIZE_ATTACKER 5
|
#define BIT_SPDEF (1 << 5)
|
||||||
#define ATK49_CHOICE_MOVE 6
|
#define BIT_ACC (1 << 6)
|
||||||
#define ATK49_CHANGED_ITEMS 7
|
#define BIT_EVASION (1 << 7)
|
||||||
#define ATK49_ATTACKER_INVISIBLE 8
|
|
||||||
#define ATK49_ATTACKER_VISIBLE 9
|
|
||||||
#define ATK49_TARGET_VISIBLE 10
|
|
||||||
#define ATK49_ITEM_EFFECTS_ALL 11
|
|
||||||
#define ATK49_KINGSROCK_SHELLBELL 12
|
|
||||||
#define ATK49_SUBSTITUTE 13
|
|
||||||
#define ATK49_UPDATE_LAST_MOVES 14
|
|
||||||
#define ATK49_MIRROR_MOVE 15
|
|
||||||
#define ATK49_NEXT_TARGET 16
|
|
||||||
#define ATK49_COUNT 17
|
|
||||||
|
|
||||||
#define BIT_HP 0x1
|
#define PARTY_SCREEN_OPTIONAL (1 << 7) // Flag for first argument to openpartyscreen
|
||||||
#define BIT_ATK 0x2
|
|
||||||
#define BIT_DEF 0x4
|
// cases for Cmd_moveend
|
||||||
#define BIT_SPEED 0x8
|
#define MOVEEND_RAGE 0
|
||||||
#define BIT_SPATK 0x10
|
#define MOVEEND_DEFROST 1
|
||||||
#define BIT_SPDEF 0x20
|
#define MOVEEND_SYNCHRONIZE_TARGET 2
|
||||||
#define BIT_ACC 0x40
|
#define MOVEEND_ON_DAMAGE_ABILITIES 3
|
||||||
#define BIT_EVASION 0x80
|
#define MOVEEND_IMMUNITY_ABILITIES 4
|
||||||
|
#define MOVEEND_SYNCHRONIZE_ATTACKER 5
|
||||||
|
#define MOVEEND_CHOICE_MOVE 6
|
||||||
|
#define MOVEEND_CHANGED_ITEMS 7
|
||||||
|
#define MOVEEND_ATTACKER_INVISIBLE 8
|
||||||
|
#define MOVEEND_ATTACKER_VISIBLE 9
|
||||||
|
#define MOVEEND_TARGET_VISIBLE 10
|
||||||
|
#define MOVEEND_ITEM_EFFECTS_ALL 11
|
||||||
|
#define MOVEEND_KINGSROCK_SHELLBELL 12
|
||||||
|
#define MOVEEND_SUBSTITUTE 13
|
||||||
|
#define MOVEEND_UPDATE_LAST_MOVES 14
|
||||||
|
#define MOVEEND_MIRROR_MOVE 15
|
||||||
|
#define MOVEEND_NEXT_TARGET 16
|
||||||
|
#define MOVEEND_COUNT 17
|
||||||
|
|
||||||
#endif // GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H
|
#endif // GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H
|
||||||
|
|||||||
@@ -30,6 +30,7 @@
|
|||||||
#define GAME_LANGUAGE (LANGUAGE_ENGLISH)
|
#define GAME_LANGUAGE (LANGUAGE_ENGLISH)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// capacities of various saveblock objects
|
||||||
#define DAYCARE_MON_COUNT 2
|
#define DAYCARE_MON_COUNT 2
|
||||||
#define PC_ITEMS_COUNT 30
|
#define PC_ITEMS_COUNT 30
|
||||||
#define BAG_ITEMS_COUNT 42
|
#define BAG_ITEMS_COUNT 42
|
||||||
@@ -53,6 +54,9 @@
|
|||||||
#define POCKET_BERRY_POUCH 5
|
#define POCKET_BERRY_POUCH 5
|
||||||
#define NUM_BAG_POCKETS 5
|
#define NUM_BAG_POCKETS 5
|
||||||
|
|
||||||
|
// Contests
|
||||||
|
#define CONTEST_CATEGORIES_COUNT 5
|
||||||
|
|
||||||
// string lengths
|
// string lengths
|
||||||
#define ITEM_NAME_LENGTH 14
|
#define ITEM_NAME_LENGTH 14
|
||||||
#define POKEMON_NAME_LENGTH 10
|
#define POKEMON_NAME_LENGTH 10
|
||||||
|
|||||||
@@ -372,7 +372,7 @@
|
|||||||
#define ITEM_TM19_GIGA_DRAIN ITEM_TM19
|
#define ITEM_TM19_GIGA_DRAIN ITEM_TM19
|
||||||
#define ITEM_TM20_SAFEGUARD ITEM_TM20
|
#define ITEM_TM20_SAFEGUARD ITEM_TM20
|
||||||
#define ITEM_TM21_FRUSTRATION ITEM_TM21
|
#define ITEM_TM21_FRUSTRATION ITEM_TM21
|
||||||
#define ITEM_TM22_SOLARBEAM ITEM_TM22
|
#define ITEM_TM22_SOLAR_BEAM ITEM_TM22
|
||||||
#define ITEM_TM23_IRON_TAIL ITEM_TM23
|
#define ITEM_TM23_IRON_TAIL ITEM_TM23
|
||||||
#define ITEM_TM24_THUNDERBOLT ITEM_TM24
|
#define ITEM_TM24_THUNDERBOLT ITEM_TM24
|
||||||
#define ITEM_TM25_THUNDER ITEM_TM25
|
#define ITEM_TM25_THUNDER ITEM_TM25
|
||||||
@@ -447,6 +447,7 @@
|
|||||||
#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY
|
#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY
|
||||||
#define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY
|
#define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY
|
||||||
#define ITEM_TO_BERRY(itemId)(((itemId - FIRST_BERRY_INDEX) + 1))
|
#define ITEM_TO_BERRY(itemId)(((itemId - FIRST_BERRY_INDEX) + 1))
|
||||||
|
#define MAIL_NONE 0xFF
|
||||||
|
|
||||||
#define NUM_TECHNICAL_MACHINES 50
|
#define NUM_TECHNICAL_MACHINES 50
|
||||||
#define NUM_HIDDEN_MACHINES 8
|
#define NUM_HIDDEN_MACHINES 8
|
||||||
|
|||||||
@@ -361,6 +361,9 @@
|
|||||||
|
|
||||||
#define MOVES_COUNT 355
|
#define MOVES_COUNT 355
|
||||||
|
|
||||||
|
// Used for checks for moves affected by Disable, Mimic, etc.
|
||||||
|
#define MOVE_UNAVAILABLE 0xFFFF
|
||||||
|
|
||||||
#define MOVETUTOR_MEGA_PUNCH 0
|
#define MOVETUTOR_MEGA_PUNCH 0
|
||||||
#define MOVETUTOR_SWORDS_DANCE 1
|
#define MOVETUTOR_SWORDS_DANCE 1
|
||||||
#define MOVETUTOR_MEGA_KICK 2
|
#define MOVETUTOR_MEGA_KICK 2
|
||||||
|
|||||||
@@ -81,7 +81,7 @@
|
|||||||
#define MON_DATA_NATIONAL_RIBBON 76
|
#define MON_DATA_NATIONAL_RIBBON 76
|
||||||
#define MON_DATA_EARTH_RIBBON 77
|
#define MON_DATA_EARTH_RIBBON 77
|
||||||
#define MON_DATA_WORLD_RIBBON 78
|
#define MON_DATA_WORLD_RIBBON 78
|
||||||
#define MON_DATA_FILLER 79
|
#define MON_DATA_UNUSED_RIBBONS 79
|
||||||
#define MON_DATA_EVENT_LEGAL 80
|
#define MON_DATA_EVENT_LEGAL 80
|
||||||
#define MON_DATA_KNOWN_MOVES 81
|
#define MON_DATA_KNOWN_MOVES 81
|
||||||
#define MON_DATA_RIBBON_COUNT 82
|
#define MON_DATA_RIBBON_COUNT 82
|
||||||
@@ -159,6 +159,7 @@
|
|||||||
#define NATURE_SASSY 22
|
#define NATURE_SASSY 22
|
||||||
#define NATURE_CAREFUL 23
|
#define NATURE_CAREFUL 23
|
||||||
#define NATURE_QUIRKY 24
|
#define NATURE_QUIRKY 24
|
||||||
|
#define NUM_NATURES 25
|
||||||
|
|
||||||
// Pokemon Stats
|
// Pokemon Stats
|
||||||
#define STAT_HP 0
|
#define STAT_HP 0
|
||||||
@@ -167,11 +168,17 @@
|
|||||||
#define STAT_SPEED 3
|
#define STAT_SPEED 3
|
||||||
#define STAT_SPATK 4
|
#define STAT_SPATK 4
|
||||||
#define STAT_SPDEF 5
|
#define STAT_SPDEF 5
|
||||||
#define STAT_ACC 6 // only in battles
|
|
||||||
#define STAT_EVASION 7 // only in battles
|
|
||||||
|
|
||||||
#define NUM_STATS 6
|
#define NUM_STATS 6
|
||||||
#define NUM_BATTLE_STATS 8
|
|
||||||
|
#define STAT_ACC 6 // Only in battles.
|
||||||
|
#define STAT_EVASION 7 // Only in battles.
|
||||||
|
|
||||||
|
#define NUM_NATURE_STATS (NUM_STATS - 1) // excludes HP
|
||||||
|
#define NUM_BATTLE_STATS (NUM_STATS + 2) // includes Accuracy and Evasion
|
||||||
|
|
||||||
|
#define MIN_STAT_STAGE 0
|
||||||
|
#define DEFAULT_STAT_STAGE 6
|
||||||
|
#define MAX_STAT_STAGE 12
|
||||||
|
|
||||||
// Shiny odds
|
// Shiny odds
|
||||||
#define SHINY_ODDS 8 // Actual probability is SHINY_ODDS/65536
|
#define SHINY_ODDS 8 // Actual probability is SHINY_ODDS/65536
|
||||||
|
|||||||
@@ -5,12 +5,12 @@
|
|||||||
|
|
||||||
void LoadEvoSparkleSpriteAndPal(void);
|
void LoadEvoSparkleSpriteAndPal(void);
|
||||||
|
|
||||||
u8 LaunchTask_PreEvoSparklesSet1(u16 arg0);
|
u8 EvolutionSparkles_SpiralUpward(u16 arg0);
|
||||||
u8 LaunchTask_PreEvoSparklesSet2(void);
|
u8 EvolutionSparkles_ArcDown(void);
|
||||||
u8 LaunchTask_PostEvoSparklesSet1(void);
|
u8 EvolutionSparkles_CircleInward(void);
|
||||||
u8 LaunchTask_PostEvoSparklesSet2AndFlash(u16 species);
|
u8 EvolutionSparkles_SprayAndFlash(u16 species);
|
||||||
u8 LaunchTask_PostEvoSparklesSet2AndFlash_Trade(u16 species);
|
u8 EvolutionSparkles_SprayAndFlash_Trade(u16 species);
|
||||||
u8 LaunchTask_PrePostEvoMonSprites(u8 preEvoSpriteId, u8 postEvoSpriteId);
|
u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId);
|
||||||
|
|
||||||
#define EvoGraphicsTaskEvoStop data[8]
|
#define EvoGraphicsTaskEvoStop data[8]
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -4258,7 +4258,7 @@ extern const u32 gBattleAnimBgPalette_Sky[];
|
|||||||
extern const u32 gBattleAnimBgPalette_Aurora[];
|
extern const u32 gBattleAnimBgPalette_Aurora[];
|
||||||
extern const u32 gBattleAnimBgPalette_Fissure[];
|
extern const u32 gBattleAnimBgPalette_Fissure[];
|
||||||
extern const u32 gBattleAnimBgPalette_Bug[];
|
extern const u32 gBattleAnimBgPalette_Bug[];
|
||||||
extern const u32 gBattleAnimBgPalette_Solarbeam[];
|
extern const u32 gBattleAnimBgPalette_SolarBeam[];
|
||||||
extern const u32 gBattleAnimBgPalette_Surf[];
|
extern const u32 gBattleAnimBgPalette_Surf[];
|
||||||
extern const u32 gBattleAnimBgTilemap_Dark[];
|
extern const u32 gBattleAnimBgTilemap_Dark[];
|
||||||
extern const u32 gBattleAnimBgTilemap_Ghost[];
|
extern const u32 gBattleAnimBgTilemap_Ghost[];
|
||||||
|
|||||||
+9
-8
@@ -73,7 +73,7 @@ struct PokemonSubstruct3
|
|||||||
/* 0x0B */ u32 nationalRibbon:1;
|
/* 0x0B */ u32 nationalRibbon:1;
|
||||||
/* 0x0B */ u32 earthRibbon:1;
|
/* 0x0B */ u32 earthRibbon:1;
|
||||||
/* 0x0B */ u32 worldRibbon:1; // distributed during Pokémon Festa '04 and '05 to tournament winners
|
/* 0x0B */ u32 worldRibbon:1; // distributed during Pokémon Festa '04 and '05 to tournament winners
|
||||||
/* 0x0B */ u32 filler:4;
|
/* 0x0B */ u32 unusedRibbons:4; // discarded in Gen 4
|
||||||
/* 0x0B */ u32 eventLegal:1; // controls Mew & Deoxys obedience; if set, Pokémon is a fateful encounter in FRLG & Gen 4+ summary screens; set for in-game event island legendaries, some distributed events, and Pokémon from XD: Gale of Darkness.
|
/* 0x0B */ u32 eventLegal:1; // controls Mew & Deoxys obedience; if set, Pokémon is a fateful encounter in FRLG & Gen 4+ summary screens; set for in-game event island legendaries, some distributed events, and Pokémon from XD: Gale of Darkness.
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -245,12 +245,13 @@ struct BattleMove
|
|||||||
|
|
||||||
extern const struct BattleMove gBattleMoves[];
|
extern const struct BattleMove gBattleMoves[];
|
||||||
|
|
||||||
#define FLAG_MAKES_CONTACT 0x1
|
// Battle move flags
|
||||||
#define FLAG_PROTECT_AFFECTED 0x2
|
#define FLAG_MAKES_CONTACT (1 << 0)
|
||||||
#define FLAG_MAGICCOAT_AFFECTED 0x4
|
#define FLAG_PROTECT_AFFECTED (1 << 1)
|
||||||
#define FLAG_SNATCH_AFFECTED 0x8
|
#define FLAG_MAGIC_COAT_AFFECTED (1 << 2)
|
||||||
#define FLAG_MIRROR_MOVE_AFFECTED 0x10
|
#define FLAG_SNATCH_AFFECTED (1 << 3)
|
||||||
#define FLAG_KINGSROCK_AFFECTED 0x20
|
#define FLAG_MIRROR_MOVE_AFFECTED (1 << 4)
|
||||||
|
#define FLAG_KINGS_ROCK_AFFECTED (1 << 5)
|
||||||
|
|
||||||
struct SpindaSpot
|
struct SpindaSpot
|
||||||
{
|
{
|
||||||
@@ -396,7 +397,7 @@ u8 CalculatePPWithBonus(u16 move, u8 ppBonuses, u8 moveIndex);
|
|||||||
void RemoveMonPPBonus(struct Pokemon *mon, u8 moveIndex);
|
void RemoveMonPPBonus(struct Pokemon *mon, u8 moveIndex);
|
||||||
void RemoveBattleMonPPBonus(struct BattlePokemon *mon, u8 moveIndex);
|
void RemoveBattleMonPPBonus(struct BattlePokemon *mon, u8 moveIndex);
|
||||||
bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex);
|
bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex);
|
||||||
bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex, u8 e);
|
bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex, bool8 usedByAI);
|
||||||
bool8 PokemonItemUseNoEffect(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex);
|
bool8 PokemonItemUseNoEffect(struct Pokemon *mon, u16 item, u8 partyIndex, u8 moveIndex);
|
||||||
u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit);
|
u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit);
|
||||||
const u8 *Battle_PrintStatBoosterEffectMessage(u16 itemId);
|
const u8 *Battle_PrintStatBoosterEffectMessage(u16 itemId);
|
||||||
|
|||||||
+1
-1
@@ -24,7 +24,7 @@ bool8 IsBGMPausedOrStopped(void);
|
|||||||
void FadeInBGM(u8 speed);
|
void FadeInBGM(u8 speed);
|
||||||
void FadeOutBGM(u8 speed);
|
void FadeOutBGM(u8 speed);
|
||||||
bool8 IsBGMStopped(void);
|
bool8 IsBGMStopped(void);
|
||||||
void PlayCry1(u16 species, s8 pan);
|
void PlayCry_Normal(u16 species, s8 pan);
|
||||||
void PlayCry2(u16 species, s8 pan, s8 volume, u8 priority);
|
void PlayCry2(u16 species, s8 pan, s8 volume, u8 priority);
|
||||||
void PlayCry3(u16 species, s8 pan, u8 mode);
|
void PlayCry3(u16 species, s8 pan, u8 mode);
|
||||||
void PlayCry4(u16 species, s8 pan, u8 mode);
|
void PlayCry4(u16 species, s8 pan, u8 mode);
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ enum StringConvertMode
|
|||||||
STR_CONV_MODE_LEADING_ZEROS
|
STR_CONV_MODE_LEADING_ZEROS
|
||||||
};
|
};
|
||||||
|
|
||||||
u8 *StringCopy10(u8 *dest, const u8 *src);
|
u8 *StringCopy_Nickname(u8 *dest, const u8 *src);
|
||||||
u8 *StringGetEnd10(u8 *str);
|
u8 *StringGetEnd10(u8 *str);
|
||||||
u8 *StringCopy7(u8 *dest, const u8 *src);
|
u8 *StringCopy7(u8 *dest, const u8 *src);
|
||||||
u8 *StringCopy(u8 *dest, const u8 *src);
|
u8 *StringCopy(u8 *dest, const u8 *src);
|
||||||
|
|||||||
+1
-1
@@ -188,7 +188,7 @@ extern const u8 gText_Ghost[];
|
|||||||
|
|
||||||
// pokemon
|
// pokemon
|
||||||
extern const u8 gBattleText_Rose[];
|
extern const u8 gBattleText_Rose[];
|
||||||
extern const u8 gText_PkmnsStatChanged2[];
|
extern const u8 gText_DefendersStatRose[];
|
||||||
extern const u8 gBattleText_GetPumped[];
|
extern const u8 gBattleText_GetPumped[];
|
||||||
extern const u8 gBattleText_MistShroud[];
|
extern const u8 gBattleText_MistShroud[];
|
||||||
extern const u8 gText_BadEgg[];
|
extern const u8 gText_BadEgg[];
|
||||||
|
|||||||
+5
-2
@@ -85,7 +85,7 @@
|
|||||||
|
|
||||||
#define CHAR_DYNAMIC_PLACEHOLDER 0xF7
|
#define CHAR_DYNAMIC_PLACEHOLDER 0xF7
|
||||||
#define CHAR_KEYPAD_ICON 0xF8
|
#define CHAR_KEYPAD_ICON 0xF8
|
||||||
#define CHAR_EXTRA_EMOJI 0xF9
|
#define CHAR_EXTRA_SYMBOL 0xF9
|
||||||
#define CHAR_PROMPT_SCROLL 0xFA // waits for button press and scrolls dialog
|
#define CHAR_PROMPT_SCROLL 0xFA // waits for button press and scrolls dialog
|
||||||
#define CHAR_PROMPT_CLEAR 0xFB // waits for button press and clears dialog
|
#define CHAR_PROMPT_CLEAR 0xFB // waits for button press and clears dialog
|
||||||
#define EXT_CTRL_CODE_BEGIN 0xFC // extended control code
|
#define EXT_CTRL_CODE_BEGIN 0xFC // extended control code
|
||||||
@@ -93,6 +93,9 @@
|
|||||||
#define CHAR_NEWLINE 0xFE
|
#define CHAR_NEWLINE 0xFE
|
||||||
#define EOS 0xFF // end of string
|
#define EOS 0xFF // end of string
|
||||||
|
|
||||||
|
// CHAR_EXTRA_SYMBOL chars
|
||||||
|
#define CHAR_LV_2 0x05
|
||||||
|
|
||||||
#define TEXT_COLOR_TRANSPARENT 0x0
|
#define TEXT_COLOR_TRANSPARENT 0x0
|
||||||
#define TEXT_COLOR_WHITE 0x1
|
#define TEXT_COLOR_WHITE 0x1
|
||||||
#define TEXT_COLOR_DARK_GRAY 0x2
|
#define TEXT_COLOR_DARK_GRAY 0x2
|
||||||
@@ -154,7 +157,7 @@
|
|||||||
#define NUM_TEXT_PRINTERS 32
|
#define NUM_TEXT_PRINTERS 32
|
||||||
|
|
||||||
#define TEXT_SPEED_INSTANT 0
|
#define TEXT_SPEED_INSTANT 0
|
||||||
#define TEXT_SPEED_FF 0xFF
|
#define TEXT_SKIP_DRAW 0xFF
|
||||||
|
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
|
|||||||
+8
-5
@@ -17,6 +17,14 @@ enum
|
|||||||
WINDOW_TILE_DATA
|
WINDOW_TILE_DATA
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Mode for CopyWindowToVram, CopyWindowRectToVram and CopyWindowToVram8Bit
|
||||||
|
enum {
|
||||||
|
COPYWIN_NONE,
|
||||||
|
COPYWIN_MAP,
|
||||||
|
COPYWIN_GFX,
|
||||||
|
COPYWIN_FULL,
|
||||||
|
};
|
||||||
|
|
||||||
struct WindowTemplate
|
struct WindowTemplate
|
||||||
{
|
{
|
||||||
u8 bg;
|
u8 bg;
|
||||||
@@ -57,11 +65,6 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template);
|
|||||||
void RemoveWindow(u8 windowId);
|
void RemoveWindow(u8 windowId);
|
||||||
void FreeAllWindowBuffers(void);
|
void FreeAllWindowBuffers(void);
|
||||||
|
|
||||||
// Mode parameter for funcs below
|
|
||||||
#define COPYWIN_MAP 1
|
|
||||||
#define COPYWIN_GFX 2
|
|
||||||
#define COPYWIN_BOTH 3
|
|
||||||
|
|
||||||
void CopyWindowToVram(u8 windowId, u8 mode);
|
void CopyWindowToVram(u8 windowId, u8 mode);
|
||||||
void CopyWindowToVram8Bit(u8 windowId, u8 mode);
|
void CopyWindowToVram8Bit(u8 windowId, u8 mode);
|
||||||
|
|
||||||
|
|||||||
@@ -250,7 +250,7 @@ static const u16 sDiscouragedPowerfulMoveEffects[] =
|
|||||||
EFFECT_SKY_ATTACK,
|
EFFECT_SKY_ATTACK,
|
||||||
EFFECT_RECHARGE,
|
EFFECT_RECHARGE,
|
||||||
EFFECT_SKULL_BASH,
|
EFFECT_SKULL_BASH,
|
||||||
EFFECT_SOLARBEAM,
|
EFFECT_SOLAR_BEAM,
|
||||||
EFFECT_SPIT_UP,
|
EFFECT_SPIT_UP,
|
||||||
EFFECT_FOCUS_PUNCH,
|
EFFECT_FOCUS_PUNCH,
|
||||||
EFFECT_SUPERPOWER,
|
EFFECT_SUPERPOWER,
|
||||||
@@ -1384,13 +1384,13 @@ extern u16 gBattleWeather;
|
|||||||
|
|
||||||
static void Cmd_get_weather(void)
|
static void Cmd_get_weather(void)
|
||||||
{
|
{
|
||||||
if (gBattleWeather & WEATHER_RAIN_ANY)
|
if (gBattleWeather & B_WEATHER_RAIN)
|
||||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_RAIN;
|
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_RAIN;
|
||||||
if (gBattleWeather & WEATHER_SANDSTORM_ANY)
|
if (gBattleWeather & B_WEATHER_SANDSTORM)
|
||||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_SANDSTORM;
|
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_SANDSTORM;
|
||||||
if (gBattleWeather & WEATHER_SUN_ANY)
|
if (gBattleWeather & B_WEATHER_SUN)
|
||||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_SUNNY;
|
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_SUNNY;
|
||||||
if (gBattleWeather & WEATHER_HAIL)
|
if (gBattleWeather & B_WEATHER_HAIL_TEMPORARY)
|
||||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_HAIL;
|
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_HAIL;
|
||||||
|
|
||||||
sAIScriptPtr += 1;
|
sAIScriptPtr += 1;
|
||||||
|
|||||||
+3
-3
@@ -1723,9 +1723,9 @@ const struct BattleAnimBackground gBattleAnimBackgroundTable[] =
|
|||||||
[BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure},
|
[BG_FISSURE] = {gBattleAnimBgImage_Fissure, gBattleAnimBgPalette_Fissure, gBattleAnimBgTilemap_Fissure},
|
||||||
[BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent},
|
[BG_BUG_OPPONENT] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedOpponent},
|
||||||
[BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer},
|
[BG_BUG_PLAYER] = {gBattleAnimBgImage_Highspeed, gBattleAnimBgPalette_Bug, gBattleAnimBgTilemap_HighspeedPlayer},
|
||||||
[BG_SOLARBEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactOpponent},
|
[BG_SOLAR_BEAM_OPPONENT] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactOpponent},
|
||||||
[BG_SOLARBEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactPlayer},
|
[BG_SOLAR_BEAM_PLAYER] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactPlayer},
|
||||||
[BG_SOLARBEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_Solarbeam, gBattleAnimBgTilemap_ImpactContests},
|
[BG_SOLAR_BEAM_CONTESTS] = {gBattleAnimBgImage_Impact, gBattleAnimBgPalette_SolarBeam, gBattleAnimBgTilemap_ImpactContests},
|
||||||
};
|
};
|
||||||
|
|
||||||
static void (*const sScriptCmdTable[])(void) =
|
static void (*const sScriptCmdTable[])(void) =
|
||||||
|
|||||||
+33
-33
@@ -12,7 +12,7 @@ EWRAM_DATA static s16 gUnknown_203999C[4] = {0};
|
|||||||
|
|
||||||
// Function Declarations
|
// Function Declarations
|
||||||
static void AnimMovePowderParticleStep(struct Sprite *);
|
static void AnimMovePowderParticleStep(struct Sprite *);
|
||||||
static void AnimSolarbeamSmallOrbStep(struct Sprite *);
|
static void AnimSolarBeamSmallOrbStep(struct Sprite *);
|
||||||
static void AnimAbsorptionOrbStep(struct Sprite *);
|
static void AnimAbsorptionOrbStep(struct Sprite *);
|
||||||
static void AnimHyperBeamOrbStep(struct Sprite *);
|
static void AnimHyperBeamOrbStep(struct Sprite *);
|
||||||
static void AnimLeechSeedStep(struct Sprite *);
|
static void AnimLeechSeedStep(struct Sprite *);
|
||||||
@@ -137,49 +137,49 @@ const struct SpriteTemplate gPoisonPowderParticleSpriteTemplate =
|
|||||||
.callback = AnimMovePowderParticle,
|
.callback = AnimMovePowderParticle,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds1[] =
|
static const union AnimCmd sSolarBeamBigOrbAnimCmds1[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(0, 1),
|
ANIMCMD_FRAME(0, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds2[] =
|
static const union AnimCmd sSolarBeamBigOrbAnimCmds2[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(1, 1),
|
ANIMCMD_FRAME(1, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds3[] =
|
static const union AnimCmd sSolarBeamBigOrbAnimCmds3[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(2, 1),
|
ANIMCMD_FRAME(2, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds4[] =
|
static const union AnimCmd sSolarBeamBigOrbAnimCmds4[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(3, 1),
|
ANIMCMD_FRAME(3, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds5[] =
|
static const union AnimCmd sSolarBeamBigOrbAnimCmds5[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(4, 1),
|
ANIMCMD_FRAME(4, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds6[] =
|
static const union AnimCmd sSolarBeamBigOrbAnimCmds6[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(5, 1),
|
ANIMCMD_FRAME(5, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamBigOrbAnimCmds7[] =
|
static const union AnimCmd sSolarBeamBigOrbAnimCmds7[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(6, 1),
|
ANIMCMD_FRAME(6, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd sSolarbeamSmallOrbAnimCms[] =
|
static const union AnimCmd sSolarBeamSmallOrbAnimCms[] =
|
||||||
{
|
{
|
||||||
ANIMCMD_FRAME(7, 1),
|
ANIMCMD_FRAME(7, 1),
|
||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
@@ -191,20 +191,20 @@ static const union AnimCmd sPowerAbsorptionOrbAnimCmds[] =
|
|||||||
ANIMCMD_END,
|
ANIMCMD_END,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd *const sSolarbeamBigOrbAnimTable[] =
|
static const union AnimCmd *const sSolarBeamBigOrbAnimTable[] =
|
||||||
{
|
{
|
||||||
sSolarbeamBigOrbAnimCmds1,
|
sSolarBeamBigOrbAnimCmds1,
|
||||||
sSolarbeamBigOrbAnimCmds2,
|
sSolarBeamBigOrbAnimCmds2,
|
||||||
sSolarbeamBigOrbAnimCmds3,
|
sSolarBeamBigOrbAnimCmds3,
|
||||||
sSolarbeamBigOrbAnimCmds4,
|
sSolarBeamBigOrbAnimCmds4,
|
||||||
sSolarbeamBigOrbAnimCmds5,
|
sSolarBeamBigOrbAnimCmds5,
|
||||||
sSolarbeamBigOrbAnimCmds6,
|
sSolarBeamBigOrbAnimCmds6,
|
||||||
sSolarbeamBigOrbAnimCmds7,
|
sSolarBeamBigOrbAnimCmds7,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd *const sSolarbeamSmallOrbAnimTable[] =
|
static const union AnimCmd *const sSolarBeamSmallOrbAnimTable[] =
|
||||||
{
|
{
|
||||||
sSolarbeamSmallOrbAnimCms,
|
sSolarBeamSmallOrbAnimCms,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AnimCmd *const sPowerAbsorptionOrbAnimTable[] =
|
static const union AnimCmd *const sPowerAbsorptionOrbAnimTable[] =
|
||||||
@@ -234,26 +234,26 @@ const struct SpriteTemplate gPowerAbsorptionOrbSpriteTemplate =
|
|||||||
.callback = AnimPowerAbsorptionOrb,
|
.callback = AnimPowerAbsorptionOrb,
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct SpriteTemplate gSolarbeamBigOrbSpriteTemplate =
|
const struct SpriteTemplate gSolarBeamBigOrbSpriteTemplate =
|
||||||
{
|
{
|
||||||
.tileTag = ANIM_TAG_ORBS,
|
.tileTag = ANIM_TAG_ORBS,
|
||||||
.paletteTag = ANIM_TAG_ORBS,
|
.paletteTag = ANIM_TAG_ORBS,
|
||||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||||
.anims = sSolarbeamBigOrbAnimTable,
|
.anims = sSolarBeamBigOrbAnimTable,
|
||||||
.images = NULL,
|
.images = NULL,
|
||||||
.affineAnims = gDummySpriteAffineAnimTable,
|
.affineAnims = gDummySpriteAffineAnimTable,
|
||||||
.callback = AnimSolarbeamBigOrb,
|
.callback = AnimSolarBeamBigOrb,
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct SpriteTemplate gSolarbeamSmallOrbSpriteTemplate =
|
const struct SpriteTemplate gSolarBeamSmallOrbSpriteTemplate =
|
||||||
{
|
{
|
||||||
.tileTag = ANIM_TAG_ORBS,
|
.tileTag = ANIM_TAG_ORBS,
|
||||||
.paletteTag = ANIM_TAG_ORBS,
|
.paletteTag = ANIM_TAG_ORBS,
|
||||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||||
.anims = sSolarbeamSmallOrbAnimTable,
|
.anims = sSolarBeamSmallOrbAnimTable,
|
||||||
.images = NULL,
|
.images = NULL,
|
||||||
.affineAnims = gDummySpriteAffineAnimTable,
|
.affineAnims = gDummySpriteAffineAnimTable,
|
||||||
.callback = AnimSolarbeamSmallOrb,
|
.callback = AnimSolarBeamSmallOrb,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const union AffineAnimCmd sStockpileAbsorptionOrbAffineCmds[] =
|
static const union AffineAnimCmd sStockpileAbsorptionOrbAffineCmds[] =
|
||||||
@@ -306,7 +306,7 @@ const struct SpriteTemplate gHyperBeamOrbSpriteTemplate =
|
|||||||
.tileTag = ANIM_TAG_ORBS,
|
.tileTag = ANIM_TAG_ORBS,
|
||||||
.paletteTag = ANIM_TAG_ORBS,
|
.paletteTag = ANIM_TAG_ORBS,
|
||||||
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
.oam = &gOamData_AffineOff_ObjNormal_8x8,
|
||||||
.anims = sSolarbeamBigOrbAnimTable,
|
.anims = sSolarBeamBigOrbAnimTable,
|
||||||
.images = NULL,
|
.images = NULL,
|
||||||
.affineAnims = gDummySpriteAffineAnimTable,
|
.affineAnims = gDummySpriteAffineAnimTable,
|
||||||
.callback = AnimHyperBeamOrb,
|
.callback = AnimHyperBeamOrb,
|
||||||
@@ -2219,7 +2219,7 @@ void AnimPowerAbsorptionOrb(struct Sprite* sprite)
|
|||||||
// arg 1: initial y pixel offset
|
// arg 1: initial y pixel offset
|
||||||
// arg 2: duration
|
// arg 2: duration
|
||||||
// arg 3: sprite anim number
|
// arg 3: sprite anim number
|
||||||
void AnimSolarbeamBigOrb(struct Sprite* sprite)
|
void AnimSolarBeamBigOrb(struct Sprite* sprite)
|
||||||
{
|
{
|
||||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||||
StartSpriteAnim(sprite, gBattleAnimArgs[3]);
|
StartSpriteAnim(sprite, gBattleAnimArgs[3]);
|
||||||
@@ -2231,12 +2231,12 @@ void AnimSolarbeamBigOrb(struct Sprite* sprite)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Moves a small orb in a wavy pattern towards the target mon.
|
// Moves a small orb in a wavy pattern towards the target mon.
|
||||||
// The small orb "circles" the big orbs in AnimSolarbeamBigOrb.
|
// The small orb "circles" the big orbs in AnimSolarBeamBigOrb.
|
||||||
// arg 0: initial x pixel offset
|
// arg 0: initial x pixel offset
|
||||||
// arg 1: initial y pixel offset
|
// arg 1: initial y pixel offset
|
||||||
// arg 2: duration
|
// arg 2: duration
|
||||||
// arg 3: initial wave offset
|
// arg 3: initial wave offset
|
||||||
void AnimSolarbeamSmallOrb(struct Sprite* sprite)
|
void AnimSolarBeamSmallOrb(struct Sprite* sprite)
|
||||||
{
|
{
|
||||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||||
sprite->data[0] = gBattleAnimArgs[2];
|
sprite->data[0] = gBattleAnimArgs[2];
|
||||||
@@ -2246,11 +2246,11 @@ void AnimSolarbeamSmallOrb(struct Sprite* sprite)
|
|||||||
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
|
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
|
||||||
InitAnimLinearTranslation(sprite);
|
InitAnimLinearTranslation(sprite);
|
||||||
sprite->data[5] = gBattleAnimArgs[3];
|
sprite->data[5] = gBattleAnimArgs[3];
|
||||||
sprite->callback = AnimSolarbeamSmallOrbStep;
|
sprite->callback = AnimSolarBeamSmallOrbStep;
|
||||||
sprite->callback(sprite);
|
sprite->callback(sprite);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void AnimSolarbeamSmallOrbStep(struct Sprite* sprite)
|
static void AnimSolarBeamSmallOrbStep(struct Sprite* sprite)
|
||||||
{
|
{
|
||||||
if (AnimTranslateLinear(sprite))
|
if (AnimTranslateLinear(sprite))
|
||||||
{
|
{
|
||||||
@@ -2272,7 +2272,7 @@ static void AnimSolarbeamSmallOrbStep(struct Sprite* sprite)
|
|||||||
// Creates 15 small secondary orbs used in the solarbeam anim effect.
|
// Creates 15 small secondary orbs used in the solarbeam anim effect.
|
||||||
// There is a 7-frame delay between each of them.
|
// There is a 7-frame delay between each of them.
|
||||||
// No args.
|
// No args.
|
||||||
void AnimTask_CreateSmallSolarbeamOrbs(u8 taskId)
|
void AnimTask_CreateSmallSolarBeamOrbs(u8 taskId)
|
||||||
{
|
{
|
||||||
if (--gTasks[taskId].data[0] == -1)
|
if (--gTasks[taskId].data[0] == -1)
|
||||||
{
|
{
|
||||||
@@ -2282,7 +2282,7 @@ void AnimTask_CreateSmallSolarbeamOrbs(u8 taskId)
|
|||||||
gBattleAnimArgs[1] = 0;
|
gBattleAnimArgs[1] = 0;
|
||||||
gBattleAnimArgs[2] = 80;
|
gBattleAnimArgs[2] = 80;
|
||||||
gBattleAnimArgs[3] = 0;
|
gBattleAnimArgs[3] = 0;
|
||||||
CreateSpriteAndAnimate(&gSolarbeamSmallOrbSpriteTemplate, 0, 0, GetBattlerSpriteSubpriority(gBattleAnimTarget) + 1);
|
CreateSpriteAndAnimate(&gSolarBeamSmallOrbSpriteTemplate, 0, 0, GetBattlerSpriteSubpriority(gBattleAnimTarget) + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gTasks[taskId].data[1] == 15)
|
if (gTasks[taskId].data[1] == 15)
|
||||||
|
|||||||
@@ -5262,13 +5262,13 @@ static void AnimRecycleStep(struct Sprite *sprite)
|
|||||||
void AnimTask_GetWeather(u8 taskId)
|
void AnimTask_GetWeather(u8 taskId)
|
||||||
{
|
{
|
||||||
gBattleAnimArgs[7] = ANIM_WEATHER_NONE;
|
gBattleAnimArgs[7] = ANIM_WEATHER_NONE;
|
||||||
if (gWeatherMoveAnim & WEATHER_SUN_ANY)
|
if (gWeatherMoveAnim & B_WEATHER_SUN)
|
||||||
gBattleAnimArgs[7] = ANIM_WEATHER_SUN;
|
gBattleAnimArgs[7] = ANIM_WEATHER_SUN;
|
||||||
else if (gWeatherMoveAnim & WEATHER_RAIN_ANY)
|
else if (gWeatherMoveAnim & B_WEATHER_RAIN)
|
||||||
gBattleAnimArgs[7] = ANIM_WEATHER_RAIN;
|
gBattleAnimArgs[7] = ANIM_WEATHER_RAIN;
|
||||||
else if (gWeatherMoveAnim & WEATHER_SANDSTORM_ANY)
|
else if (gWeatherMoveAnim & B_WEATHER_SANDSTORM)
|
||||||
gBattleAnimArgs[7] = ANIM_WEATHER_SANDSTORM;
|
gBattleAnimArgs[7] = ANIM_WEATHER_SANDSTORM;
|
||||||
else if (gWeatherMoveAnim & WEATHER_HAIL_ANY)
|
else if (gWeatherMoveAnim & B_WEATHER_HAIL)
|
||||||
gBattleAnimArgs[7] = ANIM_WEATHER_HAIL;
|
gBattleAnimArgs[7] = ANIM_WEATHER_HAIL;
|
||||||
|
|
||||||
DestroyAnimVisualTask(taskId);
|
DestroyAnimVisualTask(taskId);
|
||||||
|
|||||||
+31
-31
@@ -764,7 +764,7 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
|||||||
{
|
{
|
||||||
if (gBattleOutcome == B_OUTCOME_DREW)
|
if (gBattleOutcome == B_OUTCOME_DREW)
|
||||||
{
|
{
|
||||||
BattlePutTextOnWindow(gText_Draw, 0x15);
|
BattlePutTextOnWindow(gText_Draw, B_WIN_VS_OUTCOME_DRAW);
|
||||||
}
|
}
|
||||||
else if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
else if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
|
||||||
{
|
{
|
||||||
@@ -773,20 +773,20 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
|||||||
switch (gLinkPlayers[gBattleStruct->multiplayerId].id)
|
switch (gLinkPlayers[gBattleStruct->multiplayerId].id)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -795,20 +795,20 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
|||||||
switch (gLinkPlayers[gBattleStruct->multiplayerId].id)
|
switch (gLinkPlayers[gBattleStruct->multiplayerId].id)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -817,26 +817,26 @@ static void DrawLinkBattleVsScreenOutcomeText(void)
|
|||||||
{
|
{
|
||||||
if (gLinkPlayers[gBattleStruct->multiplayerId].id != 0)
|
if (gLinkPlayers[gBattleStruct->multiplayerId].id != 0)
|
||||||
{
|
{
|
||||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (gLinkPlayers[gBattleStruct->multiplayerId].id != 0)
|
if (gLinkPlayers[gBattleStruct->multiplayerId].id != 0)
|
||||||
{
|
{
|
||||||
BattlePutTextOnWindow(gText_Win, 0x16);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_LEFT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x17);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
BattlePutTextOnWindow(gText_Win, 0x17);
|
BattlePutTextOnWindow(gText_Win, B_WIN_VS_OUTCOME_RIGHT);
|
||||||
BattlePutTextOnWindow(gText_Loss, 0x16);
|
BattlePutTextOnWindow(gText_Loss, B_WIN_VS_OUTCOME_LEFT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -860,19 +860,19 @@ void InitLinkBattleVsScreen(u8 taskId)
|
|||||||
switch (linkPlayer->id)
|
switch (linkPlayer->id)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BattlePutTextOnWindow(name, 0x11);
|
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_1);
|
||||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 4);
|
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 4);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
BattlePutTextOnWindow(name, 0x12);
|
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_2);
|
||||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 4);
|
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 4);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
BattlePutTextOnWindow(name, 0x13);
|
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_3);
|
||||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 8);
|
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 1, 2, 8);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
BattlePutTextOnWindow(name, 0x14);
|
BattlePutTextOnWindow(name, B_WIN_VS_MULTI_PLAYER_4);
|
||||||
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 8);
|
DrawLinkBattleParticipantPokeballs(taskId, linkPlayer->id, 2, 2, 8);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -888,10 +888,10 @@ void InitLinkBattleVsScreen(u8 taskId)
|
|||||||
opponentId = playerId, playerId = opponentId_copy;
|
opponentId = playerId, playerId = opponentId_copy;
|
||||||
|
|
||||||
name = gLinkPlayers[playerId].name;
|
name = gLinkPlayers[playerId].name;
|
||||||
BattlePutTextOnWindow(name, 0xF);
|
BattlePutTextOnWindow(name, B_WIN_VS_PLAYER);
|
||||||
|
|
||||||
name = gLinkPlayers[opponentId].name;
|
name = gLinkPlayers[opponentId].name;
|
||||||
BattlePutTextOnWindow(name, 0x10);
|
BattlePutTextOnWindow(name, B_WIN_VS_OPPONENT);
|
||||||
|
|
||||||
DrawLinkBattleParticipantPokeballs(taskId, playerId, 1, 2, 7);
|
DrawLinkBattleParticipantPokeballs(taskId, playerId, 1, 2, 7);
|
||||||
DrawLinkBattleParticipantPokeballs(taskId, opponentId, 2, 2, 7);
|
DrawLinkBattleParticipantPokeballs(taskId, opponentId, 2, 2, 7);
|
||||||
|
|||||||
@@ -499,7 +499,7 @@ static u32 CopyLinkOpponentMonData(u8 monId, u8 *dst)
|
|||||||
battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM);
|
battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM);
|
||||||
battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID);
|
battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID);
|
||||||
GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname);
|
GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname);
|
||||||
StringCopy10(battleMon.nickname, nickname);
|
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||||
GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||||
src = (u8 *)&battleMon;
|
src = (u8 *)&battleMon;
|
||||||
for (size = 0; size < sizeof(battleMon); ++size)
|
for (size = 0; size < sizeof(battleMon); ++size)
|
||||||
@@ -1310,9 +1310,9 @@ static void LinkOpponentHandlePrintString(void)
|
|||||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||||
BufferStringBattle(*stringId);
|
BufferStringBattle(*stringId);
|
||||||
if (BattleStringShouldBeColored(*stringId))
|
if (BattleStringShouldBeColored(*stringId))
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||||
else
|
else
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -454,7 +454,7 @@ static u32 CopyLinkPartnerMonData(u8 monId, u8 *dst)
|
|||||||
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
||||||
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
||||||
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
||||||
StringCopy10(battleMon.nickname, nickname);
|
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||||
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||||
src = (u8 *)&battleMon;
|
src = (u8 *)&battleMon;
|
||||||
for (size = 0; size < sizeof(battleMon); ++size)
|
for (size = 0; size < sizeof(battleMon); ++size)
|
||||||
@@ -1223,9 +1223,9 @@ static void LinkPartnerHandlePrintString(void)
|
|||||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||||
BufferStringBattle(*stringId);
|
BufferStringBattle(*stringId);
|
||||||
if (BattleStringShouldBeColored(*stringId))
|
if (BattleStringShouldBeColored(*stringId))
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||||
else
|
else
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -651,7 +651,7 @@ static void PrintOakText_ForPetesSake(void)
|
|||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_ForPetesSake);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_ForPetesSake);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||||
++gBattleStruct->simulatedInputState[0];
|
++gBattleStruct->simulatedInputState[0];
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
@@ -670,7 +670,7 @@ static void PrintOakText_ForPetesSake(void)
|
|||||||
if (!gPaletteFade.active)
|
if (!gPaletteFade.active)
|
||||||
{
|
{
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_TheTrainerThat);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_TheTrainerThat);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||||
++gBattleStruct->simulatedInputState[0];
|
++gBattleStruct->simulatedInputState[0];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -690,7 +690,7 @@ static void PrintOakText_ForPetesSake(void)
|
|||||||
if (!gPaletteFade.active)
|
if (!gPaletteFade.active)
|
||||||
{
|
{
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_TryBattling);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_TryBattling);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||||
++gBattleStruct->simulatedInputState[0];
|
++gBattleStruct->simulatedInputState[0];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -774,7 +774,7 @@ static void PrintOakTextWithMainBgDarkened(const u8 *text, u8 delay)
|
|||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(text);
|
BattleStringExpandPlaceholdersToDisplayedString(text);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||||
++gBattleStruct->simulatedInputState[0];
|
++gBattleStruct->simulatedInputState[0];
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
@@ -842,7 +842,7 @@ static void PrintOakText_KeepAnEyeOnHP(void)
|
|||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_KeepAnEyeOnHP);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_KeepAnEyeOnHP);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||||
++gBattleStruct->simulatedInputState[0];
|
++gBattleStruct->simulatedInputState[0];
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
@@ -1034,7 +1034,7 @@ static u32 CopyOakOldManMonData(u8 monId, u8 *dst)
|
|||||||
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
||||||
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
||||||
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
||||||
StringCopy10(battleMon.nickname, nickname);
|
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||||
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||||
src = (u8 *)&battleMon;
|
src = (u8 *)&battleMon;
|
||||||
for (size = 0; size < sizeof(battleMon); ++size)
|
for (size = 0; size < sizeof(battleMon); ++size)
|
||||||
@@ -1759,14 +1759,14 @@ static void OakOldManHandlePrintString(void)
|
|||||||
{
|
{
|
||||||
BufferStringBattle(*stringId);
|
BufferStringBattle(*stringId);
|
||||||
if (BattleStringShouldBeColored(*stringId))
|
if (BattleStringShouldBeColored(*stringId))
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||||
else
|
else
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||||
if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE)
|
if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE)
|
||||||
{
|
{
|
||||||
switch (*stringId)
|
switch (*stringId)
|
||||||
{
|
{
|
||||||
case STRINGID_PKMNSSTATCHANGED4:
|
case STRINGID_DEFENDERSSTATFELL:
|
||||||
if (!BtlCtrl_OakOldMan_TestState2Flag(FIRST_BATTLE_MSG_FLAG_STAT_CHG))
|
if (!BtlCtrl_OakOldMan_TestState2Flag(FIRST_BATTLE_MSG_FLAG_STAT_CHG))
|
||||||
{
|
{
|
||||||
BtlCtrl_OakOldMan_SetState2Flag(FIRST_BATTLE_MSG_FLAG_STAT_CHG);
|
BtlCtrl_OakOldMan_SetState2Flag(FIRST_BATTLE_MSG_FLAG_STAT_CHG);
|
||||||
@@ -1815,8 +1815,8 @@ static void OakOldManHandleChooseAction(void)
|
|||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||||
BattlePutTextOnWindow(gText_BattleMenu, 2);
|
BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU);
|
||||||
for (i = 0; i < MAX_MON_MOVES; ++i)
|
for (i = 0; i < MAX_MON_MOVES; ++i)
|
||||||
ActionSelectionDestroyCursorAt((u8)i);
|
ActionSelectionDestroyCursorAt((u8)i);
|
||||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||||
@@ -1824,7 +1824,7 @@ static void OakOldManHandleChooseAction(void)
|
|||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
||||||
else
|
else
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillOldManDo);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillOldManDo);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void OakOldManHandleUnknownYesNoBox(void)
|
static void OakOldManHandleUnknownYesNoBox(void)
|
||||||
@@ -1874,7 +1874,7 @@ static void OakOldManHandleChooseItem(void)
|
|||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
||||||
gBattlerInMenuId = gActiveBattler;
|
gBattlerInMenuId = gActiveBattler;
|
||||||
for (i = 0; i < 3; ++i)
|
for (i = 0; i < 3; ++i)
|
||||||
@@ -1892,7 +1892,7 @@ static void OakOldManHandleChoosePokemon(void)
|
|||||||
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
||||||
for (i = 0; i < 3; ++i)
|
for (i = 0; i < 3; ++i)
|
||||||
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
||||||
gBattlerInMenuId = gActiveBattler;
|
gBattlerInMenuId = gActiveBattler;
|
||||||
}
|
}
|
||||||
@@ -2060,7 +2060,7 @@ static void OakOldManHandleFaintingCry(void)
|
|||||||
{
|
{
|
||||||
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
||||||
|
|
||||||
PlayCry1(species, 25);
|
PlayCry_Normal(species, 25);
|
||||||
OakOldManBufferExecCompleted();
|
OakOldManBufferExecCompleted();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -493,7 +493,7 @@ static u32 GetOpponentMonData(u8 monId, u8 *dst)
|
|||||||
battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM);
|
battleMon.abilityNum = GetMonData(&gEnemyParty[monId], MON_DATA_ABILITY_NUM);
|
||||||
battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID);
|
battleMon.otId = GetMonData(&gEnemyParty[monId], MON_DATA_OT_ID);
|
||||||
GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname);
|
GetMonData(&gEnemyParty[monId], MON_DATA_NICKNAME, nickname);
|
||||||
StringCopy10(battleMon.nickname, nickname);
|
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||||
GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
GetMonData(&gEnemyParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||||
src = (u8 *)&battleMon;
|
src = (u8 *)&battleMon;
|
||||||
for (size = 0; size < sizeof(battleMon); ++size)
|
for (size = 0; size < sizeof(battleMon); ++size)
|
||||||
@@ -1312,9 +1312,9 @@ static void OpponentHandlePrintString(void)
|
|||||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||||
BufferStringBattle(*stringId);
|
BufferStringBattle(*stringId);
|
||||||
if (BattleStringShouldBeColored(*stringId))
|
if (BattleStringShouldBeColored(*stringId))
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||||
else
|
else
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||||
if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE)
|
if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE)
|
||||||
{
|
{
|
||||||
switch (*stringId)
|
switch (*stringId)
|
||||||
|
|||||||
@@ -570,7 +570,7 @@ void HandleInputChooseMove(void)
|
|||||||
else
|
else
|
||||||
gMultiUsePlayerCursor = gMoveSelectionCursor[gActiveBattler] + 1;
|
gMultiUsePlayerCursor = gMoveSelectionCursor[gActiveBattler] + 1;
|
||||||
MoveSelectionCreateCursorAt(gMultiUsePlayerCursor, 27);
|
MoveSelectionCreateCursorAt(gMultiUsePlayerCursor, 27);
|
||||||
BattlePutTextOnWindow(gText_BattleSwitchWhich, 0xB);
|
BattlePutTextOnWindow(gText_BattleSwitchWhich, B_WIN_SWITCH_PROMPT);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = HandleMoveSwitching;
|
gBattlerControllerFuncs[gActiveBattler] = HandleMoveSwitching;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1379,7 +1379,7 @@ static void MoveSelectionDisplayMoveNames(void)
|
|||||||
static void MoveSelectionDisplayPpString(void)
|
static void MoveSelectionDisplayPpString(void)
|
||||||
{
|
{
|
||||||
StringCopy(gDisplayedStringBattle, gText_MoveInterfacePP);
|
StringCopy(gDisplayedStringBattle, gText_MoveInterfacePP);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 7);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_PP);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void MoveSelectionDisplayPpNumber(void)
|
static void MoveSelectionDisplayPpNumber(void)
|
||||||
@@ -1394,7 +1394,7 @@ static void MoveSelectionDisplayPpNumber(void)
|
|||||||
txtPtr = ConvertIntToDecimalStringN(gDisplayedStringBattle, moveInfo->currentPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2);
|
txtPtr = ConvertIntToDecimalStringN(gDisplayedStringBattle, moveInfo->currentPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2);
|
||||||
*txtPtr = CHAR_SLASH;
|
*txtPtr = CHAR_SLASH;
|
||||||
ConvertIntToDecimalStringN(++txtPtr, moveInfo->maxPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2);
|
ConvertIntToDecimalStringN(++txtPtr, moveInfo->maxPp[gMoveSelectionCursor[gActiveBattler]], STR_CONV_MODE_RIGHT_ALIGN, 2);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 9);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_PP_REMAINING);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void MoveSelectionDisplayMoveType(void)
|
static void MoveSelectionDisplayMoveType(void)
|
||||||
@@ -1408,7 +1408,7 @@ static void MoveSelectionDisplayMoveType(void)
|
|||||||
*txtPtr++ = 1;
|
*txtPtr++ = 1;
|
||||||
txtPtr = StringCopy(txtPtr, gUnknown_83FE770);
|
txtPtr = StringCopy(txtPtr, gUnknown_83FE770);
|
||||||
StringCopy(txtPtr, gTypeNames[gBattleMoves[moveInfo->moves[gMoveSelectionCursor[gActiveBattler]]].type]);
|
StringCopy(txtPtr, gTypeNames[gBattleMoves[moveInfo->moves[gMoveSelectionCursor[gActiveBattler]]].type]);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 8);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MOVE_TYPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MoveSelectionCreateCursorAt(u8 cursorPosition, u8 arg1)
|
void MoveSelectionCreateCursorAt(u8 cursorPosition, u8 arg1)
|
||||||
@@ -1479,7 +1479,7 @@ static void PrintLinkStandbyMsg(void)
|
|||||||
{
|
{
|
||||||
gBattle_BG0_X = 0;
|
gBattle_BG0_X = 0;
|
||||||
gBattle_BG0_Y = 0;
|
gBattle_BG0_Y = 0;
|
||||||
BattlePutTextOnWindow(gText_LinkStandby, 0);
|
BattlePutTextOnWindow(gText_LinkStandby, B_WIN_MSG);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1551,7 +1551,7 @@ static u32 CopyPlayerMonData(u8 monId, u8 *dst)
|
|||||||
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
battleMon.abilityNum = GetMonData(&gPlayerParty[monId], MON_DATA_ABILITY_NUM);
|
||||||
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
battleMon.otId = GetMonData(&gPlayerParty[monId], MON_DATA_OT_ID);
|
||||||
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
GetMonData(&gPlayerParty[monId], MON_DATA_NICKNAME, nickname);
|
||||||
StringCopy10(battleMon.nickname, nickname);
|
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||||
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
GetMonData(&gPlayerParty[monId], MON_DATA_OT_NAME, battleMon.otName);
|
||||||
src = (u8 *)&battleMon;
|
src = (u8 *)&battleMon;
|
||||||
for (size = 0; size < sizeof(battleMon); ++size)
|
for (size = 0; size < sizeof(battleMon); ++size)
|
||||||
@@ -2263,7 +2263,7 @@ static void PlayerHandleFaintAnimation(void)
|
|||||||
|
|
||||||
static void PlayerHandlePaletteFade(void)
|
static void PlayerHandlePaletteFade(void)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 2, 0, 16, RGB_BLACK);
|
||||||
PlayerBufferExecCompleted();
|
PlayerBufferExecCompleted();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2377,9 +2377,9 @@ static void PlayerHandlePrintString(void)
|
|||||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||||
BufferStringBattle(*stringId);
|
BufferStringBattle(*stringId);
|
||||||
if (BattleStringShouldBeColored(*stringId))
|
if (BattleStringShouldBeColored(*stringId))
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||||
else
|
else
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2;
|
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2406,13 +2406,13 @@ static void PlayerHandleChooseAction(void)
|
|||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||||
BattlePutTextOnWindow(gText_BattleMenu, 2);
|
BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU);
|
||||||
for (i = 0; i < 4; ++i)
|
for (i = 0; i < 4; ++i)
|
||||||
ActionSelectionDestroyCursorAt(i);
|
ActionSelectionDestroyCursorAt(i);
|
||||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void PlayerHandleUnknownYesNoBox(void)
|
static void PlayerHandleUnknownYesNoBox(void)
|
||||||
@@ -2449,7 +2449,7 @@ static void PlayerHandleChooseItem(void)
|
|||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
||||||
gBattlerInMenuId = gActiveBattler;
|
gBattlerInMenuId = gActiveBattler;
|
||||||
for (i = 0; i < 3; ++i)
|
for (i = 0; i < 3; ++i)
|
||||||
@@ -2467,7 +2467,7 @@ static void PlayerHandleChoosePokemon(void)
|
|||||||
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
||||||
for (i = 0; i < 3; ++i)
|
for (i = 0; i < 3; ++i)
|
||||||
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
||||||
gBattlerInMenuId = gActiveBattler;
|
gBattlerInMenuId = gActiveBattler;
|
||||||
}
|
}
|
||||||
@@ -2475,7 +2475,7 @@ static void PlayerHandleChoosePokemon(void)
|
|||||||
static void PlayerHandleCmd23(void)
|
static void PlayerHandleCmd23(void)
|
||||||
{
|
{
|
||||||
BattleStopLowHpSound();
|
BattleStopLowHpSound();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 2, 0, 16, RGB_BLACK);
|
||||||
PlayerBufferExecCompleted();
|
PlayerBufferExecCompleted();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -782,7 +782,7 @@ static u32 CopyPokedudeMonData(u8 monId, u8 *dst)
|
|||||||
battleMon.abilityNum = GetMonData(mon, MON_DATA_ABILITY_NUM);
|
battleMon.abilityNum = GetMonData(mon, MON_DATA_ABILITY_NUM);
|
||||||
battleMon.otId = GetMonData(mon, MON_DATA_OT_ID);
|
battleMon.otId = GetMonData(mon, MON_DATA_OT_ID);
|
||||||
GetMonData(mon, MON_DATA_NICKNAME, nickname);
|
GetMonData(mon, MON_DATA_NICKNAME, nickname);
|
||||||
StringCopy10(battleMon.nickname, nickname);
|
StringCopy_Nickname(battleMon.nickname, nickname);
|
||||||
GetMonData(mon, MON_DATA_OT_NAME, battleMon.otName);
|
GetMonData(mon, MON_DATA_OT_NAME, battleMon.otName);
|
||||||
src = (u8 *)&battleMon;
|
src = (u8 *)&battleMon;
|
||||||
for (size = 0; size < sizeof(battleMon); ++size)
|
for (size = 0; size < sizeof(battleMon); ++size)
|
||||||
@@ -1533,9 +1533,9 @@ static void PokedudeHandlePrintString(void)
|
|||||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||||
BufferStringBattle(*stringId);
|
BufferStringBattle(*stringId);
|
||||||
if (BattleStringShouldBeColored(*stringId))
|
if (BattleStringShouldBeColored(*stringId))
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||||
else
|
else
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1564,13 +1564,13 @@ static void PokedudeHandleChooseAction(void)
|
|||||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
|
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
|
||||||
{
|
{
|
||||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||||
BattlePutTextOnWindow(gText_BattleMenu, 2);
|
BattlePutTextOnWindow(gText_BattleMenu, B_WIN_ACTION_MENU);
|
||||||
for (i = 0; i < MAX_MON_MOVES; ++i)
|
for (i = 0; i < MAX_MON_MOVES; ++i)
|
||||||
ActionSelectionDestroyCursorAt((u8)i);
|
ActionSelectionDestroyCursorAt((u8)i);
|
||||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPkmnDo);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1610,7 +1610,7 @@ static void PokedudeHandleChooseItem(void)
|
|||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
gBattlerControllerFuncs[gActiveBattler] = OpenBagAndChooseItem;
|
||||||
gBattlerInMenuId = gActiveBattler;
|
gBattlerInMenuId = gActiveBattler;
|
||||||
for (i = 0; i < 3; ++i)
|
for (i = 0; i < 3; ++i)
|
||||||
@@ -1628,7 +1628,7 @@ static void PokedudeHandleChoosePokemon(void)
|
|||||||
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
*(&gBattleStruct->abilityPreventingSwitchout) = gBattleBufferA[gActiveBattler][3];
|
||||||
for (i = 0; i < 3; ++i)
|
for (i = 0; i < 3; ++i)
|
||||||
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
gBattlePartyCurrentOrder[i] = gBattleBufferA[gActiveBattler][4 + i];
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
gBattlerControllerFuncs[gActiveBattler] = OpenPartyMenuToChooseMon;
|
||||||
gBattlerInMenuId = gActiveBattler;
|
gBattlerInMenuId = gActiveBattler;
|
||||||
}
|
}
|
||||||
@@ -1834,7 +1834,7 @@ static void PokedudeHandleFaintingCry(void)
|
|||||||
else
|
else
|
||||||
mon = &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]];
|
mon = &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]];
|
||||||
species = GetMonData(mon, MON_DATA_SPECIES);
|
species = GetMonData(mon, MON_DATA_SPECIES);
|
||||||
PlayCry1(species, 25);
|
PlayCry_Normal(species, 25);
|
||||||
PokedudeBufferExecCompleted();
|
PokedudeBufferExecCompleted();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2272,7 +2272,7 @@ static const struct PokedudeTextScriptHeader sPokedudeTextScripts_Catching[] =
|
|||||||
.callback = PokedudeAction_PrintVoiceoverMessage,
|
.callback = PokedudeAction_PrintVoiceoverMessage,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.btlcmd = CONTROLLER_55,
|
.btlcmd = CONTROLLER_ENDLINKBATTLE,
|
||||||
.side = B_SIDE_PLAYER,
|
.side = B_SIDE_PLAYER,
|
||||||
.callback = PokedudeAction_PrintVoiceoverMessage,
|
.callback = PokedudeAction_PrintVoiceoverMessage,
|
||||||
},
|
},
|
||||||
@@ -2557,7 +2557,7 @@ static void PokedudeAction_PrintVoiceoverMessage(void)
|
|||||||
case 2:
|
case 2:
|
||||||
gBattle_BG0_Y = 0;
|
gBattle_BG0_Y = 0;
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(GetPokedudeText());
|
BattleStringExpandPlaceholdersToDisplayedString(GetPokedudeText());
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||||
++gPokedudeBattlerStates[gActiveBattler]->timer;
|
++gPokedudeBattlerStates[gActiveBattler]->timer;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
@@ -2618,7 +2618,7 @@ static void PokedudeAction_PrintMessageWithHealthboxPals(void)
|
|||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(GetPokedudeText());
|
BattleStringExpandPlaceholdersToDisplayedString(GetPokedudeText());
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 24);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_OAK_OLD_MAN);
|
||||||
++gPokedudeBattlerStates[gActiveBattler]->timer;
|
++gPokedudeBattlerStates[gActiveBattler]->timer;
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
|
|||||||
@@ -409,9 +409,9 @@ static void SafariHandlePrintString(void)
|
|||||||
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
stringId = (u16 *)(&gBattleBufferA[gActiveBattler][2]);
|
||||||
BufferStringBattle(*stringId);
|
BufferStringBattle(*stringId);
|
||||||
if (BattleStringShouldBeColored(*stringId))
|
if (BattleStringShouldBeColored(*stringId))
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0x40);
|
BattlePutTextOnWindow(gDisplayedStringBattle, (B_WIN_MSG | B_TEXT_FLAG_NPC_CONTEXT_FONT));
|
||||||
else
|
else
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 0);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_MSG);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
gBattlerControllerFuncs[gActiveBattler] = CompleteOnInactiveTextPrinter;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -438,13 +438,13 @@ static void SafariHandleChooseAction(void)
|
|||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
gBattlerControllerFuncs[gActiveBattler] = HandleChooseActionAfterDma3;
|
||||||
BattlePutTextOnWindow(gText_EmptyString3, 0);
|
BattlePutTextOnWindow(gText_EmptyString3, B_WIN_MSG);
|
||||||
BattlePutTextOnWindow(gUnknown_83FE747, 2);
|
BattlePutTextOnWindow(gUnknown_83FE747, B_WIN_ACTION_MENU);
|
||||||
for (i = 0; i < 4; ++i)
|
for (i = 0; i < 4; ++i)
|
||||||
ActionSelectionDestroyCursorAt(i);
|
ActionSelectionDestroyCursorAt(i);
|
||||||
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
ActionSelectionCreateCursorAt(gActionSelectionCursor[gActiveBattler], 0);
|
||||||
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPlayerThrow);
|
BattleStringExpandPlaceholdersToDisplayedString(gText_WhatWillPlayerThrow);
|
||||||
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
|
BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void SafariHandleUnknownYesNoBox(void)
|
static void SafariHandleUnknownYesNoBox(void)
|
||||||
@@ -461,7 +461,7 @@ static void SafariHandleChooseItem(void)
|
|||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
gBattlerControllerFuncs[gActiveBattler] = SafariOpenPokeblockCase;
|
gBattlerControllerFuncs[gActiveBattler] = SafariOpenPokeblockCase;
|
||||||
gBattlerInMenuId = gActiveBattler;
|
gBattlerInMenuId = gActiveBattler;
|
||||||
}
|
}
|
||||||
@@ -594,7 +594,7 @@ static void SafariHandleFaintingCry(void)
|
|||||||
{
|
{
|
||||||
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
|
||||||
|
|
||||||
PlayCry1(species, 25);
|
PlayCry_Normal(species, 25);
|
||||||
SafariBufferExecCompleted();
|
SafariBufferExecCompleted();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+16
-12
@@ -487,7 +487,7 @@ void TryReceiveLinkBattleData(void)
|
|||||||
s32 j;
|
s32 j;
|
||||||
u8 *recvBuffer;
|
u8 *recvBuffer;
|
||||||
|
|
||||||
if (gReceivedRemoteLinkPlayers && (gBattleTypeFlags & BATTLE_TYPE_LINK_ESTABLISHED) && (gLinkPlayers[0].linkType == 0x2211))
|
if (gReceivedRemoteLinkPlayers && (gBattleTypeFlags & BATTLE_TYPE_LINK_IN_BATTLE) && (gLinkPlayers[0].linkType == 0x2211))
|
||||||
{
|
{
|
||||||
LinkRfu_DestroyIdleTask();
|
LinkRfu_DestroyIdleTask();
|
||||||
for (i = 0; i < GetLinkPlayerCount(); ++i)
|
for (i = 0; i < GetLinkPlayerCount(); ++i)
|
||||||
@@ -621,10 +621,10 @@ void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubs
|
|||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1)
|
void BtlController_EmitReturnMonToBall(u8 bufferId, bool8 skipAnim)
|
||||||
{
|
{
|
||||||
sBattleBuffersTransferData[0] = CONTROLLER_RETURNMONTOBALL;
|
sBattleBuffersTransferData[0] = CONTROLLER_RETURNMONTOBALL;
|
||||||
sBattleBuffersTransferData[1] = arg1;
|
sBattleBuffersTransferData[1] = skipAnim;
|
||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -934,16 +934,19 @@ static void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, voi
|
|||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 7);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 7);
|
||||||
}
|
}
|
||||||
|
|
||||||
// not used
|
// Unused
|
||||||
static void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter)
|
static void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data)
|
||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
sBattleBuffersTransferData[0] = CONTROLLER_31;
|
sBattleBuffersTransferData[0] = CONTROLLER_PLAYBGM;
|
||||||
sBattleBuffersTransferData[1] = songId;
|
sBattleBuffersTransferData[1] = songId;
|
||||||
sBattleBuffersTransferData[2] = (songId & 0xFF00) >> 8;
|
sBattleBuffersTransferData[2] = (songId & 0xFF00) >> 8;
|
||||||
|
|
||||||
|
// Nonsense loop using songId as a size
|
||||||
|
// Would go out of bounds for any song id after SE_DEOXYS_MOVE (253)
|
||||||
for (i = 0; i < songId; ++i)
|
for (i = 0; i < songId; ++i)
|
||||||
sBattleBuffersTransferData[3 + i] = *(u8 *)(unusedDumbDataParameter++);
|
sBattleBuffersTransferData[3 + i] = *(u8 *)(data++);
|
||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, songId + 3);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, songId + 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1045,7 +1048,7 @@ void BtlController_EmitHitAnimation(u8 bufferId)
|
|||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BtlController_EmitCmd42(u8 bufferId)
|
void BtlController_EmitCantSwitch(u8 bufferId)
|
||||||
{
|
{
|
||||||
sBattleBuffersTransferData[0] = CONTROLLER_42;
|
sBattleBuffersTransferData[0] = CONTROLLER_42;
|
||||||
sBattleBuffersTransferData[1] = CONTROLLER_42;
|
sBattleBuffersTransferData[1] = CONTROLLER_42;
|
||||||
@@ -1146,10 +1149,11 @@ void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument
|
|||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 arg1)
|
// mode is a LINK_STANDBY_* constant
|
||||||
|
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 mode)
|
||||||
{
|
{
|
||||||
sBattleBuffersTransferData[0] = CONTROLLER_LINKSTANDBYMSG;
|
sBattleBuffersTransferData[0] = CONTROLLER_LINKSTANDBYMSG;
|
||||||
sBattleBuffersTransferData[1] = arg1;
|
sBattleBuffersTransferData[1] = mode;
|
||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1160,9 +1164,9 @@ void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId)
|
|||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BtlController_EmitCmd55(u8 bufferId, u8 battleOutcome)
|
void BtlController_EmitEndLinkBattle(u8 bufferId, u8 battleOutcome)
|
||||||
{
|
{
|
||||||
sBattleBuffersTransferData[0] = CONTROLLER_55;
|
sBattleBuffersTransferData[0] = CONTROLLER_ENDLINKBATTLE;
|
||||||
sBattleBuffersTransferData[1] = battleOutcome;
|
sBattleBuffersTransferData[1] = battleOutcome;
|
||||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||||
}
|
}
|
||||||
|
|||||||
+48
-48
@@ -1051,7 +1051,7 @@ static void CB2_HandleStartBattle(void)
|
|||||||
SetMainCallback2(BattleMainCB2);
|
SetMainCallback2(BattleMainCB2);
|
||||||
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||||
{
|
{
|
||||||
gBattleTypeFlags |= BATTLE_TYPE_LINK_ESTABLISHED;
|
gBattleTypeFlags |= BATTLE_TYPE_LINK_IN_BATTLE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1409,7 +1409,7 @@ static void CB2_HandleStartMultiBattle(void)
|
|||||||
gMain.callback1 = BattleMainCB1;
|
gMain.callback1 = BattleMainCB1;
|
||||||
SetMainCallback2(BattleMainCB2);
|
SetMainCallback2(BattleMainCB2);
|
||||||
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||||
gBattleTypeFlags |= BATTLE_TYPE_LINK_ESTABLISHED;
|
gBattleTypeFlags |= BATTLE_TYPE_LINK_IN_BATTLE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
@@ -1436,7 +1436,7 @@ void BattleMainCB2(void)
|
|||||||
{
|
{
|
||||||
gSpecialVar_Result = gBattleOutcome = B_OUTCOME_DREW;
|
gSpecialVar_Result = gBattleOutcome = B_OUTCOME_DREW;
|
||||||
ResetPaletteFadeControl();
|
ResetPaletteFadeControl();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
SetMainCallback2(CB2_QuitPokedudeBattle);
|
SetMainCallback2(CB2_QuitPokedudeBattle);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1779,7 +1779,7 @@ static void EndLinkBattleInSteps(void)
|
|||||||
case 1:
|
case 1:
|
||||||
if (--gBattleCommunication[1] == 0)
|
if (--gBattleCommunication[1] == 0)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
++gBattleCommunication[MULTIUSE_STATE];
|
++gBattleCommunication[MULTIUSE_STATE];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1796,7 +1796,7 @@ static void EndLinkBattleInSteps(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 GetBattleBgAttribute(u8 arrayId, u8 caseId)
|
u32 GetBattleBgTemplateData(u8 arrayId, u8 caseId)
|
||||||
{
|
{
|
||||||
u32 ret = 0;
|
u32 ret = 0;
|
||||||
|
|
||||||
@@ -1859,7 +1859,7 @@ static void SpriteCB_MoveWildMonToRight(struct Sprite *sprite)
|
|||||||
if (sprite->x2 == 0)
|
if (sprite->x2 == 0)
|
||||||
{
|
{
|
||||||
sprite->callback = SpriteCB_WildMonShowHealthbox;
|
sprite->callback = SpriteCB_WildMonShowHealthbox;
|
||||||
PlayCry1(sprite->data[2], 25);
|
PlayCry_Normal(sprite->data[2], 25);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1870,13 +1870,13 @@ static void SpriteCB_WildMonShowHealthbox(struct Sprite *sprite)
|
|||||||
{
|
{
|
||||||
StartHealthboxSlideIn(sprite->sBattler);
|
StartHealthboxSlideIn(sprite->sBattler);
|
||||||
SetHealthboxSpriteVisible(gHealthboxSpriteIds[sprite->sBattler]);
|
SetHealthboxSpriteVisible(gHealthboxSpriteIds[sprite->sBattler]);
|
||||||
sprite->callback = SpriteCallbackDummy2;
|
sprite->callback = SpriteCallbackDummy_2;
|
||||||
StartSpriteAnimIfDifferent(sprite, 0);
|
StartSpriteAnimIfDifferent(sprite, 0);
|
||||||
BeginNormalPaletteFade(0x20000, 0, 10, 0, RGB(8, 8, 8));
|
BeginNormalPaletteFade(0x20000, 0, 10, 0, RGB(8, 8, 8));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SpriteCallbackDummy2(struct Sprite *sprite)
|
void SpriteCallbackDummy_2(struct Sprite *sprite)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1900,7 +1900,7 @@ static void SpriteCB_Unused_8011E28_Step(struct Sprite *sprite)
|
|||||||
if (sprite->data[3] == 0)
|
if (sprite->data[3] == 0)
|
||||||
{
|
{
|
||||||
sprite->invisible = FALSE;
|
sprite->invisible = FALSE;
|
||||||
sprite->callback = SpriteCallbackDummy2;
|
sprite->callback = SpriteCallbackDummy_2;
|
||||||
gUnknown_2022AE8[0] = 0;
|
gUnknown_2022AE8[0] = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1991,7 +1991,7 @@ void SpriteCb_HideAsMoveTarget(struct Sprite *sprite)
|
|||||||
{
|
{
|
||||||
sprite->invisible = sprite->data[4];
|
sprite->invisible = sprite->data[4];
|
||||||
sprite->data[4] = FALSE;
|
sprite->data[4] = FALSE;
|
||||||
sprite->callback = SpriteCallbackDummy2;
|
sprite->callback = SpriteCallbackDummy_2;
|
||||||
}
|
}
|
||||||
|
|
||||||
void SpriteCB_AllyMon(struct Sprite *sprite)
|
void SpriteCB_AllyMon(struct Sprite *sprite)
|
||||||
@@ -2433,7 +2433,7 @@ static void BattleIntroGetMonsData(void)
|
|||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
gActiveBattler = gBattleCommunication[1];
|
gActiveBattler = gBattleCommunication[1];
|
||||||
BtlController_EmitGetMonData(0, REQUEST_ALL_BATTLE, 0);
|
BtlController_EmitGetMonData(BUFFER_A, REQUEST_ALL_BATTLE, 0);
|
||||||
MarkBattlerForControllerExec(gActiveBattler);
|
MarkBattlerForControllerExec(gActiveBattler);
|
||||||
++gBattleCommunication[MULTIUSE_STATE];
|
++gBattleCommunication[MULTIUSE_STATE];
|
||||||
break;
|
break;
|
||||||
@@ -2468,7 +2468,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
|
|||||||
u8 *ptr;
|
u8 *ptr;
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||||
{
|
{
|
||||||
@@ -2554,7 +2554,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
|
|||||||
s32 i;
|
s32 i;
|
||||||
struct HpAndStatus hpStatus[PARTY_SIZE];
|
struct HpAndStatus hpStatus[PARTY_SIZE];
|
||||||
|
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
|
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
|
||||||
{
|
{
|
||||||
@@ -2621,7 +2621,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
|
|||||||
|
|
||||||
static void BattleIntroPrintTrainerWantsToBattle(void)
|
static void BattleIntroPrintTrainerWantsToBattle(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
gActiveBattler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
|
gActiveBattler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
|
||||||
PrepareStringBattle(STRINGID_INTROMSG, gActiveBattler);
|
PrepareStringBattle(STRINGID_INTROMSG, gActiveBattler);
|
||||||
@@ -2631,7 +2631,7 @@ static void BattleIntroPrintTrainerWantsToBattle(void)
|
|||||||
|
|
||||||
static void BattleIntroPrintWildMonAttacked(void)
|
static void BattleIntroPrintWildMonAttacked(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
||||||
PrepareStringBattle(STRINGID_INTROMSG, 0);
|
PrepareStringBattle(STRINGID_INTROMSG, 0);
|
||||||
@@ -2645,7 +2645,7 @@ static void BattleIntroPrintWildMonAttacked(void)
|
|||||||
|
|
||||||
static void BattleIntroPrintOpponentSendsOut(void)
|
static void BattleIntroPrintOpponentSendsOut(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT));
|
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT));
|
||||||
gBattleMainFunc = BattleIntroOpponentSendsOutMonAnimation;
|
gBattleMainFunc = BattleIntroOpponentSendsOutMonAnimation;
|
||||||
@@ -2654,7 +2654,7 @@ static void BattleIntroPrintOpponentSendsOut(void)
|
|||||||
|
|
||||||
static void BattleIntroOpponentSendsOutMonAnimation(void)
|
static void BattleIntroOpponentSendsOutMonAnimation(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||||
{
|
{
|
||||||
@@ -2675,7 +2675,7 @@ static void BattleIntroOpponentSendsOutMonAnimation(void)
|
|||||||
|
|
||||||
static void BattleIntroRecordMonsToDex(void)
|
static void BattleIntroRecordMonsToDex(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_OPPONENT
|
if (GetBattlerSide(gActiveBattler) == B_SIDE_OPPONENT
|
||||||
@@ -2693,13 +2693,13 @@ static void BattleIntroRecordMonsToDex(void)
|
|||||||
// not used
|
// not used
|
||||||
static void Unused_AutoProgressToIntro(void)
|
static void Unused_AutoProgressToIntro(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
||||||
}
|
}
|
||||||
|
|
||||||
void BattleIntroPrintPlayerSendsOut(void)
|
void BattleIntroPrintPlayerSendsOut(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
|
if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
|
||||||
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_PLAYER_LEFT));
|
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_PLAYER_LEFT));
|
||||||
@@ -2711,7 +2711,7 @@ static void BattleIntroPlayerSendsOutMonAnimation(void)
|
|||||||
{
|
{
|
||||||
u32 position;
|
u32 position;
|
||||||
|
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||||
{
|
{
|
||||||
@@ -2736,13 +2736,13 @@ static void BattleIntroPlayerSendsOutMonAnimation(void)
|
|||||||
// not used
|
// not used
|
||||||
static void Unused_AutoProgressToSwitchInAnims(void)
|
static void Unused_AutoProgressToSwitchInAnims(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||||
{
|
{
|
||||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
|
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
|
||||||
{
|
{
|
||||||
BtlController_EmitSwitchInAnim(0, gBattlerPartyIndexes[gActiveBattler], FALSE);
|
BtlController_EmitSwitchInAnim(BUFFER_A, gBattlerPartyIndexes[gActiveBattler], FALSE);
|
||||||
MarkBattlerForControllerExec(gActiveBattler);
|
MarkBattlerForControllerExec(gActiveBattler);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2758,7 +2758,7 @@ static void TryDoEventsBeforeFirstTurn(void)
|
|||||||
s32 i, j;
|
s32 i, j;
|
||||||
u8 effect = 0;
|
u8 effect = 0;
|
||||||
|
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (gBattleStruct->switchInAbilitiesCounter == 0)
|
if (gBattleStruct->switchInAbilitiesCounter == 0)
|
||||||
@@ -2819,7 +2819,7 @@ static void TryDoEventsBeforeFirstTurn(void)
|
|||||||
*(&gBattleStruct->turnEffectsBattlerId) = 0;
|
*(&gBattleStruct->turnEffectsBattlerId) = 0;
|
||||||
*(&gBattleStruct->wishPerishSongState) = 0;
|
*(&gBattleStruct->wishPerishSongState) = 0;
|
||||||
*(&gBattleStruct->wishPerishSongBattlerId) = 0;
|
*(&gBattleStruct->wishPerishSongBattlerId) = 0;
|
||||||
gBattleScripting.atk49_state = 0;
|
gBattleScripting.moveendState = 0;
|
||||||
gBattleStruct->faintedActionsState = 0;
|
gBattleStruct->faintedActionsState = 0;
|
||||||
gBattleStruct->turnCountersTracker = 0;
|
gBattleStruct->turnCountersTracker = 0;
|
||||||
gMoveResultFlags = 0;
|
gMoveResultFlags = 0;
|
||||||
@@ -2831,7 +2831,7 @@ static void HandleEndTurn_ContinueBattle(void)
|
|||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
gBattleMainFunc = BattleTurnPassed;
|
gBattleMainFunc = BattleTurnPassed;
|
||||||
for (i = 0; i < BATTLE_COMMUNICATION_ENTRIES_COUNT; ++i)
|
for (i = 0; i < BATTLE_COMMUNICATION_ENTRIES_COUNT; ++i)
|
||||||
@@ -2875,7 +2875,7 @@ void BattleTurnPassed(void)
|
|||||||
gHitMarker &= ~(HITMARKER_PASSIVE_DAMAGE);
|
gHitMarker &= ~(HITMARKER_PASSIVE_DAMAGE);
|
||||||
gBattleScripting.animTurn = 0;
|
gBattleScripting.animTurn = 0;
|
||||||
gBattleScripting.animTargetsHit = 0;
|
gBattleScripting.animTargetsHit = 0;
|
||||||
gBattleScripting.atk49_state = 0;
|
gBattleScripting.moveendState = 0;
|
||||||
gBattleMoveDamage = 0;
|
gBattleMoveDamage = 0;
|
||||||
gMoveResultFlags = 0;
|
gMoveResultFlags = 0;
|
||||||
for (i = 0; i < 5; ++i)
|
for (i = 0; i < 5; ++i)
|
||||||
@@ -3098,7 +3098,7 @@ static void HandleTurnActionSelectionState(void)
|
|||||||
*(gBattleStruct->battlerPartyIndexes + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler];
|
*(gBattleStruct->battlerPartyIndexes + gActiveBattler) = gBattlerPartyIndexes[gActiveBattler];
|
||||||
if (gBattleMons[gActiveBattler].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION) || gStatuses3[gActiveBattler] & STATUS3_ROOTED)
|
if (gBattleMons[gActiveBattler].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION) || gStatuses3[gActiveBattler] & STATUS3_ROOTED)
|
||||||
{
|
{
|
||||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CANT_SWITCH, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CANT_SWITCH, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||||
}
|
}
|
||||||
else if ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_SHADOW_TAG))
|
else if ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_SHADOW_TAG))
|
||||||
|| ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_ARENA_TRAP))
|
|| ((i = ABILITY_ON_OPPOSING_FIELD(gActiveBattler, ABILITY_ARENA_TRAP))
|
||||||
@@ -3107,16 +3107,16 @@ static void HandleTurnActionSelectionState(void)
|
|||||||
|| ((i = AbilityBattleEffects(ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER, gActiveBattler, ABILITY_MAGNET_PULL, 0, 0))
|
|| ((i = AbilityBattleEffects(ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER, gActiveBattler, ABILITY_MAGNET_PULL, 0, 0))
|
||||||
&& IS_BATTLER_OF_TYPE(gActiveBattler, TYPE_STEEL)))
|
&& IS_BATTLER_OF_TYPE(gActiveBattler, TYPE_STEEL)))
|
||||||
{
|
{
|
||||||
BtlController_EmitChoosePokemon(0, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, 6, gLastUsedAbility, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
BtlController_EmitChoosePokemon(BUFFER_A, ((i - 1) << 4) | PARTY_ACTION_ABILITY_PREVENTS, 6, gLastUsedAbility, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (gActiveBattler == 2 && gChosenActionByBattler[0] == B_ACTION_SWITCH)
|
if (gActiveBattler == 2 && gChosenActionByBattler[0] == B_ACTION_SWITCH)
|
||||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 0), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||||
else if (gActiveBattler == 3 && gChosenActionByBattler[1] == B_ACTION_SWITCH)
|
else if (gActiveBattler == 3 && gChosenActionByBattler[1] == B_ACTION_SWITCH)
|
||||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, *(gBattleStruct->monToSwitchIntoId + 1), ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||||
else
|
else
|
||||||
BtlController_EmitChoosePokemon(0, PARTY_ACTION_CHOOSE_MON, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
BtlController_EmitChoosePokemon(BUFFER_A, PARTY_ACTION_CHOOSE_MON, 6, ABILITY_NONE, gBattleStruct->battlerPartyOrders[gActiveBattler]);
|
||||||
}
|
}
|
||||||
MarkBattlerForControllerExec(gActiveBattler);
|
MarkBattlerForControllerExec(gActiveBattler);
|
||||||
break;
|
break;
|
||||||
@@ -3254,9 +3254,9 @@ static void HandleTurnActionSelectionState(void)
|
|||||||
if (((gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_DOUBLE)) != BATTLE_TYPE_DOUBLE)
|
if (((gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_DOUBLE)) != BATTLE_TYPE_DOUBLE)
|
||||||
|| (position & BIT_FLANK) != B_FLANK_LEFT
|
|| (position & BIT_FLANK) != B_FLANK_LEFT
|
||||||
|| (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(position ^ BIT_FLANK)]))
|
|| (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(position ^ BIT_FLANK)]))
|
||||||
BtlController_EmitLinkStandbyMsg(0, 0);
|
BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_STOP_BOUNCE);
|
||||||
else
|
else
|
||||||
BtlController_EmitLinkStandbyMsg(0, 1);
|
BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_STOP_BOUNCE_ONLY);
|
||||||
MarkBattlerForControllerExec(gActiveBattler);
|
MarkBattlerForControllerExec(gActiveBattler);
|
||||||
++gBattleCommunication[gActiveBattler];
|
++gBattleCommunication[gActiveBattler];
|
||||||
}
|
}
|
||||||
@@ -3309,13 +3309,13 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
|
|||||||
|
|
||||||
if (WEATHER_HAS_EFFECT)
|
if (WEATHER_HAS_EFFECT)
|
||||||
{
|
{
|
||||||
if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY)
|
if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN)
|
||||||
|| (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY))
|
|| (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN))
|
||||||
speedMultiplierBattler1 = 2;
|
speedMultiplierBattler1 = 2;
|
||||||
else
|
else
|
||||||
speedMultiplierBattler1 = 1;
|
speedMultiplierBattler1 = 1;
|
||||||
if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY)
|
if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN)
|
||||||
|| (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY))
|
|| (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN))
|
||||||
speedMultiplierBattler2 = 2;
|
speedMultiplierBattler2 = 2;
|
||||||
else
|
else
|
||||||
speedMultiplierBattler2 = 1;
|
speedMultiplierBattler2 = 1;
|
||||||
@@ -3751,7 +3751,7 @@ static void HandleEndTurn_FinishBattle(void)
|
|||||||
gBattleMainFunc = FreeResetData_ReturnToOvOrDoEvolutions;
|
gBattleMainFunc = FreeResetData_ReturnToOvOrDoEvolutions;
|
||||||
gCB2_AfterEvolution = BattleMainCB2;
|
gCB2_AfterEvolution = BattleMainCB2;
|
||||||
}
|
}
|
||||||
else if (!gBattleControllerExecFlags)
|
else if (gBattleControllerExecFlags == 0)
|
||||||
{
|
{
|
||||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||||
}
|
}
|
||||||
@@ -3847,14 +3847,14 @@ void RunBattleScriptCommands_PopCallbacksStack(void)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void RunBattleScriptCommands(void)
|
void RunBattleScriptCommands(void)
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3874,7 +3874,7 @@ static void HandleAction_UseMove(void)
|
|||||||
gBattleStruct->atkCancellerTracker = 0;
|
gBattleStruct->atkCancellerTracker = 0;
|
||||||
gMoveResultFlags = 0;
|
gMoveResultFlags = 0;
|
||||||
gMultiHitCounter = 0;
|
gMultiHitCounter = 0;
|
||||||
gBattleCommunication[6] = 0;
|
gBattleCommunication[MISS_TYPE] = 0;
|
||||||
gCurrMovePos = gChosenMovePos = *(gBattleStruct->chosenMovePositions + gBattlerAttacker);
|
gCurrMovePos = gChosenMovePos = *(gBattleStruct->chosenMovePositions + gBattlerAttacker);
|
||||||
// choose move
|
// choose move
|
||||||
if (gProtectStructs[gBattlerAttacker].noValidMoves)
|
if (gProtectStructs[gBattlerAttacker].noValidMoves)
|
||||||
@@ -4088,7 +4088,7 @@ static void HandleAction_UseItem(void)
|
|||||||
while (!(*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & 1))
|
while (!(*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & 1))
|
||||||
{
|
{
|
||||||
*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) >>= 1;
|
*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) >>= 1;
|
||||||
++gBattleCommunication[MULTISTRING_CHOOSER];
|
gBattleCommunication[MULTISTRING_CHOOSER]++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -4344,8 +4344,8 @@ static void HandleAction_NothingIsFainted(void)
|
|||||||
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
|
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
|
||||||
| HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
|
| HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
|
||||||
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
|
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
|
||||||
| HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT
|
| HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT
|
||||||
| HITMARKER_CHARGING | HITMARKER_x4000000);
|
| HITMARKER_CHARGING | HITMARKER_NEVER_SET);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void HandleAction_ActionFinished(void)
|
static void HandleAction_ActionFinished(void)
|
||||||
@@ -4356,8 +4356,8 @@ static void HandleAction_ActionFinished(void)
|
|||||||
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
|
gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED
|
||||||
| HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
|
| HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR
|
||||||
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
|
| HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_PASSIVE_DAMAGE
|
||||||
| HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT
|
| HITMARKER_OBEYS | HITMARKER_WAKE_UP_CLEAR | HITMARKER_SYNCHRONISE_EFFECT
|
||||||
| HITMARKER_CHARGING | HITMARKER_x4000000);
|
| HITMARKER_CHARGING | HITMARKER_NEVER_SET);
|
||||||
gCurrentMove = MOVE_NONE;
|
gCurrentMove = MOVE_NONE;
|
||||||
gBattleMoveDamage = 0;
|
gBattleMoveDamage = 0;
|
||||||
gMoveResultFlags = 0;
|
gMoveResultFlags = 0;
|
||||||
@@ -4367,7 +4367,7 @@ static void HandleAction_ActionFinished(void)
|
|||||||
gLastHitByType[gBattlerAttacker] = 0;
|
gLastHitByType[gBattlerAttacker] = 0;
|
||||||
gBattleStruct->dynamicMoveType = 0;
|
gBattleStruct->dynamicMoveType = 0;
|
||||||
gDynamicBasePower = 0;
|
gDynamicBasePower = 0;
|
||||||
gBattleScripting.atk49_state = 0;
|
gBattleScripting.moveendState = 0;
|
||||||
gBattleCommunication[MOVE_EFFECT_BYTE] = 0;
|
gBattleCommunication[MOVE_EFFECT_BYTE] = 0;
|
||||||
gBattleCommunication[ACTIONS_CONFIRMED_COUNT] = 0;
|
gBattleCommunication[ACTIONS_CONFIRMED_COUNT] = 0;
|
||||||
gBattleScripting.multihitMoveEffect = 0;
|
gBattleScripting.multihitMoveEffect = 0;
|
||||||
|
|||||||
+24
-23
@@ -302,11 +302,11 @@ static const u8 sText_StatSharply[] = _("sharply ");
|
|||||||
const u8 gBattleText_Rose[] = _("rose!");
|
const u8 gBattleText_Rose[] = _("rose!");
|
||||||
static const u8 sText_StatHarshly[] = _("harshly ");
|
static const u8 sText_StatHarshly[] = _("harshly ");
|
||||||
static const u8 sText_StatFell[] = _("fell!");
|
static const u8 sText_StatFell[] = _("fell!");
|
||||||
static const u8 sText_PkmnsStatChanged[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
static const u8 sText_AttackersStatRose[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||||
const u8 gText_PkmnsStatChanged2[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
const u8 gText_DefendersStatRose[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||||
static const u8 sText_UsingXTheYOfZN[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_SCR_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}");
|
static const u8 sText_UsingItemTheStatOfPkmnRose[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_SCR_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}");
|
||||||
static const u8 sText_PkmnsStatChanged3[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
static const u8 sText_AttackersStatFell[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||||
static const u8 sText_PkmnsStatChanged4[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
static const u8 sText_DefendersStatFell[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_BUFF1}\n{B_BUFF2}");
|
||||||
static const u8 sText_StatsWontIncrease2[] = _("{B_ATK_NAME_WITH_PREFIX}'s stats won't\ngo any higher!");
|
static const u8 sText_StatsWontIncrease2[] = _("{B_ATK_NAME_WITH_PREFIX}'s stats won't\ngo any higher!");
|
||||||
static const u8 sText_StatsWontDecrease2[] = _("{B_DEF_NAME_WITH_PREFIX}'s stats won't\ngo any lower!");
|
static const u8 sText_StatsWontDecrease2[] = _("{B_DEF_NAME_WITH_PREFIX}'s stats won't\ngo any lower!");
|
||||||
static const u8 sText_CriticalHit[] = _("A critical hit!");
|
static const u8 sText_CriticalHit[] = _("A critical hit!");
|
||||||
@@ -715,10 +715,10 @@ const u8 *const gBattleStringsTable[] = {
|
|||||||
[STRINGID_STATROSE - 12] = gBattleText_Rose,
|
[STRINGID_STATROSE - 12] = gBattleText_Rose,
|
||||||
[STRINGID_STATHARSHLY - 12] = sText_StatHarshly,
|
[STRINGID_STATHARSHLY - 12] = sText_StatHarshly,
|
||||||
[STRINGID_STATFELL - 12] = sText_StatFell,
|
[STRINGID_STATFELL - 12] = sText_StatFell,
|
||||||
[STRINGID_PKMNSSTATCHANGED - 12] = sText_PkmnsStatChanged,
|
[STRINGID_ATTACKERSSTATROSE - 12] = sText_AttackersStatRose,
|
||||||
[STRINGID_PKMNSSTATCHANGED2 - 12] = gText_PkmnsStatChanged2,
|
[STRINGID_DEFENDERSSTATROSE - 12] = gText_DefendersStatRose,
|
||||||
[STRINGID_PKMNSSTATCHANGED3 - 12] = sText_PkmnsStatChanged3,
|
[STRINGID_ATTACKERSSTATFELL - 12] = sText_AttackersStatFell,
|
||||||
[STRINGID_PKMNSSTATCHANGED4 - 12] = sText_PkmnsStatChanged4,
|
[STRINGID_DEFENDERSSTATFELL - 12] = sText_DefendersStatFell,
|
||||||
[STRINGID_CRITICALHIT - 12] = sText_CriticalHit,
|
[STRINGID_CRITICALHIT - 12] = sText_CriticalHit,
|
||||||
[STRINGID_ONEHITKO - 12] = sText_OneHitKO,
|
[STRINGID_ONEHITKO - 12] = sText_OneHitKO,
|
||||||
[STRINGID_123POOF - 12] = sText_123Poof,
|
[STRINGID_123POOF - 12] = sText_123Poof,
|
||||||
@@ -827,7 +827,7 @@ const u8 *const gBattleStringsTable[] = {
|
|||||||
[STRINGID_SOOTHINGAROMA - 12] = sText_SoothingAroma,
|
[STRINGID_SOOTHINGAROMA - 12] = sText_SoothingAroma,
|
||||||
[STRINGID_ITEMSCANTBEUSEDNOW - 12] = sText_ItemsCantBeUsedNow,
|
[STRINGID_ITEMSCANTBEUSEDNOW - 12] = sText_ItemsCantBeUsedNow,
|
||||||
[STRINGID_FORXCOMMAYZ - 12] = sText_ForXCommaYZ,
|
[STRINGID_FORXCOMMAYZ - 12] = sText_ForXCommaYZ,
|
||||||
[STRINGID_USINGXTHEYOFZN - 12] = sText_UsingXTheYOfZN,
|
[STRINGID_USINGITEMSTATOFPKMNROSE - 12] = sText_UsingItemTheStatOfPkmnRose,
|
||||||
[STRINGID_PKMNUSEDXTOGETPUMPED - 12] = sText_PkmnUsedXToGetPumped,
|
[STRINGID_PKMNUSEDXTOGETPUMPED - 12] = sText_PkmnUsedXToGetPumped,
|
||||||
[STRINGID_PKMNSXMADEYUSELESS - 12] = sText_PkmnsXMadeYUseless,
|
[STRINGID_PKMNSXMADEYUSELESS - 12] = sText_PkmnsXMadeYUseless,
|
||||||
[STRINGID_PKMNTRAPPEDBYSANDTOMB - 12] = sText_PkmnTrappedBySandTomb,
|
[STRINGID_PKMNTRAPPEDBYSANDTOMB - 12] = sText_PkmnTrappedBySandTomb,
|
||||||
@@ -990,18 +990,19 @@ const u16 gUproarAwakeStringIds[] = {
|
|||||||
STRINGID_PKMNSTAYEDAWAKEUSING
|
STRINGID_PKMNSTAYEDAWAKEUSING
|
||||||
};
|
};
|
||||||
|
|
||||||
const u16 gStatUpStringIds[] = {
|
const u16 gStatUpStringIds[] =
|
||||||
STRINGID_PKMNSSTATCHANGED,
|
{
|
||||||
STRINGID_PKMNSSTATCHANGED2,
|
[B_MSG_ATTACKER_STAT_ROSE] = STRINGID_ATTACKERSSTATROSE,
|
||||||
STRINGID_STATSWONTINCREASE,
|
[B_MSG_DEFENDER_STAT_ROSE] = STRINGID_DEFENDERSSTATROSE,
|
||||||
STRINGID_EMPTYSTRING3,
|
[B_MSG_STAT_WONT_INCREASE] = STRINGID_STATSWONTINCREASE,
|
||||||
STRINGID_USINGXTHEYOFZN,
|
[B_MSG_STAT_ROSE_EMPTY] = STRINGID_EMPTYSTRING3,
|
||||||
STRINGID_PKMNUSEDXTOGETPUMPED
|
[B_MSG_STAT_ROSE_ITEM] = STRINGID_USINGITEMSTATOFPKMNROSE,
|
||||||
|
[B_MSG_USED_DIRE_HIT] = STRINGID_PKMNUSEDXTOGETPUMPED,
|
||||||
};
|
};
|
||||||
|
|
||||||
const u16 gStatDownStringIds[] = {
|
const u16 gStatDownStringIds[] = {
|
||||||
STRINGID_PKMNSSTATCHANGED3,
|
STRINGID_ATTACKERSSTATFELL,
|
||||||
STRINGID_PKMNSSTATCHANGED4,
|
STRINGID_DEFENDERSSTATFELL,
|
||||||
STRINGID_STATSWONTDECREASE,
|
STRINGID_STATSWONTDECREASE,
|
||||||
STRINGID_EMPTYSTRING3
|
STRINGID_EMPTYSTRING3
|
||||||
};
|
};
|
||||||
@@ -1701,14 +1702,14 @@ void BufferStringBattle(u16 stringId)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default: // load a string from the table
|
default: // load a string from the table
|
||||||
if (stringId >= BATTLESTRINGS_COUNT + BATTLESTRINGS_ID_ADDER)
|
if (stringId >= BATTLESTRINGS_COUNT + BATTLESTRINGS_TABLE_START)
|
||||||
{
|
{
|
||||||
gDisplayedStringBattle[0] = EOS;
|
gDisplayedStringBattle[0] = EOS;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
stringPtr = gBattleStringsTable[stringId - BATTLESTRINGS_ID_ADDER];
|
stringPtr = gBattleStringsTable[stringId - BATTLESTRINGS_TABLE_START];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -2169,7 +2170,7 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst)
|
|||||||
{
|
{
|
||||||
case B_BUFF_STRING: // battle string
|
case B_BUFF_STRING: // battle string
|
||||||
hword = T1_READ_16(&src[srcId + 1]);
|
hword = T1_READ_16(&src[srcId + 1]);
|
||||||
StringAppend(dst, gBattleStringsTable[hword - BATTLESTRINGS_ID_ADDER]);
|
StringAppend(dst, gBattleStringsTable[hword - BATTLESTRINGS_TABLE_START]);
|
||||||
srcId += 3;
|
srcId += 3;
|
||||||
break;
|
break;
|
||||||
case B_BUFF_NUMBER: // int to string
|
case B_BUFF_NUMBER: // int to string
|
||||||
@@ -2456,7 +2457,7 @@ void BattlePutTextOnWindow(const u8 *text, u8 windowId) {
|
|||||||
if (!(textFlags & 0x80))
|
if (!(textFlags & 0x80))
|
||||||
{
|
{
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ static void MainCB2_SetUp(void)
|
|||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
@@ -178,7 +178,7 @@ static void Task_WaitButton(u8 taskId)
|
|||||||
|
|
||||||
static void Task_FadeOut(u8 taskId)
|
static void Task_FadeOut(u8 taskId)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_DestroyAndReturnToField;
|
gTasks[taskId].func = Task_DestroyAndReturnToField;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -557,7 +557,7 @@ static void PrintBattleRecords(void)
|
|||||||
static void CommitWindow(u8 windowId)
|
static void CommitWindow(u8 windowId)
|
||||||
{
|
{
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void LoadFrameGfxOnBg(u8 bg)
|
static void LoadFrameGfxOnBg(u8 bg)
|
||||||
|
|||||||
+2559
-2060
File diff suppressed because it is too large
Load Diff
@@ -711,7 +711,7 @@ static bool8 BT_Phase2Blur_Anim(struct Task *task)
|
|||||||
{
|
{
|
||||||
task->tInterval = 2;
|
task->tInterval = 2;
|
||||||
if (++task->tMosaicSize == 10)
|
if (++task->tMosaicSize == 10)
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, RGB_BLACK);
|
||||||
// The mosaic size argument is shared by HSIZE and VSIZE
|
// The mosaic size argument is shared by HSIZE and VSIZE
|
||||||
SetGpuReg(REG_OFFSET_MOSAIC, (task->tMosaicSize & 0xF) + ((task->tMosaicSize & 0xF) << 4));
|
SetGpuReg(REG_OFFSET_MOSAIC, (task->tMosaicSize & 0xF) + ((task->tMosaicSize & 0xF) << 4));
|
||||||
if (task->tMosaicSize > 14)
|
if (task->tMosaicSize > 14)
|
||||||
@@ -742,7 +742,7 @@ static bool8 BT_Phase2DistortedWave_InitWave(struct Task *task)
|
|||||||
{
|
{
|
||||||
BT_InitCtrlBlk();
|
BT_InitCtrlBlk();
|
||||||
ScanlineEffect_Clear();
|
ScanlineEffect_Clear();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 4, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK);
|
||||||
BT_LoadWaveIntoBuffer(gScanlineEffectRegBuffers[1], sTransitionStructPtr->bg123HOfs, 0, 2, 0, 160);
|
BT_LoadWaveIntoBuffer(gScanlineEffectRegBuffers[1], sTransitionStructPtr->bg123HOfs, 0, 2, 0, 160);
|
||||||
SetVBlankCallback(VBCB_BT_Phase2DistortedWave);
|
SetVBlankCallback(VBCB_BT_Phase2DistortedWave);
|
||||||
SetHBlankCallback(HBCB_BT_Phase2DistortedWave);
|
SetHBlankCallback(HBCB_BT_Phase2DistortedWave);
|
||||||
@@ -788,7 +788,7 @@ static bool8 BT_Phase2HorizontalCorrugate_Init(struct Task *task)
|
|||||||
{
|
{
|
||||||
BT_InitCtrlBlk();
|
BT_InitCtrlBlk();
|
||||||
ScanlineEffect_Clear();
|
ScanlineEffect_Clear();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 4, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 0x10, RGB_BLACK);
|
||||||
memset(gScanlineEffectRegBuffers[1], sTransitionStructPtr->bg123VOfs, 320);
|
memset(gScanlineEffectRegBuffers[1], sTransitionStructPtr->bg123VOfs, 320);
|
||||||
SetVBlankCallback(VBCB_BT_Phase2HorizontalCorrugate);
|
SetVBlankCallback(VBCB_BT_Phase2HorizontalCorrugate);
|
||||||
SetHBlankCallback(HBCB_BT_Phase2HorizontalCorrugate);
|
SetHBlankCallback(HBCB_BT_Phase2HorizontalCorrugate);
|
||||||
@@ -1382,7 +1382,7 @@ static bool8 BT_Phase2FullScreenWave_UpdateWave(struct Task *task)
|
|||||||
if (++task->tDelayForFade == 41)
|
if (++task->tDelayForFade == 41)
|
||||||
{
|
{
|
||||||
++task->tStartFade;
|
++task->tStartFade;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -8, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -8, 0, 0x10, RGB_BLACK);
|
||||||
}
|
}
|
||||||
if (task->tStartFade && !gPaletteFade.active)
|
if (task->tStartFade && !gPaletteFade.active)
|
||||||
DestroyTask(FindTaskIdByFunc(BT_Phase2FullScreenWave));
|
DestroyTask(FindTaskIdByFunc(BT_Phase2FullScreenWave));
|
||||||
@@ -1982,7 +1982,7 @@ static bool8 BT_Phase2Mugshot_ExpandWhiteBand(struct Task *task)
|
|||||||
static bool8 BT_Phase2Mugshot_StartBlackFade(struct Task *task)
|
static bool8 BT_Phase2Mugshot_StartBlackFade(struct Task *task)
|
||||||
{
|
{
|
||||||
sTransitionStructPtr->vblankDma = FALSE;
|
sTransitionStructPtr->vblankDma = FALSE;
|
||||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_WHITE);
|
BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE);
|
||||||
sTransitionStructPtr->bldCnt = BLDCNT_TGT1_BG0 | BLDCNT_TGT1_BG1 | BLDCNT_TGT1_BG2 | BLDCNT_TGT1_BG3 | BLDCNT_TGT1_OBJ | BLDCNT_TGT1_BD | BLDCNT_EFFECT_DARKEN;
|
sTransitionStructPtr->bldCnt = BLDCNT_TGT1_BG0 | BLDCNT_TGT1_BG1 | BLDCNT_TGT1_BG2 | BLDCNT_TGT1_BG3 | BLDCNT_TGT1_OBJ | BLDCNT_TGT1_BD | BLDCNT_EFFECT_DARKEN;
|
||||||
task->tCounter = 0;
|
task->tCounter = 0;
|
||||||
++task->tState;
|
++task->tState;
|
||||||
@@ -2310,7 +2310,7 @@ static bool8 BT_Phase2WhiteFadeInStripes_IsWhiteFadeDone(struct Task *task)
|
|||||||
sTransitionStructPtr->vblankDma = FALSE;
|
sTransitionStructPtr->vblankDma = FALSE;
|
||||||
if (sTransitionStructPtr->counter > 5)
|
if (sTransitionStructPtr->counter > 5)
|
||||||
{
|
{
|
||||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_WHITE);
|
BlendPalettes(PALETTES_ALL, 0x10, RGB_WHITE);
|
||||||
++task->tState;
|
++task->tState;
|
||||||
}
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@@ -2658,7 +2658,7 @@ static bool8 BT_Phase1_FadeIn(struct Task *task)
|
|||||||
task->tCoeff -= task->tFadeInSpeed;
|
task->tCoeff -= task->tFadeInSpeed;
|
||||||
if (task->tCoeff < 0)
|
if (task->tCoeff < 0)
|
||||||
task->tCoeff = 0;
|
task->tCoeff = 0;
|
||||||
BlendPalettes(0xFFFFFFFF, task->tCoeff, RGB(11, 11, 11));
|
BlendPalettes(PALETTES_ALL, task->tCoeff, RGB(11, 11, 11));
|
||||||
}
|
}
|
||||||
if (task->tCoeff == 0)
|
if (task->tCoeff == 0)
|
||||||
{
|
{
|
||||||
@@ -2719,7 +2719,7 @@ static void BT_GetBg0TilemapAndTilesetBase(u16 **tilemapPtr, u16 **tilesetPtr)
|
|||||||
|
|
||||||
static void BT_BlendPalettesToBlack(void)
|
static void BT_BlendPalettesToBlack(void)
|
||||||
{
|
{
|
||||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void BT_LoadWaveIntoBuffer(s16 *buffer, s16 offset, s16 theta, s16 frequency, s16 amplitude, s16 bufSize)
|
static void BT_LoadWaveIntoBuffer(s16 *buffer, s16 offset, s16 theta, s16 frequency, s16 amplitude, s16 bufSize)
|
||||||
|
|||||||
+43
-43
@@ -568,22 +568,22 @@ u8 DoFieldEndTurnEffects(void)
|
|||||||
++gBattleStruct->turnCountersTracker;
|
++gBattleStruct->turnCountersTracker;
|
||||||
break;
|
break;
|
||||||
case ENDTURN_RAIN:
|
case ENDTURN_RAIN:
|
||||||
if (gBattleWeather & WEATHER_RAIN_ANY)
|
if (gBattleWeather & B_WEATHER_RAIN)
|
||||||
{
|
{
|
||||||
if (!(gBattleWeather & WEATHER_RAIN_PERMANENT))
|
if (!(gBattleWeather & B_WEATHER_RAIN_PERMANENT))
|
||||||
{
|
{
|
||||||
if (--gWishFutureKnock.weatherDuration == 0)
|
if (--gWishFutureKnock.weatherDuration == 0)
|
||||||
{
|
{
|
||||||
gBattleWeather &= ~WEATHER_RAIN_TEMPORARY;
|
gBattleWeather &= ~B_WEATHER_RAIN_TEMPORARY;
|
||||||
gBattleWeather &= ~WEATHER_RAIN_DOWNPOUR;
|
gBattleWeather &= ~B_WEATHER_RAIN_DOWNPOUR;
|
||||||
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
|
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
|
||||||
}
|
}
|
||||||
else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR)
|
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
|
||||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||||
else
|
else
|
||||||
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
|
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
|
||||||
}
|
}
|
||||||
else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR)
|
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
|
||||||
{
|
{
|
||||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||||
}
|
}
|
||||||
@@ -597,11 +597,11 @@ u8 DoFieldEndTurnEffects(void)
|
|||||||
++gBattleStruct->turnCountersTracker;
|
++gBattleStruct->turnCountersTracker;
|
||||||
break;
|
break;
|
||||||
case ENDTURN_SANDSTORM:
|
case ENDTURN_SANDSTORM:
|
||||||
if (gBattleWeather & WEATHER_SANDSTORM_ANY)
|
if (gBattleWeather & B_WEATHER_SANDSTORM)
|
||||||
{
|
{
|
||||||
if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
if (!(gBattleWeather & B_WEATHER_SANDSTORM_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
||||||
{
|
{
|
||||||
gBattleWeather &= ~WEATHER_SANDSTORM_TEMPORARY;
|
gBattleWeather &= ~B_WEATHER_SANDSTORM_TEMPORARY;
|
||||||
gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
|
gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -616,11 +616,11 @@ u8 DoFieldEndTurnEffects(void)
|
|||||||
++gBattleStruct->turnCountersTracker;
|
++gBattleStruct->turnCountersTracker;
|
||||||
break;
|
break;
|
||||||
case ENDTURN_SUN:
|
case ENDTURN_SUN:
|
||||||
if (gBattleWeather & WEATHER_SUN_ANY)
|
if (gBattleWeather & B_WEATHER_SUN)
|
||||||
{
|
{
|
||||||
if (!(gBattleWeather & WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
if (!(gBattleWeather & B_WEATHER_SUN_PERMANENT) && --gWishFutureKnock.weatherDuration == 0)
|
||||||
{
|
{
|
||||||
gBattleWeather &= ~WEATHER_SUN_TEMPORARY;
|
gBattleWeather &= ~B_WEATHER_SUN_TEMPORARY;
|
||||||
gBattlescriptCurrInstr = BattleScript_SunlightFaded;
|
gBattlescriptCurrInstr = BattleScript_SunlightFaded;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -633,11 +633,11 @@ u8 DoFieldEndTurnEffects(void)
|
|||||||
++gBattleStruct->turnCountersTracker;
|
++gBattleStruct->turnCountersTracker;
|
||||||
break;
|
break;
|
||||||
case ENDTURN_HAIL:
|
case ENDTURN_HAIL:
|
||||||
if (gBattleWeather & WEATHER_HAIL_ANY)
|
if (gBattleWeather & B_WEATHER_HAIL)
|
||||||
{
|
{
|
||||||
if (--gWishFutureKnock.weatherDuration == 0)
|
if (--gWishFutureKnock.weatherDuration == 0)
|
||||||
{
|
{
|
||||||
gBattleWeather &= ~WEATHER_HAIL;
|
gBattleWeather &= ~B_WEATHER_HAIL_TEMPORARY;
|
||||||
gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
|
gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -687,7 +687,7 @@ u8 DoBattlerEndTurnEffects(void)
|
|||||||
{
|
{
|
||||||
u8 effect = 0;
|
u8 effect = 0;
|
||||||
|
|
||||||
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20);
|
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||||
while (gBattleStruct->turnEffectsBattlerId < gBattlersCount && gBattleStruct->turnEffectsTracker <= ENDTURN_BATTLER_COUNT)
|
while (gBattleStruct->turnEffectsBattlerId < gBattlersCount && gBattleStruct->turnEffectsTracker <= ENDTURN_BATTLER_COUNT)
|
||||||
{
|
{
|
||||||
gActiveBattler = gBattlerAttacker = gBattlerByTurnOrder[gBattleStruct->turnEffectsBattlerId];
|
gActiveBattler = gBattlerAttacker = gBattlerByTurnOrder[gBattleStruct->turnEffectsBattlerId];
|
||||||
@@ -1000,13 +1000,13 @@ u8 DoBattlerEndTurnEffects(void)
|
|||||||
return effect;
|
return effect;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_x20);
|
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool8 HandleWishPerishSongOnTurnEnd(void)
|
bool8 HandleWishPerishSongOnTurnEnd(void)
|
||||||
{
|
{
|
||||||
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20);
|
gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||||
switch (gBattleStruct->wishPerishSongState)
|
switch (gBattleStruct->wishPerishSongState)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
@@ -1073,7 +1073,7 @@ bool8 HandleWishPerishSongOnTurnEnd(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_x20);
|
gHitMarker &= ~(HITMARKER_GRUDGE | HITMARKER_SKIP_DMG_TRACK);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1093,7 +1093,7 @@ bool8 HandleFaintedMonActions(void)
|
|||||||
++gBattleStruct->faintedActionsState;
|
++gBattleStruct->faintedActionsState;
|
||||||
for (i = 0; i < gBattlersCount; ++i)
|
for (i = 0; i < gBattlersCount; ++i)
|
||||||
{
|
{
|
||||||
if (gAbsentBattlerFlags & gBitTable[i] && !HasNoMonsToSwitch(i, 6, 6))
|
if (gAbsentBattlerFlags & gBitTable[i] && !HasNoMonsToSwitch(i, PARTY_SIZE, PARTY_SIZE))
|
||||||
gAbsentBattlerFlags &= ~(gBitTable[i]);
|
gAbsentBattlerFlags &= ~(gBitTable[i]);
|
||||||
}
|
}
|
||||||
// fall through
|
// fall through
|
||||||
@@ -1552,22 +1552,22 @@ u8 CastformDataTypeChange(u8 battler)
|
|||||||
}
|
}
|
||||||
if (!WEATHER_HAS_EFFECT)
|
if (!WEATHER_HAS_EFFECT)
|
||||||
return CASTFORM_NO_CHANGE;
|
return CASTFORM_NO_CHANGE;
|
||||||
if (!(gBattleWeather & (WEATHER_RAIN_ANY | WEATHER_SUN_ANY | WEATHER_HAIL_ANY)) && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL))
|
if (!(gBattleWeather & (B_WEATHER_RAIN | B_WEATHER_SUN | B_WEATHER_HAIL)) && !IS_BATTLER_OF_TYPE(battler, TYPE_NORMAL))
|
||||||
{
|
{
|
||||||
SET_BATTLER_TYPE(battler, TYPE_NORMAL);
|
SET_BATTLER_TYPE(battler, TYPE_NORMAL);
|
||||||
formChange = CASTFORM_TO_NORMAL;
|
formChange = CASTFORM_TO_NORMAL;
|
||||||
}
|
}
|
||||||
if (gBattleWeather & WEATHER_SUN_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_FIRE))
|
if (gBattleWeather & B_WEATHER_SUN && !IS_BATTLER_OF_TYPE(battler, TYPE_FIRE))
|
||||||
{
|
{
|
||||||
SET_BATTLER_TYPE(battler, TYPE_FIRE);
|
SET_BATTLER_TYPE(battler, TYPE_FIRE);
|
||||||
formChange = CASTFORM_TO_FIRE;
|
formChange = CASTFORM_TO_FIRE;
|
||||||
}
|
}
|
||||||
if (gBattleWeather & WEATHER_RAIN_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_WATER))
|
if (gBattleWeather & B_WEATHER_RAIN && !IS_BATTLER_OF_TYPE(battler, TYPE_WATER))
|
||||||
{
|
{
|
||||||
SET_BATTLER_TYPE(battler, TYPE_WATER);
|
SET_BATTLER_TYPE(battler, TYPE_WATER);
|
||||||
formChange = CASTFORM_TO_WATER;
|
formChange = CASTFORM_TO_WATER;
|
||||||
}
|
}
|
||||||
if (gBattleWeather & WEATHER_HAIL_ANY && !IS_BATTLER_OF_TYPE(battler, TYPE_ICE))
|
if (gBattleWeather & B_WEATHER_HAIL && !IS_BATTLER_OF_TYPE(battler, TYPE_ICE))
|
||||||
{
|
{
|
||||||
SET_BATTLER_TYPE(battler, TYPE_ICE);
|
SET_BATTLER_TYPE(battler, TYPE_ICE);
|
||||||
formChange = CASTFORM_TO_ICE;
|
formChange = CASTFORM_TO_ICE;
|
||||||
@@ -1631,27 +1631,27 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
|||||||
case WEATHER_RAIN:
|
case WEATHER_RAIN:
|
||||||
case WEATHER_RAIN_THUNDERSTORM:
|
case WEATHER_RAIN_THUNDERSTORM:
|
||||||
case WEATHER_DOWNPOUR:
|
case WEATHER_DOWNPOUR:
|
||||||
if (!(gBattleWeather & WEATHER_RAIN_ANY))
|
if (!(gBattleWeather & B_WEATHER_RAIN))
|
||||||
{
|
{
|
||||||
gBattleWeather = (WEATHER_RAIN_TEMPORARY | WEATHER_RAIN_PERMANENT);
|
gBattleWeather = (B_WEATHER_RAIN_TEMPORARY | B_WEATHER_RAIN_PERMANENT);
|
||||||
gBattleScripting.animArg1 = B_ANIM_RAIN_CONTINUES;
|
gBattleScripting.animArg1 = B_ANIM_RAIN_CONTINUES;
|
||||||
gBattleScripting.battler = battler;
|
gBattleScripting.battler = battler;
|
||||||
++effect;
|
++effect;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case WEATHER_SANDSTORM:
|
case WEATHER_SANDSTORM:
|
||||||
if (!(gBattleWeather & WEATHER_SANDSTORM_ANY))
|
if (!(gBattleWeather & B_WEATHER_SANDSTORM))
|
||||||
{
|
{
|
||||||
gBattleWeather = (WEATHER_SANDSTORM_PERMANENT | WEATHER_SANDSTORM_TEMPORARY);
|
gBattleWeather = (B_WEATHER_SANDSTORM_PERMANENT | B_WEATHER_SANDSTORM_TEMPORARY);
|
||||||
gBattleScripting.animArg1 = B_ANIM_SANDSTORM_CONTINUES;
|
gBattleScripting.animArg1 = B_ANIM_SANDSTORM_CONTINUES;
|
||||||
gBattleScripting.battler = battler;
|
gBattleScripting.battler = battler;
|
||||||
++effect;
|
++effect;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case WEATHER_DROUGHT:
|
case WEATHER_DROUGHT:
|
||||||
if (!(gBattleWeather & WEATHER_SUN_ANY))
|
if (!(gBattleWeather & B_WEATHER_SUN))
|
||||||
{
|
{
|
||||||
gBattleWeather = (WEATHER_SUN_PERMANENT | WEATHER_SUN_TEMPORARY);
|
gBattleWeather = (B_WEATHER_SUN_PERMANENT | B_WEATHER_SUN_TEMPORARY);
|
||||||
gBattleScripting.animArg1 = B_ANIM_SUN_CONTINUES;
|
gBattleScripting.animArg1 = B_ANIM_SUN_CONTINUES;
|
||||||
gBattleScripting.battler = battler;
|
gBattleScripting.battler = battler;
|
||||||
++effect;
|
++effect;
|
||||||
@@ -1665,27 +1665,27 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ABILITY_DRIZZLE:
|
case ABILITY_DRIZZLE:
|
||||||
if (!(gBattleWeather & WEATHER_RAIN_PERMANENT))
|
if (!(gBattleWeather & B_WEATHER_RAIN_PERMANENT))
|
||||||
{
|
{
|
||||||
gBattleWeather = (WEATHER_RAIN_PERMANENT | WEATHER_RAIN_TEMPORARY);
|
gBattleWeather = (B_WEATHER_RAIN_PERMANENT | B_WEATHER_RAIN_TEMPORARY);
|
||||||
BattleScriptPushCursorAndCallback(BattleScript_DrizzleActivates);
|
BattleScriptPushCursorAndCallback(BattleScript_DrizzleActivates);
|
||||||
gBattleScripting.battler = battler;
|
gBattleScripting.battler = battler;
|
||||||
++effect;
|
++effect;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ABILITY_SAND_STREAM:
|
case ABILITY_SAND_STREAM:
|
||||||
if (!(gBattleWeather & WEATHER_SANDSTORM_PERMANENT))
|
if (!(gBattleWeather & B_WEATHER_SANDSTORM_PERMANENT))
|
||||||
{
|
{
|
||||||
gBattleWeather = (WEATHER_SANDSTORM_PERMANENT | WEATHER_SANDSTORM_TEMPORARY);
|
gBattleWeather = (B_WEATHER_SANDSTORM_PERMANENT | B_WEATHER_SANDSTORM_TEMPORARY);
|
||||||
BattleScriptPushCursorAndCallback(BattleScript_SandstreamActivates);
|
BattleScriptPushCursorAndCallback(BattleScript_SandstreamActivates);
|
||||||
gBattleScripting.battler = battler;
|
gBattleScripting.battler = battler;
|
||||||
++effect;
|
++effect;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ABILITY_DROUGHT:
|
case ABILITY_DROUGHT:
|
||||||
if (!(gBattleWeather & WEATHER_SUN_PERMANENT))
|
if (!(gBattleWeather & B_WEATHER_SUN_PERMANENT))
|
||||||
{
|
{
|
||||||
gBattleWeather = (WEATHER_SUN_PERMANENT | WEATHER_SUN_TEMPORARY);
|
gBattleWeather = (B_WEATHER_SUN_PERMANENT | B_WEATHER_SUN_TEMPORARY);
|
||||||
BattleScriptPushCursorAndCallback(BattleScript_DroughtActivates);
|
BattleScriptPushCursorAndCallback(BattleScript_DroughtActivates);
|
||||||
gBattleScripting.battler = battler;
|
gBattleScripting.battler = battler;
|
||||||
++effect;
|
++effect;
|
||||||
@@ -1739,7 +1739,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
|||||||
switch (gLastUsedAbility)
|
switch (gLastUsedAbility)
|
||||||
{
|
{
|
||||||
case ABILITY_RAIN_DISH:
|
case ABILITY_RAIN_DISH:
|
||||||
if (WEATHER_HAS_EFFECT && (gBattleWeather & WEATHER_RAIN_ANY)
|
if (WEATHER_HAS_EFFECT && (gBattleWeather & B_WEATHER_RAIN)
|
||||||
&& gBattleMons[battler].maxHP > gBattleMons[battler].hp)
|
&& gBattleMons[battler].maxHP > gBattleMons[battler].hp)
|
||||||
{
|
{
|
||||||
gLastUsedAbility = ABILITY_RAIN_DISH; // why
|
gLastUsedAbility = ABILITY_RAIN_DISH; // why
|
||||||
@@ -1874,7 +1874,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ABILITYEFFECT_MOVE_END: // Think contact abilities.
|
case ABILITYEFFECT_ON_DAMAGE: // Think contact abilities.
|
||||||
switch (gLastUsedAbility)
|
switch (gLastUsedAbility)
|
||||||
{
|
{
|
||||||
case ABILITY_COLOR_CHANGE:
|
case ABILITY_COLOR_CHANGE:
|
||||||
@@ -2234,12 +2234,12 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
|||||||
case ABILITYEFFECT_FIELD_SPORT: // 14
|
case ABILITYEFFECT_FIELD_SPORT: // 14
|
||||||
switch (gLastUsedAbility)
|
switch (gLastUsedAbility)
|
||||||
{
|
{
|
||||||
case 0xFD:
|
case ABILITYEFFECT_MUD_SPORT:
|
||||||
for (i = 0; i < gBattlersCount; ++i)
|
for (i = 0; i < gBattlersCount; ++i)
|
||||||
if (gStatuses3[i] & STATUS3_MUDSPORT)
|
if (gStatuses3[i] & STATUS3_MUDSPORT)
|
||||||
effect = i + 1;
|
effect = i + 1;
|
||||||
break;
|
break;
|
||||||
case 0xFE:
|
case ABILITYEFFECT_WATER_SPORT:
|
||||||
for (i = 0; i < gBattlersCount; ++i)
|
for (i = 0; i < gBattlersCount; ++i)
|
||||||
if (gStatuses3[i] & STATUS3_WATERSPORT)
|
if (gStatuses3[i] & STATUS3_WATERSPORT)
|
||||||
effect = i + 1;
|
effect = i + 1;
|
||||||
@@ -2971,12 +2971,12 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
|
|||||||
if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)
|
if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)
|
||||||
&& TARGET_TURN_DAMAGED
|
&& TARGET_TURN_DAMAGED
|
||||||
&& (Random() % 100) < battlerHoldEffectParam
|
&& (Random() % 100) < battlerHoldEffectParam
|
||||||
&& gBattleMoves[gCurrentMove].flags & FLAG_KINGSROCK_AFFECTED
|
&& gBattleMoves[gCurrentMove].flags & FLAG_KINGS_ROCK_AFFECTED
|
||||||
&& gBattleMons[gBattlerTarget].hp)
|
&& gBattleMons[gBattlerTarget].hp)
|
||||||
{
|
{
|
||||||
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_FLINCH;
|
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_FLINCH;
|
||||||
BattleScriptPushCursor();
|
BattleScriptPushCursor();
|
||||||
SetMoveEffect(0, 0);
|
SetMoveEffect(FALSE, 0);
|
||||||
BattleScriptPop();
|
BattleScriptPop();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -3016,7 +3016,7 @@ void ClearFuryCutterDestinyBondGrudge(u8 battlerId)
|
|||||||
|
|
||||||
void HandleAction_RunBattleScript(void) // identical to RunBattleScriptCommands
|
void HandleAction_RunBattleScript(void) // identical to RunBattleScriptCommands
|
||||||
{
|
{
|
||||||
if (!gBattleControllerExecFlags)
|
if (gBattleControllerExecFlags == 0)
|
||||||
gBattleScriptingCommandsTable[*gBattlescriptCurrInstr]();
|
gBattleScriptingCommandsTable[*gBattlescriptCurrInstr]();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3158,7 +3158,7 @@ u8 IsMonDisobedient(void)
|
|||||||
gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos];
|
gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos];
|
||||||
gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove;
|
gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove;
|
||||||
gBattlerTarget = GetMoveTarget(gCalledMove, 0);
|
gBattlerTarget = GetMoveTarget(gCalledMove, 0);
|
||||||
gHitMarker |= HITMARKER_x200000;
|
gHitMarker |= HITMARKER_DISOBEDIENT_MOVE;
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+6
-6
@@ -1274,7 +1274,7 @@ static u32 Cmd_PrintMessage(struct BerryCrushGame * game, u8 *args)
|
|||||||
{
|
{
|
||||||
AddTextPrinterParameterized2(0, 2, sMessages[bMsgId], game->textSpeed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
AddTextPrinterParameterized2(0, 2, sMessages[bMsgId], game->textSpeed, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||||
}
|
}
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (!IsTextPrinterActive(0))
|
if (!IsTextPrinterActive(0))
|
||||||
@@ -2223,7 +2223,7 @@ static u32 Cmd_SaveGame(struct BerryCrushGame * game, u8 *args)
|
|||||||
return 0;
|
return 0;
|
||||||
DrawDialogueFrame(0, FALSE);
|
DrawDialogueFrame(0, FALSE);
|
||||||
AddTextPrinterParameterized2(0, 2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
AddTextPrinterParameterized2(0, 2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
CreateTask(Task_LinkSave, 0);
|
CreateTask(Task_LinkSave, 0);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
@@ -2370,7 +2370,7 @@ static u32 Cmd_StopGame(struct BerryCrushGame * game, UNUSED u8 *args)
|
|||||||
AddTextPrinterParameterized2(0, 2, sMessages[MSG_NO_BERRIES], game->textSpeed, NULL, 2, 1, 3);
|
AddTextPrinterParameterized2(0, 2, sMessages[MSG_NO_BERRIES], game->textSpeed, NULL, 2, 1, 3);
|
||||||
else
|
else
|
||||||
AddTextPrinterParameterized2(0, 2, sMessages[MSG_DROPPED], game->textSpeed, NULL, 2, 1, 3);
|
AddTextPrinterParameterized2(0, 2, sMessages[MSG_DROPPED], game->textSpeed, NULL, 2, 1, 3);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (IsTextPrinterActive(0))
|
if (IsTextPrinterActive(0))
|
||||||
@@ -3073,7 +3073,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame * game, struct BerryCrushG
|
|||||||
printCrushingResults(game);
|
printCrushingResults(game);
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
CopyWindowToVram(spriteManager->resultsWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(spriteManager->resultsWindowId, COPYWIN_FULL);
|
||||||
spriteManager->resultsState = 0;
|
spriteManager->resultsState = 0;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
@@ -3166,7 +3166,7 @@ static void Task_ShowBerryCrushRankings(u8 taskId)
|
|||||||
yPos += 14;
|
yPos += 14;
|
||||||
score = 0;
|
score = 0;
|
||||||
}
|
}
|
||||||
CopyWindowToVram(tWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(tWindowId, COPYWIN_FULL);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
||||||
@@ -3263,7 +3263,7 @@ static void DrawPlayerNameWindows(struct BerryCrushGame * game)
|
|||||||
game->players[i].name
|
game->players[i].name
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
CopyWindowToVram(game->gfx.nameWindowIds[i], COPYWIN_BOTH);
|
CopyWindowToVram(game->gfx.nameWindowIds[i], COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
CopyBgTilemapBufferToVram(0);
|
CopyBgTilemapBufferToVram(0);
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-4
@@ -552,11 +552,11 @@ static bool8 RunBerryPouchInit(void)
|
|||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 17:
|
case 17:
|
||||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 18:
|
case 18:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 16, 0, RGB_BLACK);
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -570,7 +570,7 @@ static bool8 RunBerryPouchInit(void)
|
|||||||
|
|
||||||
static void AbortBerryPouchLoading(void)
|
static void AbortBerryPouchLoading(void)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||||
CreateTask(Task_AbortBerryPouchLoading_WaitFade, 0);
|
CreateTask(Task_AbortBerryPouchLoading_WaitFade, 0);
|
||||||
SetVBlankCallback(VBlankCB_BerryPouchIdle);
|
SetVBlankCallback(VBlankCB_BerryPouchIdle);
|
||||||
SetMainCallback2(CB2_BerryPouchIdle);
|
SetMainCallback2(CB2_BerryPouchIdle);
|
||||||
@@ -859,7 +859,7 @@ static void BerryPouch_DestroyResources(void)
|
|||||||
|
|
||||||
void BerryPouch_StartFadeToExitCallback(u8 taskId)
|
void BerryPouch_StartFadeToExitCallback(u8 taskId)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_BerryPouchFadeToExitCallback;
|
gTasks[taskId].func = Task_BerryPouchFadeToExitCallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -79,14 +79,14 @@ static void PrintNewCountOnLinkPlayerCountDisplayWindow(u16 windowId, s32 num)
|
|||||||
ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_LEFT_ALIGN, 1);
|
ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_LEFT_ALIGN, 1);
|
||||||
SetStdWindowBorderStyle(windowId, FALSE);
|
SetStdWindowBorderStyle(windowId, FALSE);
|
||||||
StringExpandPlaceholders(gStringVar4, gUnknown_841DF82);
|
StringExpandPlaceholders(gStringVar4, gUnknown_841DF82);
|
||||||
AddTextPrinterParameterized(windowId, 2, gStringVar4, 0, 0, TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(windowId, 2, gStringVar4, 0, 0, TEXT_SKIP_DRAW, NULL);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void DestroyLinkPlayerCountDisplayWindow(u16 windowId)
|
static void DestroyLinkPlayerCountDisplayWindow(u16 windowId)
|
||||||
{
|
{
|
||||||
ClearStdWindowAndFrame(windowId, FALSE);
|
ClearStdWindowAndFrame(windowId, FALSE);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void UpdateLinkPlayerCountDisplay(u8 taskId, u8 num)
|
static void UpdateLinkPlayerCountDisplay(u8 taskId, u8 num)
|
||||||
@@ -723,7 +723,7 @@ static void sub_8081624(void)
|
|||||||
|
|
||||||
void CB2_ReturnFromCableClubBattle(void)
|
void CB2_ReturnFromCableClubBattle(void)
|
||||||
{
|
{
|
||||||
gBattleTypeFlags &= (u16)~BATTLE_TYPE_LINK_ESTABLISHED;
|
gBattleTypeFlags &= (u16)~BATTLE_TYPE_LINK_IN_BATTLE;
|
||||||
Overworld_ResetMapMusic();
|
Overworld_ResetMapMusic();
|
||||||
LoadPlayerParty();
|
LoadPlayerParty();
|
||||||
SavePlayerBag();
|
SavePlayerBag();
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ static void Task_DrawClearSaveDataScreen(u8 taskId)
|
|||||||
switch (sClearSaveDataState->unk1)
|
switch (sClearSaveDataState->unk1)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (gPaletteFade.active)
|
if (gPaletteFade.active)
|
||||||
@@ -139,7 +139,7 @@ static void Task_HandleYesNoMenu(u8 taskId)
|
|||||||
PlaySE(SE_SELECT);
|
PlaySE(SE_SELECT);
|
||||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||||
AddTextPrinterParameterized4(1, 2, 0, 3, 1, 1, sTextColor, 0, gUnknown_841B6B9);
|
AddTextPrinterParameterized4(1, 2, 0, 3, 1, 1, sTextColor, 0, gUnknown_841B6B9);
|
||||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
CopyWindowToVram(1, COPYWIN_FULL);
|
||||||
ClearSaveData();
|
ClearSaveData();
|
||||||
break;
|
break;
|
||||||
case MENU_NOTHING_CHOSEN:
|
case MENU_NOTHING_CHOSEN:
|
||||||
|
|||||||
+8
-8
@@ -761,7 +761,7 @@ static void CreateCreditsWindow(void)
|
|||||||
sCreditsMgr->windowId = AddWindow(&sCreditsWindowTemplate);
|
sCreditsMgr->windowId = AddWindow(&sCreditsWindowTemplate);
|
||||||
FillWindowPixelBuffer(sCreditsMgr->windowId, PIXEL_FILL(0));
|
FillWindowPixelBuffer(sCreditsMgr->windowId, PIXEL_FILL(0));
|
||||||
PutWindowTilemap(sCreditsMgr->windowId);
|
PutWindowTilemap(sCreditsMgr->windowId);
|
||||||
CopyWindowToVram(sCreditsMgr->windowId, COPYWIN_BOTH);
|
CopyWindowToVram(sCreditsMgr->windowId, COPYWIN_FULL);
|
||||||
sCreditsMgr->windowIsActive = TRUE;
|
sCreditsMgr->windowIsActive = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -899,7 +899,7 @@ static s32 RollCredits(void)
|
|||||||
case CREDITSSCRCMD_THEENDGFX:
|
case CREDITSSCRCMD_THEENDGFX:
|
||||||
sCreditsMgr->mainseqno = CREDITSSCENE_THEEND_DESTROY_ASSETS;
|
sCreditsMgr->mainseqno = CREDITSSCENE_THEEND_DESTROY_ASSETS;
|
||||||
sCreditsMgr->whichMon = sCreditsScript[sCreditsMgr->scrcmdidx].param;
|
sCreditsMgr->whichMon = sCreditsScript[sCreditsMgr->scrcmdidx].param;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 4, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 4, 0, 16, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case CREDITSSCRCMD_WAITBUTTON:
|
case CREDITSSCRCMD_WAITBUTTON:
|
||||||
sCreditsMgr->mainseqno = CREDITSSCENE_WAITBUTTON;
|
sCreditsMgr->mainseqno = CREDITSSCENE_WAITBUTTON;
|
||||||
@@ -1004,7 +1004,7 @@ static s32 RollCredits(void)
|
|||||||
case CREDITSSCENE_WAITBUTTON:
|
case CREDITSSCENE_WAITBUTTON:
|
||||||
if (JOY_NEW(A_BUTTON))
|
if (JOY_NEW(A_BUTTON))
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_WHITE);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITE);
|
||||||
sCreditsMgr->mainseqno = CREDITSSCENE_TERMINATE;
|
sCreditsMgr->mainseqno = CREDITSSCENE_TERMINATE;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1015,7 +1015,7 @@ static s32 RollCredits(void)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
sCreditsMgr->mainseqno = CREDITSSCENE_TERMINATE;
|
sCreditsMgr->mainseqno = CREDITSSCENE_TERMINATE;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_WHITE);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_WHITE);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
case CREDITSSCENE_TERMINATE:
|
case CREDITSSCENE_TERMINATE:
|
||||||
@@ -1136,7 +1136,7 @@ static bool32 DoCreditsMonScene(void)
|
|||||||
case 2:
|
case 2:
|
||||||
ShowBg(2);
|
ShowBg(2);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
sCreditsMgr->creditsMonTimer = 40;
|
sCreditsMgr->creditsMonTimer = 40;
|
||||||
sCreditsMgr->subseqno++;
|
sCreditsMgr->subseqno++;
|
||||||
break;
|
break;
|
||||||
@@ -1200,7 +1200,7 @@ static bool32 DoCreditsMonScene(void)
|
|||||||
sCreditsMgr->creditsMonTimer--;
|
sCreditsMgr->creditsMonTimer--;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
sCreditsMgr->subseqno++;
|
sCreditsMgr->subseqno++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1251,9 +1251,9 @@ static bool32 DoCopyrightOrTheEndGfxScene(void)
|
|||||||
case 2:
|
case 2:
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
if (sCreditsMgr->whichMon != 0)
|
if (sCreditsMgr->whichMon != 0)
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0, RGB_BLACK);
|
||||||
else
|
else
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
sCreditsMgr->subseqno++;
|
sCreditsMgr->subseqno++;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
|
|||||||
+4
-4
@@ -412,7 +412,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId)
|
|||||||
GetBattleAnimBg1Data(&animBg);
|
GetBattleAnimBg1Data(&animBg);
|
||||||
task->data[10] = gBattle_BG1_Y;
|
task->data[10] = gBattle_BG1_Y;
|
||||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1);
|
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1);
|
||||||
FillPalette(0, animBg.paletteId * 16, 32);
|
FillPalette(RGB_BLACK, animBg.paletteId * 16, 32);
|
||||||
scanlineParams.dmaDest = ®_BG1VOFS;
|
scanlineParams.dmaDest = ®_BG1VOFS;
|
||||||
var0 = WINOUT_WIN01_BG1;
|
var0 = WINOUT_WIN01_BG1;
|
||||||
if (!IsContest())
|
if (!IsContest())
|
||||||
@@ -422,7 +422,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId)
|
|||||||
{
|
{
|
||||||
task->data[10] = gBattle_BG2_Y;
|
task->data[10] = gBattle_BG2_Y;
|
||||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2);
|
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2);
|
||||||
FillPalette(0, 144, 32);
|
FillPalette(RGB_BLACK, 144, 32);
|
||||||
scanlineParams.dmaDest = ®_BG2VOFS;
|
scanlineParams.dmaDest = ®_BG2VOFS;
|
||||||
var0 = WINOUT_WIN01_BG2;
|
var0 = WINOUT_WIN01_BG2;
|
||||||
if (!IsContest())
|
if (!IsContest())
|
||||||
@@ -542,12 +542,12 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId)
|
|||||||
{
|
{
|
||||||
GetBattleAnimBg1Data(&animBg);
|
GetBattleAnimBg1Data(&animBg);
|
||||||
task->data[10] = gBattle_BG1_Y;
|
task->data[10] = gBattle_BG1_Y;
|
||||||
FillPalette(0, animBg.paletteId * 16, 32);
|
FillPalette(RGB_BLACK, animBg.paletteId * 16, 32);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
task->data[10] = gBattle_BG2_Y;
|
task->data[10] = gBattle_BG2_Y;
|
||||||
FillPalette(0, 9 * 16, 32);
|
FillPalette(RGB_BLACK, 9 * 16, 32);
|
||||||
}
|
}
|
||||||
sub_80B856C(3);
|
sub_80B856C(3);
|
||||||
++task->data[0];
|
++task->data[0];
|
||||||
|
|||||||
+172
-172
File diff suppressed because it is too large
Load Diff
+124
-124
@@ -15,7 +15,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -35,7 +35,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -57,7 +57,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -239,7 +239,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -264,7 +264,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM31_BRICK_BREAK)
|
| TMHM(TM31_BRICK_BREAK)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -758,7 +758,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -794,7 +794,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -867,7 +867,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -901,7 +901,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -974,7 +974,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -992,7 +992,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -1011,7 +1011,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -1029,7 +1029,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -1052,7 +1052,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -1073,7 +1073,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -1093,7 +1093,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -1607,7 +1607,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -1626,7 +1626,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -1646,7 +1646,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -1778,7 +1778,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM11_SUNNY_DAY)
|
| TMHM(TM11_SUNNY_DAY)
|
||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -1797,7 +1797,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM15_HYPER_BEAM)
|
| TMHM(TM15_HYPER_BEAM)
|
||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -2348,7 +2348,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -2372,7 +2372,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -2495,7 +2495,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -2647,7 +2647,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -2680,7 +2680,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -2706,7 +2706,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -2872,7 +2872,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -3021,7 +3021,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -3198,7 +3198,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -3356,7 +3356,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
@@ -3560,7 +3560,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -3608,7 +3608,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -3655,7 +3655,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -3676,7 +3676,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -3700,7 +3700,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -3874,7 +3874,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -3903,7 +3903,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -3976,7 +3976,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM31_BRICK_BREAK)
|
| TMHM(TM31_BRICK_BREAK)
|
||||||
@@ -4000,7 +4000,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM31_BRICK_BREAK)
|
| TMHM(TM31_BRICK_BREAK)
|
||||||
@@ -4020,7 +4020,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
@@ -4040,7 +4040,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
@@ -4151,7 +4151,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -4177,7 +4177,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
@@ -4202,7 +4202,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -4229,7 +4229,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -4258,7 +4258,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -4284,7 +4284,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -4373,7 +4373,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -4493,7 +4493,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM40_AERIAL_ACE)
|
| TMHM(TM40_AERIAL_ACE)
|
||||||
@@ -4510,7 +4510,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM40_AERIAL_ACE)
|
| TMHM(TM40_AERIAL_ACE)
|
||||||
@@ -4528,7 +4528,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM40_AERIAL_ACE)
|
| TMHM(TM40_AERIAL_ACE)
|
||||||
@@ -4547,7 +4547,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -4577,7 +4577,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -4598,7 +4598,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -4615,7 +4615,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -4855,7 +4855,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -4877,7 +4877,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -4901,7 +4901,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -4982,7 +4982,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
@@ -5017,7 +5017,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -5455,7 +5455,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM12_TAUNT)
|
| TMHM(TM12_TAUNT)
|
||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -5481,7 +5481,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM15_HYPER_BEAM)
|
| TMHM(TM15_HYPER_BEAM)
|
||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -5568,7 +5568,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -5593,7 +5593,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -5731,7 +5731,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -5766,7 +5766,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -5826,7 +5826,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -6003,7 +6003,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
@@ -6039,7 +6039,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6114,7 +6114,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -6140,7 +6140,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -6169,7 +6169,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -6450,7 +6450,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6473,7 +6473,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6499,7 +6499,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM42_FACADE)
|
| TMHM(TM42_FACADE)
|
||||||
@@ -6522,7 +6522,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM31_BRICK_BREAK)
|
| TMHM(TM31_BRICK_BREAK)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -6552,7 +6552,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM31_BRICK_BREAK)
|
| TMHM(TM31_BRICK_BREAK)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -6575,7 +6575,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6595,7 +6595,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6621,7 +6621,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6646,7 +6646,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6666,7 +6666,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6688,7 +6688,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -6745,7 +6745,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -6767,7 +6767,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM31_BRICK_BREAK)
|
| TMHM(TM31_BRICK_BREAK)
|
||||||
@@ -6866,7 +6866,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -6888,7 +6888,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -6960,7 +6960,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -6987,7 +6987,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -7014,7 +7014,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -7048,7 +7048,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -7073,7 +7073,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -7383,7 +7383,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -7404,7 +7404,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM28_DIG)
|
| TMHM(TM28_DIG)
|
||||||
@@ -7428,7 +7428,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -7660,7 +7660,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM37_SANDSTORM)
|
| TMHM(TM37_SANDSTORM)
|
||||||
@@ -7680,7 +7680,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM37_SANDSTORM)
|
| TMHM(TM37_SANDSTORM)
|
||||||
@@ -7769,7 +7769,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM29_PSYCHIC)
|
| TMHM(TM29_PSYCHIC)
|
||||||
@@ -7906,7 +7906,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM31_BRICK_BREAK)
|
| TMHM(TM31_BRICK_BREAK)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -7982,7 +7982,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM40_AERIAL_ACE)
|
| TMHM(TM40_AERIAL_ACE)
|
||||||
@@ -8005,7 +8005,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -8085,7 +8085,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -8108,7 +8108,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -8140,7 +8140,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
@@ -8174,7 +8174,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
@@ -8204,7 +8204,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -8229,7 +8229,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -8253,7 +8253,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -8279,7 +8279,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -8302,7 +8302,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -8332,7 +8332,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM30_SHADOW_BALL)
|
| TMHM(TM30_SHADOW_BALL)
|
||||||
@@ -8538,7 +8538,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -8649,7 +8649,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -8683,7 +8683,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -8710,7 +8710,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -8736,7 +8736,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
@@ -8759,7 +8759,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
| TMHM(TM36_SLUDGE_BOMB)
|
| TMHM(TM36_SLUDGE_BOMB)
|
||||||
@@ -8777,7 +8777,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM19_GIGA_DRAIN)
|
| TMHM(TM19_GIGA_DRAIN)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
| TMHM(TM32_DOUBLE_TEAM)
|
| TMHM(TM32_DOUBLE_TEAM)
|
||||||
@@ -9160,7 +9160,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -9196,7 +9196,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM17_PROTECT)
|
| TMHM(TM17_PROTECT)
|
||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM23_IRON_TAIL)
|
| TMHM(TM23_IRON_TAIL)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
@@ -9234,7 +9234,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
@@ -9272,7 +9272,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM26_EARTHQUAKE)
|
| TMHM(TM26_EARTHQUAKE)
|
||||||
@@ -9337,7 +9337,7 @@ static const u32 sTMHMLearnsets[][2] =
|
|||||||
| TMHM(TM18_RAIN_DANCE)
|
| TMHM(TM18_RAIN_DANCE)
|
||||||
| TMHM(TM20_SAFEGUARD)
|
| TMHM(TM20_SAFEGUARD)
|
||||||
| TMHM(TM21_FRUSTRATION)
|
| TMHM(TM21_FRUSTRATION)
|
||||||
| TMHM(TM22_SOLARBEAM)
|
| TMHM(TM22_SOLAR_BEAM)
|
||||||
| TMHM(TM24_THUNDERBOLT)
|
| TMHM(TM24_THUNDERBOLT)
|
||||||
| TMHM(TM25_THUNDER)
|
| TMHM(TM25_THUNDER)
|
||||||
| TMHM(TM27_RETURN)
|
| TMHM(TM27_RETURN)
|
||||||
|
|||||||
+10
-10
@@ -356,7 +356,7 @@ static u8 *DayCare_GetMonNickname(struct Pokemon *mon, u8 *dest)
|
|||||||
u8 nickname[POKEMON_NAME_LENGTH * 2];
|
u8 nickname[POKEMON_NAME_LENGTH * 2];
|
||||||
|
|
||||||
GetMonData(mon, MON_DATA_NICKNAME, nickname);
|
GetMonData(mon, MON_DATA_NICKNAME, nickname);
|
||||||
return StringCopy10(dest, nickname);
|
return StringCopy_Nickname(dest, nickname);
|
||||||
}
|
}
|
||||||
|
|
||||||
static u8 *DayCare_GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest)
|
static u8 *DayCare_GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest)
|
||||||
@@ -364,7 +364,7 @@ static u8 *DayCare_GetBoxMonNickname(struct BoxPokemon *mon, u8 *dest)
|
|||||||
u8 nickname[POKEMON_NAME_LENGTH * 2];
|
u8 nickname[POKEMON_NAME_LENGTH * 2];
|
||||||
|
|
||||||
GetBoxMonData(mon, MON_DATA_NICKNAME, nickname);
|
GetBoxMonData(mon, MON_DATA_NICKNAME, nickname);
|
||||||
return StringCopy10(dest, nickname);
|
return StringCopy_Nickname(dest, nickname);
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 CountPokemonInDaycare(struct DayCare *daycare)
|
u8 CountPokemonInDaycare(struct DayCare *daycare)
|
||||||
@@ -1542,7 +1542,7 @@ void ShowDaycareLevelMenu(void)
|
|||||||
menuTemplate.windowId = windowId;
|
menuTemplate.windowId = windowId;
|
||||||
listMenuTaskId = ListMenuInit(&menuTemplate, 0, 0);
|
listMenuTaskId = ListMenuInit(&menuTemplate, 0, 0);
|
||||||
|
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
|
|
||||||
daycareMenuTaskId = CreateTask(Task_HandleDaycareLevelMenuInput, 3);
|
daycareMenuTaskId = CreateTask(Task_HandleDaycareLevelMenuInput, 3);
|
||||||
gTasks[daycareMenuTaskId].tMenuListTaskId = listMenuTaskId;
|
gTasks[daycareMenuTaskId].tMenuListTaskId = listMenuTaskId;
|
||||||
@@ -1758,7 +1758,7 @@ void EggHatch(void)
|
|||||||
{
|
{
|
||||||
ScriptContext2_Enable();
|
ScriptContext2_Enable();
|
||||||
CreateTask(Task_EggHatch, 10);
|
CreateTask(Task_EggHatch, 10);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, 0);
|
||||||
HelpSystem_Disable();
|
HelpSystem_Disable();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1895,7 +1895,7 @@ static void CB2_EggHatch_1(void)
|
|||||||
switch (sEggHatchData->CB2_state)
|
switch (sEggHatchData->CB2_state)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK);
|
||||||
sEggHatchData->eggSpriteID = CreateSprite(&sSpriteTemplate_EggHatch, 120, 75, 5);
|
sEggHatchData->eggSpriteID = CreateSprite(&sSpriteTemplate_EggHatch, 120, 75, 5);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
ShowBg(1);
|
ShowBg(1);
|
||||||
@@ -1920,7 +1920,7 @@ static void CB2_EggHatch_1(void)
|
|||||||
case 3:
|
case 3:
|
||||||
if (gSprites[sEggHatchData->eggSpriteID].callback == SpriteCallbackDummy)
|
if (gSprites[sEggHatchData->eggSpriteID].callback == SpriteCallbackDummy)
|
||||||
{
|
{
|
||||||
PlayCry1(sEggHatchData->species, 0);
|
PlayCry_Normal(sEggHatchData->species, 0);
|
||||||
sEggHatchData->CB2_state++;
|
sEggHatchData->CB2_state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1937,7 +1937,7 @@ static void CB2_EggHatch_1(void)
|
|||||||
PlayFanfare(MUS_EVOLVED);
|
PlayFanfare(MUS_EVOLVED);
|
||||||
sEggHatchData->CB2_state++;
|
sEggHatchData->CB2_state++;
|
||||||
PutWindowTilemap(sEggHatchData->windowId);
|
PutWindowTilemap(sEggHatchData->windowId);
|
||||||
CopyWindowToVram(sEggHatchData->windowId, COPYWIN_BOTH);
|
CopyWindowToVram(sEggHatchData->windowId, COPYWIN_FULL);
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
if (IsFanfareTaskInactive())
|
if (IsFanfareTaskInactive())
|
||||||
@@ -1977,7 +1977,7 @@ static void CB2_EggHatch_1(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
sEggHatchData->CB2_state++;
|
sEggHatchData->CB2_state++;
|
||||||
break;
|
break;
|
||||||
case 12:
|
case 12:
|
||||||
@@ -2087,7 +2087,7 @@ static void SpriteCB_Egg_4(struct Sprite* sprite)
|
|||||||
{
|
{
|
||||||
s16 i;
|
s16 i;
|
||||||
if (sprite->data[0] == 0)
|
if (sprite->data[0] == 0)
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 0x10, 0xFFFF);
|
BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, 0xFFFF);
|
||||||
if (sprite->data[0] < 4u)
|
if (sprite->data[0] < 4u)
|
||||||
{
|
{
|
||||||
for (i = 0; i <= 3; i++)
|
for (i = 0; i <= 3; i++)
|
||||||
@@ -2111,7 +2111,7 @@ static void SpriteCB_Egg_5(struct Sprite* sprite)
|
|||||||
StartSpriteAffineAnim(&gSprites[sEggHatchData->pokeSpriteID], 1);
|
StartSpriteAffineAnim(&gSprites[sEggHatchData->pokeSpriteID], 1);
|
||||||
}
|
}
|
||||||
if (sprite->data[0] == 8)
|
if (sprite->data[0] == 8)
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0x10, 0, 0xFFFF);
|
BeginNormalPaletteFade(PALETTES_ALL, -1, 0x10, 0, 0xFFFF);
|
||||||
if (sprite->data[0] <= 9)
|
if (sprite->data[0] <= 9)
|
||||||
gSprites[sEggHatchData->pokeSpriteID].y -= 1;
|
gSprites[sEggHatchData->pokeSpriteID].y -= 1;
|
||||||
if (sprite->data[0] > 40)
|
if (sprite->data[0] > 40)
|
||||||
|
|||||||
+2
-2
@@ -138,7 +138,7 @@ static void Task_DiplomaInit(u8 taskId)
|
|||||||
CopyBgTilemapBufferToVram(1);
|
CopyBgTilemapBufferToVram(1);
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
SetVBlankCallback(VCBC_DiplomaOam);
|
SetVBlankCallback(VCBC_DiplomaOam);
|
||||||
@@ -167,7 +167,7 @@ static void Task_WaitForExit(u8 taskId)
|
|||||||
case 1:
|
case 1:
|
||||||
if (JOY_NEW(A_BUTTON))
|
if (JOY_NEW(A_BUTTON))
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gDiploma->state++;
|
gDiploma->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
+10
-10
@@ -332,8 +332,8 @@ static void sub_8150A84(u8 taskId)
|
|||||||
gUnknown_203F3E0->unk0C++;
|
gUnknown_203F3E0->unk0C++;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
SetVBlankCallback(sub_8152034);
|
SetVBlankCallback(sub_8152034);
|
||||||
gUnknown_203F3E0->unk0C++;
|
gUnknown_203F3E0->unk0C++;
|
||||||
break;
|
break;
|
||||||
@@ -834,7 +834,7 @@ static void sub_81514F0(void)
|
|||||||
switch (gUnknown_203F3E0->unk10)
|
switch (gUnknown_203F3E0->unk10)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gUnknown_203F3E0->unk10++;
|
gUnknown_203F3E0->unk10++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -871,7 +871,7 @@ static void sub_815159C(void)
|
|||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
sub_81549D4(9);
|
sub_81549D4(9);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gUnknown_203F3E0->unk10++;
|
gUnknown_203F3E0->unk10++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -902,8 +902,8 @@ static void sub_815159C(void)
|
|||||||
gUnknown_203F3E0->unk10++;
|
gUnknown_203F3E0->unk10++;
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
gUnknown_203F3E0->unk10++;
|
gUnknown_203F3E0->unk10++;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
@@ -2341,7 +2341,7 @@ static void Task_ShowDodrioBerryPickingRecords(u8 taskId)
|
|||||||
case 0:
|
case 0:
|
||||||
data[1] = AddWindow(&sUnknown_84755E0);
|
data[1] = AddWindow(&sUnknown_84755E0);
|
||||||
sub_81538D0(data[1]);
|
sub_81538D0(data[1]);
|
||||||
CopyWindowToVram(data[1], COPYWIN_BOTH);
|
CopyWindowToVram(data[1], COPYWIN_FULL);
|
||||||
data[0]++;
|
data[0]++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -2379,14 +2379,14 @@ static void sub_81538D0(u8 windowId)
|
|||||||
TextWindow_SetStdFrame0_WithPal(windowId, 0x21D, 0xD0);
|
TextWindow_SetStdFrame0_WithPal(windowId, 0x21D, 0xD0);
|
||||||
DrawTextBorderOuter(windowId, 0x21D, 0xD);
|
DrawTextBorderOuter(windowId, 0x21D, 0xD);
|
||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
AddTextPrinterParameterized(windowId, 2, sUnknown_84755E8[0], 1, 1, TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(windowId, 2, sUnknown_84755E8[0], 1, 1, TEXT_SKIP_DRAW, NULL);
|
||||||
for (i = 0; i < 3; i++)
|
for (i = 0; i < 3; i++)
|
||||||
{
|
{
|
||||||
ConvertIntToDecimalStringN(strbuf, results[i], STR_CONV_MODE_LEFT_ALIGN, sUnknown_84755F8[i]);
|
ConvertIntToDecimalStringN(strbuf, results[i], STR_CONV_MODE_LEFT_ALIGN, sUnknown_84755F8[i]);
|
||||||
numWidth = GetStringWidth(2, strbuf, -1);
|
numWidth = GetStringWidth(2, strbuf, -1);
|
||||||
AddTextPrinterParameterized(windowId, 2, sUnknown_84755E8[i + 1], 1, sUnknown_84755FC[i][0], TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(windowId, 2, sUnknown_84755E8[i + 1], 1, sUnknown_84755FC[i][0], TEXT_SKIP_DRAW, NULL);
|
||||||
x = 224 - numWidth;
|
x = 224 - numWidth;
|
||||||
AddTextPrinterParameterized(windowId, 2, strbuf, x, sUnknown_8475602[i][0], TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(windowId, 2, strbuf, x, sUnknown_8475602[i][0], TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1370,7 +1370,7 @@ static void sub_81556E0(void)
|
|||||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_Yes, 8, 2, -1, NULL);
|
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_Yes, 8, 2, -1, NULL);
|
||||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_No, 8, 16, -1, NULL);
|
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_No, 8, 16, -1, NULL);
|
||||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_SelectorArrow2, 0, y == 1 ? 2 : 16, -1, NULL);
|
AddTextPrinterParameterized(gUnknown_203F440->unk3008[1], 2, gText_SelectorArrow2, 0, y == 1 ? 2 : 16, -1, NULL);
|
||||||
CopyWindowToVram(gUnknown_203F440->unk3008[1], COPYWIN_BOTH);
|
CopyWindowToVram(gUnknown_203F440->unk3008[1], COPYWIN_FULL);
|
||||||
// Increment state only if A or B button have been pressed.
|
// Increment state only if A or B button have been pressed.
|
||||||
if (JOY_NEW(A_BUTTON))
|
if (JOY_NEW(A_BUTTON))
|
||||||
{
|
{
|
||||||
@@ -1425,7 +1425,7 @@ static void sub_8155A78(void)
|
|||||||
gUnknown_203F440->state++;
|
gUnknown_203F440->state++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
gUnknown_203F440->state++;
|
gUnknown_203F440->state++;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
@@ -1499,7 +1499,7 @@ static void sub_8155C80(void)
|
|||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
FillWindowPixelBuffer(gUnknown_203F440->unk3008[0], PIXEL_FILL(1));
|
||||||
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 2, gText_SomeoneDroppedOut, 0, 6, TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(gUnknown_203F440->unk3008[0], 2, gText_SomeoneDroppedOut, 0, 6, TEXT_SKIP_DRAW, NULL);
|
||||||
CopyWindowToVram(gUnknown_203F440->unk3008[0], COPYWIN_GFX);
|
CopyWindowToVram(gUnknown_203F440->unk3008[0], COPYWIN_GFX);
|
||||||
gUnknown_203F440->state++;
|
gUnknown_203F440->state++;
|
||||||
break;
|
break;
|
||||||
|
|||||||
+3
-3
@@ -162,15 +162,15 @@ static void Task_RunEasyChat(u8 taskId)
|
|||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
SetVBlankCallback(VBlankCallback_EasyChatScreen);
|
SetVBlankCallback(VBlankCallback_EasyChatScreen);
|
||||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK);
|
||||||
data[EZCHAT_TASK_STATE]++;
|
data[EZCHAT_TASK_STATE]++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
action = EasyChatScreen_HandleJoypad();
|
action = EasyChatScreen_HandleJoypad();
|
||||||
if (action == 23)
|
if (action == 23)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 16, RGB_BLACK);
|
||||||
data[EZCHAT_TASK_STATE] = 3;
|
data[EZCHAT_TASK_STATE] = 3;
|
||||||
}
|
}
|
||||||
else if (action != 0)
|
else if (action != 0)
|
||||||
|
|||||||
+11
-11
@@ -1321,9 +1321,9 @@ static void PrintTitleText(void)
|
|||||||
|
|
||||||
xOffset = (128 - GetStringWidth(1, titleText, 0)) / 2u;
|
xOffset = (128 - GetStringWidth(1, titleText, 0)) / 2u;
|
||||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||||
EC_AddTextPrinterParameterized2(0, 1, titleText, xOffset, 0, TEXT_SPEED_FF, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY);
|
EC_AddTextPrinterParameterized2(0, 1, titleText, xOffset, 0, TEXT_SKIP_DRAW, TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY);
|
||||||
PutWindowTilemap(0);
|
PutWindowTilemap(0);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void EC_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16))
|
static void EC_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16))
|
||||||
@@ -1374,12 +1374,12 @@ static void PrintECInterfaceTextById(u8 direction)
|
|||||||
|
|
||||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||||
if (text1)
|
if (text1)
|
||||||
EC_AddTextPrinterParameterized(1, 1, text1, 0, 0, TEXT_SPEED_FF, NULL);
|
EC_AddTextPrinterParameterized(1, 1, text1, 0, 0, TEXT_SKIP_DRAW, NULL);
|
||||||
|
|
||||||
if (text2)
|
if (text2)
|
||||||
EC_AddTextPrinterParameterized(1, 1, text2, 0, 16, TEXT_SPEED_FF, NULL);
|
EC_AddTextPrinterParameterized(1, 1, text2, 0, 16, TEXT_SKIP_DRAW, NULL);
|
||||||
|
|
||||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
CopyWindowToVram(1, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void EC_CreateYesNoMenuWithInitialCursorPos(u8 initialCursorPos)
|
static void EC_CreateYesNoMenuWithInitialCursorPos(u8 initialCursorPos)
|
||||||
@@ -1435,7 +1435,7 @@ static void PrintECFields(void)
|
|||||||
ecWord++;
|
ecWord++;
|
||||||
for (k = 0; k < 7; k++)
|
for (k = 0; k < 7; k++)
|
||||||
{
|
{
|
||||||
*str++ = CHAR_EXTRA_EMOJI;
|
*str++ = CHAR_EXTRA_SYMBOL;
|
||||||
*str++ = 9;
|
*str++ = 9;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1451,10 +1451,10 @@ static void PrintECFields(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
*str = EOS;
|
*str = EOS;
|
||||||
EC_AddTextPrinterParameterized(sEasyChatGraphicsResources->windowId, 1, sEasyChatGraphicsResources->ecPrintBuffer, 0, i * 16, TEXT_SPEED_FF, NULL);
|
EC_AddTextPrinterParameterized(sEasyChatGraphicsResources->windowId, 1, sEasyChatGraphicsResources->ecPrintBuffer, 0, i * 16, TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
CopyWindowToVram(sEasyChatGraphicsResources->windowId, COPYWIN_BOTH);
|
CopyWindowToVram(sEasyChatGraphicsResources->windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void DrawECFrameInTilemapBuffer(u16 *tilemap)
|
static void DrawECFrameInTilemapBuffer(u16 *tilemap)
|
||||||
@@ -1566,7 +1566,7 @@ static void PrintECGroupsMenu(void)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
EC_AddTextPrinterParameterized(2, 1, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SPEED_FF, NULL);
|
EC_AddTextPrinterParameterized(2, 1, GetEasyChatWordGroupName(groupId), x * 84 + 10, y, TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
y += 16;
|
y += 16;
|
||||||
@@ -1578,7 +1578,7 @@ static void PrintEasyChatKeyboardText(void)
|
|||||||
u32 i;
|
u32 i;
|
||||||
|
|
||||||
for (i = 0; i < NELEMS(sEasyChatKeyboardText); i++)
|
for (i = 0; i < NELEMS(sEasyChatKeyboardText); i++)
|
||||||
EC_AddTextPrinterParameterized(2, 1, sEasyChatKeyboardText[i], 10, 96 + i * 16, TEXT_SPEED_FF, NULL);
|
EC_AddTextPrinterParameterized(2, 1, sEasyChatKeyboardText[i], 10, 96 + i * 16, TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void PrintECWordsMenu(void)
|
static void PrintECWordsMenu(void)
|
||||||
@@ -1652,7 +1652,7 @@ static void PrintECRowsWin2(u8 row, u8 remrow)
|
|||||||
|
|
||||||
CopyEasyChatWordPadded(sEasyChatGraphicsResources->ecPaddedWordBuffer, easyChatWord, 0);
|
CopyEasyChatWordPadded(sEasyChatGraphicsResources->ecPaddedWordBuffer, easyChatWord, 0);
|
||||||
|
|
||||||
EC_AddTextPrinterParameterized(2, 1, sEasyChatGraphicsResources->ecPaddedWordBuffer, (j * 13 + 3) * 8, y_, TEXT_SPEED_FF, NULL);
|
EC_AddTextPrinterParameterized(2, 1, sEasyChatGraphicsResources->ecPaddedWordBuffer, (j * 13 + 3) * 8, y_, TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
y += 16;
|
y += 16;
|
||||||
|
|||||||
@@ -259,7 +259,7 @@ void LoadEvoSparkleSpriteAndPal(void)
|
|||||||
LoadSpritePalettes(sSpritePalette_EvolutionSparkles);
|
LoadSpritePalettes(sSpritePalette_EvolutionSparkles);
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 LaunchTask_PreEvoSparklesSet1(u16 a0)
|
u8 EvolutionSparkles_SpiralUpward(u16 a0)
|
||||||
{
|
{
|
||||||
u8 taskId = CreateTask(EvoTask_PreEvoSparkleSet1Init, 0);
|
u8 taskId = CreateTask(EvoTask_PreEvoSparkleSet1Init, 0);
|
||||||
gTasks[taskId].data[1] = a0;
|
gTasks[taskId].data[1] = a0;
|
||||||
@@ -302,7 +302,7 @@ static void EvoTask_WaitForPre1SparklesToGoUp(u8 taskId)
|
|||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 LaunchTask_PreEvoSparklesSet2(void)
|
u8 EvolutionSparkles_ArcDown(void)
|
||||||
{
|
{
|
||||||
u8 taskId = CreateTask(EvoTask_PreEvoSparkleSet2Init, 0);
|
u8 taskId = CreateTask(EvoTask_PreEvoSparkleSet2Init, 0);
|
||||||
return taskId;
|
return taskId;
|
||||||
@@ -339,7 +339,7 @@ static void EvoTask_PreEvoSparkleSet2Teardown(u8 taskId)
|
|||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 LaunchTask_PostEvoSparklesSet1(void)
|
u8 EvolutionSparkles_CircleInward(void)
|
||||||
{
|
{
|
||||||
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet1Init, 0);
|
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet1Init, 0);
|
||||||
return taskId;
|
return taskId;
|
||||||
@@ -385,7 +385,7 @@ static void EvoTask_PostEvoSparklesSet1Teardown(u8 taskId)
|
|||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 LaunchTask_PostEvoSparklesSet2AndFlash(u16 species)
|
u8 EvolutionSparkles_SprayAndFlash(u16 species)
|
||||||
{
|
{
|
||||||
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet2Init, 0);
|
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet2Init, 0);
|
||||||
gTasks[taskId].data[2] = species;
|
gTasks[taskId].data[2] = species;
|
||||||
@@ -436,7 +436,7 @@ static void EvoTask_PostEvoSparklesSet2Teardown(u8 taskId)
|
|||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 LaunchTask_PostEvoSparklesSet2AndFlash_Trade(u16 species)
|
u8 EvolutionSparkles_SprayAndFlash_Trade(u16 species)
|
||||||
{
|
{
|
||||||
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet2TradeInit, 0);
|
u8 taskId = CreateTask(EvoTask_PostEvoSparklesSet2TradeInit, 0);
|
||||||
gTasks[taskId].data[2] = species;
|
gTasks[taskId].data[2] = species;
|
||||||
@@ -493,7 +493,7 @@ static void SpriteCallbackDummy_MonSprites(struct Sprite * sprite)
|
|||||||
#define tDirection data[5]
|
#define tDirection data[5]
|
||||||
#define tSpeed data[6]
|
#define tSpeed data[6]
|
||||||
|
|
||||||
u8 LaunchTask_PrePostEvoMonSprites(u8 preEvoSpriteId, u8 postEvoSpriteId)
|
u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId)
|
||||||
{
|
{
|
||||||
u16 i;
|
u16 i;
|
||||||
u8 taskId;
|
u8 taskId;
|
||||||
|
|||||||
+462
-310
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -695,7 +695,7 @@ static void MainCB2_LoadFameChecker(void)
|
|||||||
LoadUISpriteSheetsAndPalettes();
|
LoadUISpriteSheetsAndPalettes();
|
||||||
CreateAllFlavorTextIcons(FAMECHECKER_OAK);
|
CreateAllFlavorTextIcons(FAMECHECKER_OAK);
|
||||||
WipeMsgBoxAndTransfer();
|
WipeMsgBoxAndTransfer();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF,0, 16, 0, 0);
|
BeginNormalPaletteFade(PALETTES_ALL,0, 16, 0, 0);
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
@@ -994,7 +994,7 @@ static void Setup_DrawMsgAndListBoxes(void)
|
|||||||
static void FC_PutWindowTilemapAndCopyWindowToVramMode3(u8 windowId)
|
static void FC_PutWindowTilemapAndCopyWindowToVramMode3(u8 windowId)
|
||||||
{
|
{
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool8 SetMessageSelectorIconObjMode(u8 spriteId, u8 objMode)
|
static bool8 SetMessageSelectorIconObjMode(u8 spriteId, u8 objMode)
|
||||||
@@ -1010,7 +1010,7 @@ static bool8 SetMessageSelectorIconObjMode(u8 spriteId, u8 objMode)
|
|||||||
static void Task_StartToCloseFameChecker(u8 taskId)
|
static void Task_StartToCloseFameChecker(u8 taskId)
|
||||||
{
|
{
|
||||||
PlaySE(SE_M_SWIFT);
|
PlaySE(SE_M_SWIFT);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, 0);
|
||||||
gTasks[taskId].func = Task_DestroyAssetsAndCloseFameChecker;
|
gTasks[taskId].func = Task_DestroyAssetsAndCloseFameChecker;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1578,7 +1578,7 @@ static u8 FC_PopulateListMenu(void)
|
|||||||
static void FC_PutWindowTilemapAndCopyWindowToVramMode3_2(u8 windowId)
|
static void FC_PutWindowTilemapAndCopyWindowToVramMode3_2(u8 windowId)
|
||||||
{
|
{
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void FC_CreateScrollIndicatorArrowPair(void)
|
static void FC_CreateScrollIndicatorArrowPair(void)
|
||||||
|
|||||||
+1
-1
@@ -2939,7 +2939,7 @@ static void SpriteCB_FieldMoveMonSlideOnscreen(struct Sprite * sprite)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PlayCry1(sprite->data[0], 0);
|
PlayCry_Normal(sprite->data[0], 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -396,7 +396,7 @@ static void Task_RushInjuredPokemonToCenter(u8 taskId)
|
|||||||
Menu_LoadStdPalAt(0xF0);
|
Menu_LoadStdPalAt(0xF0);
|
||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
loc = GetHealLocation(1);
|
loc = GetHealLocation(1);
|
||||||
if (gSaveBlock1Ptr->lastHealLocation.mapGroup == loc->group
|
if (gSaveBlock1Ptr->lastHealLocation.mapGroup == loc->group
|
||||||
&& gSaveBlock1Ptr->lastHealLocation.mapNum == loc->map
|
&& gSaveBlock1Ptr->lastHealLocation.mapNum == loc->map
|
||||||
|
|||||||
@@ -1103,7 +1103,7 @@ void DrawElevatorCurrentFloorWindow(void)
|
|||||||
strwidth = GetStringWidth(2, floorname, 0);
|
strwidth = GetStringWidth(2, floorname, 0);
|
||||||
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, 2, floorname, 56 - strwidth, 16, 0xFF, NULL);
|
AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, 2, floorname, 56 - strwidth, 16, 0xFF, NULL);
|
||||||
PutWindowTilemap(sElevatorCurrentFloorWindowId);
|
PutWindowTilemap(sElevatorCurrentFloorWindowId);
|
||||||
CopyWindowToVram(sElevatorCurrentFloorWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(sElevatorCurrentFloorWindowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1364,7 +1364,7 @@ static void Task_CreateScriptListMenu(u8 taskId)
|
|||||||
Task_CreateMenuRemoveScrollIndicatorArrowPair(taskId);
|
Task_CreateMenuRemoveScrollIndicatorArrowPair(taskId);
|
||||||
task->data[14] = ListMenuInit(&sFieldSpecialsListMenuTemplate, task->data[7], task->data[8]);
|
task->data[14] = ListMenuInit(&sFieldSpecialsListMenuTemplate, task->data[7], task->data[8]);
|
||||||
PutWindowTilemap(task->data[13]);
|
PutWindowTilemap(task->data[13]);
|
||||||
CopyWindowToVram(task->data[13], COPYWIN_BOTH);
|
CopyWindowToVram(task->data[13], COPYWIN_FULL);
|
||||||
gTasks[taskId].func = Task_ListMenuHandleInput;
|
gTasks[taskId].func = Task_ListMenuHandleInput;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -763,7 +763,7 @@ void FadeScreen(u8 mode, s8 delay)
|
|||||||
if (useWeatherPal)
|
if (useWeatherPal)
|
||||||
CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
|
CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE);
|
||||||
|
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, delay, 0, 16, fadeColor);
|
BeginNormalPaletteFade(PALETTES_ALL, delay, 0, 16, fadeColor);
|
||||||
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT;
|
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -772,7 +772,7 @@ void FadeScreen(u8 mode, s8 delay)
|
|||||||
if (useWeatherPal)
|
if (useWeatherPal)
|
||||||
gWeatherPtr->fadeScreenCounter = 0;
|
gWeatherPtr->fadeScreenCounter = 0;
|
||||||
else
|
else
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, delay, 16, 0, fadeColor);
|
BeginNormalPaletteFade(PALETTES_ALL, delay, 16, 0, fadeColor);
|
||||||
|
|
||||||
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_IN;
|
gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_IN;
|
||||||
gWeatherPtr->fadeInActive = 1;
|
gWeatherPtr->fadeInActive = 1;
|
||||||
|
|||||||
+4
-4
@@ -429,21 +429,21 @@ static void Task_MapPreviewScreen_0(u8 taskId)
|
|||||||
SetVBlankCallback(NULL);
|
SetVBlankCallback(NULL);
|
||||||
MapPreview_InitBgs();
|
MapPreview_InitBgs();
|
||||||
MapPreview_LoadGfx(data[3]);
|
MapPreview_LoadGfx(data[3]);
|
||||||
BlendPalettes(0xFFFFFFFF, 0x10, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK);
|
||||||
data[0]++;
|
data[0]++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (!MapPreview_IsGfxLoadFinished())
|
if (!MapPreview_IsGfxLoadFinished())
|
||||||
{
|
{
|
||||||
data[4] = MapPreview_CreateMapNameWindow(data[3]);
|
data[4] = MapPreview_CreateMapNameWindow(data[3]);
|
||||||
CopyWindowToVram(data[4], COPYWIN_BOTH);
|
CopyWindowToVram(data[4], COPYWIN_FULL);
|
||||||
data[0]++;
|
data[0]++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (!IsDma3ManagerBusyWithBgCopy())
|
if (!IsDma3ManagerBusyWithBgCopy())
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -1, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -1, 16, 0, RGB_BLACK);
|
||||||
SetVBlankCallback((IntrCallback)GetWordTaskArg(taskId, 5));
|
SetVBlankCallback((IntrCallback)GetWordTaskArg(taskId, 5));
|
||||||
data[0]++;
|
data[0]++;
|
||||||
}
|
}
|
||||||
@@ -459,7 +459,7 @@ static void Task_MapPreviewScreen_0(u8 taskId)
|
|||||||
data[1]++;
|
data[1]++;
|
||||||
if (data[1] > data[2] || JOY_HELD(B_BUTTON))
|
if (data[1] > data[2] || JOY_HELD(B_BUTTON))
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_WHITE);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_WHITE);
|
||||||
data[0]++;
|
data[0]++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
+1
-1
@@ -1418,7 +1418,7 @@ static void sub_80B6FC4(u8 taskId)
|
|||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
InitBattleAnimBg(2);
|
InitBattleAnimBg(2);
|
||||||
FillPalette(0, 0x90, 0x20);
|
FillPalette(RGB_BLACK, 0x90, 0x20);
|
||||||
SetAnimBgAttribute(2, BG_ANIM_CHAR_BASE_BLOCK, 0);
|
SetAnimBgAttribute(2, BG_ANIM_CHAR_BASE_BLOCK, 0);
|
||||||
task->data[1] = 12;
|
task->data[1] = 12;
|
||||||
break;
|
break;
|
||||||
|
|||||||
+1
-1
@@ -1033,7 +1033,7 @@ const u32 gBattleAnimBgTilemap_Ghost[] = INCBIN_U32("graphics/battle_anims/backg
|
|||||||
|
|
||||||
const u32 gBattleAnimSpritePal_WhipHit[] = INCBIN_U32("graphics/battle_anims/sprites/whip_hit.gbapal.lz");
|
const u32 gBattleAnimSpritePal_WhipHit[] = INCBIN_U32("graphics/battle_anims/sprites/whip_hit.gbapal.lz");
|
||||||
|
|
||||||
const u32 gBattleAnimBgPalette_Solarbeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.gbapal.lz");
|
const u32 gBattleAnimBgPalette_SolarBeam[] = INCBIN_U32("graphics/battle_anims/backgrounds/solarbeam.gbapal.lz");
|
||||||
|
|
||||||
const u32 gFile_graphics_unknown_unknown_E7CFB0_tilemap[] = INCBIN_U32("graphics/unknown/unknown_E7CFB0.bin.lz");
|
const u32 gFile_graphics_unknown_unknown_E7CFB0_tilemap[] = INCBIN_U32("graphics/unknown/unknown_E7CFB0.bin.lz");
|
||||||
|
|
||||||
|
|||||||
+12
-12
@@ -339,7 +339,7 @@ static bool8 InitHallOfFameScreen(void)
|
|||||||
if (!DrawHofBackground())
|
if (!DrawHofBackground())
|
||||||
{
|
{
|
||||||
SetVBlankCallback(VBlankCB_HofIdle);
|
SetVBlankCallback(VBlankCB_HofIdle);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -453,7 +453,7 @@ static void Task_Hof_InitTeamSaveData(u8 taskId)
|
|||||||
|
|
||||||
DrawDialogueFrame(0, 0);
|
DrawDialogueFrame(0, 0);
|
||||||
AddTextPrinterParameterized2(0, 2, gText_SavingDontTurnOffThePower2, 0, NULL, 2, 1, 3);
|
AddTextPrinterParameterized2(0, 2, gText_SavingDontTurnOffThePower2, 0, NULL, 2, 1, 3);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
gTasks[taskId].func = Task_Hof_TrySaveData;
|
gTasks[taskId].func = Task_Hof_TrySaveData;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -523,7 +523,7 @@ static void Task_Hof_PlayMonCryAndPrintInfo(u8 taskId)
|
|||||||
if (gSprites[gTasks[taskId].data[5 + currMonId]].data[0])
|
if (gSprites[gTasks[taskId].data[5 + currMonId]].data[0])
|
||||||
{
|
{
|
||||||
if (currMon->species != SPECIES_EGG)
|
if (currMon->species != SPECIES_EGG)
|
||||||
PlayCry1(currMon->species, 0);
|
PlayCry_Normal(currMon->species, 0);
|
||||||
HallOfFame_PrintMonInfo(currMon, 0, 14);
|
HallOfFame_PrintMonInfo(currMon, 0, 14);
|
||||||
gTasks[taskId].data[3] = 120;
|
gTasks[taskId].data[3] = 120;
|
||||||
gTasks[taskId].func = Task_Hof_TryDisplayAnotherMon;
|
gTasks[taskId].func = Task_Hof_TryDisplayAnotherMon;
|
||||||
@@ -560,7 +560,7 @@ static void Task_Hof_PaletteFadeAndPrintWelcomeText(u8 taskId)
|
|||||||
{
|
{
|
||||||
u16 i;
|
u16 i;
|
||||||
|
|
||||||
BeginNormalPaletteFade(0xFFFF0000, 0, 0, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_OBJECTS, 0, 0, 0, RGB_BLACK);
|
||||||
for (i = 0; i < PARTY_SIZE; i++)
|
for (i = 0; i < PARTY_SIZE; i++)
|
||||||
{
|
{
|
||||||
if (gTasks[taskId].data[5 + i] != 0xFF)
|
if (gTasks[taskId].data[5 + i] != 0xFF)
|
||||||
@@ -591,7 +591,7 @@ static void Task_Hof_ApplauseAndConfetti(u8 taskId)
|
|||||||
}
|
}
|
||||||
BeginNormalPaletteFade(sSelectedPaletteIndices, 0, 12, 12, HALL_OF_FAME_BG_PAL);
|
BeginNormalPaletteFade(sSelectedPaletteIndices, 0, 12, 12, HALL_OF_FAME_BG_PAL);
|
||||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
gTasks[taskId].data[3] = 7;
|
gTasks[taskId].data[3] = 7;
|
||||||
gTasks[taskId].func = Task_Hof_WaitBorderFadeAway;
|
gTasks[taskId].func = Task_Hof_WaitBorderFadeAway;
|
||||||
}
|
}
|
||||||
@@ -639,7 +639,7 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId)
|
|||||||
HallOfFame_PrintPlayerInfo(1, 2);
|
HallOfFame_PrintPlayerInfo(1, 2);
|
||||||
DrawDialogueFrame(0, 0);
|
DrawDialogueFrame(0, 0);
|
||||||
AddTextPrinterParameterized2(0, 2, gText_LeagueChamp, 0, NULL, 2, 1, 3);
|
AddTextPrinterParameterized2(0, 2, gText_LeagueChamp, 0, NULL, 2, 1, 3);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
gTasks[taskId].func = Task_Hof_ExitOnKeyPressed;
|
gTasks[taskId].func = Task_Hof_ExitOnKeyPressed;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -656,7 +656,7 @@ static void Task_Hof_ExitOnKeyPressed(u8 taskId)
|
|||||||
static void Task_Hof_HandlePaletteOnExit(u8 taskId)
|
static void Task_Hof_HandlePaletteOnExit(u8 taskId)
|
||||||
{
|
{
|
||||||
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * sizeof(u16));
|
CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * sizeof(u16));
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 8, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_Hof_HandleExit;
|
gTasks[taskId].func = Task_Hof_HandleExit;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -874,7 +874,7 @@ static void Task_HofPC_PrintMonInfo(u8 taskId)
|
|||||||
if (currMon->species != SPECIES_EGG)
|
if (currMon->species != SPECIES_EGG)
|
||||||
{
|
{
|
||||||
StopCryAndClearCrySongs();
|
StopCryAndClearCrySongs();
|
||||||
PlayCry1(currMon->species, 0);
|
PlayCry_Normal(currMon->species, 0);
|
||||||
}
|
}
|
||||||
HallOfFame_PrintMonInfo(currMon, 0, 14);
|
HallOfFame_PrintMonInfo(currMon, 0, 14);
|
||||||
|
|
||||||
@@ -969,7 +969,7 @@ static void Task_HofPC_PrintDataIsCorrupted(u8 taskId)
|
|||||||
TopBarWindowPrintString(gText_ABUTTONExit, 8, TRUE);
|
TopBarWindowPrintString(gText_ABUTTONExit, 8, TRUE);
|
||||||
DrawDialogueFrame(0, 0);
|
DrawDialogueFrame(0, 0);
|
||||||
AddTextPrinterParameterized2(0, 2, gText_HOFCorrupted, 0, NULL, 2, 1, 3);
|
AddTextPrinterParameterized2(0, 2, gText_HOFCorrupted, 0, NULL, 2, 1, 3);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
gTasks[taskId].func = Task_HofPC_ExitOnButtonPress;
|
gTasks[taskId].func = Task_HofPC_ExitOnButtonPress;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -985,7 +985,7 @@ static void HallOfFame_PrintWelcomeText(u8 not, u8 used)
|
|||||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||||
PutWindowTilemap(0);
|
PutWindowTilemap(0);
|
||||||
AddTextPrinterParameterized3(0, 2, x, 1, sTextColors[0], 0, gText_WelcomeToHOF);
|
AddTextPrinterParameterized3(0, 2, x, 1, sTextColors[0], 0, gText_WelcomeToHOF);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u8 unused2)
|
static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u8 unused2)
|
||||||
@@ -1072,7 +1072,7 @@ static void HallOfFame_PrintMonInfo(struct HallofFameMon* currMon, u8 unused1, u
|
|||||||
AddTextPrinterParameterized3(0, 2, 0x60, 0x11, sTextColors[0], 0, text);
|
AddTextPrinterParameterized3(0, 2, 0x60, 0x11, sTextColors[0], 0, text);
|
||||||
|
|
||||||
}
|
}
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
|
static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
|
||||||
@@ -1115,7 +1115,7 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2)
|
|||||||
|
|
||||||
AddTextPrinterParameterized3(1, 2, textWidth - 36, 32, sTextColors[1], 0, text);
|
AddTextPrinterParameterized3(1, 2, textWidth - 36, 32, sTextColors[1], 0, text);
|
||||||
|
|
||||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
CopyWindowToVram(1, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ClearVramOamPltt_LoadHofPal(void)
|
static void ClearVramOamPltt_LoadHofPal(void)
|
||||||
|
|||||||
@@ -522,7 +522,7 @@ void HelpSystemRenderText(u8 font, u8 * dest, const u8 * src, u8 x, u8 y, u8 wid
|
|||||||
BlitBitmapRect4Bit(&srcBlit, &destBlit, 0, 0, x, y, GetKeypadIconWidth(curChar), GetKeypadIconHeight(curChar), 0);
|
BlitBitmapRect4Bit(&srcBlit, &destBlit, 0, 0, x, y, GetKeypadIconWidth(curChar), GetKeypadIconHeight(curChar), 0);
|
||||||
x += GetKeypadIconWidth(curChar);
|
x += GetKeypadIconWidth(curChar);
|
||||||
break;
|
break;
|
||||||
case CHAR_EXTRA_EMOJI:
|
case CHAR_EXTRA_SYMBOL:
|
||||||
curChar = *src + 0x100;
|
curChar = *src + 0x100;
|
||||||
src++;
|
src++;
|
||||||
//fallthrough
|
//fallthrough
|
||||||
|
|||||||
+2
-2
@@ -22,7 +22,7 @@ static void Task_WaitFadeAndSetCallback(u8 taskId)
|
|||||||
|
|
||||||
void HallOfFamePCBeginFade(void)
|
void HallOfFamePCBeginFade(void)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
ScriptContext2_Enable();
|
ScriptContext2_Enable();
|
||||||
CreateTask(Task_WaitFadeAndSetCallback, 0);
|
CreateTask(Task_WaitFadeAndSetCallback, 0);
|
||||||
}
|
}
|
||||||
@@ -39,7 +39,7 @@ static void ReshowPCMenuAfterHallOfFamePC(void)
|
|||||||
Overworld_PlaySpecialMapMusic();
|
Overworld_PlaySpecialMapMusic();
|
||||||
CreatePCMenu();
|
CreatePCMenu();
|
||||||
ScriptMenu_DisplayPCStartupPrompt();
|
ScriptMenu_DisplayPCStartupPrompt();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK);
|
||||||
CreateTask(Task_WaitForPaletteFade, 10);
|
CreateTask(Task_WaitForPaletteFade, 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+5
-5
@@ -811,7 +811,7 @@ static bool8 RunCopyrightScreen(void)
|
|||||||
ResetTasks();
|
ResetTasks();
|
||||||
ResetSpriteData();
|
ResetSpriteData();
|
||||||
FreeAllSpritePalettes();
|
FreeAllSpritePalettes();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0xFFFF);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, 0xFFFF);
|
||||||
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_16COLOR | BGCNT_SCREENBASE(7));
|
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_16COLOR | BGCNT_SCREENBASE(7));
|
||||||
EnableInterrupts(INTR_FLAG_VBLANK);
|
EnableInterrupts(INTR_FLAG_VBLANK);
|
||||||
SetVBlankCallback(VBlankCB_Copyright);
|
SetVBlankCallback(VBlankCB_Copyright);
|
||||||
@@ -828,7 +828,7 @@ static bool8 RunCopyrightScreen(void)
|
|||||||
GameCubeMultiBoot_Main(&sGcmb);
|
GameCubeMultiBoot_Main(&sGcmb);
|
||||||
if (sGcmb.gcmb_field_2 != 1)
|
if (sGcmb.gcmb_field_2 != 1)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -916,7 +916,7 @@ static void CB2_SetUpIntro(void)
|
|||||||
if (!FreeTempTileDataBuffersIfPossible())
|
if (!FreeTempTileDataBuffersIfPossible())
|
||||||
{
|
{
|
||||||
StartIntroSequence();
|
StartIntroSequence();
|
||||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||||
SetMainCallback2(CB2_Intro);
|
SetMainCallback2(CB2_Intro);
|
||||||
SetVBlankCallback(VBlankCB_Intro);
|
SetVBlankCallback(VBlankCB_Intro);
|
||||||
}
|
}
|
||||||
@@ -991,7 +991,7 @@ static void IntroCB_Init(struct IntroSequenceData * this)
|
|||||||
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
FillWindowPixelBuffer(0, PIXEL_FILL(0));
|
||||||
BlitBitmapToWindow(0, this->gamefreakTextBitmap, 0, 40, 144, 16);
|
BlitBitmapToWindow(0, this->gamefreakTextBitmap, 0, 40, 144, 16);
|
||||||
PutWindowTilemap(0);
|
PutWindowTilemap(0);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
this->state++;
|
this->state++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -1016,7 +1016,7 @@ static void IntroCB_OpenWin1ToTheaterDimensions(struct IntroSequenceData * this)
|
|||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
ShowBg(3);
|
ShowBg(3);
|
||||||
BlendPalettes(0xFFFFFFFF, 0x00, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 0x00, RGB_BLACK);
|
||||||
this->state++;
|
this->state++;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
|
|||||||
+5
-5
@@ -512,7 +512,7 @@ static bool8 LoadBagMenuGraphics(void)
|
|||||||
|
|
||||||
static void FadeOutOfBagMenu(void)
|
static void FadeOutOfBagMenu(void)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||||
CreateTask(Task_WaitFadeOutOfBagMenu, 0);
|
CreateTask(Task_WaitFadeOutOfBagMenu, 0);
|
||||||
SetVBlankCallback(VBlankCB_BagMenuRun);
|
SetVBlankCallback(VBlankCB_BagMenuRun);
|
||||||
SetMainCallback2(CB2_BagMenuRun);
|
SetMainCallback2(CB2_BagMenuRun);
|
||||||
@@ -897,7 +897,7 @@ static void DestroyBagMenuResources(void)
|
|||||||
|
|
||||||
void ItemMenu_StartFadeToExitCallback(u8 taskId)
|
void ItemMenu_StartFadeToExitCallback(u8 taskId)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_ItemMenu_WaitFadeAndSwitchToExitCallback;
|
gTasks[taskId].func = Task_ItemMenu_WaitFadeAndSwitchToExitCallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -925,8 +925,8 @@ static void ShowBagOrBeginWin0OpenTask(void)
|
|||||||
LoadPalette(&paldata, 0x00, 0x02);
|
LoadPalette(&paldata, 0x00, 0x02);
|
||||||
SetGpuReg(REG_OFFSET_WININ, 0);
|
SetGpuReg(REG_OFFSET_WININ, 0);
|
||||||
SetGpuReg(REG_OFFSET_WINOUT, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR);
|
SetGpuReg(REG_OFFSET_WINOUT, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR);
|
||||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
if (gBagMenuState.bagOpen == TRUE)
|
if (gBagMenuState.bagOpen == TRUE)
|
||||||
{
|
{
|
||||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240));
|
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240));
|
||||||
@@ -2144,7 +2144,7 @@ static void Task_Bag_OldManTutorial(u8 taskId)
|
|||||||
|
|
||||||
static void Task_Pokedude_FadeFromBag(u8 taskId)
|
static void Task_Pokedude_FadeFromBag(u8 taskId)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_Pokedude_WaitFadeAndExitBag;
|
gTasks[taskId].func = Task_Pokedude_WaitFadeAndExitBag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+5
-5
@@ -361,14 +361,14 @@ static bool8 ItemPc_DoGfxSetup(void)
|
|||||||
case 18:
|
case 18:
|
||||||
if (sListMenuState.initialized == 1)
|
if (sListMenuState.initialized == 1)
|
||||||
{
|
{
|
||||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||||
}
|
}
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 19:
|
case 19:
|
||||||
if (sListMenuState.initialized == 1)
|
if (sListMenuState.initialized == 1)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -392,7 +392,7 @@ static bool8 ItemPc_DoGfxSetup(void)
|
|||||||
|
|
||||||
static void ItemPc_FadeAndBail(void)
|
static void ItemPc_FadeAndBail(void)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
CreateTask(Task_ItemPcWaitFadeAndBail, 0);
|
CreateTask(Task_ItemPcWaitFadeAndBail, 0);
|
||||||
SetVBlankCallback(ItemPc_VBlankCB);
|
SetVBlankCallback(ItemPc_VBlankCB);
|
||||||
SetMainCallback2(ItemPc_MainCB);
|
SetMainCallback2(ItemPc_MainCB);
|
||||||
@@ -632,7 +632,7 @@ static void Task_ItemPcTurnOff1(u8 taskId)
|
|||||||
{
|
{
|
||||||
if (sListMenuState.initialized == 1)
|
if (sListMenuState.initialized == 1)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1040,7 +1040,7 @@ static void gTask_ItemPcWaitButtonAndExitSubmenu(u8 taskId)
|
|||||||
if (JOY_NEW(A_BUTTON))
|
if (JOY_NEW(A_BUTTON))
|
||||||
{
|
{
|
||||||
PlaySE(SE_SELECT);
|
PlaySE(SE_SELECT);
|
||||||
ClearDialogWindowAndFrameToTransparent(5, 0);
|
ClearDialogWindowAndFrameToTransparent(5, FALSE);
|
||||||
ClearWindowTilemap(5);
|
ClearWindowTilemap(5);
|
||||||
PutWindowTilemap(1);
|
PutWindowTilemap(1);
|
||||||
ItemPc_PrintOrRemoveCursor(data[0], 1);
|
ItemPc_PrintOrRemoveCursor(data[0], 1);
|
||||||
|
|||||||
+9
-9
@@ -368,7 +368,7 @@ void DisplayMoveTutorMenu(void)
|
|||||||
{
|
{
|
||||||
ScriptContext2_Enable();
|
ScriptContext2_Enable();
|
||||||
CreateTask(Task_InitMoveRelearnerMenu, 10);
|
CreateTask(Task_InitMoveRelearnerMenu, 10);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void Task_InitMoveRelearnerMenu(u8 taskId)
|
static void Task_InitMoveRelearnerMenu(u8 taskId)
|
||||||
@@ -480,7 +480,7 @@ static void MoveRelearnerStateMachine(void)
|
|||||||
switch (sMoveRelearner->state)
|
switch (sMoveRelearner->state)
|
||||||
{
|
{
|
||||||
case MENU_STATE_FADE_TO_BLACK:
|
case MENU_STATE_FADE_TO_BLACK:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
ShowBg(1);
|
ShowBg(1);
|
||||||
LoadMoveInfoUI();
|
LoadMoveInfoUI();
|
||||||
@@ -593,7 +593,7 @@ static void MoveRelearnerStateMachine(void)
|
|||||||
break;
|
break;
|
||||||
case MENU_STATE_PRINT_WHICH_MOVE_PROMPT:
|
case MENU_STATE_PRINT_WHICH_MOVE_PROMPT:
|
||||||
sMoveRelearner->state = 20;
|
sMoveRelearner->state = 20;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case MENU_STATE_SHOW_MOVE_SUMMARY_SCREEN:
|
case MENU_STATE_SHOW_MOVE_SUMMARY_SCREEN:
|
||||||
if (!gPaletteFade.active)
|
if (!gPaletteFade.active)
|
||||||
@@ -608,10 +608,10 @@ static void MoveRelearnerStateMachine(void)
|
|||||||
sMoveRelearner->state = 14;
|
sMoveRelearner->state = 14;
|
||||||
break;
|
break;
|
||||||
case 22:
|
case 22:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case MENU_STATE_FADE_AND_RETURN:
|
case MENU_STATE_FADE_AND_RETURN:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
sMoveRelearner->state++;
|
sMoveRelearner->state++;
|
||||||
break;
|
break;
|
||||||
case MENU_STATE_RETURN_TO_FIELD:
|
case MENU_STATE_RETURN_TO_FIELD:
|
||||||
@@ -623,7 +623,7 @@ static void MoveRelearnerStateMachine(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case MENU_STATE_FADE_FROM_SUMMARY_SCREEN:
|
case MENU_STATE_FADE_FROM_SUMMARY_SCREEN:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
ShowBg(1);
|
ShowBg(1);
|
||||||
sMoveRelearner->state++;
|
sMoveRelearner->state++;
|
||||||
@@ -690,7 +690,7 @@ static void PrintTeachWhichMoveToStrVar1(bool8 onInit)
|
|||||||
StringExpandPlaceholders(gStringVar4, gText_TeachWhichMoveToMon);
|
StringExpandPlaceholders(gStringVar4, gText_TeachWhichMoveToMon);
|
||||||
PrintTextOnWindow(7, gStringVar4, 0, 2, 0, 2);
|
PrintTextOnWindow(7, gStringVar4, 0, 2, 0, 2);
|
||||||
PutWindowTilemap(7);
|
PutWindowTilemap(7);
|
||||||
CopyWindowToVram(7, COPYWIN_BOTH);
|
CopyWindowToVram(7, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -757,7 +757,7 @@ static void MoveRelearnerInitListMenuBuffersEtc(void)
|
|||||||
for (i = 0; i < sMoveRelearner->numLearnableMoves; i++)
|
for (i = 0; i < sMoveRelearner->numLearnableMoves; i++)
|
||||||
StringCopy(sMoveRelearner->listMenuStrbufs[i], gMoveNames[sMoveRelearner->learnableMoves[i]]);
|
StringCopy(sMoveRelearner->listMenuStrbufs[i], gMoveNames[sMoveRelearner->learnableMoves[i]]);
|
||||||
GetMonData(&gPlayerParty[sMoveRelearner->selectedPartyMember], MON_DATA_NICKNAME, nickname);
|
GetMonData(&gPlayerParty[sMoveRelearner->selectedPartyMember], MON_DATA_NICKNAME, nickname);
|
||||||
StringCopy10(gStringVar1, nickname);
|
StringCopy_Nickname(gStringVar1, nickname);
|
||||||
StringCopy(sMoveRelearner->listMenuStrbufs[sMoveRelearner->numLearnableMoves], gFameCheckerText_Cancel);
|
StringCopy(sMoveRelearner->listMenuStrbufs[sMoveRelearner->numLearnableMoves], gFameCheckerText_Cancel);
|
||||||
sMoveRelearner->numLearnableMoves++;
|
sMoveRelearner->numLearnableMoves++;
|
||||||
for (i = 0; i < count; i++)
|
for (i = 0; i < count; i++)
|
||||||
@@ -880,7 +880,7 @@ static void PrintMoveInfoHandleCancel_CopyToVram(void)
|
|||||||
CopyWindowToVram(2, COPYWIN_GFX);
|
CopyWindowToVram(2, COPYWIN_GFX);
|
||||||
CopyWindowToVram(2, COPYWIN_GFX);
|
CopyWindowToVram(2, COPYWIN_GFX);
|
||||||
CopyWindowToVram(5, COPYWIN_GFX);
|
CopyWindowToVram(5, COPYWIN_GFX);
|
||||||
CopyWindowToVram(7, COPYWIN_BOTH);
|
CopyWindowToVram(7, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void MoveRelearnerMenu_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list)
|
static void MoveRelearnerMenu_MoveCursorFunc(s32 itemIndex, bool8 onInit, struct ListMenu *list)
|
||||||
|
|||||||
+5
-5
@@ -449,7 +449,7 @@ void LinkTestProcessKeyInput(void)
|
|||||||
}
|
}
|
||||||
if (JOY_NEW(L_BUTTON))
|
if (JOY_NEW(L_BUTTON))
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB(2, 0, 0));
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB(2, 0, 0));
|
||||||
}
|
}
|
||||||
if (JOY_NEW(START_BUTTON))
|
if (JOY_NEW(START_BUTTON))
|
||||||
{
|
{
|
||||||
@@ -1369,7 +1369,7 @@ static void LinkCB_WaitAckCommand5FFF(void)
|
|||||||
}
|
}
|
||||||
if (count == linkPlayerCount)
|
if (count == linkPlayerCount)
|
||||||
{
|
{
|
||||||
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_ESTABLISHED | 0xFFFF0000);
|
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_IN_BATTLE | 0xFFFF0000);
|
||||||
gLinkVSyncDisabled = TRUE;
|
gLinkVSyncDisabled = TRUE;
|
||||||
CloseLink();
|
CloseLink();
|
||||||
gLinkCallback = NULL;
|
gLinkCallback = NULL;
|
||||||
@@ -1461,7 +1461,7 @@ void CB2_LinkError(void)
|
|||||||
ResetSpriteData();
|
ResetSpriteData();
|
||||||
FreeAllSpritePalettes();
|
FreeAllSpritePalettes();
|
||||||
ResetPaletteFadeControl();
|
ResetPaletteFadeControl();
|
||||||
FillPalette(0, 0, 2);
|
FillPalette(RGB_BLACK, 0, 2);
|
||||||
ResetTasks();
|
ResetTasks();
|
||||||
ScanlineEffect_Stop();
|
ScanlineEffect_Stop();
|
||||||
if (gWirelessCommType)
|
if (gWirelessCommType)
|
||||||
@@ -1513,7 +1513,7 @@ void sub_800AE1C(void)
|
|||||||
PutWindowTilemap(0);
|
PutWindowTilemap(0);
|
||||||
PutWindowTilemap(2);
|
PutWindowTilemap(2);
|
||||||
CopyWindowToVram(0, 0);
|
CopyWindowToVram(0, 0);
|
||||||
CopyWindowToVram(2, COPYWIN_BOTH);
|
CopyWindowToVram(2, COPYWIN_FULL);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
ShowBg(1);
|
ShowBg(1);
|
||||||
}
|
}
|
||||||
@@ -1526,7 +1526,7 @@ void sub_800AED0(void)
|
|||||||
PutWindowTilemap(1);
|
PutWindowTilemap(1);
|
||||||
PutWindowTilemap(2);
|
PutWindowTilemap(2);
|
||||||
CopyWindowToVram(1, 0);
|
CopyWindowToVram(1, 0);
|
||||||
CopyWindowToVram(2, COPYWIN_BOTH);
|
CopyWindowToVram(2, COPYWIN_FULL);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1373,7 +1373,7 @@ static void WaitAllReadyToCloseLink(void)
|
|||||||
}
|
}
|
||||||
if (count == playerCount)
|
if (count == playerCount)
|
||||||
{
|
{
|
||||||
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_ESTABLISHED | 0xFFFF0000);
|
gBattleTypeFlags &= ~(BATTLE_TYPE_LINK_IN_BATTLE | 0xFFFF0000);
|
||||||
if (Rfu.parent_child == MODE_CHILD)
|
if (Rfu.parent_child == MODE_CHILD)
|
||||||
{
|
{
|
||||||
Rfu.errorState = 3;
|
Rfu.errorState = 3;
|
||||||
|
|||||||
+1
-1
@@ -199,7 +199,7 @@ static const u8 sWireless_RSEtoASCIITable[] = {
|
|||||||
0x20, 0x20, 0x2b, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
|
0x20, 0x20, 0x2b, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
|
||||||
[CHAR_DYNAMIC_PLACEHOLDER] = ' ',
|
[CHAR_DYNAMIC_PLACEHOLDER] = ' ',
|
||||||
[CHAR_KEYPAD_ICON] = ' ',
|
[CHAR_KEYPAD_ICON] = ' ',
|
||||||
[CHAR_EXTRA_EMOJI] = ' ',
|
[CHAR_EXTRA_SYMBOL] = ' ',
|
||||||
[CHAR_PROMPT_SCROLL] = ' ',
|
[CHAR_PROMPT_SCROLL] = ' ',
|
||||||
[CHAR_PROMPT_CLEAR] = ' ',
|
[CHAR_PROMPT_CLEAR] = ' ',
|
||||||
[EXT_CTRL_CODE_BEGIN] = ' ',
|
[EXT_CTRL_CODE_BEGIN] = ' ',
|
||||||
|
|||||||
+2
-2
@@ -346,7 +346,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y)
|
|||||||
colors[0] = gListMenuOverride.fillValue;
|
colors[0] = gListMenuOverride.fillValue;
|
||||||
colors[1] = gListMenuOverride.cursorPal;
|
colors[1] = gListMenuOverride.cursorPal;
|
||||||
colors[2] = gListMenuOverride.cursorShadowPal;
|
colors[2] = gListMenuOverride.cursorShadowPal;
|
||||||
AddTextPrinterParameterized4(list->template.windowId, gListMenuOverride.fontId, x, y, gListMenuOverride.lettersSpacing, 0, colors, TEXT_SPEED_FF, str);
|
AddTextPrinterParameterized4(list->template.windowId, gListMenuOverride.fontId, x, y, gListMenuOverride.lettersSpacing, 0, colors, TEXT_SKIP_DRAW, str);
|
||||||
gListMenuOverride.enabled = FALSE;
|
gListMenuOverride.enabled = FALSE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -354,7 +354,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y)
|
|||||||
colors[0] = list->template.fillValue;
|
colors[0] = list->template.fillValue;
|
||||||
colors[1] = list->template.cursorPal;
|
colors[1] = list->template.cursorPal;
|
||||||
colors[2] = list->template.cursorShadowPal;
|
colors[2] = list->template.cursorShadowPal;
|
||||||
AddTextPrinterParameterized4(list->template.windowId, list->template.fontId, x, y, list->template.lettersSpacing, 0, colors, TEXT_SPEED_FF, str);
|
AddTextPrinterParameterized4(list->template.windowId, list->template.fontId, x, y, list->template.lettersSpacing, 0, colors, TEXT_SKIP_DRAW, str);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -609,7 +609,7 @@ static bool8 DoInitMailView(void)
|
|||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
ShowBg(1);
|
ShowBg(1);
|
||||||
ShowBg(2);
|
ShowBg(2);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
gPaletteFade.bufferTransferDisabled = FALSE;
|
gPaletteFade.bufferTransferDisabled = FALSE;
|
||||||
sMailViewResources->showMailCallback = ShowMailCB_WaitFadeIn;
|
sMailViewResources->showMailCallback = ShowMailCB_WaitFadeIn;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -676,8 +676,8 @@ static void AddMailMessagePrinters(void)
|
|||||||
width = GetStringWidth(1, gText_From, 0);
|
width = GetStringWidth(1, gText_From, 0);
|
||||||
AddTextPrinterParameterized3(1, 1, sMailViewResources->nameX, sMailViewResources->messageLayout->nameY, sTextColor, 0, gText_From);
|
AddTextPrinterParameterized3(1, 1, sMailViewResources->nameX, sMailViewResources->messageLayout->nameY, sTextColor, 0, gText_From);
|
||||||
AddTextPrinterParameterized3(1, 1, sMailViewResources->nameX + width, sMailViewResources->messageLayout->nameY, sTextColor, 0, sMailViewResources->authorNameBuffer);
|
AddTextPrinterParameterized3(1, 1, sMailViewResources->nameX + width, sMailViewResources->messageLayout->nameY, sTextColor, 0, sMailViewResources->authorNameBuffer);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
CopyWindowToVram(1, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void VBlankCB_ShowMail(void)
|
static void VBlankCB_ShowMail(void)
|
||||||
@@ -707,7 +707,7 @@ static void ShowMailCB_WaitButton(void)
|
|||||||
{
|
{
|
||||||
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
sMailViewResources->showMailCallback = ShowMailCB_Teardown;
|
sMailViewResources->showMailCallback = ShowMailCB_Teardown;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+9
-9
@@ -280,7 +280,7 @@ static void PrintSaveErrorStatus(u8 taskId, const u8 *str)
|
|||||||
{
|
{
|
||||||
PrintMessageOnWindow4(str);
|
PrintMessageOnWindow4(str);
|
||||||
gTasks[taskId].func = Task_SaveErrorStatus_RunPrinterThenWaitButton;
|
gTasks[taskId].func = Task_SaveErrorStatus_RunPrinterThenWaitButton;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0xFFFF);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, 0xFFFF);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
SetVBlankCallback(VBlankCB_MainMenu);
|
SetVBlankCallback(VBlankCB_MainMenu);
|
||||||
}
|
}
|
||||||
@@ -352,7 +352,7 @@ static void Task_PrintMainMenuText(u8 taskId)
|
|||||||
AddTextPrinterParameterized3(MAIN_MENU_WINDOW_NEWGAME_ONLY, 2, 2, 2, sTextColor1, -1, gText_NewGame);
|
AddTextPrinterParameterized3(MAIN_MENU_WINDOW_NEWGAME_ONLY, 2, 2, 2, sTextColor1, -1, gText_NewGame);
|
||||||
MainMenu_DrawWindow(&sWindowTemplate[MAIN_MENU_WINDOW_NEWGAME_ONLY]);
|
MainMenu_DrawWindow(&sWindowTemplate[MAIN_MENU_WINDOW_NEWGAME_ONLY]);
|
||||||
PutWindowTilemap(MAIN_MENU_WINDOW_NEWGAME_ONLY);
|
PutWindowTilemap(MAIN_MENU_WINDOW_NEWGAME_ONLY);
|
||||||
CopyWindowToVram(MAIN_MENU_WINDOW_NEWGAME_ONLY, COPYWIN_BOTH);
|
CopyWindowToVram(MAIN_MENU_WINDOW_NEWGAME_ONLY, COPYWIN_FULL);
|
||||||
break;
|
break;
|
||||||
case MAIN_MENU_CONTINUE:
|
case MAIN_MENU_CONTINUE:
|
||||||
FillWindowPixelBuffer(MAIN_MENU_WINDOW_CONTINUE, PIXEL_FILL(10));
|
FillWindowPixelBuffer(MAIN_MENU_WINDOW_CONTINUE, PIXEL_FILL(10));
|
||||||
@@ -365,7 +365,7 @@ static void Task_PrintMainMenuText(u8 taskId)
|
|||||||
PutWindowTilemap(MAIN_MENU_WINDOW_CONTINUE);
|
PutWindowTilemap(MAIN_MENU_WINDOW_CONTINUE);
|
||||||
PutWindowTilemap(MAIN_MENU_WINDOW_NEWGAME);
|
PutWindowTilemap(MAIN_MENU_WINDOW_NEWGAME);
|
||||||
CopyWindowToVram(MAIN_MENU_WINDOW_CONTINUE, COPYWIN_GFX);
|
CopyWindowToVram(MAIN_MENU_WINDOW_CONTINUE, COPYWIN_GFX);
|
||||||
CopyWindowToVram(MAIN_MENU_WINDOW_NEWGAME, COPYWIN_BOTH);
|
CopyWindowToVram(MAIN_MENU_WINDOW_NEWGAME, COPYWIN_FULL);
|
||||||
break;
|
break;
|
||||||
case MAIN_MENU_MYSTERYGIFT:
|
case MAIN_MENU_MYSTERYGIFT:
|
||||||
FillWindowPixelBuffer(MAIN_MENU_WINDOW_CONTINUE, PIXEL_FILL(10));
|
FillWindowPixelBuffer(MAIN_MENU_WINDOW_CONTINUE, PIXEL_FILL(10));
|
||||||
@@ -384,7 +384,7 @@ static void Task_PrintMainMenuText(u8 taskId)
|
|||||||
PutWindowTilemap(MAIN_MENU_WINDOW_MYSTERYGIFT);
|
PutWindowTilemap(MAIN_MENU_WINDOW_MYSTERYGIFT);
|
||||||
CopyWindowToVram(MAIN_MENU_WINDOW_CONTINUE, COPYWIN_GFX);
|
CopyWindowToVram(MAIN_MENU_WINDOW_CONTINUE, COPYWIN_GFX);
|
||||||
CopyWindowToVram(MAIN_MENU_WINDOW_NEWGAME, COPYWIN_GFX);
|
CopyWindowToVram(MAIN_MENU_WINDOW_NEWGAME, COPYWIN_GFX);
|
||||||
CopyWindowToVram(MAIN_MENU_WINDOW_MYSTERYGIFT, COPYWIN_BOTH);
|
CopyWindowToVram(MAIN_MENU_WINDOW_MYSTERYGIFT, COPYWIN_FULL);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
gTasks[taskId].func = Task_WaitDma3AndFadeIn;
|
gTasks[taskId].func = Task_WaitDma3AndFadeIn;
|
||||||
@@ -395,7 +395,7 @@ static void Task_WaitDma3AndFadeIn(u8 taskId)
|
|||||||
if (WaitDma3Request(-1) != -1)
|
if (WaitDma3Request(-1) != -1)
|
||||||
{
|
{
|
||||||
gTasks[taskId].func = Task_UpdateVisualSelection;
|
gTasks[taskId].func = Task_UpdateVisualSelection;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0xFFFF);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, 0xFFFF);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
SetVBlankCallback(VBlankCB_MainMenu);
|
SetVBlankCallback(VBlankCB_MainMenu);
|
||||||
}
|
}
|
||||||
@@ -453,7 +453,7 @@ static void Task_ExecuteMainMenuSelection(u8 taskId)
|
|||||||
{
|
{
|
||||||
SetStdFrame0OnBg(0);
|
SetStdFrame0OnBg(0);
|
||||||
gTasks[taskId].func = Task_MysteryGiftError;
|
gTasks[taskId].func = Task_MysteryGiftError;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -515,7 +515,7 @@ static void Task_MysteryGiftError(u8 taskId)
|
|||||||
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
||||||
{
|
{
|
||||||
PlaySE(SE_SELECT);
|
PlaySE(SE_SELECT);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_ReturnToTileScreen;
|
gTasks[taskId].func = Task_ReturnToTileScreen;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -571,13 +571,13 @@ static bool8 HandleMenuInput(u8 taskId)
|
|||||||
{
|
{
|
||||||
PlaySE(SE_SELECT);
|
PlaySE(SE_SELECT);
|
||||||
IsWirelessAdapterConnected(); // called for its side effects only
|
IsWirelessAdapterConnected(); // called for its side effects only
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_ExecuteMainMenuSelection;
|
gTasks[taskId].func = Task_ExecuteMainMenuSelection;
|
||||||
}
|
}
|
||||||
else if (JOY_NEW(B_BUTTON))
|
else if (JOY_NEW(B_BUTTON))
|
||||||
{
|
{
|
||||||
PlaySE(SE_SELECT);
|
PlaySE(SE_SELECT);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240));
|
SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240));
|
||||||
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 160));
|
SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 160));
|
||||||
gTasks[taskId].func = Task_ReturnToTileScreen;
|
gTasks[taskId].func = Task_ReturnToTileScreen;
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ static u16 MapNamePopupCreateWindow(bool32 palintoFadedBuffer)
|
|||||||
DrawTextBorderOuter(windowId, r6, 0xD);
|
DrawTextBorderOuter(windowId, r6, 0xD);
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
MapNamePopupPrintMapNameOnWindow(windowId);
|
MapNamePopupPrintMapNameOnWindow(windowId);
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
return windowId;
|
return windowId;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -199,7 +199,7 @@ static void MapNamePopupPrintMapNameOnWindow(u16 windowId)
|
|||||||
}
|
}
|
||||||
xpos = (maxWidth - GetStringWidth(2, mapName, -1)) / 2;
|
xpos = (maxWidth - GetStringWidth(2, mapName, -1)) / 2;
|
||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
AddTextPrinterParameterized(windowId, 2, mapName, xpos, 2, TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(windowId, 2, mapName, xpos, 2, TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static u8 *MapNamePopupAppendFloorNum(u8 *dest, s8 floorNum)
|
static u8 *MapNamePopupAppendFloorNum(u8 *dest, s8 floorNum)
|
||||||
|
|||||||
@@ -484,7 +484,7 @@ static void Task_RunMapPreviewScreenForest(u8 taskId)
|
|||||||
case 0:
|
case 0:
|
||||||
if (!MapPreview_IsGfxLoadFinished() && !IsDma3ManagerBusyWithBgCopy())
|
if (!MapPreview_IsGfxLoadFinished() && !IsDma3ManagerBusyWithBgCopy())
|
||||||
{
|
{
|
||||||
CopyWindowToVram(data[11], COPYWIN_BOTH);
|
CopyWindowToVram(data[11], COPYWIN_FULL);
|
||||||
data[0]++;
|
data[0]++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
+11
-11
@@ -44,7 +44,7 @@ void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
// not used
|
// not used
|
||||||
@@ -56,7 +56,7 @@ static void DrawDialogFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 til
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
static void WindowFunc_DrawDialogFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
||||||
@@ -96,7 +96,7 @@ void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram)
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
||||||
ClearWindowTilemap(windowId);
|
ClearWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
static void WindowFunc_ClearDialogWindowAndFrameNullPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
||||||
@@ -112,7 +112,7 @@ void DrawStdFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 bas
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
// not used
|
// not used
|
||||||
@@ -124,7 +124,7 @@ static void DrawStdFrameWithCustomTile(u8 windowId, bool8 copyToVram, u16 baseTi
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
static void WindowFunc_DrawStdFrameWithCustomTileAndPalette(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
||||||
@@ -145,7 +145,7 @@ void ClearStdWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram)
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(0));
|
||||||
ClearWindowTilemap(windowId);
|
ClearWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void WindowFunc_ClearStdWindowAndFrameToTransparent(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
static void WindowFunc_ClearStdWindowAndFrameToTransparent(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
||||||
@@ -195,7 +195,7 @@ void TopBarWindowPrintString(const u8 *string, u8 unused, bool8 copyToVram)
|
|||||||
width = GetStringWidth(0, string, 0);
|
width = GetStringWidth(0, string, 0);
|
||||||
AddTextPrinterParameterized3(sTopBarWindowId, 0, -20 - width, 1, gUnknown_8456618, 0, string);
|
AddTextPrinterParameterized3(sTopBarWindowId, 0, -20 - width, 1, gUnknown_8456618, 0, string);
|
||||||
if (copyToVram)
|
if (copyToVram)
|
||||||
CopyWindowToVram(sTopBarWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(sTopBarWindowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -228,7 +228,7 @@ void TopBarWindowPrintTwoStrings(const u8 *string, const u8 *string2, bool8 fgCo
|
|||||||
}
|
}
|
||||||
AddTextPrinterParameterized4(sTopBarWindowId, 1, 4, 1, 0, 0, color, 0, string);
|
AddTextPrinterParameterized4(sTopBarWindowId, 1, 4, 1, 0, 0, color, 0, string);
|
||||||
if (copyToVram)
|
if (copyToVram)
|
||||||
CopyWindowToVram(sTopBarWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(sTopBarWindowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -236,7 +236,7 @@ void TopBarWindowPrintTwoStrings(const u8 *string, const u8 *string2, bool8 fgCo
|
|||||||
static void CopyTopBarWindowToVram(void)
|
static void CopyTopBarWindowToVram(void)
|
||||||
{
|
{
|
||||||
if (sTopBarWindowId != 0xFF)
|
if (sTopBarWindowId != 0xFF)
|
||||||
CopyWindowToVram(sTopBarWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(sTopBarWindowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ClearTopBarWindow(void)
|
void ClearTopBarWindow(void)
|
||||||
@@ -244,7 +244,7 @@ void ClearTopBarWindow(void)
|
|||||||
if (sTopBarWindowId != 0xFF)
|
if (sTopBarWindowId != 0xFF)
|
||||||
{
|
{
|
||||||
FillWindowPixelBuffer(sTopBarWindowId, PIXEL_FILL(15));
|
FillWindowPixelBuffer(sTopBarWindowId, PIXEL_FILL(15));
|
||||||
CopyWindowToVram(sTopBarWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(sTopBarWindowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -254,7 +254,7 @@ void DestroyTopBarWindow(void)
|
|||||||
{
|
{
|
||||||
FillWindowPixelBuffer(sTopBarWindowId, PIXEL_FILL(0));
|
FillWindowPixelBuffer(sTopBarWindowId, PIXEL_FILL(0));
|
||||||
ClearWindowTilemap(sTopBarWindowId);
|
ClearWindowTilemap(sTopBarWindowId);
|
||||||
CopyWindowToVram(sTopBarWindowId, COPYWIN_BOTH);
|
CopyWindowToVram(sTopBarWindowId, COPYWIN_FULL);
|
||||||
RemoveWindow(sTopBarWindowId);
|
RemoveWindow(sTopBarWindowId);
|
||||||
sTopBarWindowId = 0xFF;
|
sTopBarWindowId = 0xFF;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ s32 FadeToWonderCardMenu(void)
|
|||||||
switch(sMEventScreenData->state)
|
switch(sMEventScreenData->state)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (UpdatePaletteFade())
|
if (UpdatePaletteFade())
|
||||||
@@ -214,7 +214,7 @@ s32 FadeToWonderCardMenu(void)
|
|||||||
ShowBg(2);
|
ShowBg(2);
|
||||||
gPaletteFade.bufferTransferDisabled = FALSE;
|
gPaletteFade.bufferTransferDisabled = FALSE;
|
||||||
sub_8146060();
|
sub_8146060();
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
UpdatePaletteFade();
|
UpdatePaletteFade();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -234,7 +234,7 @@ s32 FadeOutFromWonderCard(bool32 flag)
|
|||||||
switch (sMEventScreenData->state)
|
switch (sMEventScreenData->state)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (UpdatePaletteFade())
|
if (UpdatePaletteFade())
|
||||||
@@ -264,7 +264,7 @@ s32 FadeOutFromWonderCard(bool32 flag)
|
|||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
CopyBgTilemapBufferToVram(0);
|
CopyBgTilemapBufferToVram(0);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (UpdatePaletteFade())
|
if (UpdatePaletteFade())
|
||||||
@@ -396,7 +396,7 @@ static void sub_8145D18(u8 whichWindow)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_8146060(void)
|
static void sub_8146060(void)
|
||||||
|
|||||||
@@ -105,7 +105,7 @@ s32 FadeToWonderNewsMenu(void)
|
|||||||
switch (sWork->state)
|
switch (sWork->state)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (UpdatePaletteFade())
|
if (UpdatePaletteFade())
|
||||||
@@ -158,7 +158,7 @@ s32 FadeToWonderNewsMenu(void)
|
|||||||
ShowBg(3);
|
ShowBg(3);
|
||||||
gPaletteFade.bufferTransferDisabled = FALSE;
|
gPaletteFade.bufferTransferDisabled = FALSE;
|
||||||
sWork->menuIndicatorsId = AddScrollIndicatorArrowPair(&sWork->scrollArrowsTemplate, &sWork->scrollOffset);
|
sWork->menuIndicatorsId = AddScrollIndicatorArrowPair(&sWork->scrollArrowsTemplate, &sWork->scrollOffset);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
UpdatePaletteFade();
|
UpdatePaletteFade();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -179,7 +179,7 @@ s32 FadeOutFromWonderNews(bool32 flag)
|
|||||||
switch (sWork->state)
|
switch (sWork->state)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (UpdatePaletteFade())
|
if (UpdatePaletteFade())
|
||||||
@@ -223,7 +223,7 @@ s32 FadeOutFromWonderNews(bool32 flag)
|
|||||||
MG_DrawCheckerboardPattern();
|
MG_DrawCheckerboardPattern();
|
||||||
CopyBgTilemapBufferToVram(0);
|
CopyBgTilemapBufferToVram(0);
|
||||||
CopyBgTilemapBufferToVram(3);
|
CopyBgTilemapBufferToVram(3);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (UpdatePaletteFade())
|
if (UpdatePaletteFade())
|
||||||
@@ -326,8 +326,8 @@ static void sub_8146A30(void)
|
|||||||
{
|
{
|
||||||
AddTextPrinterParameterized3(sWork->windowIds[1], 3, 0, 16 * i + 2, sTextPals[sWork->bgSpec->textPal2], 0, sWork->messages[i]);
|
AddTextPrinterParameterized3(sWork->windowIds[1], 3, 0, 16 * i + 2, sTextPals[sWork->bgSpec->textPal2], 0, sWork->messages[i]);
|
||||||
}
|
}
|
||||||
CopyWindowToVram(sWork->windowIds[0], COPYWIN_BOTH);
|
CopyWindowToVram(sWork->windowIds[0], COPYWIN_FULL);
|
||||||
CopyWindowToVram(sWork->windowIds[1], COPYWIN_BOTH);
|
CopyWindowToVram(sWork->windowIds[1], COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_8146B58(void)
|
static void sub_8146B58(void)
|
||||||
|
|||||||
@@ -530,7 +530,7 @@ void AddTextPrinterToWindow1(const u8 *str)
|
|||||||
AddTextPrinterParameterized4(1, 2, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4);
|
AddTextPrinterParameterized4(1, 2, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4);
|
||||||
DrawTextBorderOuter(1, 0x001, 0xF);
|
DrawTextBorderOuter(1, 0x001, 0xF);
|
||||||
PutWindowTilemap(1);
|
PutWindowTilemap(1);
|
||||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
CopyWindowToVram(1, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ClearTextWindow(void)
|
void ClearTextWindow(void)
|
||||||
|
|||||||
+6
-6
@@ -609,7 +609,7 @@ static bool8 MainState_BeginFadeIn(void)
|
|||||||
CopyBgTilemapBufferToVram(2);
|
CopyBgTilemapBufferToVram(2);
|
||||||
CopyBgTilemapBufferToVram(3);
|
CopyBgTilemapBufferToVram(3);
|
||||||
BlendPalettes(-1, 16, RGB_BLACK);
|
BlendPalettes(-1, 16, RGB_BLACK);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
sNamingScreenData->state++;
|
sNamingScreenData->state++;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
@@ -663,7 +663,7 @@ static bool8 pokemon_store(void)
|
|||||||
|
|
||||||
static bool8 MainState_BeginFadeInOut(void)
|
static bool8 MainState_BeginFadeInOut(void)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
sNamingScreenData->state++;
|
sNamingScreenData->state++;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
@@ -707,7 +707,7 @@ static void pokemon_transfer_to_pc_with_message(void)
|
|||||||
DrawDialogueFrame(0, FALSE);
|
DrawDialogueFrame(0, FALSE);
|
||||||
gTextFlags.canABSpeedUpPrint = TRUE;
|
gTextFlags.canABSpeedUpPrint = TRUE;
|
||||||
AddTextPrinterParameterized2(0, 2, gStringVar4, GetTextSpeedSetting(), NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
AddTextPrinterParameterized2(0, 2, gStringVar4, GetTextSpeedSetting(), NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool8 sub_809E1D4(void)
|
static bool8 sub_809E1D4(void)
|
||||||
@@ -1666,7 +1666,7 @@ static void AddGenderIconFunc_Yes(void)
|
|||||||
StringCopy(genderSymbol, gText_FemaleSymbol);
|
StringCopy(genderSymbol, gText_FemaleSymbol);
|
||||||
gender = FEMALE;
|
gender = FEMALE;
|
||||||
}
|
}
|
||||||
AddTextPrinterParameterized3(sNamingScreenData->windows[2], 2, 0x68, 1, sGenderColors[gender], TEXT_SPEED_FF, genderSymbol);
|
AddTextPrinterParameterized3(sNamingScreenData->windows[2], 2, 0x68, 1, sGenderColors[gender], TEXT_SKIP_DRAW, genderSymbol);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1799,7 +1799,7 @@ static void PrintBufferCharactersOnScreen(void)
|
|||||||
temp[1] = gExpandedPlaceholder_Empty[0];
|
temp[1] = gExpandedPlaceholder_Empty[0];
|
||||||
xoff = (IsLetter(temp[0]) == TRUE) ? 2 : 0;
|
xoff = (IsLetter(temp[0]) == TRUE) ? 2 : 0;
|
||||||
|
|
||||||
AddTextPrinterParameterized(sNamingScreenData->windows[2], 2, temp, i * 8 + xpos + xoff, 1, TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(sNamingScreenData->windows[2], 2, temp, i * 8 + xpos + xoff, 1, TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
CallAddGenderIconFunc();
|
CallAddGenderIconFunc();
|
||||||
@@ -1886,7 +1886,7 @@ static void sub_809FAE4(void)
|
|||||||
FillWindowPixelBuffer(sNamingScreenData->windows[4], PIXEL_FILL(15));
|
FillWindowPixelBuffer(sNamingScreenData->windows[4], PIXEL_FILL(15));
|
||||||
AddTextPrinterParameterized3(sNamingScreenData->windows[4], 0, 236 - strwidth, 0, color, 0, gText_MoveOkBack);
|
AddTextPrinterParameterized3(sNamingScreenData->windows[4], 0, 236 - strwidth, 0, color, 0, gText_MoveOkBack);
|
||||||
PutWindowTilemap(sNamingScreenData->windows[4]);
|
PutWindowTilemap(sNamingScreenData->windows[4]);
|
||||||
CopyWindowToVram(sNamingScreenData->windows[4], COPYWIN_BOTH);
|
CopyWindowToVram(sNamingScreenData->windows[4], COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_809FB70(void)
|
static void sub_809FB70(void)
|
||||||
|
|||||||
@@ -471,7 +471,7 @@ void DrawDialogueFrame(u8 windowId, bool8 copyToVram)
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DrawStdWindowFrame(u8 windowId, bool8 copyToVram)
|
void DrawStdWindowFrame(u8 windowId, bool8 copyToVram)
|
||||||
@@ -480,7 +480,7 @@ void DrawStdWindowFrame(u8 windowId, bool8 copyToVram)
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
PutWindowTilemap(windowId);
|
PutWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram)
|
void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram)
|
||||||
@@ -489,7 +489,7 @@ void ClearDialogWindowAndFrame(u8 windowId, bool8 copyToVram)
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
ClearWindowTilemap(windowId);
|
ClearWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
if (gQuestLogState == QL_STATE_PLAYBACK)
|
if (gQuestLogState == QL_STATE_PLAYBACK)
|
||||||
CommitQuestLogWindow1();
|
CommitQuestLogWindow1();
|
||||||
}
|
}
|
||||||
@@ -500,7 +500,7 @@ void ClearStdWindowAndFrame(u8 windowId, bool8 copyToVram)
|
|||||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||||
ClearWindowTilemap(windowId);
|
ClearWindowTilemap(windowId);
|
||||||
if (copyToVram == TRUE)
|
if (copyToVram == TRUE)
|
||||||
CopyWindowToVram(windowId, COPYWIN_BOTH);
|
CopyWindowToVram(windowId, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void WindowFunc_DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
static void WindowFunc_DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum)
|
||||||
@@ -644,7 +644,7 @@ void DisplayItemMessageOnField(u8 taskId, u8 textSpeed, const u8 *string, TaskFu
|
|||||||
{
|
{
|
||||||
LoadStdWindowFrameGfx();
|
LoadStdWindowFrameGfx();
|
||||||
DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, textSpeed, GetTextSpeedSetting(), string, callback);
|
DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, textSpeed, GetTextSpeedSetting(), string, callback);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DisplayYesNoMenuDefaultYes(void)
|
void DisplayYesNoMenuDefaultYes(void)
|
||||||
|
|||||||
+20
-20
@@ -570,10 +570,10 @@ static void Task_OaksSpeech1(u8 taskId)
|
|||||||
CreateHelpDocsPage1();
|
CreateHelpDocsPage1();
|
||||||
gPaletteFade.bufferTransferDisabled = FALSE;
|
gPaletteFade.bufferTransferDisabled = FALSE;
|
||||||
gTasks[taskId].data[5] = CreateTextCursorSpriteForOakSpeech(0, 0xE6, 0x95, 0, 0);
|
gTasks[taskId].data[5] = CreateTextCursorSpriteForOakSpeech(0, 0xE6, 0x95, 0, 0);
|
||||||
BlendPalettes(0xFFFFFFFF, 0x10, 0x00);
|
BlendPalettes(PALETTES_ALL, 0x10, 0x00);
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON);
|
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
ShowBg(1);
|
ShowBg(1);
|
||||||
@@ -594,7 +594,7 @@ static void CreateHelpDocsPage1(void)
|
|||||||
PutWindowTilemap(sOakSpeechResources->unk_0014[0]);
|
PutWindowTilemap(sOakSpeechResources->unk_0014[0]);
|
||||||
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[0], 0x00);
|
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[0], 0x00);
|
||||||
AddTextPrinterParameterized4(sOakSpeechResources->unk_0014[0], 2, 2, 0, 1, 1, sTextColor_HelpSystem, 0, gNewGame_HelpDocs1);
|
AddTextPrinterParameterized4(sOakSpeechResources->unk_0014[0], 2, 2, 0, 1, 1, sTextColor_HelpSystem, 0, gNewGame_HelpDocs1);
|
||||||
CopyWindowToVram(sOakSpeechResources->unk_0014[0], COPYWIN_BOTH);
|
CopyWindowToVram(sOakSpeechResources->unk_0014[0], COPYWIN_FULL);
|
||||||
FillBgTilemapBufferRect_Palette0(1, 0x3000, 1, 3, 5, 16);
|
FillBgTilemapBufferRect_Palette0(1, 0x3000, 1, 3, 5, 16);
|
||||||
CopyBgTilemapBufferToVram(1);
|
CopyBgTilemapBufferToVram(1);
|
||||||
}
|
}
|
||||||
@@ -616,7 +616,7 @@ static void Task_OakSpeech4(u8 taskId)
|
|||||||
PutWindowTilemap(sOakSpeechResources->unk_0014[i]);
|
PutWindowTilemap(sOakSpeechResources->unk_0014[i]);
|
||||||
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[i], 0x00);
|
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[i], 0x00);
|
||||||
AddTextPrinterParameterized4(sOakSpeechResources->unk_0014[i], 2, 6, 0, 1, 1, sTextColor_HelpSystem, 0, sHelpDocsPtrs[i + r7 * 3]);
|
AddTextPrinterParameterized4(sOakSpeechResources->unk_0014[i], 2, 6, 0, 1, 1, sTextColor_HelpSystem, 0, sHelpDocsPtrs[i + r7 * 3]);
|
||||||
CopyWindowToVram(sOakSpeechResources->unk_0014[i], COPYWIN_BOTH);
|
CopyWindowToVram(sOakSpeechResources->unk_0014[i], COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sOakSpeechResources->unk_0012 == 1)
|
if (sOakSpeechResources->unk_0012 == 1)
|
||||||
@@ -685,7 +685,7 @@ static void Task_OakSpeech3(u8 taskId)
|
|||||||
{
|
{
|
||||||
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[i], 0x00);
|
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[i], 0x00);
|
||||||
ClearWindowTilemap(sOakSpeechResources->unk_0014[i]);
|
ClearWindowTilemap(sOakSpeechResources->unk_0014[i]);
|
||||||
CopyWindowToVram(sOakSpeechResources->unk_0014[i], COPYWIN_BOTH);
|
CopyWindowToVram(sOakSpeechResources->unk_0014[i], COPYWIN_FULL);
|
||||||
RemoveWindow(sOakSpeechResources->unk_0014[i]);
|
RemoveWindow(sOakSpeechResources->unk_0014[i]);
|
||||||
sOakSpeechResources->unk_0014[i] = 0;
|
sOakSpeechResources->unk_0014[i] = 0;
|
||||||
}
|
}
|
||||||
@@ -693,7 +693,7 @@ static void Task_OakSpeech3(u8 taskId)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 2, 0, 16, 0);
|
BeginNormalPaletteFade(PALETTES_ALL, 2, 0, 16, 0);
|
||||||
gTasks[taskId].func = Task_OakSpeech5;
|
gTasks[taskId].func = Task_OakSpeech5;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -709,7 +709,7 @@ static void Task_OakSpeech5(u8 taskId)
|
|||||||
{
|
{
|
||||||
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[i], 0x00);
|
FillWindowPixelBuffer(sOakSpeechResources->unk_0014[i], 0x00);
|
||||||
ClearWindowTilemap(sOakSpeechResources->unk_0014[i]);
|
ClearWindowTilemap(sOakSpeechResources->unk_0014[i]);
|
||||||
CopyWindowToVram(sOakSpeechResources->unk_0014[i], COPYWIN_BOTH);
|
CopyWindowToVram(sOakSpeechResources->unk_0014[i], COPYWIN_FULL);
|
||||||
RemoveWindow(sOakSpeechResources->unk_0014[i]);
|
RemoveWindow(sOakSpeechResources->unk_0014[i]);
|
||||||
sOakSpeechResources->unk_0014[i] = 0;
|
sOakSpeechResources->unk_0014[i] = 0;
|
||||||
}
|
}
|
||||||
@@ -743,7 +743,7 @@ static void Task_OakSpeech6(u8 taskId)
|
|||||||
data[14] = AddWindow(&sNewGameAdventureIntroWindowTemplates[0]);
|
data[14] = AddWindow(&sNewGameAdventureIntroWindowTemplates[0]);
|
||||||
PutWindowTilemap(data[14]);
|
PutWindowTilemap(data[14]);
|
||||||
FillWindowPixelBuffer(data[14], 0x00);
|
FillWindowPixelBuffer(data[14], 0x00);
|
||||||
CopyWindowToVram(data[14], COPYWIN_BOTH);
|
CopyWindowToVram(data[14], COPYWIN_FULL);
|
||||||
sOakSpeechResources->unk_0012 = 0;
|
sOakSpeechResources->unk_0012 = 0;
|
||||||
gMain.state = 0;
|
gMain.state = 0;
|
||||||
data[15] = 16;
|
data[15] = 16;
|
||||||
@@ -752,7 +752,7 @@ static void Task_OakSpeech6(u8 taskId)
|
|||||||
gSprites[data[5]].oam.objMode = ST_OAM_OBJ_BLEND;
|
gSprites[data[5]].oam.objMode = ST_OAM_OBJ_BLEND;
|
||||||
gSprites[data[5]].oam.priority = 0;
|
gSprites[data[5]].oam.priority = 0;
|
||||||
CreatePikaOrGrassPlatformSpriteAndLinkToCurrentTask(taskId, 0);
|
CreatePikaOrGrassPlatformSpriteAndLinkToCurrentTask(taskId, 0);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 2, 16, 0, 0);
|
BeginNormalPaletteFade(PALETTES_ALL, 2, 16, 0, 0);
|
||||||
gTasks[taskId].func = Task_OakSpeech7;
|
gTasks[taskId].func = Task_OakSpeech7;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -850,7 +850,7 @@ static void Task_OakSpeech7(u8 taskId)
|
|||||||
SetGpuReg(REG_OFFSET_WININ, 0);
|
SetGpuReg(REG_OFFSET_WININ, 0);
|
||||||
SetGpuReg(REG_OFFSET_WINOUT, 0);
|
SetGpuReg(REG_OFFSET_WINOUT, 0);
|
||||||
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON);
|
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 2, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_OakSpeech8;
|
gTasks[taskId].func = Task_OakSpeech8;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -866,7 +866,7 @@ static void Task_OakSpeech8(u8 taskId)
|
|||||||
DestroyTopBarWindow();
|
DestroyTopBarWindow();
|
||||||
FillWindowPixelBuffer(data[14], 0x00);
|
FillWindowPixelBuffer(data[14], 0x00);
|
||||||
ClearWindowTilemap(data[14]);
|
ClearWindowTilemap(data[14]);
|
||||||
CopyWindowToVram(data[14], COPYWIN_BOTH);
|
CopyWindowToVram(data[14], COPYWIN_FULL);
|
||||||
RemoveWindow(data[14]);
|
RemoveWindow(data[14]);
|
||||||
data[14] = 0;
|
data[14] = 0;
|
||||||
FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20);
|
FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20);
|
||||||
@@ -894,7 +894,7 @@ static void Task_OakSpeech9(u8 taskId)
|
|||||||
LoadOaksSpeechTrainerPic(OAK_PIC, 0);
|
LoadOaksSpeechTrainerPic(OAK_PIC, 0);
|
||||||
CreatePikaOrGrassPlatformSpriteAndLinkToCurrentTask(taskId, 1);
|
CreatePikaOrGrassPlatformSpriteAndLinkToCurrentTask(taskId, 1);
|
||||||
PlayBGM(MUS_ROUTE24);
|
PlayBGM(MUS_ROUTE24);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 5, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 5, 16, 0, RGB_BLACK);
|
||||||
data[3] = 80;
|
data[3] = 80;
|
||||||
ShowBg(2);
|
ShowBg(2);
|
||||||
gTasks[taskId].func = Task_OakSpeech10;
|
gTasks[taskId].func = Task_OakSpeech10;
|
||||||
@@ -912,7 +912,7 @@ static void Task_OakSpeech9(u8 taskId)
|
|||||||
{ \
|
{ \
|
||||||
AddTextPrinterParameterized2(0, 4, str, speed, NULL, 2, 1, 3); \
|
AddTextPrinterParameterized2(0, 4, str, speed, NULL, 2, 1, 3); \
|
||||||
} \
|
} \
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH); \
|
CopyWindowToVram(0, COPYWIN_FULL); \
|
||||||
})
|
})
|
||||||
|
|
||||||
static void Task_OakSpeech10(u8 taskId)
|
static void Task_OakSpeech10(u8 taskId)
|
||||||
@@ -974,7 +974,7 @@ static void Task_OakSpeech13(u8 taskId)
|
|||||||
if (gTasks[taskId].data[3] == 32)
|
if (gTasks[taskId].data[3] == 32)
|
||||||
{
|
{
|
||||||
OaksSpeechPrintMessage(gOakText_WorldInhabited2, sOakSpeechResources->textSpeed);
|
OaksSpeechPrintMessage(gOakText_WorldInhabited2, sOakSpeechResources->textSpeed);
|
||||||
PlayCry1(SPECIES_NIDORAN_F, 0);
|
PlayCry_Normal(SPECIES_NIDORAN_F, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1082,7 +1082,7 @@ static void Task_OakSpeech19(u8 taskId)
|
|||||||
sOakSpeechResources->textColor[2] = 3;
|
sOakSpeechResources->textColor[2] = 3;
|
||||||
AddTextPrinterParameterized3(gTasks[taskId].data[13], 2, 8, 17, sOakSpeechResources->textColor, 0, gText_Girl);
|
AddTextPrinterParameterized3(gTasks[taskId].data[13], 2, 8, 17, sOakSpeechResources->textColor, 0, gText_Girl);
|
||||||
Menu_InitCursor(gTasks[taskId].data[13], 2, 0, 1, GetFontAttribute(2, 1) + 2, 2, 0);
|
Menu_InitCursor(gTasks[taskId].data[13], 2, 0, 1, GetFontAttribute(2, 1) + 2, 2, 0);
|
||||||
CopyWindowToVram(gTasks[taskId].data[13], COPYWIN_BOTH);
|
CopyWindowToVram(gTasks[taskId].data[13], COPYWIN_FULL);
|
||||||
gTasks[taskId].func = Task_OakSpeech20;
|
gTasks[taskId].func = Task_OakSpeech20;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1109,7 +1109,7 @@ static void Task_OakSpeech20(u8 taskId)
|
|||||||
static void Task_OakSpeech21(u8 taskId)
|
static void Task_OakSpeech21(u8 taskId)
|
||||||
{
|
{
|
||||||
s16 * data = gTasks[taskId].data;
|
s16 * data = gTasks[taskId].data;
|
||||||
ClearStdWindowAndFrameToTransparent(data[13], 1);
|
ClearStdWindowAndFrameToTransparent(data[13], TRUE);
|
||||||
RemoveWindow(data[13]);
|
RemoveWindow(data[13]);
|
||||||
data[13] = 0;
|
data[13] = 0;
|
||||||
ClearDialogWindowAndFrame(0, 1);
|
ClearDialogWindowAndFrame(0, 1);
|
||||||
@@ -1150,7 +1150,7 @@ static void Task_OakSpeech24(u8 taskId)
|
|||||||
{
|
{
|
||||||
if (!IsTextPrinterActive(0))
|
if (!IsTextPrinterActive(0))
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
sOakSpeechResources->hasPlayerBeenNamed = FALSE;
|
sOakSpeechResources->hasPlayerBeenNamed = FALSE;
|
||||||
gTasks[taskId].func = Task_OakSpeech25;
|
gTasks[taskId].func = Task_OakSpeech25;
|
||||||
}
|
}
|
||||||
@@ -1209,7 +1209,7 @@ static void Task_OakSpeech29(u8 taskId)
|
|||||||
break;
|
break;
|
||||||
case 0:
|
case 0:
|
||||||
PlaySE(SE_SELECT);
|
PlaySE(SE_SELECT);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, 0);
|
||||||
gTasks[taskId].func = Task_OakSpeech25;
|
gTasks[taskId].func = Task_OakSpeech25;
|
||||||
break;
|
break;
|
||||||
case -1:
|
case -1:
|
||||||
@@ -1610,7 +1610,7 @@ static void CB2_ReturnFromNamingScreen(void)
|
|||||||
gTasks[taskId].data[15] = 1;
|
gTasks[taskId].data[15] = 1;
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON);
|
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON);
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
ShowBg(1);
|
ShowBg(1);
|
||||||
@@ -1881,7 +1881,7 @@ static void PrintNameChoiceOptions(u8 taskId, u8 hasPlayerBeenNamed)
|
|||||||
AddTextPrinterParameterized(data[13], 2, textPtrs[i], 8, 16 * (i + 1) + 1, 0, NULL);
|
AddTextPrinterParameterized(data[13], 2, textPtrs[i], 8, 16 * (i + 1) + 1, 0, NULL);
|
||||||
}
|
}
|
||||||
Menu_InitCursor(data[13], 2, 0, 1, 16, 5, 0);
|
Menu_InitCursor(data[13], 2, 0, 1, 16, 5, 0);
|
||||||
CopyWindowToVram(data[13], COPYWIN_BOTH);
|
CopyWindowToVram(data[13], COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void GetDefaultName(u8 hasPlayerBeenNamed, u8 rivalNameChoice)
|
static void GetDefaultName(u8 hasPlayerBeenNamed, u8 rivalNameChoice)
|
||||||
|
|||||||
+7
-7
@@ -320,7 +320,7 @@ static void OptionMenu_PickSwitchCancel(void)
|
|||||||
FillWindowPixelBuffer(2, PIXEL_FILL(15));
|
FillWindowPixelBuffer(2, PIXEL_FILL(15));
|
||||||
AddTextPrinterParameterized3(2, 0, x, 0, sOptionMenuPickSwitchCancelTextColor, 0, gText_PickSwitchCancel);
|
AddTextPrinterParameterized3(2, 0, x, 0, sOptionMenuPickSwitchCancelTextColor, 0, gText_PickSwitchCancel);
|
||||||
PutWindowTilemap(2);
|
PutWindowTilemap(2);
|
||||||
CopyWindowToVram(2, COPYWIN_BOTH);
|
CopyWindowToVram(2, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void OptionMenu_ResetSpriteData(void)
|
static void OptionMenu_ResetSpriteData(void)
|
||||||
@@ -361,7 +361,7 @@ static void Task_OptionMenu(u8 taskId)
|
|||||||
switch (sOptionMenuPtr->loadState)
|
switch (sOptionMenuPtr->loadState)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK);
|
||||||
OptionMenu_SetVBlankCallback();
|
OptionMenu_SetVBlankCallback();
|
||||||
sOptionMenuPtr->loadState++;
|
sOptionMenuPtr->loadState++;
|
||||||
break;
|
break;
|
||||||
@@ -394,7 +394,7 @@ static void Task_OptionMenu(u8 taskId)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
sOptionMenuPtr->loadState++;
|
sOptionMenuPtr->loadState++;
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
@@ -502,7 +502,7 @@ static void BufferOptionMenuString(u8 selection)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
PutWindowTilemap(1);
|
PutWindowTilemap(1);
|
||||||
CopyWindowToVram(1, COPYWIN_BOTH);
|
CopyWindowToVram(1, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void CloseAndSaveOptionMenu(u8 taskId)
|
static void CloseAndSaveOptionMenu(u8 taskId)
|
||||||
@@ -524,9 +524,9 @@ static void CloseAndSaveOptionMenu(u8 taskId)
|
|||||||
static void PrintOptionMenuHeader(void)
|
static void PrintOptionMenuHeader(void)
|
||||||
{
|
{
|
||||||
FillWindowPixelBuffer(0, PIXEL_FILL(1));
|
FillWindowPixelBuffer(0, PIXEL_FILL(1));
|
||||||
AddTextPrinterParameterized(WIN_TEXT_OPTION, 2, gText_MenuOption, 8, 1, TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(WIN_TEXT_OPTION, 2, gText_MenuOption, 8, 1, TEXT_SKIP_DRAW, NULL);
|
||||||
PutWindowTilemap(0);
|
PutWindowTilemap(0);
|
||||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
CopyWindowToVram(0, COPYWIN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void DrawOptionMenuBg(void)
|
static void DrawOptionMenuBg(void)
|
||||||
@@ -560,7 +560,7 @@ static void LoadOptionMenuItemNames(void)
|
|||||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||||
for (i = 0; i < MENUITEM_COUNT; i++)
|
for (i = 0; i < MENUITEM_COUNT; i++)
|
||||||
{
|
{
|
||||||
AddTextPrinterParameterized(WIN_OPTIONS, 2, sOptionMenuItemsNames[i], 8, (u8)((i * (GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT))) + 2) - i, TEXT_SPEED_FF, NULL);
|
AddTextPrinterParameterized(WIN_OPTIONS, 2, sOptionMenuItemsNames[i], 8, (u8)((i * (GetFontAttribute(2, FONTATTR_MAX_LETTER_HEIGHT))) + 2) - i, TEXT_SKIP_DRAW, NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -2516,7 +2516,7 @@ static void CameraCB_CreditsPan(struct CameraObject * camera)
|
|||||||
|
|
||||||
static void Task_OvwldCredits_FadeOut(u8 taskId)
|
static void Task_OvwldCredits_FadeOut(u8 taskId)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_OvwldCredits_WaitFade;
|
gTasks[taskId].func = Task_OvwldCredits_WaitFade;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+8
-8
@@ -574,11 +574,11 @@ static bool8 ShowPartyMenu(void)
|
|||||||
++gMain.state;
|
++gMain.state;
|
||||||
break;
|
break;
|
||||||
case 21:
|
case 21:
|
||||||
BlendPalettes(0xFFFFFFFF, 16, RGB_BLACK);
|
BlendPalettes(PALETTES_ALL, 16, RGB_BLACK);
|
||||||
++gMain.state;
|
++gMain.state;
|
||||||
break;
|
break;
|
||||||
case 22:
|
case 22:
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 16, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 16, 0, RGB_BLACK);
|
||||||
gPaletteFade.bufferTransferDisabled = FALSE;
|
gPaletteFade.bufferTransferDisabled = FALSE;
|
||||||
++gMain.state;
|
++gMain.state;
|
||||||
break;
|
break;
|
||||||
@@ -592,7 +592,7 @@ static bool8 ShowPartyMenu(void)
|
|||||||
|
|
||||||
static void ExitPartyMenu(void)
|
static void ExitPartyMenu(void)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||||
CreateTask(Task_ExitPartyMenu, 0);
|
CreateTask(Task_ExitPartyMenu, 0);
|
||||||
SetVBlankCallback(VBlankCB_PartyMenu);
|
SetVBlankCallback(VBlankCB_PartyMenu);
|
||||||
SetMainCallback2(CB2_UpdatePartyMenu);
|
SetMainCallback2(CB2_UpdatePartyMenu);
|
||||||
@@ -1077,7 +1077,7 @@ static void SwapPartyPokemon(struct Pokemon *mon1, struct Pokemon *mon2)
|
|||||||
|
|
||||||
static void Task_ClosePartyMenu(u8 taskId)
|
static void Task_ClosePartyMenu(u8 taskId)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, -2, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_ClosePartyMenuAndSetCB2;
|
gTasks[taskId].func = Task_ClosePartyMenuAndSetCB2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1550,7 +1550,7 @@ static void Task_PrintAndWaitForText(u8 taskId)
|
|||||||
{
|
{
|
||||||
if (gTasks[taskId].tKeepOpen == FALSE)
|
if (gTasks[taskId].tKeepOpen == FALSE)
|
||||||
{
|
{
|
||||||
ClearStdWindowAndFrameToTransparent(6, 0);
|
ClearStdWindowAndFrameToTransparent(6, FALSE);
|
||||||
ClearWindowTilemap(6);
|
ClearWindowTilemap(6);
|
||||||
}
|
}
|
||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
@@ -1577,7 +1577,7 @@ static void Task_ReturnToChooseMonAfterText(u8 taskId)
|
|||||||
{
|
{
|
||||||
if (IsPartyMenuTextPrinterActive() != TRUE)
|
if (IsPartyMenuTextPrinterActive() != TRUE)
|
||||||
{
|
{
|
||||||
ClearStdWindowAndFrameToTransparent(6, 0);
|
ClearStdWindowAndFrameToTransparent(6, FALSE);
|
||||||
ClearWindowTilemap(6);
|
ClearWindowTilemap(6);
|
||||||
if (MenuHelpers_LinkSomething() == TRUE)
|
if (MenuHelpers_LinkSomething() == TRUE)
|
||||||
{
|
{
|
||||||
@@ -2484,7 +2484,7 @@ static void PartyMenuRemoveWindow(u8 *ptr)
|
|||||||
{
|
{
|
||||||
if (*ptr != 0xFF)
|
if (*ptr != 0xFF)
|
||||||
{
|
{
|
||||||
ClearStdWindowAndFrameToTransparent(*ptr, 0);
|
ClearStdWindowAndFrameToTransparent(*ptr, FALSE);
|
||||||
RemoveWindow(*ptr);
|
RemoveWindow(*ptr);
|
||||||
*ptr = 0xFF;
|
*ptr = 0xFF;
|
||||||
ScheduleBgCopyTilemapToVram(2);
|
ScheduleBgCopyTilemapToVram(2);
|
||||||
@@ -4595,7 +4595,7 @@ static void ShowMoveSelectWindow(u8 slot)
|
|||||||
gMoveNames[move],
|
gMoveNames[move],
|
||||||
GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH) + GetFontAttribute(fontId, FONTATTR_LETTER_SPACING),
|
GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH) + GetFontAttribute(fontId, FONTATTR_LETTER_SPACING),
|
||||||
(i * 16) + 2,
|
(i * 16) + 2,
|
||||||
TEXT_SPEED_FF,
|
TEXT_SKIP_DRAW,
|
||||||
NULL);
|
NULL);
|
||||||
if (move != MOVE_NONE)
|
if (move != MOVE_NONE)
|
||||||
++moveCount;
|
++moveCount;
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ void ChoosePartyMon(void)
|
|||||||
ScriptContext2_Enable();
|
ScriptContext2_Enable();
|
||||||
taskId = CreateTask(sub_80BF97C, 10);
|
taskId = CreateTask(sub_80BF97C, 10);
|
||||||
gTasks[taskId].data[0] = PARTY_MENU_TYPE_CHOOSE_MON;
|
gTasks[taskId].data[0] = PARTY_MENU_TYPE_CHOOSE_MON;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SelectMoveTutorMon(void)
|
void SelectMoveTutorMon(void)
|
||||||
@@ -28,7 +28,7 @@ void SelectMoveTutorMon(void)
|
|||||||
ScriptContext2_Enable();
|
ScriptContext2_Enable();
|
||||||
taskId = CreateTask(sub_80BF97C, 10);
|
taskId = CreateTask(sub_80BF97C, 10);
|
||||||
gTasks[taskId].data[0] = PARTY_MENU_TYPE_MOVE_RELEARNER;
|
gTasks[taskId].data[0] = PARTY_MENU_TYPE_MOVE_RELEARNER;
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_80BF97C(u8 taskId)
|
static void sub_80BF97C(u8 taskId)
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user