Merge pull request #71 from thechurchofcage/partingshot

Parting Shot
This commit is contained in:
DizzyEggg 2019-02-10 18:18:49 +01:00 committed by GitHub
commit 4c535a1b03
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 60 additions and 1 deletions

View File

@ -2382,6 +2382,21 @@ Move_DISARMING_VOICE:
end
Move_PARTING_SHOT:
loadspritegfx ANIM_TAG_NOISE_LINE
fadetobg BG_DARK
waitbgfadein
delay 0
createvisualtask sub_8158E9C, 2, 0, 255
call RoarEffect
delay 10
createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 9, 1
createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 9, 1
waitforvisualfinish
createvisualtask sub_8159078, 5
waitforvisualfinish
delay 1
restorebg
waitbgfadein
end
Move_TOPSY_TURVY:

View File

@ -342,6 +342,49 @@ gBattleScriptsForMoveEffects:: @ 82D86A8
.4byte BattleScript_EffectPowder
.4byte BattleScript_EffectSpAtkUpHit
.4byte BattleScript_EffectBelch
.4byte BattleScript_EffectPartingShot
BattleScript_EffectPartingShot::
attackcanceler
attackstring
ppreduce
jumpifstat BS_TARGET, CMP_GREATER_THAN, STAT_ATK, 0x0, BattleScript_EffectPartingShotTryAtk
jumpifstat BS_TARGET, CMP_EQUAL, STAT_SPATK, 0x0, BattleScript_CantLowerMultipleStats
BattleScript_EffectPartingShotTryAtk:
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
attackanimation
waitanimation
setbyte sSTAT_ANIM_PLAYED, FALSE
playstatchangeanimation BS_TARGET, BIT_ATK | BIT_SPATK, ATK48_STAT_NEGATIVE | ATK48_ONLY_MULTIPLE
playstatchangeanimation BS_TARGET, BIT_ATK, ATK48_STAT_NEGATIVE
setstatchanger STAT_ATK, 1, TRUE
statbuffchange 0x1, BattleScript_EffectPartingShotTrySpAtk
printfromtable gStatDownStringIds
waitmessage 0x40
BattleScript_EffectPartingShotTrySpAtk:
playstatchangeanimation BS_TARGET, BIT_SPATK, ATK48_STAT_NEGATIVE
setstatchanger STAT_SPATK, 1, TRUE
statbuffchange 0x1, BattleScript_EffectPartingShotSwitch
printfromtable gStatDownStringIds
waitmessage 0x40
BattleScript_EffectPartingShotSwitch:
setbyte sMOVEEND_STATE, 0x0
moveend 0x0, 0x0
jumpifcantswitch ATK4F_DONT_CHECK_STATUSES | BS_ATTACKER, BattleScript_PartingShotEnd
openpartyscreen 0x1, BattleScript_PartingShotEnd
switchoutabilities BS_ATTACKER
waitstate
switchhandleorder BS_ATTACKER, 0x2
returntoball BS_ATTACKER
getswitchedmondata BS_ATTACKER
switchindataupdate BS_ATTACKER
hpthresholds BS_ATTACKER
printstring STRINGID_SWITCHINMON
switchinanim BS_ATTACKER, TRUE
waitstate
switchineffects BS_ATTACKER
BattleScript_PartingShotEnd:
end
BattleScript_EffectSpAtkUpHit:
setmoveeffect MOVE_EFFECT_SP_ATK_PLUS_1 | MOVE_EFFECT_AFFECTS_USER

View File

@ -330,5 +330,6 @@
#define EFFECT_POWDER 324
#define EFFECT_SP_ATTACK_UP_HIT 325
#define EFFECT_BELCH 326
#define EFFECT_PARTING_SHOT 327
#endif // GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H

View File

@ -8069,7 +8069,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] =
[MOVE_PARTING_SHOT] =
{
.effect = EFFECT_PLACEHOLDER, // Needs a custom move effect
.effect = EFFECT_PARTING_SHOT,
.power = 0,
.type = TYPE_DARK,
.accuracy = 100,