Multiple changes 2
This commit is contained in:
@@ -183,7 +183,7 @@
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro atk24 ptr:req
|
||||
.macro checkteamslost ptr:req
|
||||
.byte 0x24
|
||||
.4byte \ptr
|
||||
.endm
|
||||
@@ -503,7 +503,7 @@
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro atk57
|
||||
.macro endlinkbattle
|
||||
.byte 0x57
|
||||
.endm
|
||||
|
||||
@@ -539,7 +539,7 @@
|
||||
.4byte \addr
|
||||
.endm
|
||||
|
||||
.macro atk5E battler:req
|
||||
.macro updatebattlermoves battler:req
|
||||
.byte 0x5e
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
+48
-48
@@ -495,7 +495,7 @@ BattleScript_EffectStatUp::
|
||||
BattleScript_EffectStatUpAfterAtkCanceler::
|
||||
attackstring
|
||||
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
|
||||
pause 0x20
|
||||
goto BattleScript_StatUpPrintString
|
||||
@@ -542,7 +542,7 @@ BattleScript_EffectStatDown::
|
||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||
attackstring
|
||||
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_EQUAL, cMULTISTRING_CHOOSER, 3, BattleScript_StatDownEnd
|
||||
pause 0x20
|
||||
@@ -1503,17 +1503,17 @@ BattleScript_CurseTrySpeed::
|
||||
attackanimation
|
||||
waitanimation
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_CurseTryAttack::
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_CurseTryDefence::
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_CurseEnd::
|
||||
@@ -1625,7 +1625,7 @@ BattleScript_EffectSwagger::
|
||||
attackanimation
|
||||
waitanimation
|
||||
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
|
||||
setgraphicalstatchangevalues
|
||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||
@@ -1820,7 +1820,7 @@ BattleScript_EffectSkullBash::
|
||||
setbyte sTWOTURN_STRINGID, 2
|
||||
call BattleScriptFirstChargingTurn
|
||||
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
|
||||
setgraphicalstatchangevalues
|
||||
playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||
@@ -2028,7 +2028,7 @@ BattleScript_EffectDefenseCurl::
|
||||
ppreduce
|
||||
setdefensecurlbit
|
||||
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
|
||||
attackanimation
|
||||
waitanimation
|
||||
@@ -2170,7 +2170,7 @@ BattleScript_EffectFlatter::
|
||||
attackanimation
|
||||
waitanimation
|
||||
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
|
||||
setgraphicalstatchangevalues
|
||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||
@@ -2223,17 +2223,17 @@ BattleScript_EffectMemento::
|
||||
waitanimation
|
||||
jumpifstatus2 BS_TARGET, STATUS2_SUBSTITUTE, BattleScript_MementoSubstituteInvulnerable
|
||||
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, ATK48_STAT_NEGATIVE | ATK48_STAT_BY_TWO
|
||||
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_SPATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO | STAT_CHANGE_MULTIPLE_STATS
|
||||
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE | STAT_CHANGE_BY_TWO
|
||||
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
|
||||
printfromtable gStatDownStringIds
|
||||
waitmessage 0x40
|
||||
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
|
||||
statbuffchange STAT_CHANGE_BS_PTR, BattleScript_MementoSkipStatDown2
|
||||
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_MementoSkipStatDown2
|
||||
jumpifbyte CMP_GREATER_THAN, cMULTISTRING_CHOOSER, 1, BattleScript_MementoSkipStatDown2
|
||||
printfromtable gStatDownStringIds
|
||||
waitmessage 0x40
|
||||
@@ -2667,17 +2667,17 @@ BattleScript_TickleDoMoveAnim::
|
||||
attackanimation
|
||||
waitanimation
|
||||
setbyte sSTAT_ANIM_PLAYED, 0
|
||||
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_DEF, ATK48_STAT_NEGATIVE | ATK48_ONLY_MULTIPLE
|
||||
playstatchangeanimation BS_TARGET, BIT_ATK, ATK48_STAT_NEGATIVE
|
||||
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_DEF, STAT_CHANGE_NEGATIVE | STAT_CHANGE_MULTIPLE_STATS
|
||||
playstatchangeanimation BS_TARGET, BIT_ATK, STAT_CHANGE_NEGATIVE
|
||||
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
|
||||
printfromtable gStatDownStringIds
|
||||
waitmessage 0x40
|
||||
BattleScript_TickleTryLowerDef::
|
||||
playstatchangeanimation BS_TARGET, BIT_DEF, ATK48_STAT_NEGATIVE
|
||||
playstatchangeanimation BS_TARGET, BIT_DEF, STAT_CHANGE_NEGATIVE
|
||||
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
|
||||
printfromtable gStatDownStringIds
|
||||
waitmessage 0x40
|
||||
@@ -2703,13 +2703,13 @@ BattleScript_CosmicPowerDoMoveAnim::
|
||||
setbyte sSTAT_ANIM_PLAYED, 0
|
||||
playstatchangeanimation BS_ATTACKER, BIT_DEF | BIT_SPDEF, 0
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
BattleScript_CosmicPowerTrySpDef::
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
@@ -2732,13 +2732,13 @@ BattleScript_BulkUpDoMoveAnim::
|
||||
setbyte sSTAT_ANIM_PLAYED, 0
|
||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF, 0
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
BattleScript_BulkUpTryDef::
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
@@ -2757,13 +2757,13 @@ BattleScript_CalmMindDoMoveAnim::
|
||||
setbyte sSTAT_ANIM_PLAYED, 0
|
||||
playstatchangeanimation BS_ATTACKER, BIT_SPATK | BIT_SPDEF, 0
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
BattleScript_CalmMindTrySpDef::
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
@@ -2789,13 +2789,13 @@ BattleScript_DragonDanceDoMoveAnim::
|
||||
setbyte sSTAT_ANIM_PLAYED, 0
|
||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_SPEED, 0
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
BattleScript_DragonDanceTrySpeed::
|
||||
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
|
||||
printfromtable gStatUpStringIds
|
||||
waitmessage 0x40
|
||||
@@ -2837,7 +2837,7 @@ BattleScript_GiveExp::
|
||||
end2
|
||||
|
||||
BattleScript_HandleFaintedMon::
|
||||
atk24 BattleScript_LinkBattleHandleFaint
|
||||
checkteamslost BattleScript_LinkBattleHandleFaint
|
||||
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd
|
||||
jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother
|
||||
jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChooseAnother
|
||||
@@ -2996,7 +2996,7 @@ BattleScript_BattleTowerLostLostSkipDouble::
|
||||
BattleScript_LinkBattleWonOrLost::
|
||||
printstring STRINGID_BATTLEEND
|
||||
waitmessage 0x40
|
||||
atk57
|
||||
endlinkbattle
|
||||
waitmessage 0x40
|
||||
end2
|
||||
|
||||
@@ -3188,7 +3188,7 @@ BattleScript_DamagingWeatherLoop::
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
tryfaintmon BS_ATTACKER, 0, NULL
|
||||
atk24 BattleScript_DamagingWeatherContinuesEnd
|
||||
checkteamslost BattleScript_DamagingWeatherContinuesEnd
|
||||
BattleScript_DamagingWeatherContinuesEnd::
|
||||
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_WeatherDamageEndedBattle
|
||||
addbyte gBattleCommunication, 1
|
||||
@@ -3427,27 +3427,27 @@ BattleScript_AllStatsUpAtk::
|
||||
setbyte sSTAT_ANIM_PLAYED, 0
|
||||
playstatchangeanimation BS_ATTACKER, BIT_ATK | BIT_DEF | BIT_SPEED | BIT_SPATK | BIT_SPDEF, 0
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_AllStatsUpDef::
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_AllStatsUpSpeed::
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_AllStatsUpSpAtk::
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_AllStatsUpSpDef::
|
||||
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
|
||||
waitmessage 0x40
|
||||
BattleScript_AllStatsUpRet::
|
||||
@@ -3499,7 +3499,7 @@ BattleScript_DoFutureAttackHit::
|
||||
resultmessage
|
||||
waitmessage 0x40
|
||||
tryfaintmon BS_TARGET, 0, NULL
|
||||
atk24 BattleScript_FutureAttackEnd
|
||||
checkteamslost BattleScript_FutureAttackEnd
|
||||
BattleScript_FutureAttackEnd::
|
||||
moveendcase 0
|
||||
moveendfromto 11, 14
|
||||
@@ -3584,17 +3584,17 @@ BattleScript_PrintMonIsRooted::
|
||||
|
||||
BattleScript_AtkDefDown::
|
||||
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, ATK48_STAT_NEGATIVE | 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, STAT_CHANGE_NEGATIVE | STAT_CHANGE_CANT_PREVENT
|
||||
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
|
||||
printfromtable gStatDownStringIds
|
||||
waitmessage 0x40
|
||||
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
|
||||
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
|
||||
printfromtable gStatDownStringIds
|
||||
waitmessage 0x40
|
||||
@@ -3627,7 +3627,7 @@ BattleScript_MagicCoatBounce::
|
||||
pause 0x20
|
||||
printstring STRINGID_PKMNMOVEBOUNCED
|
||||
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
|
||||
return
|
||||
|
||||
@@ -3638,7 +3638,7 @@ BattleScript_SnatchedMove::
|
||||
playanimation BS_TARGET, B_ANIM_SNATCH_MOVE, NULL
|
||||
printstring STRINGID_PKMNSNATCHEDMOVE
|
||||
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
|
||||
return
|
||||
|
||||
@@ -3654,9 +3654,9 @@ BattleScript_OneHitKOMsg::
|
||||
|
||||
BattleScript_SAtkDown2::
|
||||
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
|
||||
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
|
||||
printfromtable gStatDownStringIds
|
||||
waitmessage 0x40
|
||||
@@ -3700,7 +3700,7 @@ BattleScript_DoTurnDmg::
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
tryfaintmon BS_ATTACKER, 0, NULL
|
||||
atk24 BattleScript_DoTurnDmgEnd
|
||||
checkteamslost BattleScript_DoTurnDmgEnd
|
||||
BattleScript_DoTurnDmgEnd::
|
||||
end2
|
||||
|
||||
@@ -4009,7 +4009,7 @@ BattleScript_IntimidateActivationAnimLoop::
|
||||
jumpifability BS_TARGET, ABILITY_CLEAR_BODY, BattleScript_IntimidateAbilityFail
|
||||
jumpifability BS_TARGET, ABILITY_HYPER_CUTTER, 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
|
||||
setgraphicalstatchangevalues
|
||||
playanimation BS_TARGET, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||
@@ -4377,7 +4377,7 @@ BattleScript_BerryConfuseHealEnd2::
|
||||
|
||||
BattleScript_BerryStatRaiseEnd2::
|
||||
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::
|
||||
setbyte cMULTISTRING_CHOOSER, 4
|
||||
call BattleScript_StatUp
|
||||
|
||||
@@ -99,7 +99,7 @@ BattleScript_CaughtPokemonDone::
|
||||
BattleScript_OldMan_Pokedude_CaughtMessage::
|
||||
printstring STRINGID_GOTCHAPKMNCAUGHT2
|
||||
setbyte gBattleOutcome, B_OUTCOME_CAUGHT
|
||||
atk57
|
||||
endlinkbattle
|
||||
finishturn
|
||||
|
||||
BattleScript_ShakeBallThrow::
|
||||
|
||||
+11
-11
@@ -209,14 +209,14 @@ extern struct ProtectStruct gProtectStructs[MAX_BATTLERS_COUNT];
|
||||
|
||||
struct SpecialStatus
|
||||
{
|
||||
u8 statLowered : 1; // 0x1
|
||||
u8 lightningRodRedirected : 1; // 0x2
|
||||
u8 restoredBattlerSprite: 1; // 0x4
|
||||
u8 intimidatedMon : 1; // 0x8
|
||||
u8 traced : 1; // 0x10
|
||||
u8 ppNotAffectedByPressure : 1;
|
||||
u8 flag40 : 1;
|
||||
u8 focusBanded : 1;
|
||||
u8 statLowered:1; // 0x1
|
||||
u8 lightningRodRedirected:1; // 0x2
|
||||
u8 restoredBattlerSprite:1; // 0x4
|
||||
u8 intimidatedMon:1; // 0x8
|
||||
u8 traced:1; // 0x10
|
||||
u8 ppNotAffectedByPressure:1;
|
||||
u8 faintedHasReplacement:1;
|
||||
u8 focusBanded:1;
|
||||
u8 field1[3];
|
||||
s32 dmg;
|
||||
s32 physicalDmg;
|
||||
@@ -492,7 +492,7 @@ struct BattleScripting
|
||||
u8 animArg1;
|
||||
u8 animArg2;
|
||||
u16 tripleKickPower;
|
||||
u8 atk49_state;
|
||||
u8 moveendState;
|
||||
u8 battlerWithAbility;
|
||||
u8 multihitMoveEffect;
|
||||
u8 battler;
|
||||
@@ -500,9 +500,9 @@ struct BattleScripting
|
||||
u8 animTargetsHit;
|
||||
u8 statChanger;
|
||||
bool8 statAnimPlayed;
|
||||
u8 atk23_state;
|
||||
u8 getexpState;
|
||||
u8 battleStyle;
|
||||
u8 atk6C_state;
|
||||
u8 drawlvlupboxState;
|
||||
u8 learnMoveState;
|
||||
u8 field_20;
|
||||
u8 reshowMainState;
|
||||
|
||||
@@ -68,21 +68,38 @@ enum
|
||||
REQUEST_TOUGH_RIBBON_BATTLE,
|
||||
};
|
||||
|
||||
#define RESET_ACTION_MOVE_SELECTION 0
|
||||
#define RESET_ACTION_SELECTION 1
|
||||
#define RESET_MOVE_SELECTION 2
|
||||
// Special arguments for Battle Controller functions.
|
||||
|
||||
#define BALL_NO_SHAKES 0
|
||||
#define BALL_1_SHAKE 1
|
||||
#define BALL_2_SHAKES 2
|
||||
#define BALL_3_SHAKES_FAIL 3
|
||||
#define BALL_3_SHAKES_SUCCESS 4
|
||||
#define BALL_TRAINER_BLOCK 5
|
||||
#define BALL_GHOST_DODGE 6
|
||||
enum { // Values given to the emit functions to choose gBattleBufferA or gBattleBufferB
|
||||
BUFFER_A,
|
||||
BUFFER_B
|
||||
};
|
||||
|
||||
enum {
|
||||
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 INSTANT_HP_BAR_DROP 0x7FFF
|
||||
#define INSTANT_HP_BAR_DROP 32767
|
||||
|
||||
// Special return values in gBattleBufferB from Battle Controller functions.
|
||||
#define RET_VALUE_LEVELED_UP 11
|
||||
@@ -149,7 +166,7 @@ enum
|
||||
CONTROLLER_STATUSXOR,
|
||||
CONTROLLER_DATATRANSFER,
|
||||
CONTROLLER_DMA3TRANSFER,
|
||||
CONTROLLER_31,
|
||||
CONTROLLER_PLAYBGM,
|
||||
CONTROLLER_32,
|
||||
CONTROLLER_TWORETURNVALUES,
|
||||
CONTROLLER_CHOSENMONRETURNVALUE,
|
||||
@@ -173,7 +190,7 @@ enum
|
||||
CONTROLLER_BATTLEANIMATION,
|
||||
CONTROLLER_LINKSTANDBYMSG,
|
||||
CONTROLLER_RESETACTIONMOVESELECTION,
|
||||
CONTROLLER_55,
|
||||
CONTROLLER_ENDLINKBATTLE,
|
||||
/*new controllers should go here*/
|
||||
CONTROLLER_TERMINATOR_NOP,
|
||||
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_EmitLoadMonSprite(u8 bufferId);
|
||||
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_EmitTrainerSlide(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_Duplicate(u8 bufferId, u16 b);
|
||||
void BtlController_EmitHitAnimation(u8 bufferId);
|
||||
void BtlController_EmitCmd42(u8 bufferId);
|
||||
void BtlController_EmitCantSwitch(u8 bufferId);
|
||||
void BtlController_EmitPlaySE(u8 bufferId, u16 songId);
|
||||
void BtlController_EmitPlayFanfare(u8 bufferId, u16 songId);
|
||||
void BtlController_EmitFaintingCry(u8 bufferId);
|
||||
@@ -227,9 +244,9 @@ void BtlController_EmitHidePartyStatusSummary(u8 bufferId);
|
||||
void BtlController_EmitEndBounceEffect(u8 bufferId);
|
||||
void BtlController_EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
|
||||
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_EmitCmd55(u8 bufferId, u8 arg1);
|
||||
void BtlController_EmitEndLinkBattle(u8 bufferId, u8 arg1);
|
||||
|
||||
// player controller
|
||||
void PlayerDummy(void);
|
||||
|
||||
+100
-98
@@ -135,24 +135,26 @@
|
||||
#define STATUS2_TORMENT 0x80000000
|
||||
|
||||
// Seems like per-battler statuses. Not quite sure how to categorize these
|
||||
#define STATUS3_LEECHSEED_BATTLER 0x3
|
||||
#define STATUS3_LEECHSEED 0x4
|
||||
#define STATUS3_ALWAYS_HITS 0x18 // two bits
|
||||
#define STATUS3_PERISH_SONG 0x20
|
||||
#define STATUS3_ON_AIR 0x40
|
||||
#define STATUS3_UNDERGROUND 0x80
|
||||
#define STATUS3_MINIMIZED 0x100
|
||||
#define STATUS3_ROOTED 0x400
|
||||
#define STATUS3_CHARGED_UP 0x200
|
||||
#define STATUS3_YAWN 0x1800 // two bits
|
||||
#define STATUS3_IMPRISONED_OTHERS 0x2000
|
||||
#define STATUS3_GRUDGE 0x4000
|
||||
#define STATUS3_CANT_SCORE_A_CRIT 0x8000
|
||||
#define STATUS3_MUDSPORT 0x10000
|
||||
#define STATUS3_WATERSPORT 0x20000
|
||||
#define STATUS3_UNDERWATER 0x40000
|
||||
#define STATUS3_INTIMIDATE_POKES 0x80000
|
||||
#define STATUS3_TRACE 0x100000
|
||||
#define STATUS3_LEECHSEED_BATTLER (1 << 0 | 1 << 1) // The battler to receive HP from Leech Seed
|
||||
#define STATUS3_LEECHSEED (1 << 2)
|
||||
#define STATUS3_ALWAYS_HITS (1 << 3 | 1 << 4)
|
||||
#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_PERISH_SONG (1 << 5)
|
||||
#define STATUS3_ON_AIR (1 << 6)
|
||||
#define STATUS3_UNDERGROUND (1 << 7)
|
||||
#define STATUS3_MINIMIZED (1 << 8)
|
||||
#define STATUS3_CHARGED_UP (1 << 9)
|
||||
#define STATUS3_ROOTED (1 << 10)
|
||||
#define STATUS3_YAWN (1 << 11 | 1 << 12) // Number of turns to sleep
|
||||
#define STATUS3_YAWN_TURN(num) (((num) << 11) & STATUS3_YAWN)
|
||||
#define STATUS3_IMPRISONED_OTHERS (1 << 13)
|
||||
#define STATUS3_GRUDGE (1 << 14)
|
||||
#define STATUS3_CANT_SCORE_A_CRIT (1 << 15)
|
||||
#define STATUS3_MUDSPORT (1 << 16)
|
||||
#define STATUS3_WATERSPORT (1 << 17)
|
||||
#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)
|
||||
|
||||
// Not really sure what a "hitmarker" is.
|
||||
@@ -175,7 +177,7 @@
|
||||
#define HITMARKER_PASSIVE_DAMAGE 0x00100000
|
||||
#define HITMARKER_x200000 0x00200000
|
||||
#define HITMARKER_PLAYER_FAINTED 0x00400000
|
||||
#define HITMARKER_x800000 0x00800000
|
||||
#define HITMARKER_ALLOW_NO_PP 0x00800000
|
||||
#define HITMARKER_GRUDGE 0x01000000
|
||||
#define HITMARKER_OBEYS 0x02000000
|
||||
#define HITMARKER_x4000000 0x04000000
|
||||
@@ -205,87 +207,85 @@
|
||||
#define MOVE_RESULT_NO_EFFECT (MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE | MOVE_RESULT_FAILED)
|
||||
|
||||
// Battle Weather flags
|
||||
#define WEATHER_RAIN_TEMPORARY (1 << 0)
|
||||
#define WEATHER_RAIN_DOWNPOUR (1 << 1) // unused
|
||||
#define WEATHER_RAIN_PERMANENT (1 << 2)
|
||||
#define WEATHER_RAIN_ANY (WEATHER_RAIN_TEMPORARY | WEATHER_RAIN_DOWNPOUR | WEATHER_RAIN_PERMANENT)
|
||||
#define WEATHER_SANDSTORM_TEMPORARY (1 << 3)
|
||||
#define WEATHER_SANDSTORM_PERMANENT (1 << 4)
|
||||
#define WEATHER_SANDSTORM_ANY (WEATHER_SANDSTORM_TEMPORARY | WEATHER_SANDSTORM_PERMANENT)
|
||||
#define WEATHER_SUN_TEMPORARY (1 << 5)
|
||||
#define WEATHER_SUN_PERMANENT (1 << 6)
|
||||
#define WEATHER_SUN_ANY (WEATHER_SUN_TEMPORARY | WEATHER_SUN_PERMANENT)
|
||||
#define WEATHER_HAIL (1 << 7)
|
||||
#define WEATHER_HAIL_ANY (WEATHER_HAIL)
|
||||
#define WEATHER_ANY (WEATHER_RAIN_ANY | WEATHER_SANDSTORM_ANY | WEATHER_SUN_ANY | WEATHER_HAIL_ANY)
|
||||
#define B_WEATHER_RAIN_TEMPORARY (1 << 0)
|
||||
#define B_WEATHER_RAIN_DOWNPOUR (1 << 1) // unused
|
||||
#define B_WEATHER_RAIN_PERMANENT (1 << 2)
|
||||
#define B_WEATHER_RAIN (B_WEATHER_RAIN_TEMPORARY | B_WEATHER_RAIN_DOWNPOUR | B_WEATHER_RAIN_PERMANENT)
|
||||
#define B_WEATHER_SANDSTORM_TEMPORARY (1 << 3)
|
||||
#define B_WEATHER_SANDSTORM_PERMANENT (1 << 4)
|
||||
#define B_WEATHER_SANDSTORM (B_WEATHER_SANDSTORM_TEMPORARY | B_WEATHER_SANDSTORM_PERMANENT)
|
||||
#define B_WEATHER_SUN_TEMPORARY (1 << 5)
|
||||
#define B_WEATHER_SUN_PERMANENT (1 << 6)
|
||||
#define B_WEATHER_SUN (B_WEATHER_SUN_TEMPORARY | B_WEATHER_SUN_PERMANENT)
|
||||
#define B_WEATHER_HAIL_TEMPORARY (1 << 7)
|
||||
#define B_WEATHER_HAIL (B_WEATHER_HAIL_TEMPORARY)
|
||||
#define WEATHER_ANY (B_WEATHER_RAIN | B_WEATHER_SANDSTORM | B_WEATHER_SUN | B_WEATHER_HAIL)
|
||||
|
||||
// Move Effects
|
||||
#define MOVE_EFFECT_NOTHING_0 0x0
|
||||
#define MOVE_EFFECT_SLEEP 0x1
|
||||
#define MOVE_EFFECT_POISON 0x2
|
||||
#define MOVE_EFFECT_BURN 0x3
|
||||
#define MOVE_EFFECT_FREEZE 0x4
|
||||
#define MOVE_EFFECT_PARALYSIS 0x5
|
||||
#define MOVE_EFFECT_TOXIC 0x6
|
||||
#define MOVE_EFFECT_CONFUSION 0x7
|
||||
#define MOVE_EFFECT_FLINCH 0x8
|
||||
#define MOVE_EFFECT_TRI_ATTACK 0x9
|
||||
#define MOVE_EFFECT_UPROAR 0xA
|
||||
#define MOVE_EFFECT_PAYDAY 0xB
|
||||
#define MOVE_EFFECT_CHARGING 0xC
|
||||
#define MOVE_EFFECT_WRAP 0xD
|
||||
#define MOVE_EFFECT_RECOIL_25 0xE
|
||||
#define MOVE_EFFECT_ATK_PLUS_1 0xF
|
||||
#define MOVE_EFFECT_DEF_PLUS_1 0x10
|
||||
#define MOVE_EFFECT_SPD_PLUS_1 0x11
|
||||
#define MOVE_EFFECT_SP_ATK_PLUS_1 0x12
|
||||
#define MOVE_EFFECT_SP_DEF_PLUS_1 0x13
|
||||
#define MOVE_EFFECT_ACC_PLUS_1 0x14
|
||||
#define MOVE_EFFECT_EVS_PLUS_1 0x15
|
||||
#define MOVE_EFFECT_ATK_MINUS_1 0x16
|
||||
#define MOVE_EFFECT_DEF_MINUS_1 0x17
|
||||
#define MOVE_EFFECT_SPD_MINUS_1 0x18
|
||||
#define MOVE_EFFECT_SP_ATK_MINUS_1 0x19
|
||||
#define MOVE_EFFECT_SP_DEF_MINUS_1 0x1A
|
||||
#define MOVE_EFFECT_ACC_MINUS_1 0x1B
|
||||
#define MOVE_EFFECT_EVS_MINUS_1 0x1C
|
||||
#define MOVE_EFFECT_RECHARGE 0x1D
|
||||
#define MOVE_EFFECT_RAGE 0x1E
|
||||
#define MOVE_EFFECT_STEAL_ITEM 0x1F
|
||||
#define MOVE_EFFECT_PREVENT_ESCAPE 0x20
|
||||
#define MOVE_EFFECT_NIGHTMARE 0x21
|
||||
#define MOVE_EFFECT_ALL_STATS_UP 0x22
|
||||
#define MOVE_EFFECT_RAPIDSPIN 0x23
|
||||
#define MOVE_EFFECT_REMOVE_PARALYSIS 0x24
|
||||
#define MOVE_EFFECT_ATK_DEF_DOWN 0x25
|
||||
#define MOVE_EFFECT_RECOIL_33 0x26
|
||||
#define MOVE_EFFECT_ATK_PLUS_2 0x27
|
||||
#define MOVE_EFFECT_DEF_PLUS_2 0x28
|
||||
#define MOVE_EFFECT_SPD_PLUS_2 0x29
|
||||
#define MOVE_EFFECT_SP_ATK_PLUS_2 0x2A
|
||||
#define MOVE_EFFECT_SP_DEF_PLUS_2 0x2B
|
||||
#define MOVE_EFFECT_ACC_PLUS_2 0x2C
|
||||
#define MOVE_EFFECT_EVS_PLUS_2 0x2D
|
||||
#define MOVE_EFFECT_ATK_MINUS_2 0x2E
|
||||
#define MOVE_EFFECT_DEF_MINUS_2 0x2F
|
||||
#define MOVE_EFFECT_SPD_MINUS_2 0x30
|
||||
#define MOVE_EFFECT_SP_ATK_MINUS_2 0x31
|
||||
#define MOVE_EFFECT_SP_DEF_MINUS_2 0x32
|
||||
#define MOVE_EFFECT_ACC_MINUS_2 0x33
|
||||
#define MOVE_EFFECT_EVS_MINUS_2 0x34
|
||||
#define MOVE_EFFECT_THRASH 0x35
|
||||
#define MOVE_EFFECT_KNOCK_OFF 0x36
|
||||
#define MOVE_EFFECT_NOTHING_37 0x37
|
||||
#define MOVE_EFFECT_NOTHING_38 0x38
|
||||
#define MOVE_EFFECT_NOTHING_39 0x39
|
||||
#define MOVE_EFFECT_NOTHING_3A 0x3A
|
||||
#define MOVE_EFFECT_SP_ATK_TWO_DOWN 0x3B
|
||||
#define MOVE_EFFECT_NOTHING_3C 0x3C
|
||||
#define MOVE_EFFECT_NOTHING_3D 0x3D
|
||||
#define MOVE_EFFECT_NOTHING_3E 0x3E
|
||||
#define MOVE_EFFECT_NOTHING_3F 0x3F
|
||||
#define MOVE_EFFECT_AFFECTS_USER 0x40
|
||||
#define MOVE_EFFECT_CERTAIN 0x80
|
||||
#define MOVE_EFFECT_SLEEP 1
|
||||
#define MOVE_EFFECT_POISON 2
|
||||
#define MOVE_EFFECT_BURN 3
|
||||
#define MOVE_EFFECT_FREEZE 4
|
||||
#define MOVE_EFFECT_PARALYSIS 5
|
||||
#define MOVE_EFFECT_TOXIC 6
|
||||
#define PRIMARY_STATUS_MOVE_EFFECT MOVE_EFFECT_TOXIC // All above move effects apply primary status
|
||||
#define MOVE_EFFECT_CONFUSION 7
|
||||
#define MOVE_EFFECT_FLINCH 8
|
||||
#define MOVE_EFFECT_TRI_ATTACK 9
|
||||
#define MOVE_EFFECT_UPROAR 10
|
||||
#define MOVE_EFFECT_PAYDAY 11
|
||||
#define MOVE_EFFECT_CHARGING 12
|
||||
#define MOVE_EFFECT_WRAP 13
|
||||
#define MOVE_EFFECT_RECOIL_25 14
|
||||
#define MOVE_EFFECT_ATK_PLUS_1 15
|
||||
#define MOVE_EFFECT_DEF_PLUS_1 16
|
||||
#define MOVE_EFFECT_SPD_PLUS_1 17
|
||||
#define MOVE_EFFECT_SP_ATK_PLUS_1 18
|
||||
#define MOVE_EFFECT_SP_DEF_PLUS_1 19
|
||||
#define MOVE_EFFECT_ACC_PLUS_1 20
|
||||
#define MOVE_EFFECT_EVS_PLUS_1 21
|
||||
#define MOVE_EFFECT_ATK_MINUS_1 22
|
||||
#define MOVE_EFFECT_DEF_MINUS_1 23
|
||||
#define MOVE_EFFECT_SPD_MINUS_1 24
|
||||
#define MOVE_EFFECT_SP_ATK_MINUS_1 25
|
||||
#define MOVE_EFFECT_SP_DEF_MINUS_1 26
|
||||
#define MOVE_EFFECT_ACC_MINUS_1 27
|
||||
#define MOVE_EFFECT_EVS_MINUS_1 28
|
||||
#define MOVE_EFFECT_RECHARGE 29
|
||||
#define MOVE_EFFECT_RAGE 30
|
||||
#define MOVE_EFFECT_STEAL_ITEM 31
|
||||
#define MOVE_EFFECT_PREVENT_ESCAPE 32
|
||||
#define MOVE_EFFECT_NIGHTMARE 33
|
||||
#define MOVE_EFFECT_ALL_STATS_UP 34
|
||||
#define MOVE_EFFECT_RAPIDSPIN 35
|
||||
#define MOVE_EFFECT_REMOVE_PARALYSIS 36
|
||||
#define MOVE_EFFECT_ATK_DEF_DOWN 37
|
||||
#define MOVE_EFFECT_RECOIL_33 38
|
||||
#define MOVE_EFFECT_ATK_PLUS_2 39
|
||||
#define MOVE_EFFECT_DEF_PLUS_2 40
|
||||
#define MOVE_EFFECT_SPD_PLUS_2 41
|
||||
#define MOVE_EFFECT_SP_ATK_PLUS_2 42
|
||||
#define MOVE_EFFECT_SP_DEF_PLUS_2 43
|
||||
#define MOVE_EFFECT_ACC_PLUS_2 44
|
||||
#define MOVE_EFFECT_EVS_PLUS_2 45
|
||||
#define MOVE_EFFECT_ATK_MINUS_2 46
|
||||
#define MOVE_EFFECT_DEF_MINUS_2 47
|
||||
#define MOVE_EFFECT_SPD_MINUS_2 48
|
||||
#define MOVE_EFFECT_SP_ATK_MINUS_2 49
|
||||
#define MOVE_EFFECT_SP_DEF_MINUS_2 50
|
||||
#define MOVE_EFFECT_ACC_MINUS_2 51
|
||||
#define MOVE_EFFECT_EVS_MINUS_2 52
|
||||
#define MOVE_EFFECT_THRASH 53
|
||||
#define MOVE_EFFECT_KNOCK_OFF 54
|
||||
#define MOVE_EFFECT_NOTHING_37 55
|
||||
#define MOVE_EFFECT_NOTHING_38 56
|
||||
#define MOVE_EFFECT_NOTHING_39 57
|
||||
#define MOVE_EFFECT_NOTHING_3A 58
|
||||
#define MOVE_EFFECT_SP_ATK_TWO_DOWN 59
|
||||
#define NUM_MOVE_EFFECTS 60
|
||||
|
||||
#define MOVE_EFFECT_AFFECTS_USER (1 << 6) // 64
|
||||
#define MOVE_EFFECT_CERTAIN (1 << 7) // 128
|
||||
|
||||
// Battle terrain defines for gBattleTerrain.
|
||||
#define BATTLE_TERRAIN_GRASS 0
|
||||
@@ -327,6 +327,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
|
||||
|
||||
@@ -38,16 +38,16 @@
|
||||
#define BS_ATTACKER 1
|
||||
#define BS_EFFECT_BATTLER 2
|
||||
#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_UNKNOWN_6 6 // for openpartyscreen
|
||||
#define BS_BATTLER_0 7
|
||||
#define BS_ATTACKER_SIDE 8 // for atk1E_jumpifability
|
||||
#define BS_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability
|
||||
#define BS_ATTACKER_SIDE 8 // for Cmd_jumpifability
|
||||
#define BS_NOT_ATTACKER_SIDE 9 // for Cmd_jumpifability
|
||||
#define BS_SCRIPTING 10
|
||||
#define BS_PLAYER1 11
|
||||
#define BS_OPPONENT1 12
|
||||
#define BS_PLAYER2 13 // for atk98_updatestatusicon
|
||||
#define BS_PLAYER2 13 // for Cmd_updatestatusicon
|
||||
#define BS_OPPONENT2 14
|
||||
|
||||
// used for openpartyscreen
|
||||
@@ -90,35 +90,35 @@
|
||||
// atk4F, a flag used for the jumpifcantswitch command
|
||||
#define ATK4F_DONT_CHECK_STATUSES 0x80
|
||||
|
||||
// statchange defines
|
||||
#define STAT_CHANGE_BS_PTR 0x1
|
||||
#define STAT_CHANGE_NOT_PROTECT_AFFECTED 0x20
|
||||
// Cmd_statbuffchange
|
||||
#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 (1 << 5)
|
||||
|
||||
// atk48
|
||||
#define ATK48_STAT_NEGATIVE 0x1
|
||||
#define ATK48_STAT_BY_TWO 0x2
|
||||
#define ATK48_ONLY_MULTIPLE 0x4
|
||||
#define ATK48_DONT_CHECK_LOWER 0x8
|
||||
// stat change flags for Cmd_playstatchangeanimation
|
||||
#define STAT_CHANGE_NEGATIVE (1 << 0)
|
||||
#define STAT_CHANGE_BY_TWO (1 << 1)
|
||||
#define STAT_CHANGE_MULTIPLE_STATS (1 << 2)
|
||||
#define STAT_CHANGE_CANT_PREVENT (1 << 3)
|
||||
|
||||
// atk49, moveend cases
|
||||
#define ATK49_RAGE 0
|
||||
#define ATK49_DEFROST 1
|
||||
#define ATK49_SYNCHRONIZE_TARGET 2
|
||||
#define ATK49_MOVE_END_ABILITIES 3
|
||||
#define ATK49_STATUS_IMMUNITY_ABILITIES 4
|
||||
#define ATK49_SYNCHRONIZE_ATTACKER 5
|
||||
#define ATK49_CHOICE_MOVE 6
|
||||
#define ATK49_CHANGED_ITEMS 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
|
||||
// cases for Cmd_moveend
|
||||
#define MOVEEND_RAGE 0
|
||||
#define MOVEEND_DEFROST 1
|
||||
#define MOVEEND_SYNCHRONIZE_TARGET 2
|
||||
#define MOVEEND_ON_DAMAGE_ABILITIES 3
|
||||
#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
|
||||
|
||||
#define BIT_HP 0x1
|
||||
#define BIT_ATK 0x2
|
||||
|
||||
@@ -361,6 +361,9 @@
|
||||
|
||||
#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_SWORDS_DANCE 1
|
||||
#define MOVETUTOR_MEGA_KICK 2
|
||||
|
||||
+16
-10
@@ -161,17 +161,23 @@
|
||||
#define NATURE_QUIRKY 24
|
||||
|
||||
// Pokemon Stats
|
||||
#define STAT_HP 0
|
||||
#define STAT_ATK 1
|
||||
#define STAT_DEF 2
|
||||
#define STAT_SPEED 3
|
||||
#define STAT_SPATK 4
|
||||
#define STAT_SPDEF 5
|
||||
#define STAT_ACC 6 // only in battles
|
||||
#define STAT_EVASION 7 // only in battles
|
||||
#define STAT_HP 0
|
||||
#define STAT_ATK 1
|
||||
#define STAT_DEF 2
|
||||
#define STAT_SPEED 3
|
||||
#define STAT_SPATK 4
|
||||
#define STAT_SPDEF 5
|
||||
#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
|
||||
#define SHINY_ODDS 8 // Actual probability is SHINY_ODDS/65536
|
||||
|
||||
+8
-7
@@ -245,12 +245,13 @@ struct BattleMove
|
||||
|
||||
extern const struct BattleMove gBattleMoves[];
|
||||
|
||||
#define FLAG_MAKES_CONTACT 0x1
|
||||
#define FLAG_PROTECT_AFFECTED 0x2
|
||||
#define FLAG_MAGICCOAT_AFFECTED 0x4
|
||||
#define FLAG_SNATCH_AFFECTED 0x8
|
||||
#define FLAG_MIRROR_MOVE_AFFECTED 0x10
|
||||
#define FLAG_KINGSROCK_AFFECTED 0x20
|
||||
// Battle move flags
|
||||
#define FLAG_MAKES_CONTACT (1 << 0)
|
||||
#define FLAG_PROTECT_AFFECTED (1 << 1)
|
||||
#define FLAG_MAGIC_COAT_AFFECTED (1 << 2)
|
||||
#define FLAG_SNATCH_AFFECTED (1 << 3)
|
||||
#define FLAG_MIRROR_MOVE_AFFECTED (1 << 4)
|
||||
#define FLAG_KINGS_ROCK_AFFECTED (1 << 5)
|
||||
|
||||
struct SpindaSpot
|
||||
{
|
||||
@@ -396,7 +397,7 @@ u8 CalculatePPWithBonus(u16 move, u8 ppBonuses, u8 moveIndex);
|
||||
void RemoveMonPPBonus(struct Pokemon *mon, u8 moveIndex);
|
||||
void RemoveBattleMonPPBonus(struct BattlePokemon *mon, 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);
|
||||
u8 GetItemEffectParamOffset(u16 itemId, u8 effectByte, u8 effectBit);
|
||||
const u8 *Battle_PrintStatBoosterEffectMessage(u16 itemId);
|
||||
|
||||
+1
-1
@@ -154,7 +154,7 @@
|
||||
#define NUM_TEXT_PRINTERS 32
|
||||
|
||||
#define TEXT_SPEED_INSTANT 0
|
||||
#define TEXT_SPEED_FF 0xFF
|
||||
#define TEXT_SKIP_DRAW 0xFF
|
||||
|
||||
enum
|
||||
{
|
||||
|
||||
@@ -1384,13 +1384,13 @@ extern u16 gBattleWeather;
|
||||
|
||||
static void Cmd_get_weather(void)
|
||||
{
|
||||
if (gBattleWeather & WEATHER_RAIN_ANY)
|
||||
if (gBattleWeather & B_WEATHER_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;
|
||||
if (gBattleWeather & WEATHER_SUN_ANY)
|
||||
if (gBattleWeather & B_WEATHER_SUN)
|
||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_SUNNY;
|
||||
if (gBattleWeather & WEATHER_HAIL)
|
||||
if (gBattleWeather & B_WEATHER_HAIL_TEMPORARY)
|
||||
AI_THINKING_STRUCT->funcResult = WEATHER_TYPE_HAIL;
|
||||
|
||||
sAIScriptPtr += 1;
|
||||
|
||||
@@ -5262,13 +5262,13 @@ static void AnimRecycleStep(struct Sprite *sprite)
|
||||
void AnimTask_GetWeather(u8 taskId)
|
||||
{
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_NONE;
|
||||
if (gWeatherMoveAnim & WEATHER_SUN_ANY)
|
||||
if (gWeatherMoveAnim & B_WEATHER_SUN)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_SUN;
|
||||
else if (gWeatherMoveAnim & WEATHER_RAIN_ANY)
|
||||
else if (gWeatherMoveAnim & B_WEATHER_RAIN)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_RAIN;
|
||||
else if (gWeatherMoveAnim & WEATHER_SANDSTORM_ANY)
|
||||
else if (gWeatherMoveAnim & B_WEATHER_SANDSTORM)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_SANDSTORM;
|
||||
else if (gWeatherMoveAnim & WEATHER_HAIL_ANY)
|
||||
else if (gWeatherMoveAnim & B_WEATHER_HAIL)
|
||||
gBattleAnimArgs[7] = ANIM_WEATHER_HAIL;
|
||||
|
||||
DestroyAnimVisualTask(taskId);
|
||||
|
||||
@@ -2272,7 +2272,7 @@ static const struct PokedudeTextScriptHeader sPokedudeTextScripts_Catching[] =
|
||||
.callback = PokedudeAction_PrintVoiceoverMessage,
|
||||
},
|
||||
{
|
||||
.btlcmd = CONTROLLER_55,
|
||||
.btlcmd = CONTROLLER_ENDLINKBATTLE,
|
||||
.side = B_SIDE_PLAYER,
|
||||
.callback = PokedudeAction_PrintVoiceoverMessage,
|
||||
},
|
||||
|
||||
+15
-11
@@ -621,10 +621,10 @@ void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubs
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||
}
|
||||
|
||||
void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1)
|
||||
void BtlController_EmitReturnMonToBall(u8 bufferId, bool8 skipAnim)
|
||||
{
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_RETURNMONTOBALL;
|
||||
sBattleBuffersTransferData[1] = arg1;
|
||||
sBattleBuffersTransferData[1] = skipAnim;
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||
}
|
||||
|
||||
@@ -934,16 +934,19 @@ static void BtlController_EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, voi
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, size + 7);
|
||||
}
|
||||
|
||||
// not used
|
||||
static void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter)
|
||||
// Unused
|
||||
static void BtlController_EmitPlayBGM(u8 bufferId, u16 songId, void *data)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_31;
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_PLAYBGM;
|
||||
sBattleBuffersTransferData[1] = songId;
|
||||
sBattleBuffersTransferData[2] = (songId & 0xFF00) >> 8;
|
||||
|
||||
// Nonsense loop using songId as a size
|
||||
// Would go out of bounds for any song id after SE_RG_BAG_POCKET (253)
|
||||
for (i = 0; i < songId; ++i)
|
||||
sBattleBuffersTransferData[3 + i] = *(u8 *)(unusedDumbDataParameter++);
|
||||
sBattleBuffersTransferData[3 + i] = *(u8 *)(data++);
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, songId + 3);
|
||||
}
|
||||
|
||||
@@ -1045,7 +1048,7 @@ void BtlController_EmitHitAnimation(u8 bufferId)
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 4);
|
||||
}
|
||||
|
||||
void BtlController_EmitCmd42(u8 bufferId)
|
||||
void BtlController_EmitCantSwitch(u8 bufferId)
|
||||
{
|
||||
sBattleBuffersTransferData[0] = CONTROLLER_42;
|
||||
sBattleBuffersTransferData[1] = CONTROLLER_42;
|
||||
@@ -1146,10 +1149,11 @@ void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument
|
||||
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[1] = arg1;
|
||||
sBattleBuffersTransferData[1] = mode;
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||
}
|
||||
|
||||
@@ -1160,9 +1164,9 @@ void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId)
|
||||
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;
|
||||
PrepareBufferDataTransfer(bufferId, sBattleBuffersTransferData, 2);
|
||||
}
|
||||
|
||||
+26
-26
@@ -2468,7 +2468,7 @@ static void BattleIntroDrawTrainersOrMonsSprites(void)
|
||||
u8 *ptr;
|
||||
s32 i;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
@@ -2554,7 +2554,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
|
||||
s32 i;
|
||||
struct HpAndStatus hpStatus[PARTY_SIZE];
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
|
||||
{
|
||||
@@ -2621,7 +2621,7 @@ static void BattleIntroDrawPartySummaryScreens(void)
|
||||
|
||||
static void BattleIntroPrintTrainerWantsToBattle(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gActiveBattler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
|
||||
PrepareStringBattle(STRINGID_INTROMSG, gActiveBattler);
|
||||
@@ -2631,7 +2631,7 @@ static void BattleIntroPrintTrainerWantsToBattle(void)
|
||||
|
||||
static void BattleIntroPrintWildMonAttacked(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
||||
PrepareStringBattle(STRINGID_INTROMSG, 0);
|
||||
@@ -2645,7 +2645,7 @@ static void BattleIntroPrintWildMonAttacked(void)
|
||||
|
||||
static void BattleIntroPrintOpponentSendsOut(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT));
|
||||
gBattleMainFunc = BattleIntroOpponentSendsOutMonAnimation;
|
||||
@@ -2654,7 +2654,7 @@ static void BattleIntroPrintOpponentSendsOut(void)
|
||||
|
||||
static void BattleIntroOpponentSendsOutMonAnimation(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
@@ -2675,7 +2675,7 @@ static void BattleIntroOpponentSendsOutMonAnimation(void)
|
||||
|
||||
static void BattleIntroRecordMonsToDex(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
if (GetBattlerSide(gActiveBattler) == B_SIDE_OPPONENT
|
||||
@@ -2693,13 +2693,13 @@ static void BattleIntroRecordMonsToDex(void)
|
||||
// not used
|
||||
static void Unused_AutoProgressToIntro(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleMainFunc = BattleIntroPrintPlayerSendsOut;
|
||||
}
|
||||
|
||||
void BattleIntroPrintPlayerSendsOut(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI))
|
||||
PrepareStringBattle(STRINGID_INTROSENDOUT, GetBattlerAtPosition(B_POSITION_PLAYER_LEFT));
|
||||
@@ -2711,7 +2711,7 @@ static void BattleIntroPlayerSendsOutMonAnimation(void)
|
||||
{
|
||||
u32 position;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
@@ -2736,7 +2736,7 @@ static void BattleIntroPlayerSendsOutMonAnimation(void)
|
||||
// not used
|
||||
static void Unused_AutoProgressToSwitchInAnims(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
for (gActiveBattler = 0; gActiveBattler < gBattlersCount; ++gActiveBattler)
|
||||
{
|
||||
@@ -2758,7 +2758,7 @@ static void TryDoEventsBeforeFirstTurn(void)
|
||||
s32 i, j;
|
||||
u8 effect = 0;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
|
||||
if (gBattleStruct->switchInAbilitiesCounter == 0)
|
||||
@@ -2819,7 +2819,7 @@ static void TryDoEventsBeforeFirstTurn(void)
|
||||
*(&gBattleStruct->turnEffectsBattlerId) = 0;
|
||||
*(&gBattleStruct->wishPerishSongState) = 0;
|
||||
*(&gBattleStruct->wishPerishSongBattlerId) = 0;
|
||||
gBattleScripting.atk49_state = 0;
|
||||
gBattleScripting.moveendState = 0;
|
||||
gBattleStruct->faintedActionsState = 0;
|
||||
gBattleStruct->turnCountersTracker = 0;
|
||||
gMoveResultFlags = 0;
|
||||
@@ -2831,7 +2831,7 @@ static void HandleEndTurn_ContinueBattle(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gBattleMainFunc = BattleTurnPassed;
|
||||
for (i = 0; i < BATTLE_COMMUNICATION_ENTRIES_COUNT; ++i)
|
||||
@@ -2875,7 +2875,7 @@ void BattleTurnPassed(void)
|
||||
gHitMarker &= ~(HITMARKER_PASSIVE_DAMAGE);
|
||||
gBattleScripting.animTurn = 0;
|
||||
gBattleScripting.animTargetsHit = 0;
|
||||
gBattleScripting.atk49_state = 0;
|
||||
gBattleScripting.moveendState = 0;
|
||||
gBattleMoveDamage = 0;
|
||||
gMoveResultFlags = 0;
|
||||
for (i = 0; i < 5; ++i)
|
||||
@@ -3254,9 +3254,9 @@ static void HandleTurnActionSelectionState(void)
|
||||
if (((gBattleTypeFlags & (BATTLE_TYPE_MULTI | BATTLE_TYPE_DOUBLE)) != BATTLE_TYPE_DOUBLE)
|
||||
|| (position & BIT_FLANK) != B_FLANK_LEFT
|
||||
|| (*(&gBattleStruct->absentBattlerFlags) & gBitTable[GetBattlerAtPosition(position ^ BIT_FLANK)]))
|
||||
BtlController_EmitLinkStandbyMsg(0, 0);
|
||||
BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_MSG_STOP_BOUNCE);
|
||||
else
|
||||
BtlController_EmitLinkStandbyMsg(0, 1);
|
||||
BtlController_EmitLinkStandbyMsg(BUFFER_A, LINK_STANDBY_STOP_BOUNCE_ONLY);
|
||||
MarkBattlerForControllerExec(gActiveBattler);
|
||||
++gBattleCommunication[gActiveBattler];
|
||||
}
|
||||
@@ -3309,13 +3309,13 @@ u8 GetWhoStrikesFirst(u8 battler1, u8 battler2, bool8 ignoreChosenMoves)
|
||||
|
||||
if (WEATHER_HAS_EFFECT)
|
||||
{
|
||||
if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY)
|
||||
|| (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY))
|
||||
if ((gBattleMons[battler1].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN)
|
||||
|| (gBattleMons[battler1].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN))
|
||||
speedMultiplierBattler1 = 2;
|
||||
else
|
||||
speedMultiplierBattler1 = 1;
|
||||
if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & WEATHER_RAIN_ANY)
|
||||
|| (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & WEATHER_SUN_ANY))
|
||||
if ((gBattleMons[battler2].ability == ABILITY_SWIFT_SWIM && gBattleWeather & B_WEATHER_RAIN)
|
||||
|| (gBattleMons[battler2].ability == ABILITY_CHLOROPHYLL && gBattleWeather & B_WEATHER_SUN))
|
||||
speedMultiplierBattler2 = 2;
|
||||
else
|
||||
speedMultiplierBattler2 = 1;
|
||||
@@ -3751,7 +3751,7 @@ static void HandleEndTurn_FinishBattle(void)
|
||||
gBattleMainFunc = FreeResetData_ReturnToOvOrDoEvolutions;
|
||||
gCB2_AfterEvolution = BattleMainCB2;
|
||||
}
|
||||
else if (!gBattleControllerExecFlags)
|
||||
else if (gBattleControllerExecFlags == 0)
|
||||
{
|
||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||
}
|
||||
@@ -3847,14 +3847,14 @@ void RunBattleScriptCommands_PopCallbacksStack(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||
}
|
||||
}
|
||||
|
||||
void RunBattleScriptCommands(void)
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleScriptingCommandsTable[gBattlescriptCurrInstr[0]]();
|
||||
}
|
||||
|
||||
@@ -4088,7 +4088,7 @@ static void HandleAction_UseItem(void)
|
||||
while (!(*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) & 1))
|
||||
{
|
||||
*(gBattleStruct->AI_itemFlags + gBattlerAttacker / 2) >>= 1;
|
||||
++gBattleCommunication[MULTISTRING_CHOOSER];
|
||||
gBattleCommunication[MULTISTRING_CHOOSER]++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -4367,7 +4367,7 @@ static void HandleAction_ActionFinished(void)
|
||||
gLastHitByType[gBattlerAttacker] = 0;
|
||||
gBattleStruct->dynamicMoveType = 0;
|
||||
gDynamicBasePower = 0;
|
||||
gBattleScripting.atk49_state = 0;
|
||||
gBattleScripting.moveendState = 0;
|
||||
gBattleCommunication[MOVE_EFFECT_BYTE] = 0;
|
||||
gBattleCommunication[ACTIONS_CONFIRMED_COUNT] = 0;
|
||||
gBattleScripting.multihitMoveEffect = 0;
|
||||
|
||||
+1585
-1539
File diff suppressed because it is too large
Load Diff
+34
-34
@@ -568,22 +568,22 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
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)
|
||||
{
|
||||
gBattleWeather &= ~WEATHER_RAIN_TEMPORARY;
|
||||
gBattleWeather &= ~WEATHER_RAIN_DOWNPOUR;
|
||||
gBattleWeather &= ~B_WEATHER_RAIN_TEMPORARY;
|
||||
gBattleWeather &= ~B_WEATHER_RAIN_DOWNPOUR;
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
|
||||
}
|
||||
else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR)
|
||||
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||
else
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
|
||||
}
|
||||
else if (gBattleWeather & WEATHER_RAIN_DOWNPOUR)
|
||||
else if (gBattleWeather & B_WEATHER_RAIN_DOWNPOUR)
|
||||
{
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||
}
|
||||
@@ -597,11 +597,11 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
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;
|
||||
}
|
||||
else
|
||||
@@ -616,11 +616,11 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
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;
|
||||
}
|
||||
else
|
||||
@@ -633,11 +633,11 @@ u8 DoFieldEndTurnEffects(void)
|
||||
++gBattleStruct->turnCountersTracker;
|
||||
break;
|
||||
case ENDTURN_HAIL:
|
||||
if (gBattleWeather & WEATHER_HAIL_ANY)
|
||||
if (gBattleWeather & B_WEATHER_HAIL)
|
||||
{
|
||||
if (--gWishFutureKnock.weatherDuration == 0)
|
||||
{
|
||||
gBattleWeather &= ~WEATHER_HAIL;
|
||||
gBattleWeather &= ~B_WEATHER_HAIL_TEMPORARY;
|
||||
gBattlescriptCurrInstr = BattleScript_SandStormHailEnds;
|
||||
}
|
||||
else
|
||||
@@ -1093,7 +1093,7 @@ bool8 HandleFaintedMonActions(void)
|
||||
++gBattleStruct->faintedActionsState;
|
||||
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]);
|
||||
}
|
||||
// fall through
|
||||
@@ -1552,22 +1552,22 @@ u8 CastformDataTypeChange(u8 battler)
|
||||
}
|
||||
if (!WEATHER_HAS_EFFECT)
|
||||
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);
|
||||
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);
|
||||
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);
|
||||
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);
|
||||
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_THUNDERSTORM:
|
||||
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.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
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.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
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.battler = battler;
|
||||
++effect;
|
||||
@@ -1665,27 +1665,27 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
||||
}
|
||||
break;
|
||||
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);
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
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);
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
}
|
||||
break;
|
||||
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);
|
||||
gBattleScripting.battler = battler;
|
||||
++effect;
|
||||
@@ -1739,7 +1739,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA
|
||||
switch (gLastUsedAbility)
|
||||
{
|
||||
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)
|
||||
{
|
||||
gLastUsedAbility = ABILITY_RAIN_DISH; // why
|
||||
@@ -2971,7 +2971,7 @@ u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn)
|
||||
if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)
|
||||
&& TARGET_TURN_DAMAGED
|
||||
&& (Random() % 100) < battlerHoldEffectParam
|
||||
&& gBattleMoves[gCurrentMove].flags & FLAG_KINGSROCK_AFFECTED
|
||||
&& gBattleMoves[gCurrentMove].flags & FLAG_KINGS_ROCK_AFFECTED
|
||||
&& gBattleMons[gBattlerTarget].hp)
|
||||
{
|
||||
gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_FLINCH;
|
||||
@@ -3016,7 +3016,7 @@ void ClearFuryCutterDestinyBondGrudge(u8 battlerId)
|
||||
|
||||
void HandleAction_RunBattleScript(void) // identical to RunBattleScriptCommands
|
||||
{
|
||||
if (!gBattleControllerExecFlags)
|
||||
if (gBattleControllerExecFlags == 0)
|
||||
gBattleScriptingCommandsTable[*gBattlescriptCurrInstr]();
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -79,7 +79,7 @@ static void PrintNewCountOnLinkPlayerCountDisplayWindow(u16 windowId, s32 num)
|
||||
ConvertIntToDecimalStringN(gStringVar1, num, STR_CONV_MODE_LEFT_ALIGN, 1);
|
||||
SetStdWindowBorderStyle(windowId, FALSE);
|
||||
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);
|
||||
}
|
||||
|
||||
|
||||
+171
-171
File diff suppressed because it is too large
Load Diff
@@ -2379,14 +2379,14 @@ static void sub_81538D0(u8 windowId)
|
||||
TextWindow_SetStdFrame0_WithPal(windowId, 0x21D, 0xD0);
|
||||
DrawTextBorderOuter(windowId, 0x21D, 0xD);
|
||||
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++)
|
||||
{
|
||||
ConvertIntToDecimalStringN(strbuf, results[i], STR_CONV_MODE_LEFT_ALIGN, sUnknown_84755F8[i]);
|
||||
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;
|
||||
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);
|
||||
}
|
||||
|
||||
@@ -1499,7 +1499,7 @@ static void sub_8155C80(void)
|
||||
break;
|
||||
case 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);
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
|
||||
+7
-7
@@ -1321,7 +1321,7 @@ static void PrintTitleText(void)
|
||||
|
||||
xOffset = (128 - GetStringWidth(1, titleText, 0)) / 2u;
|
||||
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);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
}
|
||||
@@ -1374,10 +1374,10 @@ static void PrintECInterfaceTextById(u8 direction)
|
||||
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||
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)
|
||||
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);
|
||||
}
|
||||
@@ -1451,7 +1451,7 @@ static void PrintECFields(void)
|
||||
}
|
||||
|
||||
*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);
|
||||
@@ -1566,7 +1566,7 @@ static void PrintECGroupsMenu(void)
|
||||
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;
|
||||
@@ -1578,7 +1578,7 @@ static void PrintEasyChatKeyboardText(void)
|
||||
u32 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)
|
||||
@@ -1652,7 +1652,7 @@ static void PrintECRowsWin2(u8 row, u8 remrow)
|
||||
|
||||
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;
|
||||
|
||||
+20
-20
@@ -673,7 +673,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
ShowBg(2);
|
||||
ShowBg(3);
|
||||
break;
|
||||
case EVOSTATE_INTRO_MSG: // print 'whoa, poke is evolving!!!' msg
|
||||
case EVOSTATE_INTRO_MSG:
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gText_PkmnIsEvolving);
|
||||
@@ -681,7 +681,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_INTRO_MON_ANIM: // wait for string, animate mon(and play its cry)
|
||||
case EVOSTATE_INTRO_MON_ANIM:
|
||||
if (!IsTextPrinterActive(0))
|
||||
{
|
||||
PlayCry_Normal(gTasks[taskId].tPreEvoSpecies, 0);
|
||||
@@ -695,7 +695,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_START_MUSIC: // play evolution music and fade screen black
|
||||
case EVOSTATE_START_MUSIC:
|
||||
if (!IsSEPlaying())
|
||||
{
|
||||
// Start music, fade background to black
|
||||
@@ -704,7 +704,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
BeginNormalPaletteFade(0x1C, 4, 0, 0x10, RGB_BLACK);
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_START_BG_AND_SPARKLE_SPIRAL: // launch moving bg task, preapre evo sparkles
|
||||
case EVOSTATE_START_BG_AND_SPARKLE_SPIRAL:
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
StartBgAnimation(FALSE);
|
||||
@@ -712,7 +712,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_SPARKLE_ARC: // another set of evo sparkles
|
||||
case EVOSTATE_SPARKLE_ARC:
|
||||
if (!gTasks[sEvoGraphicsTaskId].isActive)
|
||||
{
|
||||
gTasks[taskId].tState++;
|
||||
@@ -720,14 +720,14 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
sEvoGraphicsTaskId = EvolutionSparkles_ArcDown();
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_CYCLE_MON_SPRITE: // launch task that flashes pre evo with post evo sprites
|
||||
case EVOSTATE_CYCLE_MON_SPRITE:
|
||||
if (!gTasks[sEvoGraphicsTaskId].isActive)
|
||||
{
|
||||
sEvoGraphicsTaskId = CycleEvolutionMonSprite(sEvoStructPtr->preEvoSpriteId, sEvoStructPtr->postEvoSpriteId);
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_WAIT_CYCLE_MON_SPRITE: // wait for the above task to finish
|
||||
case EVOSTATE_WAIT_CYCLE_MON_SPRITE:
|
||||
if (--sEvoStructPtr->delayTimer == 0)
|
||||
{
|
||||
sEvoStructPtr->delayTimer = 3;
|
||||
@@ -735,7 +735,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_SPARKLE_CIRCLE: // post evo sparkles
|
||||
case EVOSTATE_SPARKLE_CIRCLE:
|
||||
sEvoGraphicsTaskId = EvolutionSparkles_CircleInward();
|
||||
gTasks[taskId].tState++;
|
||||
break;
|
||||
@@ -746,14 +746,14 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_EVO_SOUND: // play tu du sound after evolution
|
||||
case EVOSTATE_EVO_SOUND:
|
||||
if (!gTasks[sEvoGraphicsTaskId].isActive)
|
||||
{
|
||||
PlaySE(SE_EXP);
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_RESTORE_SCREEN: // stop music, return screen to pre-fade state
|
||||
case EVOSTATE_RESTORE_SCREEN:
|
||||
if (IsSEPlaying())
|
||||
{
|
||||
m4aMPlayAllStop();
|
||||
@@ -763,14 +763,14 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_EVO_MON_ANIM: // animate mon
|
||||
case EVOSTATE_EVO_MON_ANIM:
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
PlayCry_Normal(gTasks[taskId].tPostEvoSpecies, 0);
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_SET_MON_EVOLVED: // congratulations string and rename prompt
|
||||
case EVOSTATE_SET_MON_EVOLVED:
|
||||
if (IsCryFinished())
|
||||
{
|
||||
StringExpandPlaceholders(gStringVar4, gText_CongratsPkmnEvolved);
|
||||
@@ -785,7 +785,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
IncrementGameStat(GAME_STAT_EVOLVED_POKEMON);
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_TRY_LEARN_MOVE: // check if it wants to learn a new move
|
||||
case EVOSTATE_TRY_LEARN_MOVE:
|
||||
if (!IsTextPrinterActive(0))
|
||||
{
|
||||
HelpSystem_Enable();
|
||||
@@ -816,7 +816,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
}
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_END: // task has finished, return
|
||||
case EVOSTATE_END:
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
if (!(gTasks[taskId].tBits & TASK_BIT_LEARN_MOVE))
|
||||
@@ -834,7 +834,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
SetMainCallback2(gCB2_AfterEvolution);
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_CANCEL: // evolution has been canceled, stop music and re-fade palette
|
||||
case EVOSTATE_CANCEL:
|
||||
if (!gTasks[sEvoGraphicsTaskId].isActive)
|
||||
{
|
||||
m4aMPlayAllStop();
|
||||
@@ -842,14 +842,14 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_CANCEL_MON_ANIM: // animate pokemon trying to evolve again, evolution has been stopped
|
||||
case EVOSTATE_CANCEL_MON_ANIM:
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
PlayCry_Normal(gTasks[taskId].tPreEvoSpecies, 0);
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_CANCEL_MSG: // after the animation, print the string 'WHOA IT DId NOT EVOLVE!!!'
|
||||
case EVOSTATE_CANCEL_MSG:
|
||||
if (IsCryFinished())
|
||||
{
|
||||
if (gTasks[taskId].tEvoWasStopped)
|
||||
@@ -862,7 +862,7 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_LEARNED_MOVE: // pokemon learned a new move, print string and play a fanfare
|
||||
case EVOSTATE_LEARNED_MOVE:
|
||||
if (!IsTextPrinterActive(0) && !IsSEPlaying())
|
||||
{
|
||||
BufferMoveToLearnIntoBattleTextBuff2();
|
||||
@@ -873,11 +873,11 @@ static void Task_EvolutionScene(u8 taskId)
|
||||
gTasks[taskId].tState++;
|
||||
}
|
||||
break;
|
||||
case EVOSTATE_TRY_LEARN_ANOTHER_MOVE: // wait a bit and check if can learn another move
|
||||
case EVOSTATE_TRY_LEARN_ANOTHER_MOVE:
|
||||
if (!IsTextPrinterActive(0) && !IsSEPlaying() && --gTasks[taskId].tLearnsFirstMove == 0)
|
||||
gTasks[taskId].tState = EVOSTATE_TRY_LEARN_MOVE;
|
||||
break;
|
||||
case EVOSTATE_REPLACE_MOVE: // try to learn a new move
|
||||
case EVOSTATE_REPLACE_MOVE:
|
||||
switch (gTasks[taskId].tLearnMoveState)
|
||||
{
|
||||
case MVSTATE_INTRO_MSG_1:
|
||||
|
||||
+1
-1
@@ -1040,7 +1040,7 @@ static void gTask_ItemPcWaitButtonAndExitSubmenu(u8 taskId)
|
||||
if (JOY_NEW(A_BUTTON))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
ClearDialogWindowAndFrameToTransparent(5, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(5, FALSE);
|
||||
ClearWindowTilemap(5);
|
||||
PutWindowTilemap(1);
|
||||
ItemPc_PrintOrRemoveCursor(data[0], 1);
|
||||
|
||||
+2
-2
@@ -346,7 +346,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y)
|
||||
colors[0] = gListMenuOverride.fillValue;
|
||||
colors[1] = gListMenuOverride.cursorPal;
|
||||
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;
|
||||
}
|
||||
else
|
||||
@@ -354,7 +354,7 @@ static void ListMenuPrint(struct ListMenu *list, const u8 *str, u8 x, u8 y)
|
||||
colors[0] = list->template.fillValue;
|
||||
colors[1] = list->template.cursorPal;
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -199,7 +199,7 @@ static void MapNamePopupPrintMapNameOnWindow(u16 windowId)
|
||||
}
|
||||
xpos = (maxWidth - GetStringWidth(2, mapName, -1)) / 2;
|
||||
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)
|
||||
|
||||
+2
-2
@@ -1666,7 +1666,7 @@ static void AddGenderIconFunc_Yes(void)
|
||||
StringCopy(genderSymbol, gText_FemaleSymbol);
|
||||
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];
|
||||
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();
|
||||
|
||||
+1
-1
@@ -1109,7 +1109,7 @@ static void Task_OakSpeech20(u8 taskId)
|
||||
static void Task_OakSpeech21(u8 taskId)
|
||||
{
|
||||
s16 * data = gTasks[taskId].data;
|
||||
ClearStdWindowAndFrameToTransparent(data[13], 1);
|
||||
ClearStdWindowAndFrameToTransparent(data[13], TRUE);
|
||||
RemoveWindow(data[13]);
|
||||
data[13] = 0;
|
||||
ClearDialogWindowAndFrame(0, 1);
|
||||
|
||||
+2
-2
@@ -524,7 +524,7 @@ static void CloseAndSaveOptionMenu(u8 taskId)
|
||||
static void PrintOptionMenuHeader(void)
|
||||
{
|
||||
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);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
}
|
||||
@@ -560,7 +560,7 @@ static void LoadOptionMenuItemNames(void)
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+4
-4
@@ -1550,7 +1550,7 @@ static void Task_PrintAndWaitForText(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].tKeepOpen == FALSE)
|
||||
{
|
||||
ClearStdWindowAndFrameToTransparent(6, 0);
|
||||
ClearStdWindowAndFrameToTransparent(6, FALSE);
|
||||
ClearWindowTilemap(6);
|
||||
}
|
||||
DestroyTask(taskId);
|
||||
@@ -1577,7 +1577,7 @@ static void Task_ReturnToChooseMonAfterText(u8 taskId)
|
||||
{
|
||||
if (IsPartyMenuTextPrinterActive() != TRUE)
|
||||
{
|
||||
ClearStdWindowAndFrameToTransparent(6, 0);
|
||||
ClearStdWindowAndFrameToTransparent(6, FALSE);
|
||||
ClearWindowTilemap(6);
|
||||
if (MenuHelpers_LinkSomething() == TRUE)
|
||||
{
|
||||
@@ -2484,7 +2484,7 @@ static void PartyMenuRemoveWindow(u8 *ptr)
|
||||
{
|
||||
if (*ptr != 0xFF)
|
||||
{
|
||||
ClearStdWindowAndFrameToTransparent(*ptr, 0);
|
||||
ClearStdWindowAndFrameToTransparent(*ptr, FALSE);
|
||||
RemoveWindow(*ptr);
|
||||
*ptr = 0xFF;
|
||||
ScheduleBgCopyTilemapToVram(2);
|
||||
@@ -4595,7 +4595,7 @@ static void ShowMoveSelectWindow(u8 slot)
|
||||
gMoveNames[move],
|
||||
GetFontAttribute(fontId, FONTATTR_MAX_LETTER_WIDTH) + GetFontAttribute(fontId, FONTATTR_LETTER_SPACING),
|
||||
(i * 16) + 2,
|
||||
TEXT_SPEED_FF,
|
||||
TEXT_SKIP_DRAW,
|
||||
NULL);
|
||||
if (move != MOVE_NONE)
|
||||
++moveCount;
|
||||
|
||||
@@ -2881,7 +2881,7 @@ void DexScreen_PrintMonFlavorText(u8 windowId, u16 species, u8 x, u8 y)
|
||||
printerTemplate.currentX = x;
|
||||
printerTemplate.currentY = y;
|
||||
|
||||
AddTextPrinter(&printerTemplate, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinter(&printerTemplate, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+5
-5
@@ -2582,7 +2582,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de
|
||||
// are effects of weather negated with cloud nine or air lock
|
||||
if (WEATHER_HAS_EFFECT2)
|
||||
{
|
||||
if (gBattleWeather & WEATHER_RAIN_TEMPORARY)
|
||||
if (gBattleWeather & B_WEATHER_RAIN_TEMPORARY)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
@@ -2596,11 +2596,11 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de
|
||||
}
|
||||
|
||||
// any weather except sun weakens solar beam
|
||||
if ((gBattleWeather & (WEATHER_RAIN_ANY | WEATHER_SANDSTORM_ANY | WEATHER_HAIL)) && gCurrentMove == MOVE_SOLAR_BEAM)
|
||||
if ((gBattleWeather & (B_WEATHER_RAIN | B_WEATHER_SANDSTORM | B_WEATHER_HAIL_TEMPORARY)) && gCurrentMove == MOVE_SOLAR_BEAM)
|
||||
damage /= 2;
|
||||
|
||||
// sunny
|
||||
if (gBattleWeather & WEATHER_SUN_ANY)
|
||||
if (gBattleWeather & B_WEATHER_SUN)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
@@ -3931,7 +3931,7 @@ bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 item, u8 partyIndex,
|
||||
return PokemonUseItemEffects(mon, item, partyIndex, moveIndex, 0);
|
||||
}
|
||||
|
||||
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)
|
||||
{
|
||||
u32 data;
|
||||
s32 friendship;
|
||||
@@ -4201,7 +4201,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
|
||||
}
|
||||
if (GetMonData(mon, MON_DATA_MAX_HP, NULL) != GetMonData(mon, MON_DATA_HP, NULL))
|
||||
{
|
||||
if (e == 0)
|
||||
if (!usedByAI)
|
||||
{
|
||||
data = GetMonData(mon, MON_DATA_HP, NULL) + data;
|
||||
if (data > GetMonData(mon, MON_DATA_MAX_HP, NULL))
|
||||
|
||||
+11
-11
@@ -3169,7 +3169,7 @@ static void Msg_WantToPlayAgain(void)
|
||||
{
|
||||
case 0:
|
||||
sPokemonJumpGfx->msgWindowId = AddMessageWindow(1, 8, 20, 2);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_WantToPlayAgain2, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_WantToPlayAgain2, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX);
|
||||
sPokemonJumpGfx->mainState++;
|
||||
break;
|
||||
@@ -3196,7 +3196,7 @@ static void Msg_SavingDontTurnOff(void)
|
||||
{
|
||||
case 0:
|
||||
sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 7, 26, 4);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_SavingDontTurnOffPower, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_SavingDontTurnOffPower, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX);
|
||||
sPokemonJumpGfx->mainState++;
|
||||
break;
|
||||
@@ -3239,7 +3239,7 @@ static void Msg_SomeoneDroppedOut(void)
|
||||
{
|
||||
case 0:
|
||||
sPokemonJumpGfx->msgWindowId = AddMessageWindow(2, 8, 22, 4);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_SomeoneDroppedOut2, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_SomeoneDroppedOut2, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX);
|
||||
sPokemonJumpGfx->mainState++;
|
||||
break;
|
||||
@@ -3265,7 +3265,7 @@ static void Msg_CommunicationStandby(void)
|
||||
{
|
||||
case 0:
|
||||
sPokemonJumpGfx->msgWindowId = AddMessageWindow(7, 10, 16, 2);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_CommunicationStandby4, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, gText_CommunicationStandby4, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX);
|
||||
sPokemonJumpGfx->mainState++;
|
||||
break;
|
||||
@@ -3358,7 +3358,7 @@ static void PrintPrizeMessage(u16 itemId, u16 quantity)
|
||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(1, sPokemonJumpGfx->itemQuantityStr);
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_AwesomeWonF701F700);
|
||||
sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, sPokemonJumpGfx->prizeMsg, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, sPokemonJumpGfx->prizeMsg, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX);
|
||||
sPokemonJumpGfx->fanfare = MUS_LEVEL_UP;
|
||||
sPokemonJumpGfx->msgWindowState = 0;
|
||||
@@ -3371,7 +3371,7 @@ static void PrintPrizeFilledBagMessage(u16 itemId)
|
||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPokemonJumpGfx->itemName);
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_FilledStorageSpace2);
|
||||
sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 8, 22, 4);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, sPokemonJumpGfx->prizeMsg, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, sPokemonJumpGfx->prizeMsg, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX);
|
||||
sPokemonJumpGfx->fanfare = MUS_DUMMY;
|
||||
sPokemonJumpGfx->msgWindowState = 0;
|
||||
@@ -3384,7 +3384,7 @@ static void PrintNoRoomForPrizeMessage(u16 itemId)
|
||||
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sPokemonJumpGfx->itemName);
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(sPokemonJumpGfx->prizeMsg, gText_CantHoldMore);
|
||||
sPokemonJumpGfx->msgWindowId = AddMessageWindow(4, 9, 22, 2);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, sPokemonJumpGfx->prizeMsg, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sPokemonJumpGfx->msgWindowId, 2, sPokemonJumpGfx->prizeMsg, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
CopyWindowToVram(sPokemonJumpGfx->msgWindowId, COPYWIN_GFX);
|
||||
sPokemonJumpGfx->fanfare = MUS_DUMMY;
|
||||
sPokemonJumpGfx->msgWindowState = 0;
|
||||
@@ -3728,7 +3728,7 @@ static void PrintPokeJumpPlayerName(int multiplayerId, u8 bgColor, u8 fgColor, u
|
||||
FillWindowPixelBuffer(sPokemonJumpGfx->nameWindowIds[multiplayerId], PIXEL_FILL(0));
|
||||
x = 64 - GetStringWidth(0, GetPokeJumpPlayerName(multiplayerId), -1);
|
||||
x /= 2;
|
||||
AddTextPrinterParameterized3(sPokemonJumpGfx->nameWindowIds[multiplayerId], 0, x, 2, colors, TEXT_SPEED_FF, GetPokeJumpPlayerName(multiplayerId));
|
||||
AddTextPrinterParameterized3(sPokemonJumpGfx->nameWindowIds[multiplayerId], 0, x, 2, colors, TEXT_SKIP_DRAW, GetPokeJumpPlayerName(multiplayerId));
|
||||
CopyWindowToVram(sPokemonJumpGfx->nameWindowIds[multiplayerId], COPYWIN_GFX);
|
||||
}
|
||||
|
||||
@@ -4557,14 +4557,14 @@ static void PrintRecordsText(u16 windowId)
|
||||
TextWindow_SetStdFrame0_WithPal(windowId, 0x21D, 0xD0);
|
||||
DrawTextBorderOuter(windowId, 0x21D, 0xD);
|
||||
FillWindowPixelBuffer(windowId, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized5(windowId, 2, gText_PkmnJumpRecords, 0, 0, TEXT_SPEED_FF, NULL, 1, 0);
|
||||
AddTextPrinterParameterized5(windowId, 2, gText_PkmnJumpRecords, 0, 0, TEXT_SKIP_DRAW, NULL, 1, 0);
|
||||
for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++)
|
||||
{
|
||||
AddTextPrinterParameterized5(windowId, 2, sRecordsTexts[i], 0, 20 + (i * 14), TEXT_SPEED_FF, NULL, 1, 0);
|
||||
AddTextPrinterParameterized5(windowId, 2, sRecordsTexts[i], 0, 20 + (i * 14), TEXT_SKIP_DRAW, NULL, 1, 0);
|
||||
ConvertIntToDecimalStringN(strbuf, recordNums[i], STR_CONV_MODE_LEFT_ALIGN, 5);
|
||||
TruncateToFirstWordOnly(strbuf);
|
||||
x = 0xDE - GetStringWidth(2, strbuf, 0);
|
||||
AddTextPrinterParameterized5(windowId, 2, strbuf, x, 20 + (i * 14), TEXT_SPEED_FF, NULL, 0, 0);
|
||||
AddTextPrinterParameterized5(windowId, 2, strbuf, x, 20 + (i * 14), TEXT_SKIP_DRAW, NULL, 0, 0);
|
||||
}
|
||||
PutWindowTilemap(windowId);
|
||||
}
|
||||
|
||||
@@ -1508,13 +1508,13 @@ void DrawLevelUpWindowPg1(u16 windowId, u16 *beforeStats, u16 *afterStats, u8 bg
|
||||
|
||||
for (i = 0; i < 6; i++)
|
||||
{
|
||||
AddTextPrinterParameterized3(windowId, 2, 0, i * 15, textColor, TEXT_SPEED_FF, sLevelUpWindowStatNames[i]);
|
||||
AddTextPrinterParameterized3(windowId, 2, 0, i * 15, textColor, TEXT_SKIP_DRAW, sLevelUpWindowStatNames[i]);
|
||||
StringCopy(textbuf, diffStats[i] >= 0 ? gUnknown_841B2DC : gUnknown_841B2E5);
|
||||
AddTextPrinterParameterized3(windowId, 2, 56, i * 15, textColor, TEXT_SPEED_FF, textbuf);
|
||||
AddTextPrinterParameterized3(windowId, 2, 56, i * 15, textColor, TEXT_SKIP_DRAW, textbuf);
|
||||
textbuf[0] = CHAR_SPACE;
|
||||
x = abs(diffStats[i]) < 10 ? 12 : 6;
|
||||
ConvertIntToDecimalStringN(textbuf + 1, abs(diffStats[i]), STR_CONV_MODE_LEFT_ALIGN, 2);
|
||||
AddTextPrinterParameterized3(windowId, 2, x + 56, i * 15, textColor, TEXT_SPEED_FF, textbuf);
|
||||
AddTextPrinterParameterized3(windowId, 2, x + 56, i * 15, textColor, TEXT_SKIP_DRAW, textbuf);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1550,7 +1550,7 @@ void DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgColor, u8 fgColor,
|
||||
ndigits = 1;
|
||||
ConvertIntToDecimalStringN(textbuf, statsRearrange[i], STR_CONV_MODE_LEFT_ALIGN, ndigits);
|
||||
x = 6 * (4 - ndigits);
|
||||
AddTextPrinterParameterized3(windowId, 2, 0, i * 15, textColor, TEXT_SPEED_FF, sLevelUpWindowStatNames[i]);
|
||||
AddTextPrinterParameterized3(windowId, 2, 56 + x, i * 15, textColor, TEXT_SPEED_FF, textbuf);
|
||||
AddTextPrinterParameterized3(windowId, 2, 0, i * 15, textColor, TEXT_SKIP_DRAW, sLevelUpWindowStatNames[i]);
|
||||
AddTextPrinterParameterized3(windowId, 2, 56 + x, i * 15, textColor, TEXT_SKIP_DRAW, textbuf);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -245,7 +245,7 @@ static void Task_PokemonStorageSystemPC(u8 taskId)
|
||||
LoadStdWindowFrameGfx();
|
||||
DrawDialogueFrame(0, 0);
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized2(0, 2, sUnknown_83CDA20[task->data[1]].desc, TEXT_SPEED_FF, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
AddTextPrinterParameterized2(0, 2, sUnknown_83CDA20[task->data[1]].desc, TEXT_SKIP_DRAW, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
CopyWindowToVram(task->data[15], COPYWIN_BOTH);
|
||||
task->data[0]++;
|
||||
|
||||
@@ -2294,16 +2294,16 @@ static void PrintCursorMonInfo(void)
|
||||
{
|
||||
for (i = 0, y = 0; i < 3; i++, y += 14)
|
||||
{
|
||||
AddTextPrinterParameterized(0, 2, gPSSData->cursorMonTexts[i], i == 2 ? 10 : 6, y, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(0, 2, gPSSData->cursorMonTexts[i], i == 2 ? 10 : 6, y, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
AddTextPrinterParameterized(0, 0, gPSSData->cursorMonTexts[3], 6, y + 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(0, 0, gPSSData->cursorMonTexts[3], 6, y + 2, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
else
|
||||
{
|
||||
AddTextPrinterParameterized(0, 0, gPSSData->cursorMonTexts[3], 6, 0, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(0, 0, gPSSData->cursorMonTexts[3], 6, 0, TEXT_SKIP_DRAW, NULL);
|
||||
for (i = 0, y = 15; i < 3; i++, y += 14)
|
||||
{
|
||||
AddTextPrinterParameterized(0, 2, gPSSData->cursorMonTexts[i], i == 2 ? 10 : 6, y, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(0, 2, gPSSData->cursorMonTexts[i], i == 2 ? 10 : 6, y, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2592,7 +2592,7 @@ static void PrintStorageActionText(u8 id)
|
||||
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(gPSSData->field_2190, sPCStorageActionTexts[id].text);
|
||||
FillWindowPixelBuffer(1, PIXEL_FILL(1));
|
||||
AddTextPrinterParameterized(1, 1, gPSSData->field_2190, 0, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(1, 1, gPSSData->field_2190, 0, 2, TEXT_SKIP_DRAW, NULL);
|
||||
DrawTextBorderOuter(1, 2, 13);
|
||||
PutWindowTilemap(1);
|
||||
CopyWindowToVram(1, COPYWIN_GFX);
|
||||
|
||||
@@ -2428,9 +2428,9 @@ static void PrintMonLevelNickOnWindow2(const u8 * str)
|
||||
if (!sMonSummaryScreen->isEgg)
|
||||
{
|
||||
if (sMonSummaryScreen->curPageIndex != PSS_PAGE_MOVES_INFO)
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_LVL_NICK], 2, 4, 2, sLevelNickTextColors[1], TEXT_SPEED_FF, sMonSummaryScreen->summary.levelStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_LVL_NICK], 2, 4, 2, sLevelNickTextColors[1], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.levelStrBuf);
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_LVL_NICK], 2, 40, 2, sLevelNickTextColors[1], TEXT_SPEED_FF, sMonSummaryScreen->summary.nicknameStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_LVL_NICK], 2, 40, 2, sLevelNickTextColors[1], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.nicknameStrBuf);
|
||||
|
||||
if (GetMonGender(&sMonSummaryScreen->currentMon) == MON_FEMALE)
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_LVL_NICK], 2, 105, 2, sLevelNickTextColors[3], 0, sMonSummaryScreen->summary.genderSymbolStrBuf);
|
||||
@@ -2464,14 +2464,14 @@ static void PokeSum_PrintRightPaneText(void)
|
||||
|
||||
static void PrintInfoPage(void)
|
||||
{
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 19, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.speciesNameStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 19, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.speciesNameStrBuf);
|
||||
|
||||
if (!sMonSummaryScreen->isEgg)
|
||||
{
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47 + sMonSkillsPrinterXpos->unk00, 5, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.dexNumStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 49, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.otNameStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 64, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.unk306C);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 79, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.itemNameStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47 + sMonSkillsPrinterXpos->unk00, 5, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.dexNumStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 49, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.otNameStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 64, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.unk306C);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 47, 79, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.itemNameStrBuf);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2492,20 +2492,20 @@ static void PrintInfoPage(void)
|
||||
if (sMonSummaryScreen->isBadEgg)
|
||||
hatchMsgIndex = 0;
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 7, 45, sLevelNickTextColors[0], TEXT_SPEED_FF, sEggHatchTimeTexts[hatchMsgIndex]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 7, 45, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sEggHatchTimeTexts[hatchMsgIndex]);
|
||||
}
|
||||
}
|
||||
|
||||
static void PrintSkillsPage(void)
|
||||
{
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 14 + sMonSkillsPrinterXpos->curHpStr, 4, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.curHpStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->atkStr, 22, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_ATK]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->defStr, 35, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_DEF]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->spAStr, 48, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_SPA]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->spDStr, 61, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_SPD]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->speStr, 74, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_SPE]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 15 + sMonSkillsPrinterXpos->expStr, 87, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.expPointsStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 15 + sMonSkillsPrinterXpos->toNextLevel, 100, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.expToNextLevelStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 14 + sMonSkillsPrinterXpos->curHpStr, 4, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.curHpStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->atkStr, 22, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_ATK]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->defStr, 35, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_DEF]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->spAStr, 48, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_SPA]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->spDStr, 61, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_SPD]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 50 + sMonSkillsPrinterXpos->speStr, 74, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.statValueStrBufs[PSS_STAT_SPE]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 15 + sMonSkillsPrinterXpos->expStr, 87, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.expPointsStrBuf);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 15 + sMonSkillsPrinterXpos->toNextLevel, 100, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.expToNextLevelStrBuf);
|
||||
}
|
||||
|
||||
#define GetMoveNamePrinterYpos(x) ((x) * 28 + 5)
|
||||
@@ -2525,7 +2525,7 @@ static void PrintMovesPage(void)
|
||||
else
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2,
|
||||
3, GetMoveNamePrinterYpos(4),
|
||||
sPrintMoveTextColors[0], TEXT_SPEED_FF, gFameCheckerText_Cancel);
|
||||
sPrintMoveTextColors[0], TEXT_SKIP_DRAW, gFameCheckerText_Cancel);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2540,7 +2540,7 @@ static void PokeSum_PrintMoveName(u8 i)
|
||||
if (i == 4)
|
||||
curPP = maxPP;
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 3, GetMoveNamePrinterYpos(i), sPrintMoveTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.moveNameStrBufs[i]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 3, GetMoveNamePrinterYpos(i), sPrintMoveTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.moveNameStrBufs[i]);
|
||||
|
||||
if (sMonSummaryScreen->moveIds[i] == 0 || (curPP == maxPP))
|
||||
colorIdx = 0;
|
||||
@@ -2566,14 +2566,14 @@ static void PokeSum_PrintMoveName(u8 i)
|
||||
colorIdx = 1;
|
||||
}
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 36, GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SPEED_FF,
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 36, GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SKIP_DRAW,
|
||||
gText_PokeSum_PP);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 46 + sMonSkillsPrinterXpos->curPp[i], GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SPEED_FF, sMonSummaryScreen->summary.moveCurPpStrBufs[i]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 46 + sMonSkillsPrinterXpos->curPp[i], GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.moveCurPpStrBufs[i]);
|
||||
|
||||
if (sMonSummaryScreen->moveIds[i] != MOVE_NONE)
|
||||
{
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 58, GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SPEED_FF, gText_Slash);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 64 + sMonSkillsPrinterXpos->maxPp[i], GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SPEED_FF, sMonSummaryScreen->summary.moveMaxPpStrBufs[i]);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 58, GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SKIP_DRAW, gText_Slash);
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], 2, 64 + sMonSkillsPrinterXpos->maxPp[i], GetMovePpPinterYpos(i), sPrintMoveTextColors[colorIdx], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.moveMaxPpStrBufs[i]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2678,7 +2678,7 @@ static void PokeSum_PrintTrainerMemo_Mon_HeldByOT(void)
|
||||
}
|
||||
}
|
||||
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SPEED_FF, natureMetOrHatchedAtLevelStr);
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SKIP_DRAW, natureMetOrHatchedAtLevelStr);
|
||||
}
|
||||
|
||||
static void PokeSum_PrintTrainerMemo_Mon_NotHeldByOT(void)
|
||||
@@ -2727,7 +2727,7 @@ static void PokeSum_PrintTrainerMemo_Mon_NotHeldByOT(void)
|
||||
DynamicPlaceholderTextUtil_ExpandPlaceholders(natureMetOrHatchedAtLevelStr, gText_PokeSum_MetInATrade);
|
||||
}
|
||||
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SPEED_FF, natureMetOrHatchedAtLevelStr);
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SKIP_DRAW, natureMetOrHatchedAtLevelStr);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2775,7 +2775,7 @@ static void PokeSum_PrintTrainerMemo_Mon_NotHeldByOT(void)
|
||||
}
|
||||
}
|
||||
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SPEED_FF, natureMetOrHatchedAtLevelStr);
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SKIP_DRAW, natureMetOrHatchedAtLevelStr);
|
||||
}
|
||||
|
||||
static void PokeSum_PrintTrainerMemo_Mon(void)
|
||||
@@ -2836,19 +2836,19 @@ static void PokeSum_PrintTrainerMemo_Egg(void)
|
||||
if (sMonSummaryScreen->isBadEgg)
|
||||
chosenStrIndex = 0;
|
||||
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SPEED_FF, sEggOriginTexts[chosenStrIndex]);
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2, 0, 3, 0, 0, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sEggOriginTexts[chosenStrIndex]);
|
||||
}
|
||||
|
||||
static void PokeSum_PrintExpPoints_NextLv(void)
|
||||
{
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2,
|
||||
26, 7,
|
||||
sLevelNickTextColors[0], TEXT_SPEED_FF,
|
||||
sLevelNickTextColors[0], TEXT_SKIP_DRAW,
|
||||
gText_PokeSum_ExpPoints);
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2,
|
||||
26, 20,
|
||||
sLevelNickTextColors[0], TEXT_SPEED_FF,
|
||||
sLevelNickTextColors[0], TEXT_SKIP_DRAW,
|
||||
gText_PokeSum_NextLv);
|
||||
}
|
||||
|
||||
@@ -2861,18 +2861,18 @@ static void PokeSum_PrintSelectedMoveStats(void)
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2,
|
||||
57, 1,
|
||||
sLevelNickTextColors[0], TEXT_SPEED_FF,
|
||||
sLevelNickTextColors[0], TEXT_SKIP_DRAW,
|
||||
sMonSummaryScreen->summary.movePowerStrBufs[sMoveSelectionCursorPos]);
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2,
|
||||
57, 15,
|
||||
sLevelNickTextColors[0], TEXT_SPEED_FF,
|
||||
sLevelNickTextColors[0], TEXT_SKIP_DRAW,
|
||||
sMonSummaryScreen->summary.moveAccuracyStrBufs[sMoveSelectionCursorPos]);
|
||||
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2,
|
||||
7, 42,
|
||||
0, 0,
|
||||
sLevelNickTextColors[0], TEXT_SPEED_FF,
|
||||
sLevelNickTextColors[0], TEXT_SKIP_DRAW,
|
||||
gMoveDescriptionPointers[sMonSummaryScreen->moveIds[sMoveSelectionCursorPos] - 1]);
|
||||
}
|
||||
}
|
||||
@@ -2900,10 +2900,10 @@ static void PokeSum_PrintAbilityNameAndDesc(void)
|
||||
FillWindowPixelBuffer(sMonSummaryScreen->windowIds[5], 0);
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[5], 2,
|
||||
66, 1, sLevelNickTextColors[0], TEXT_SPEED_FF, sMonSummaryScreen->summary.abilityNameStrBuf);
|
||||
66, 1, sLevelNickTextColors[0], TEXT_SKIP_DRAW, sMonSummaryScreen->summary.abilityNameStrBuf);
|
||||
|
||||
AddTextPrinterParameterized3(sMonSummaryScreen->windowIds[5], 2,
|
||||
2, 15, sLevelNickTextColors[0], TEXT_SPEED_FF,
|
||||
2, 15, sLevelNickTextColors[0], TEXT_SKIP_DRAW,
|
||||
sMonSummaryScreen->summary.abilityDescStrBuf);
|
||||
|
||||
}
|
||||
@@ -3895,7 +3895,7 @@ static void Task_InputHandler_SelectOrForgetMove(u8 taskId)
|
||||
AddTextPrinterParameterized4(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2,
|
||||
7, 42,
|
||||
0, 0,
|
||||
sLevelNickTextColors[0], TEXT_SPEED_FF,
|
||||
sLevelNickTextColors[0], TEXT_SKIP_DRAW,
|
||||
gText_PokeSum_HmMovesCantBeForgotten);
|
||||
CopyWindowToVram(sMonSummaryScreen->windowIds[POKESUM_WIN_TRAINER_MEMO], 2);
|
||||
CopyBgTilemapBufferToVram(0);
|
||||
|
||||
+9
-9
@@ -620,7 +620,7 @@ static void BuyMenuPrintPriceInList(u8 windowId, u32 item, u8 y)
|
||||
while (x-- != 0)
|
||||
*loc++ = 0;
|
||||
StringExpandPlaceholders(loc, gText_PokedollarVar1);
|
||||
BuyMenuPrint(windowId, 0, gStringVar4, 0x69, y, 0, 0, TEXT_SPEED_FF, 1);
|
||||
BuyMenuPrint(windowId, 0, gStringVar4, 0x69, y, 0, 0, TEXT_SKIP_DRAW, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -631,13 +631,13 @@ static void LoadTmHmNameInMart(s32 item)
|
||||
ConvertIntToDecimalStringN(gStringVar1, item - ITEM_DEVON_SCOPE, 2, 2);
|
||||
StringCopy(gStringVar4, gOtherText_UnkF9_08_Clear_01);
|
||||
StringAppend(gStringVar4, gStringVar1);
|
||||
BuyMenuPrint(6, 0, gStringVar4, 0, 0, 0, 0, TEXT_SPEED_FF, 1);
|
||||
BuyMenuPrint(6, 0, gStringVar4, 0, 0, 0, 0, TEXT_SKIP_DRAW, 1);
|
||||
StringCopy(gStringVar4, gMoveNames[ItemIdToBattleMoveId(item)]);
|
||||
BuyMenuPrint(6, 2, gStringVar4, 0, 0x10, 0, 0, 0, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
BuyMenuPrint(6, 0, gText_ThreeHyphens, 0, 0, 0, 0, TEXT_SPEED_FF, 1);
|
||||
BuyMenuPrint(6, 0, gText_ThreeHyphens, 0, 0, 0, 0, TEXT_SKIP_DRAW, 1);
|
||||
BuyMenuPrint(6, 2, gText_SevenHyphens, 0, 0x10, 0, 0, 0, 1);
|
||||
}
|
||||
}
|
||||
@@ -877,7 +877,7 @@ static void BuyMenuPrintItemQuantityAndPrice(u8 taskId)
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
FillWindowPixelBuffer(3, PIXEL_FILL(1));
|
||||
PrintMoneyAmount(3, 0x36, 0xA, gShopData.itemPrice, TEXT_SPEED_FF);
|
||||
PrintMoneyAmount(3, 0x36, 0xA, gShopData.itemPrice, TEXT_SKIP_DRAW);
|
||||
ConvertIntToDecimalStringN(gStringVar1, tItemCount, STR_CONV_MODE_LEADING_ZEROS, 2);
|
||||
StringExpandPlaceholders(gStringVar4, gText_TimesStrVar1);
|
||||
BuyMenuPrint(3, 0, gStringVar4, 2, 0xA, 0, 0, 0, 1);
|
||||
@@ -962,8 +962,8 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId)
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
BuyMenuRemoveScrollIndicatorArrows();
|
||||
ClearStdWindowAndFrameToTransparent(3, 0);
|
||||
ClearStdWindowAndFrameToTransparent(1, 0);
|
||||
ClearStdWindowAndFrameToTransparent(3, FALSE);
|
||||
ClearStdWindowAndFrameToTransparent(1, FALSE);
|
||||
ClearWindowTilemap(3);
|
||||
ClearWindowTilemap(1);
|
||||
PutWindowTilemap(4);
|
||||
@@ -976,8 +976,8 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId)
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
BuyMenuRemoveScrollIndicatorArrows();
|
||||
ClearStdWindowAndFrameToTransparent(3, 0);
|
||||
ClearStdWindowAndFrameToTransparent(1, 0);
|
||||
ClearStdWindowAndFrameToTransparent(3, FALSE);
|
||||
ClearStdWindowAndFrameToTransparent(1, FALSE);
|
||||
ClearWindowTilemap(3);
|
||||
ClearWindowTilemap(1);
|
||||
BuyMenuReturnToItemList(taskId);
|
||||
@@ -1029,7 +1029,7 @@ static void BuyMenuReturnToItemList(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
ClearDialogWindowAndFrameToTransparent(2, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(2, FALSE);
|
||||
BuyMenuPrintCursor(tListTaskId, 1);
|
||||
RecolorItemDescriptionBox(0);
|
||||
PutWindowTilemap(4);
|
||||
|
||||
+1
-1
@@ -2265,7 +2265,7 @@ static void Slot_PrintOnWindow0(const u8 * str)
|
||||
FillWindowPixelBuffer(0, PIXEL_FILL(1));
|
||||
PutWindowTilemap(0);
|
||||
DrawTextBorderOuter(0, 0x001, 15);
|
||||
AddTextPrinterParameterized5(0, 2, str, 1, 2, TEXT_SPEED_FF, NULL, 1, 2);
|
||||
AddTextPrinterParameterized5(0, 2, str, 1, 2, TEXT_SKIP_DRAW, NULL, 1, 2);
|
||||
}
|
||||
|
||||
static void Slot_ClearWindow0(void)
|
||||
|
||||
+2
-2
@@ -90,7 +90,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *textSubPrinter, u8 speed, void
|
||||
sTempTextPrinter.japanese = 0;
|
||||
|
||||
GenerateFontHalfRowLookupTable(textSubPrinter->fgColor, textSubPrinter->bgColor, textSubPrinter->shadowColor);
|
||||
if (speed != TEXT_SPEED_FF && speed != 0x0)
|
||||
if (speed != TEXT_SKIP_DRAW && speed != 0x0)
|
||||
{
|
||||
--sTempTextPrinter.textSpeed;
|
||||
sTextPrinters[textSubPrinter->windowId] = sTempTextPrinter;
|
||||
@@ -104,7 +104,7 @@ bool16 AddTextPrinter(struct TextPrinterTemplate *textSubPrinter, u8 speed, void
|
||||
break;
|
||||
}
|
||||
|
||||
if (speed != TEXT_SPEED_FF)
|
||||
if (speed != TEXT_SKIP_DRAW)
|
||||
CopyWindowToVram(sTempTextPrinter.printerTemplate.windowId, COPYWIN_GFX);
|
||||
sTextPrinters[textSubPrinter->windowId].active = 0;
|
||||
}
|
||||
|
||||
+13
-13
@@ -830,7 +830,7 @@ static void Task_TMContextMenu_HandleInput(u8 taskId)
|
||||
static void TMHMContextMenuAction_Use(u8 taskId)
|
||||
{
|
||||
RemoveTMContextMenu(&sTMCaseDynamicResources->contextMenuWindowId);
|
||||
ClearStdWindowAndFrameToTransparent(2, 0);
|
||||
ClearStdWindowAndFrameToTransparent(2, FALSE);
|
||||
ClearWindowTilemap(2);
|
||||
PutWindowTilemap(0);
|
||||
ScheduleBgCopyTilemapToVram(0);
|
||||
@@ -852,7 +852,7 @@ static void TMHMContextMenuAction_Give(u8 taskId)
|
||||
s16 * data = gTasks[taskId].data;
|
||||
u16 itemId = BagGetItemIdByPocketPosition(POCKET_TM_CASE, data[1]);
|
||||
RemoveTMContextMenu(&sTMCaseDynamicResources->contextMenuWindowId);
|
||||
ClearStdWindowAndFrameToTransparent(2, 0);
|
||||
ClearStdWindowAndFrameToTransparent(2, FALSE);
|
||||
ClearWindowTilemap(2);
|
||||
PutWindowTilemap(1);
|
||||
PutWindowTilemap(4);
|
||||
@@ -905,7 +905,7 @@ static void Subtask_CloseContextMenuAndReturnToMain(u8 taskId)
|
||||
DestroyListMenuTask(data[0], &sTMCaseStaticResources.scrollOffset, &sTMCaseStaticResources.selectedRow);
|
||||
data[0] = ListMenuInit(&gMultiuseListMenuTemplate, sTMCaseStaticResources.scrollOffset, sTMCaseStaticResources.selectedRow);
|
||||
PrintListMenuCursorByID_WithColorIdx(data[0], 1);
|
||||
ClearDialogWindowAndFrameToTransparent(6, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(6, FALSE);
|
||||
ClearWindowTilemap(6);
|
||||
PutWindowTilemap(1);
|
||||
PutWindowTilemap(4);
|
||||
@@ -920,7 +920,7 @@ static void TMHMContextMenuAction_Exit(u8 taskId)
|
||||
s16 * data = gTasks[taskId].data;
|
||||
|
||||
RemoveTMContextMenu(&sTMCaseDynamicResources->contextMenuWindowId);
|
||||
ClearStdWindowAndFrameToTransparent(2, 0);
|
||||
ClearStdWindowAndFrameToTransparent(2, FALSE);
|
||||
ClearWindowTilemap(2);
|
||||
PutWindowTilemap(0);
|
||||
PrintListMenuCursorByID_WithColorIdx(data[0], 1);
|
||||
@@ -1009,8 +1009,8 @@ static void Task_SaleOfTMsCanceled(u8 taskId)
|
||||
{
|
||||
s16 * data = gTasks[taskId].data;
|
||||
|
||||
ClearStdWindowAndFrameToTransparent(8, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(6, 0);
|
||||
ClearStdWindowAndFrameToTransparent(8, FALSE);
|
||||
ClearDialogWindowAndFrameToTransparent(6, FALSE);
|
||||
PutWindowTilemap(0);
|
||||
PutWindowTilemap(1);
|
||||
PutWindowTilemap(3);
|
||||
@@ -1058,7 +1058,7 @@ static void Task_QuantitySelect_HandleInput(u8 taskId)
|
||||
else if (JOY_NEW(A_BUTTON))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
ClearStdWindowAndFrameToTransparent(7, 0);
|
||||
ClearStdWindowAndFrameToTransparent(7, FALSE);
|
||||
ScheduleBgCopyTilemapToVram(0);
|
||||
ScheduleBgCopyTilemapToVram(1);
|
||||
RemoveTMCaseScrollIndicatorArrowPair();
|
||||
@@ -1067,9 +1067,9 @@ static void Task_QuantitySelect_HandleInput(u8 taskId)
|
||||
else if (JOY_NEW(B_BUTTON))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
ClearStdWindowAndFrameToTransparent(7, 0);
|
||||
ClearStdWindowAndFrameToTransparent(8, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(6, 0);
|
||||
ClearStdWindowAndFrameToTransparent(7, FALSE);
|
||||
ClearStdWindowAndFrameToTransparent(8, FALSE);
|
||||
ClearDialogWindowAndFrameToTransparent(6, FALSE);
|
||||
PutWindowTilemap(3);
|
||||
PutWindowTilemap(0);
|
||||
PutWindowTilemap(1);
|
||||
@@ -1116,8 +1116,8 @@ static void Task_AfterSale_ReturnToList(u8 taskId)
|
||||
if (JOY_NEW(A_BUTTON) || JOY_NEW(B_BUTTON))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
ClearStdWindowAndFrameToTransparent(8, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(6, 0);
|
||||
ClearStdWindowAndFrameToTransparent(8, FALSE);
|
||||
ClearDialogWindowAndFrameToTransparent(6, FALSE);
|
||||
PutWindowTilemap(1);
|
||||
PutWindowTilemap(3);
|
||||
PutWindowTilemap(4);
|
||||
@@ -1242,7 +1242,7 @@ static void Task_TMCaseDude_Playback(u8 taskId)
|
||||
{
|
||||
FillBG2RowWithPalette_2timesNplus1(0);
|
||||
BeginNormalPaletteFade(0x00000400, 0, 6, 0, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(6, 0);
|
||||
ClearDialogWindowAndFrameToTransparent(6, FALSE);
|
||||
ScheduleBgCopyTilemapToVram(1);
|
||||
data[8]++;
|
||||
}
|
||||
|
||||
+36
-36
@@ -620,7 +620,7 @@ static void Task_TrainerCard(u8 taskId)
|
||||
case STATE_WAIT_LINK_PARTNER:
|
||||
SetCloseLinkCallback();
|
||||
DrawDialogueFrame(0, 1);
|
||||
AddTextPrinterParameterized(0, 2, gText_WaitingTrainerFinishReading, 0, 1, TEXT_SPEED_FF, 0);
|
||||
AddTextPrinterParameterized(0, 2, gText_WaitingTrainerFinishReading, 0, 1, TEXT_SKIP_DRAW, 0);
|
||||
CopyWindowToVram(0, COPYWIN_BOTH);
|
||||
sTrainerCardDataPtr->mainState = STATE_CLOSE_CARD_LINK;
|
||||
break;
|
||||
@@ -1129,7 +1129,7 @@ static void PrintNameOnCardFront(void)
|
||||
StringCopy(txtPtr, sTrainerCardDataPtr->trainerCard.rse.playerName);
|
||||
ConvertInternationalString(txtPtr, sTrainerCardDataPtr->language);
|
||||
StringAppend(buffer[0], txtPtr);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardFrontNameXPositions[sTrainerCardDataPtr->cardType], sTrainerCardFrontNameYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer[0]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardFrontNameXPositions[sTrainerCardDataPtr->cardType], sTrainerCardFrontNameYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer[0]);
|
||||
}
|
||||
|
||||
static void PrintIdOnCard(void)
|
||||
@@ -1139,7 +1139,7 @@ static void PrintIdOnCard(void)
|
||||
|
||||
txtPtr = StringCopy(buffer, gText_TrainerCardIDNo);
|
||||
ConvertIntToDecimalStringN(txtPtr, sTrainerCardDataPtr->trainerCard.rse.trainerId, STR_CONV_MODE_LEADING_ZEROS, 5);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardIdXPositions[sTrainerCardDataPtr->cardType], sTrainerCardIdYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardIdXPositions[sTrainerCardDataPtr->cardType], sTrainerCardIdYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer);
|
||||
}
|
||||
|
||||
static void PrintMoneyOnCard(void)
|
||||
@@ -1153,14 +1153,14 @@ static void PrintMoneyOnCard(void)
|
||||
if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
|
||||
{
|
||||
x = -122 - 6 * StringLength(buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 56, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 56, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 56, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardMoney);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 56, sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
x = 118 - 6 * StringLength(buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 57, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardMoney);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 57, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 57, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardMoney);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 57, sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1183,16 +1183,16 @@ static void PrintPokedexOnCard(void)
|
||||
if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
|
||||
{
|
||||
x = -120 - 6 * StringLength(buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 72, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 72, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 72, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardNull);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 72, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardPokedex);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 72, sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 72, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardNull);
|
||||
}
|
||||
else
|
||||
{
|
||||
x = 120 - 6 * StringLength(buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 73, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardPokedex);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 73, sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 73, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardNull);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 73, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardPokedex);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, 73, sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 138, 73, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardNull);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1219,18 +1219,18 @@ static void PrintTimeOnCard(void)
|
||||
|
||||
FillWindowPixelRect(1, PIXEL_FILL(0), sTrainerCardTimeHoursXPositions[sTrainerCardDataPtr->cardType], sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], 50, 12);
|
||||
if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE)
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 88, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 20, 88, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardTime);
|
||||
else
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 89, sTrainerCardTextColors, TEXT_SPEED_FF, gText_TrainerCardTime);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 16, 89, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_TrainerCardTime);
|
||||
|
||||
ConvertIntToDecimalStringN(buffer, hours, STR_CONV_MODE_RIGHT_ALIGN, 3);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeHoursXPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
|
||||
sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeHoursYPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTimeColonTextColors[sTrainerCardDataPtr->timeColonInvisible], TEXT_SPEED_FF, gText_Colon2);
|
||||
sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTimeColonTextColors[sTrainerCardDataPtr->timeColonInvisible], TEXT_SKIP_DRAW, gText_Colon2);
|
||||
|
||||
ConvertIntToDecimalStringN(buffer, minutes, STR_CONV_MODE_LEADING_ZEROS, 2);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeMinutesXPositions[sTrainerCardDataPtr->cardType], sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, buffer);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardTimeMinutesXPositions[sTrainerCardDataPtr->cardType], sTrainerCardTimeMinutesYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SKIP_DRAW, buffer);
|
||||
}
|
||||
|
||||
static void PrintProfilePhraseOnCard(void)
|
||||
@@ -1238,16 +1238,16 @@ static void PrintProfilePhraseOnCard(void)
|
||||
if (sTrainerCardDataPtr->isLink)
|
||||
{
|
||||
AddTextPrinterParameterized3(1, 2, 10, sTrainerCardProfilePhraseXPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[0]);
|
||||
sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->easyChatProfile[0]);
|
||||
|
||||
AddTextPrinterParameterized3(1, 2, GetStringWidth(2, sTrainerCardDataPtr->easyChatProfile[0], 0) + 16, sTrainerCardProfilePhraseXPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[1]);
|
||||
sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->easyChatProfile[1]);
|
||||
|
||||
AddTextPrinterParameterized3(1, 2, 10, sTrainerCardProfilePhraseYPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[2]);
|
||||
sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->easyChatProfile[2]);
|
||||
|
||||
AddTextPrinterParameterized3(1, 2, GetStringWidth(2, sTrainerCardDataPtr->easyChatProfile[2], 0) + 16, sTrainerCardProfilePhraseYPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->easyChatProfile[3]);
|
||||
sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->easyChatProfile[3]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1268,14 +1268,14 @@ static void PrintNameOnCardBack(void)
|
||||
if (sTrainerCardDataPtr->cardType == CARD_TYPE_FRLG)
|
||||
{
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardBackNameXPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardBackNameYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
|
||||
sTrainerCardBackNameYPositions[sTrainerCardDataPtr->cardType], sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
|
||||
}
|
||||
else
|
||||
{
|
||||
x = sTrainerCardBackNameXPositions[sTrainerCardDataPtr->cardType] - GetStringWidth(sTrainerCardFontIds[1], sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME], GetFontAttribute(sTrainerCardFontIds[1], FONTATTR_LETTER_SPACING));
|
||||
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], x, sTrainerCardBackNameYPositions[sTrainerCardDataPtr->cardType],
|
||||
sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
|
||||
sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_NAME]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1301,8 +1301,8 @@ static void PrintHofDebutTimeOnCard(void)
|
||||
{
|
||||
if (sTrainerCardDataPtr->hasHofResult)
|
||||
{
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 35, sTrainerCardTextColors, TEXT_SPEED_FF, gText_HallOfFameDebut);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 164, 35, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 35, sTrainerCardTextColors, TEXT_SKIP_DRAW, gText_HallOfFameDebut);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 164, 35, sTrainerCardStatColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_HOF_TIME]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1326,10 +1326,10 @@ static void PrintLinkBattleResultsOnCard(void)
|
||||
if (sTrainerCardDataPtr->hasLinkResults)
|
||||
{
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 51,
|
||||
sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_RECORD]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 130, 51, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_WIN_LOSS]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 144, 51, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_WINS]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 192, 51, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_LOSSES]);
|
||||
sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_RECORD]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 130, 51, sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_WIN_LOSS]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 144, 51, sTrainerCardStatColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_WINS]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 192, 51, sTrainerCardStatColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_LINK_LOSSES]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1346,8 +1346,8 @@ static void PrintTradesStringOnCard(void)
|
||||
{
|
||||
if (sTrainerCardDataPtr->hasTrades)
|
||||
{
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 67, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADES]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 67, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADE_COUNT]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 67, sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADES]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 67, sTrainerCardStatColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_TRADE_COUNT]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1364,8 +1364,8 @@ static void PrintBerryCrushStringOnCard(void)
|
||||
{
|
||||
if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE && sTrainerCardDataPtr->trainerCard.berryCrushPoints)
|
||||
{
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 99, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 99, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH_COUNT]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 99, sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 99, sTrainerCardStatColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_BERRY_CRUSH_COUNT]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1382,8 +1382,8 @@ static void PrintUnionStringOnCard(void)
|
||||
{
|
||||
if (sTrainerCardDataPtr->cardType != CARD_TYPE_RSE && sTrainerCardDataPtr->trainerCard.unionRoomNum)
|
||||
{
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 83, sTrainerCardTextColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 83, sTrainerCardStatColors, TEXT_SPEED_FF, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM_NUM]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], sTrainerCardHofDebutXPositions[sTrainerCardDataPtr->cardType], 83, sTrainerCardTextColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM]);
|
||||
AddTextPrinterParameterized3(1, sTrainerCardFontIds[1], 186, 83, sTrainerCardStatColors, TEXT_SKIP_DRAW, sTrainerCardDataPtr->strings[TRAINER_CARD_STRING_UNION_ROOM_NUM]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -905,15 +905,15 @@ static void ShowResultsBoard(void)
|
||||
windowId = AddWindow(sTimeBoardWindowTemplate);
|
||||
LoadStdWindowFrameGfx();
|
||||
DrawStdWindowFrame(windowId, FALSE);
|
||||
AddTextPrinterParameterized(windowId, 2, gText_TimeBoard, 74, 0, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(windowId, 2, gText_TimeBoard, 74, 0, TEXT_SKIP_DRAW, NULL);
|
||||
|
||||
for (i = 0; i < NUM_TOWER_CHALLENGE_TYPES; i++)
|
||||
{
|
||||
PRINT_TOWER_TIME(GetTrainerTowerRecordTime(&TRAINER_TOWER.bestTime));
|
||||
|
||||
StringExpandPlaceholders(gStringVar4, gText_XMinYZSec);
|
||||
AddTextPrinterParameterized(windowId, 2, gTrainerTowerChallengeTypeTexts[i - 1], 24, 36 + 20 * i, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(windowId, 2, gStringVar4, 96, 46 + 20 * i, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(windowId, 2, gTrainerTowerChallengeTypeTexts[i - 1], 24, 36 + 20 * i, TEXT_SKIP_DRAW, NULL);
|
||||
AddTextPrinterParameterized(windowId, 2, gStringVar4, 96, 46 + 20 * i, TEXT_SKIP_DRAW, NULL);
|
||||
}
|
||||
|
||||
PutWindowTilemap(windowId);
|
||||
|
||||
@@ -952,8 +952,8 @@ static void PlaceYesNoMenuAt(u8 left, u8 top, u8 initialCursorPos)
|
||||
{
|
||||
FillWindowPixelBuffer(sWork->yesNoMenuWinId, PIXEL_FILL(1));
|
||||
PutWindowTilemap(sWork->yesNoMenuWinId);
|
||||
AddTextPrinterParameterized(sWork->yesNoMenuWinId, 2, gText_Yes, 8, 2, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sWork->yesNoMenuWinId, 2, gText_No, 8, 16, TEXT_SPEED_FF, NULL);
|
||||
AddTextPrinterParameterized(sWork->yesNoMenuWinId, 2, gText_Yes, 8, 2, TEXT_SKIP_DRAW, NULL);
|
||||
AddTextPrinterParameterized(sWork->yesNoMenuWinId, 2, gText_No, 8, 16, TEXT_SKIP_DRAW, NULL);
|
||||
DrawTextBorderOuter(sWork->yesNoMenuWinId, 1, 13);
|
||||
Menu_InitCursor(sWork->yesNoMenuWinId, 2, 0, 2, 14, 2, initialCursorPos);
|
||||
}
|
||||
@@ -1027,7 +1027,7 @@ static void PlaceStdMessageWindow(int id, u16 bg0vofs)
|
||||
str,
|
||||
sMessageWindowInfo[id].x + 8,
|
||||
sMessageWindowInfo[id].y + 8,
|
||||
TEXT_SPEED_FF,
|
||||
TEXT_SKIP_DRAW,
|
||||
NULL,
|
||||
sMessageWindowInfo[id].letterSpacing,
|
||||
sMessageWindowInfo[id].lineSpacing);
|
||||
@@ -1041,7 +1041,7 @@ static void PlaceStdMessageWindow(int id, u16 bg0vofs)
|
||||
str,
|
||||
sMessageWindowInfo[id].x,
|
||||
sMessageWindowInfo[id].y,
|
||||
TEXT_SPEED_FF,
|
||||
TEXT_SKIP_DRAW,
|
||||
NULL,
|
||||
sMessageWindowInfo[id].letterSpacing,
|
||||
sMessageWindowInfo[id].lineSpacing);
|
||||
@@ -1090,7 +1090,7 @@ static void PrintOnWin1Parameterized(u16 x, u8 *str, u8 bgColor, u8 fgColor, u8
|
||||
strbuf[1] = EXT_CTRL_CODE_MIN_LETTER_SPACING;
|
||||
strbuf[2] = 8;
|
||||
StringCopy(&strbuf[3], str);
|
||||
AddTextPrinterParameterized3(1, 2, x * 8, 1, color, TEXT_SPEED_FF, strbuf);
|
||||
AddTextPrinterParameterized3(1, 2, x * 8, 1, color, TEXT_SKIP_DRAW, strbuf);
|
||||
}
|
||||
|
||||
static void PrintCurrentKeyboardPage(void)
|
||||
@@ -1124,7 +1124,7 @@ static void PrintCurrentKeyboardPage(void)
|
||||
return;
|
||||
|
||||
StringCopy(&str[3], gUnionRoomKeyboardText[page][i]);
|
||||
AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SPEED_FF, str);
|
||||
AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SKIP_DRAW, str);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -1135,7 +1135,7 @@ static void PrintCurrentKeyboardPage(void)
|
||||
str2 = UnionRoomChat_GetWorkRegisteredText(i);
|
||||
if (GetStringWidth(0, str2, 0) <= 40)
|
||||
{
|
||||
AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SPEED_FF, str2);
|
||||
AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SKIP_DRAW, str2);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1146,8 +1146,8 @@ static void PrintCurrentKeyboardPage(void)
|
||||
StringCopyN_Multibyte(str, str2, length);
|
||||
} while (GetStringWidth(0, str, 0) > 35);
|
||||
|
||||
AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SPEED_FF, str);
|
||||
AddTextPrinterParameterized3(2, 0, left + 35, top, color, TEXT_SPEED_FF, gText_Ellipsis);
|
||||
AddTextPrinterParameterized3(2, 0, left, top, color, TEXT_SKIP_DRAW, str);
|
||||
AddTextPrinterParameterized3(2, 0, left + 35, top, color, TEXT_SKIP_DRAW, gText_Ellipsis);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1214,7 +1214,7 @@ static void PrintTextOnWin0Colorized(u16 row, u8 *str, u8 colorIdx)
|
||||
color[1] = colorIdx * 2 + 2;
|
||||
color[2] = colorIdx * 2 + 3;
|
||||
FillWindowPixelRect(0, PIXEL_FILL(1), 0, row * 15, 168, 15);
|
||||
AddTextPrinterParameterized3(0, 2, 0, row * 15, color, TEXT_SPEED_FF, str);
|
||||
AddTextPrinterParameterized3(0, 2, 0, row * 15, color, TEXT_SKIP_DRAW, str);
|
||||
}
|
||||
|
||||
static void ResetGpuBgState(void)
|
||||
|
||||
Reference in New Issue
Block a user