From ee98f7b48998e6aa77c67ecae60e9376eae180f7 Mon Sep 17 00:00:00 2001 From: yenatch Date: Mon, 13 Apr 2015 21:39:54 -0700 Subject: [PATCH] Enumerate the move effect command macros. --- battle/effect_commands.asm | 18 +- macros/move_effect.asm | 894 ++++++++----------------------------- 2 files changed, 195 insertions(+), 717 deletions(-) diff --git a/battle/effect_commands.asm b/battle/effect_commands.asm index f23ea0900..96331f9eb 100644 --- a/battle/effect_commands.asm +++ b/battle/effect_commands.asm @@ -90,8 +90,8 @@ DoMove: ; 3402c ld [BattleScriptBufferLoc + 1], a pop af -; $fe is used to terminate branches without ending the read cycle. - cp $fe +; endturn_command (-2) is used to terminate branches without ending the read cycle. + cp endturn_command ret nc ; The rest of the commands (01-af) are read from BattleCommandPointers. @@ -3918,7 +3918,7 @@ BattleCommanda1: ; 35461 Function355b0: ; 355b0 - ld b, $12 ; buildopponentrage + ld b, buildopponentrage_command jp SkipToBattleCommand ; 355b5 @@ -6977,7 +6977,7 @@ BattleCommand21: ; 36671 ld a, BIDE ld [hl], a - ld b, $22 ; unleashenergy + ld b, unleashenergy_command jp SkipToBattleCommand .asm_366dc @@ -7051,7 +7051,7 @@ BattleCommand3e: ; 3671a inc de ld [de], a .asm_3674c - ld b, $3d ; rampage + ld b, rampage_command jp SkipToBattleCommand ; 36751 @@ -7707,7 +7707,7 @@ BattleCommand3a: ; 36b3a res SUBSTATUS_CHARGED, [hl] res SUBSTATUS_UNDERGROUND, [hl] res SUBSTATUS_FLYING, [hl] - ld b, $39 ; charge + ld b, charge_command jp SkipToBattleCommand ; 36b4d @@ -7787,7 +7787,7 @@ BattleCommand39: ; 36b4d ld a, BATTLE_VARS_MOVE_EFFECT call GetBattleVar cp EFFECT_SKULL_BASH - ld b, $fe ; endturn + ld b, endturn_command jp z, SkipToBattleCommand jp EndMoveEffect @@ -10294,7 +10294,7 @@ BattleCommand9e: ; 37d02 ld a, [Weather] cp WEATHER_SUN ret nz - ld b, $39 ; charge + ld b, charge_command jp SkipToBattleCommand ; 37d0d @@ -10323,7 +10323,7 @@ BattleCommand9b: ; 37d0d ld [CurDamage], a ld a, [de] ld [CurDamage + 1], a - ld b, $9c ; futuresight + ld b, futuresight_command jp SkipToBattleCommand ; 37d34 diff --git a/macros/move_effect.asm b/macros/move_effect.asm index 66e419db2..6cca15b2d 100644 --- a/macros/move_effect.asm +++ b/macros/move_effect.asm @@ -1,708 +1,186 @@ -checkturn: macro - db $01 - endm - -checkobedience: macro - db $02 - endm - -usedmovetext: macro - db $03 - endm - -doturn: macro - db $04 - endm - -critical: macro - db $05 - endm - -damagestats: macro - db $06 - endm - -stab: macro - db $07 - endm - -damagevariation: macro - db $08 - endm - -checkhit: macro - db $09 - endm - -effect0x0a: macro - db $0a - endm - -effect0x0b: macro - db $0b - endm - -effect0x0c: macro - db $0c - endm - -resulttext: macro - db $0d - endm - -checkfaint: macro - db $0e - endm - -criticaltext: macro - db $0f - endm - -supereffectivetext: macro - db $10 - endm - -checkdestinybond: macro - db $11 - endm - -buildopponentrage: macro - db $12 - endm - -poisontarget: macro - db $13 - endm - -sleeptarget: macro - db $14 - endm - -draintarget: macro - db $15 - endm - -eatdream: macro - db $16 - endm - -burntarget: macro - db $17 - endm - -freezetarget: macro - db $18 - endm - -paralyzetarget: macro - db $19 - endm - -selfdestruct: macro - db $1a - endm - -mirrormove: macro - db $1b - endm - -statup: macro - db $1c - endm - -statdown: macro - db $1d - endm - -payday: macro - db $1e - endm - -conversion: macro - db $1f - endm - -resetstats: macro - db $20 - endm - -storeenergy: macro - db $21 - endm - -unleashenergy: macro - db $22 - endm - -forceswitch: macro - db $23 - endm - -endloop: macro - db $24 - endm - -flinchtarget: macro - db $25 - endm - -ohko: macro - db $26 - endm - -recoil: macro - db $27 - endm - -mist: macro - db $28 - endm - -focusenergy: macro - db $29 - endm - -confuse: macro - db $2a - endm - -confusetarget: macro - db $2b - endm - -heal: macro - db $2c - endm - -transform: macro - db $2d - endm - -screen: macro - db $2e - endm - -poison: macro - db $2f - endm - -paralyze: macro - db $30 - endm - -substitute: macro - db $31 - endm - -rechargenextturn: macro - db $32 - endm - -mimic: macro - db $33 - endm - -metronome: macro - db $34 - endm - -leechseed: macro - db $35 - endm - -splash: macro - db $36 - endm - -disable: macro - db $37 - endm - -cleartext: macro - db $38 - endm - -charge: macro - db $39 - endm - -checkcharge: macro - db $3a - endm - -traptarget: macro - db $3b - endm - -effect0x3c: macro - db $3c - endm - -rampage: macro - db $3d - endm - -checkrampage: macro - db $3e - endm - -constantdamage: macro - db $3f - endm - -counter: macro - db $40 - endm - -encore: macro - db $41 - endm - -painsplit: macro - db $42 - endm - -snore: macro - db $43 - endm - -conversion2: macro - db $44 - endm - -lockon: macro - db $45 - endm - -sketch: macro - db $46 - endm - -defrostopponent: macro - db $47 - endm - -sleeptalk: macro - db $48 - endm - -destinybond: macro - db $49 - endm - -spite: macro - db $4a - endm - -falseswipe: macro - db $4b - endm - -healbell: macro - db $4c - endm - -kingsrock: macro - db $4d - endm - -triplekick: macro - db $4e - endm - -kickcounter: macro - db $4f - endm - -thief: macro - db $50 - endm - -arenatrap: macro - db $51 - endm - -nightmare: macro - db $52 - endm - -defrost: macro - db $53 - endm - -curse: macro - db $54 - endm - -protect: macro - db $55 - endm - -spikes: macro - db $56 - endm - -foresight: macro - db $57 - endm - -perishsong: macro - db $58 - endm - -startsandstorm: macro - db $59 - endm - -endure: macro - db $5a - endm - -checkcurl: macro - db $5b - endm - -rolloutpower: macro - db $5c - endm - -effect0x5d: macro - db $5d - endm - -furycutter: macro - db $5e - endm - -attract: macro - db $5f - endm - -happinesspower: macro - db $60 - endm - -present: macro - db $61 - endm - -damagecalc: macro - db $62 - endm - -frustrationpower: macro - db $63 - endm - -safeguard: macro - db $64 - endm - -checksafeguard: macro - db $65 - endm - -getmagnitude: macro - db $66 - endm - -batonpass: macro - db $67 - endm - -pursuit: macro - db $68 - endm - -clearhazards: macro - db $69 - endm - -healmorn: macro - db $6a - endm - -healday: macro - db $6b - endm - -healnite: macro - db $6c - endm - -hiddenpower: macro - db $6d - endm - -startrain: macro - db $6e - endm - -startsun: macro - db $6f - endm - -attackup: macro - db $70 - endm - -defenseup: macro - db $71 - endm - -speedup: macro - db $72 - endm - -specialattackup: macro - db $73 - endm - -specialdefenseup: macro - db $74 - endm - -accuracyup: macro - db $75 - endm - -evasionup: macro - db $76 - endm - -attackup2: macro - db $77 - endm - -defenseup2: macro - db $78 - endm - -speedup2: macro - db $79 - endm - -specialattackup2: macro - db $7a - endm - -specialdefenseup2: macro - db $7b - endm - -accuracyup2: macro - db $7c - endm - -evasionup2: macro - db $7d - endm - -attackdown: macro - db $7e - endm - -defensedown: macro - db $7f - endm - -speeddown: macro - db $80 - endm - -specialattackdown: macro - db $81 - endm - -specialdefensedown: macro - db $82 - endm - -accuracydown: macro - db $83 - endm - -evasiondown: macro - db $84 - endm - -attackdown2: macro - db $85 - endm - -defensedown2: macro - db $86 - endm - -speeddown2: macro - db $87 - endm - -specialattackdown2: macro - db $88 - endm - -specialdefensedown2: macro - db $89 - endm - -accuracydown2: macro - db $8a - endm - -evasiondown2: macro - db $8b - endm - -statmessageuser: macro - db $8c - endm - -statmessagetarget: macro - db $8d - endm - -statupfailtext: macro - db $8e - endm - -statdownfailtext: macro - db $8f - endm - -effectchance: macro - db $90 - endm - -effect0x91: macro - db $91 - endm - -effect0x92: macro - db $92 - endm - -switchturn: macro - db $93 - endm - -fakeout: macro - db $94 - endm - -bellydrum: macro - db $95 - endm - -psychup: macro - db $96 - endm - -rage: macro - db $97 - endm - -doubleflyingdamage: macro - db $98 - endm - -doubleundergrounddamage: macro - db $99 - endm - -mirrorcoat: macro - db $9a - endm - -checkfuturesight: macro - db $9b - endm - -futuresight: macro - db $9c - endm - -doubleminimizedamage: macro - db $9d - endm - -skipsuncharge: macro - db $9e - endm - -thunderaccuracy: macro - db $9f - endm - -teleport: macro - db $a0 - endm - -beatup: macro - db $a1 - endm - -ragedamage: macro - db $a2 - endm - -effect0xa3: macro - db $a3 - endm - -allstatsup: macro - db $a4 - endm - -effect0xa5: macro - db $a5 - endm - -effect0xa6: macro - db $a6 - endm - -effect0xa7: macro - db $a7 - endm - -effect0xa8: macro - db $a8 - endm - -clearmissdamage: macro - db $a9 - endm - -movedelay: macro - db $aa - endm - -hittarget: macro - db $ab - endm - -tristatuschance: macro - db $ac - endm - -supereffectivelooptext: macro - db $ad - endm - -startloop: macro - db $ae - endm - -curl: macro - db $af - endm - -endturn: macro - db $fe - endm - -endmove: macro - db $ff - endm - +command: macro + enum \1_command +\1 equs "db \1_command" +endm + + enum_start 1 + + command checkturn + command checkobedience + command usedmovetext + command doturn + command critical + command damagestats + command stab + command damagevariation + command checkhit + command effect0x0a + command effect0x0b + command effect0x0c + command resulttext + command checkfaint + command criticaltext + command supereffectivetext + command checkdestinybond + command buildopponentrage + command poisontarget + command sleeptarget + command draintarget + command eatdream + command burntarget + command freezetarget + command paralyzetarget + command selfdestruct + command mirrormove + command statup + command statdown + command payday + command conversion + command resetstats + command storeenergy + command unleashenergy + command forceswitch + command endloop + command flinchtarget + command ohko + command recoil + command mist + command focusenergy + command confuse + command confusetarget + command heal + command transform + command screen + command poison + command paralyze + command substitute + command rechargenextturn + command mimic + command metronome + command leechseed + command splash + command disable + command cleartext + command charge + command checkcharge + command traptarget + command effect0x3c + command rampage + command checkrampage + command constantdamage + command counter + command encore + command painsplit + command snore + command conversion2 + command lockon + command sketch + command defrostopponent + command sleeptalk + command destinybond + command spite + command falseswipe + command healbell + command kingsrock + command triplekick + command kickcounter + command thief + command arenatrap + command nightmare + command defrost + command curse + command protect + command spikes + command foresight + command perishsong + command startsandstorm + command endure + command checkcurl + command rolloutpower + command effect0x5d + command furycutter + command attract + command happinesspower + command present + command damagecalc + command frustrationpower + command safeguard + command checksafeguard + command getmagnitude + command batonpass + command pursuit + command clearhazards + command healmorn + command healday + command healnite + command hiddenpower + command startrain + command startsun + command attackup + command defenseup + command speedup + command specialattackup + command specialdefenseup + command accuracyup + command evasionup + command attackup2 + command defenseup2 + command speedup2 + command specialattackup2 + command specialdefenseup2 + command accuracyup2 + command evasionup2 + command attackdown + command defensedown + command speeddown + command specialattackdown + command specialdefensedown + command accuracydown + command evasiondown + command attackdown2 + command defensedown2 + command speeddown2 + command specialattackdown2 + command specialdefensedown2 + command accuracydown2 + command evasiondown2 + command statmessageuser + command statmessagetarget + command statupfailtext + command statdownfailtext + command effectchance + command effect0x91 + command effect0x92 + command switchturn + command fakeout + command bellydrum + command psychup + command rage + command doubleflyingdamage + command doubleundergrounddamage + command mirrorcoat + command checkfuturesight + command futuresight + command doubleminimizedamage + command skipsuncharge + command thunderaccuracy + command teleport + command beatup + command ragedamage + command effect0xa3 + command allstatsup + command effect0xa5 + command effect0xa6 + command effect0xa7 + command effect0xa8 + command clearmissdamage + command movedelay + command hittarget + command tristatuschance + command supereffectivelooptext + command startloop + command curl + + enum_start -1, -1 + command endmove + command endturn