12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277 |
- /****************************************************************************
- * Copyright (C) 2015-2016 by KDS *
- * *
- * This file is part of Sovereign of the Skies. *
- * *
- * Sovereign of the Skies is free software: you can redistribute it *
- * and/or modify it *
- * under the terms of the GNU Lesser General Public License as published *
- * by the Free Software Foundation, either version 3 of the License, or *
- * (at your option) any later version provided you include a copy of the *
- * licence and this header. *
- * *
- * Sovereign of the Skies is distributed in the hope that it will be *
- * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with Sovereign of the Skies. *
- * If not, see <http://www.gnu.org/licenses/>. *
- ****************************************************************************/
-
- /**
- * @file battle_script.h
- * @author KDS
- * @date 15 dec 2016
- * @brief Preprocessor Macros for writing PKMN Battle Scripts
- */
-
-
- #include <constants/moves.h>
-
- @@ Banks
- #define BANK_USER 1
- #define BANK_TARGET 0
-
- @@ Delay
-
- #define DELAY_HALFSECOND 0x20
- #define DELAY_1SECOND 0x40
-
- #define STRING_LOADER 0x0203C020
-
- @@ Compare operands
- .equ Equal, 0x0
- .equ Notequal, 0x1
- .equ Inferior, 0x2
- .equ Superior, 0x3
- .equ Anded, 0x4
-
- @@@@@@@@@@@@@@@@@ Macro
-
- @@ Super commands
- .macro calculatedamage
- .word 0x7060504
- .endm
-
- @@ Custom commands
- .macro callasm callasm_routine
- .byte 0xF8
- .word \callasm_routine
- .endm
-
- .macro setword setword_address setword_word
- .byte 0xF9
- .word \setword_address
- .word \setword_word
- .endm
-
- @@ Index commands
- .macro attackcanceler
- .byte 0
- .endm
-
- .macro accuracycheck accuracycheck_address accuracycheck_parameter1
- .byte 1
- .word \accuracycheck_address
- .hword \accuracycheck_parameter1
- .endm
-
- .macro attackstring
- .byte 2
- .endm
-
- .macro ppreduce
- .byte 3
- .endm
-
- .macro critcalc
- .byte 4
- .endm
-
- .macro cmd5
- .byte 5
- .endm
-
- .macro cmd6
- .byte 6
- .endm
-
- .macro cmd7
- .byte 7
- .endm
-
- .macro cmd8
- .byte 8
- .endm
-
- .macro attackanimation
- .byte 9
- .endm
-
- .macro waitanimation
- .byte 0xA
- .endm
-
- .macro graphicalhpupdate graphicalhpupdate_bank
- .byte 0xB
- .byte \graphicalhpupdate_bank
- .endm
-
- .macro datahpupdate datahpupdate_bank
- .byte 0xC
- .byte \datahpupdate_bank
- .endm
-
- .macro critmessage
- .byte 0xD
- .endm
-
- .macro missmessage
- .byte 0xE
- .endm
-
- .macro resultmessage
- .byte 0xF
- .endm
-
- .macro printstring printstring_string
- .byte 0x10
- .hword \printstring_string
- .endm
-
- .macro printstring2 printstring2_string
- .byte 0x11
- .hword \printstring2_string
- .endm
-
- .macro waitmessage waitmessage_delay
- .byte 0x12
- .hword \waitmessage_delay
- .endm
-
- .macro printfromtable printfromtable_table
- .byte 0x13
- .word \printfromtable_table
- .endm
-
- .macro printfromtable2 printfromtable2_table
- .byte 0x14
- .word \printfromtable2_table
- .endm
-
- .macro seteffectwithchancetarget
- .byte 0x15
- .endm
-
- .macro seteffecttarget
- .byte 0x16
- .endm
-
- .macro seteffectuser
- .byte 0x17
- .endm
-
- .macro clearstatus clearstatus_bank
- .byte 0x18
- .byte \clearstatus_bank
- .endm
-
- .macro faintpokemon faintpokemon_parameter1 faintpokemon_parameter2 faintpokemon_parameter3
- .byte 0x19
- .byte \faintpokemon_parameter1
- .byte \faintpokemon_parameter2
- .word \faintpokemon_parameter3
- .endm
-
- .macro cmd1a cmd1a_parameter1
- .byte 0x1A
- .byte cmd1a_parameter1
- .endm
-
- .macro cmd1b cmd1b_bank
- .byte 0x1B
- .byte \cmd1b_bank
- .endm
-
- .macro jumpifstatus jumpifstatus_bank jumpifstatus_status jumpifstatus_address
- .byte 0x1C
- .byte \jumpifstatus_bank
- .word \jumpifstatus_status
- .word \jumpifstatus_address
- .endm
-
- .macro jumpifsecondarystatus jumpifsecondarystatus_bank jumpifsecondarystatus_status jumpifsecondarystatus_address
- .byte 0x1D
- .byte \jumpifsecondarystatus_bank
- .word \jumpifsecondarystatus_status
- .word \jumpifsecondarystatus_address
- .endm
-
- .macro jumpifability jumpifability_bank jumpifability_ability jumpifability_address
- .byte 0x1E
- .byte \jumpifability_bank
- .byte \jumpifability_ability
- .word \jumpifability_address
- .endm
-
- .macro jumpifhalverset jumpifhalverset_bank jumpifhalverset_status jumpifhalverset_address
- .byte 0x1F
- .byte \jumpifhalverset_bank
- .hword \jumpifhalverset_status
- .word \jumpifhalverset_address
- .endm
-
- .macro jumpifstat jumpifstat_bank jumpifstat_flag jumpifstat_quantity jumpifstat_statid jumpifstat_address
- .byte 0x20
- .byte \jumpifstat_bank
- .byte \jumpifstat_flag
- .byte \jumpifstat_quantity
- .byte \jumpifstat_statid
- .word \jumpifstat_address
- .endm
-
- .macro jumpifspecialstatusflag jumpifspecialstatusflag_bank jumpifspecialstatusflag_word_to_and jumpifspecialstatusflag_statut jumpifspecialstatusflag_address
- .byte 0x21
- .byte \jumpifspecialstatusflag_bank
- .word \jumpifspecialstatusflag_word_to_and
- .byte \jumpifspecialstatusflag_statut
- .word \jumpifspecialstatusflag_address
- .endm
-
- .macro jumpiftype jumpiftype_bank jumpiftype_type jumpiftype_address
- .byte 0x22
- .byte \jumpiftype_bank
- .byte \jumpiftype_type
- .word \jumpiftype_address
- .endm
-
- .macro cmd23 cmd23_side_or_bank
- .byte 0x23
- .byte \cmd23_side_or_bank
- .endm
-
- .macro gotoandsomething gotoandsomething_address
- .byte 0x24
- .word \gotoandsomething_address
- .endm
-
- .macro cmd25
- .byte 0x25
- .endm
-
- .macro cmd26 cmd26_param1
- .byte 0x26
- .byte \cmd26_param1
- .endm
-
- .macro cmd27 cmd27_address
- .byte 0x27
- .word \cmd27_address
- .endm
-
- .macro goto goto_address
- .byte 0x28
- .word \goto_address
- .endm
-
- .macro jumpifbyte jumpifbyte_ifflag jumpifbyte_checkaddr jumpifbyte_compare jumpifbyte_address
- .byte 0x29
- .byte \jumpifbyte_ifflag
- .word \jumpifbyte_checkaddr
- .byte \jumpifbyte_compare
- .word \jumpifbyte_address
- .endm
-
- .macro jumpifhalfword jumpifhalfword_ifflag jumpifhalfword_checkaddr jumpifhalfword_compare jumpifhalfword_address
- .byte 0x2A
- .byte \jumpifhalfword_ifflag
- .word \jumpifhalfword_checkaddr
- .hword \jumpifhalfword_compare
- .word \jumpifhalfword_address
- .endm
-
- .macro jumpifword jumpifword_ifflag jumpifword_checkaddr jumpifword_compare jumpifword_address
- .byte 0x2B
- .byte \jumpifword_ifflag
- .word \jumpifword_checkaddr
- .word \jumpifword_compare
- .word \jumpifword_address
- .endm
-
- .macro jumpifarrayequal jumpifarrayequal_mem1 jumpifarrayequal_mem2 jumpifarrayequal_size jumpifarrayequal_address
- .byte 0x2C
- .word \jumpifarrayequal_mem1
- .word \jumpifarrayequal_mem2
- .byte \jumpifarrayequal_size
- .word \jumpifarrayequal_address
- .endm
-
- .macro jumpifarraynotequal jumpifarraynotequal_mem1 jumpifarraynotequal_mem2 jumpifarraynotequal_size jumpifarraynotequal_address
- .byte 0x2D
- .word \jumpifarraynotequal_mem1
- .word \jumpifarraynotequal_mem2
- .byte \jumpifarraynotequal_size
- .word \jumpifarraynotequal_address
- .endm
-
- .macro setbyte setbyte_pointer setbyte_value
- .byte 0x2E
- .word \setbyte_pointer
- .byte \setbyte_value
- .endm
-
- .macro addbyte addbyte_pointer addbyte_value
- .byte 0x2F
- .word \addbyte_pointer
- .byte \addbyte_value
- .endm
-
- .macro subtractbyte subtractbyte_pointer subtractbyte_value
- .byte 0x30
- .word \subtractbyte_pointer
- .byte \subtractbyte_value
- .endm
-
- .macro copyarray copyarray_destination copyarray_source copyarray_size
- .byte 0x31
- .word \copyarray_destination
- .word \copyarray_source
- .byte \copyarray_size
- .endm
-
- .macro cmd32 cmd32_param1 cmd32_param2 cmd32_param3 cmd32_byte
- .byte 0x32
- .word \cmd32_param1
- .word \cmd32_param2
- .word \cmd32_param3
- .byte \cmd32_byte
- .endm
-
- .macro orbyte orbyte_pointer orbyte_value
- .byte 0x33
- .word \orbyte_pointer
- .byte \orbyte_value
- .endm
-
- .macro orhalfword orhalfword_pointer orhalfword_value
- .byte 0x34
- .word \orhalfword_pointer
- .hword \orhalfword_value
- .endm
-
- .macro orword orword_pointer orword_value
- .byte 0x35
- .word \orword_pointer
- .word \orword_value
- .endm
-
- .macro bicbyte bicbyte_pointer bicbyte_value
- .byte 0x36
- .word \bicbyte_pointer
- .byte \bicbyte_value
- .endm
-
- .macro bichalfword bichalfword_pointer bichalfword_value
- .byte 0x37
- .word \bichalfword_pointer
- .hword \bichalfword_value
- .endm
-
- .macro bicword bicword_pointer bicword_value
- .byte 0x38
- .word \bicword_pointer
- .word \bicword_value
- .endm
-
- .macro pause pause_duration
- .byte 0x39
- .hword \pause_duration
- .endm
-
- .macro waitstate
- .byte 0x3A
- .endm
-
- .macro somethinghealcmd3b somethinghealcmd3b_bank
- .byte 0x3B
- .byte \somethinghealcmd3b_bank
- .endm
-
- .macro return
- .byte 0x3C
- .endm
-
- .macro end
- .byte 0x3D
- .endm
-
- .macro end2
- .byte 0x3E
- .endm
-
- .macro end3
- .byte 0x3F
- .endm
-
- .macro cmd40 cmd40_address
- .byte 0x40
- .word \cmd40_address
- .endm
-
- .macro call call_address
- .byte 0x41
- .word \call_address
- .endm
-
- .macro jumpiftype2 jumpiftype2_bank jumpiftype2_type jumpiftype2_address
- .byte 0x42
- .byte \jumpiftype2_bank
- .byte \jumpiftype2_type
- .word \jumpiftype2_address
- .endm
-
- .macro jumpifabilitypresent jumpifabilitypresent_ability jumpifabilitypresent_address
- .byte 0x43
- .byte \jumpifabilitypresent_ability
- .word \jumpifabilitypresent_address
- .endm
-
- .macro cmd44
- .byte 0x44
- .endm
-
- .macro playanimation playanimation_bank playanimation_animation playanimation_word
- .byte 0x45
- .byte \playanimation_bank
- .byte \playanimation_animation
- .word \playanimation_word
- .endm
-
- .macro cmd46 cmd46_bank cmd46_address cmd46_address2
- .byte 0x46
- .byte \cmd46_bank
- .word \cmd46_address
- .word \cmd46_address2
- .endm
-
- .macro cmd47
- .byte 0x47
- .endm
-
- .macro playstatchangeanimation playstatchangeanimation_bank playstatchangeanimation_colour playstatchangeanimation_byte
- .byte 0x48
- .byte \playstatchangeanimation_bank
- .byte \playstatchangeanimation_colour
- .byte \playstatchangeanimation_byte
- .endm
-
- .macro cmd49 cmd49_byte1 cmd49_byte2
- .byte 0x49
- .byte \cmd49_byte1
- .byte \cmd49_byte2
- .endm
-
- .macro damagecalc2
- .byte 0x4A
- .endm
-
- .macro cmd4b
- .byte 0x4B
- .endm
-
- .macro switch1 switch1_bank
- .byte 0x4C
- .byte \switch1_bank
- .endm
-
- .macro switch2 switch2_bank
- .byte 0x4D
- .byte \switch2_bank
- .endm
-
- .macro switch3 switch3_bank switch3_byte
- .byte 0x4E
- .byte \switch3_bank
- .byte \switch3_byte
- .endm
-
- .macro jumpifcannotswitch jumpifcannotswitch_bank jumpifcannotswitch_address
- .byte 0x4F
- .byte \jumpifcannotswitch_bank
- .word \jumpifcannotswitch_address
- .endm
-
- .macro openpartyscreen openpartyscreen_bank openpartyscreen_address
- .byte 0x50
- .byte \openpartyscreen_bank
- .word \openpartyscreen_address
- .endm
-
- .macro cmd51 cmd51_bank cmd51_param2
- .byte 0x51
- .byte \cmd51_bank
- .byte \cmd51_param2
- .endm
-
- .macro cmd52 cmd52_bank
- .byte 0x52
- .byte \cmd52_bank
- .endm
-
- .macro cmd53 cmd53_bank
- .byte 0x53
- .byte \cmd53_bank
- .endm
-
- .macro cmd54 cmd54_hword
- .byte 0x54
- .hword \cmd54_hword
- .endm
-
- .macro cmd55 cmd55_word
- .byte 0x55
- .word \cmd55_word
- .endm
-
- .macro cmd56 cmd56_bank_or_side
- .byte 0x56
- .byte \cmd56_bank_or_side
- .endm
-
- .macro cmd57
- .byte 0x57
- .endm
-
- .macro cmd58 cmd58_bank
- .byte 0x58
- .byte \cmd58_bank
- .endm
-
- .macro checkiflearnmoveinbattle checkiflearnmoveinbattle_param1 checkiflearnmoveinbattle_param2 checkiflearnmoveinbattle_bank_maybe
- .byte 0x59
- .word \checkiflearnmoveinbattle_param1
- .word \checkiflearnmoveinbattle_param2
- .byte \checkiflearnmoveinbattle_bank_maybe
- .endm
-
- .macro cmd5a cmd5a_address
- .byte 0x5A
- .word \cmd5a_address
- .endm
-
- .macro cmd5b cmd5b_address
- .byte 0x5B
- .word \cmd5b_address
- .endm
-
- .macro cmd5c cmd5c_bank
- .byte 0x5C
- .byte \cmd5c_bank
- .endm
-
- .macro cmd5d
- .byte 0x5D
- .endm
-
- .macro cmd5e cmd5e_bank
- .byte 0x5E
- .byte \cmd5e_bank
- .endm
-
- .macro cmd5f
- .byte 0x5F
- .endm
-
- .macro cmd60 cmd60_byte
- .byte 0x60
- .byte \cmd60_byte
- .endm
-
- .macro cmd61 cmd61_bank_or_side
- .byte 0x61
- .byte \cmd61_bank_or_side
- .endm
-
- .macro cmd62 cmd62_bank_or_side
- .byte 0x62
- .byte \cmd62_bank_or_side
- .endm
-
- .macro jumptoattack jumptoattack_bank
- .byte 0x63
- .byte \jumptoattack_bank
- .endm
-
- .macro statusanimation statusanimation_bank
- .byte 0x64
- .byte \statusanimation_bank
- .endm
-
- .macro cmd65 cmd65_bank_or_side cmd65_address
- .byte 0x65
- .byte \cmd65_bank_or_side
- .word \cmd65_address
- .endm
-
- .macro cmd66 cmd66_bank_or_side cmd66_bank_or_side2 cmd66_address
- .byte 0x66
- .byte \cmd66_bank_or_side
- .byte \cmd66_bank_or_side2
- .word \cmd66_address
- .endm
-
- .macro cmd67
- .byte 0x67
- .endm
-
- .macro cmd68
- .byte 0x68
- .endm
-
- .macro cmd69
- .byte 0x69
- .endm
-
- .macro removeitem removeitem_bank
- .byte 0x6A
- .byte \removeitem_bank
- .endm
-
- .macro cmd6b
- .byte 0x6B
- .endm
-
- .macro cmd6c
- .byte 0x6C
- .endm
-
- .macro cmd6d
- .byte 0x6D
- .endm
-
- .macro cmd6e
- .byte 0x6E
- .endm
-
- .macro cmd6f cmd6f_bank
- .byte 0x6F
- .byte \cmd6f_bank
- .endm
-
- .macro cmd70 cmd70_bank
- .byte 0x70
- .byte \cmd70_bank
- .endm
-
- .macro cmd71
- .byte 0x71
- .endm
-
- .macro cmd72 cmd72_address
- .byte 0x72
- .word \cmd72_address
- .endm
-
- .macro cmd73 cmd73_bank
- .byte 0x73
- .byte \cmd73_bank
- .endm
-
- .macro cmd74 cmd74_bank
- .byte 0x74
- .byte \cmd74_bank
- .endm
-
- .macro cmd75
- .byte 0x75
- .endm
-
- .macro cmd76 cmd76_bank cmd76_byte
- .byte 0x76
- .byte \cmd76_bank
- .byte \cmd76_byte
- .endm
-
- .macro setprotect
- .byte 0x77
- .endm
-
- .macro faintifabilitynotdamp
- .byte 0x78
- .endm
-
- .macro setuserhptozero
- .byte 0x79
- .endm
-
- .macro jumpwhiletargetvalid jumpwhiletargetvalid_address
- .byte 0x7A
- .word \jumpwhiletargetvalid_address
- .endm
-
- .macro setdamageasrestorehalfmaxhp setdamageasrestorehalfmaxhp_address setdamageasrestorehalfmaxhp_byte
- .byte 0x7B
- .word \setdamageasrestorehalfmaxhp_address
- .byte \setdamageasrestorehalfmaxhp_byte
- .endm
-
- .macro jumptolastusedattack
- .byte 0x7C
- .endm
-
- .macro setrain
- .byte 0x7D
- .endm
-
- .macro setreflect
- .byte 0x7E
- .endm
-
- .macro setleechseed
- .byte 0x7F
- .endm
-
- .macro manipulatedamage
- .byte 0x80
- .endm
-
- .macro setrest setrest_address
- .byte 0x81
- .word \setrest_address
- .endm
-
- .macro jumpifnotfirstturn jumpifnotfirstturn_address
- .byte 0x82
- .word \jumpifnotfirstturn_address
- .endm
-
- .macro nop3
- .byte 0x83
- .endm
-
- .macro jumpifcannotsleep jumpifcannotsleep_address
- .byte 0x84
- .word \jumpifcannotsleep_address
- .endm
-
- .macro stockpile
- .byte 0x85
- .endm
-
- .macro stockpiletobasedamage stockpiletobasedamage_address
- .byte 0x86
- .word \stockpiletobasedamage_address
- .endm
-
- .macro stockpiletohprecovery stockpiletohprecovery_address
- .byte 0x87
- .word \stockpiletohprecovery_address
- .endm
-
- .macro negativedamage
- .byte 0x88
- .endm
-
- .macro statbuffchange statbuffchange_target statbuffchange_address
- .byte 0x89
- .byte \statbuffchange_target
- .word \statbuffchange_address
- .endm
-
- .macro normalisebuffs
- .byte 0x8A
- .endm
-
- .macro setbide
- .byte 0x8B
- .endm
-
- .macro confuseifrepeatingattackends
- .byte 0x8C
- .endm
-
- .macro setloopcounter setloopcounter_number_of_loop
- .byte 0x8D
- .byte \setloopcounter_number_of_loop
- .endm
-
- .macro cmd8e
- .byte 0x8E
- .endm
-
- .macro forcerandomswitch forcerandomswitch_address
- .byte 0x8F
- .word \forcerandomswitch_address
- .endm
-
- .macro changetypestoenemyattacktype changetypestoenemyattacktype_address
- .byte 0x90
- .word \changetypestoenemyattacktype_address
- .endm
-
- .macro givemoney
- .byte 0x91
- .endm
-
- .macro setlightscreen
- .byte 0x92
- .endm
-
- .macro koplussomethings koplussomethings_address
- .byte 0x93
- .word \koplussomethings_address
- .endm
-
- .macro gethalfcurrentenemyhp
- .byte 0x94
- .endm
-
- .macro setsandstorm
- .byte 0x95
- .endm
-
- .macro weatherdamage
- .byte 0x96
- .endm
-
- .macro tryinfatuatetarget tryinfatuatetarget_address
- .byte 0x97
- .word \tryinfatuatetarget_address
- .endm
-
- .macro cmd98 cmd98_byte
- .byte 0x98
- .byte \cmd98_byte
- .endm
-
- .macro setmisteffect
- .byte 0x99
- .endm
-
- .macro setincreasedcriticalchance
- .byte 0x9A
- .endm
-
- .macro transformdataexecution
- .byte 0x9B
- .endm
-
- .macro setsubstituteeffect
- .byte 0x9C
- .endm
-
- .macro copyattack copyattack_address
- .byte 0x9D
- .word \copyattack_address
- .endm
-
- .macro metronomeeffect
- .byte 0x9E
- .endm
-
- .macro nightshadedamageeffect
- .byte 0x9F
- .endm
-
- .macro psywavedamageeffect
- .byte 0xA0
- .endm
-
- .macro counterdamagecalculator counterdamagecalculator_address
- .byte 0xA1
- .word \counterdamagecalculator_address
- .endm
-
- .macro mirrorcoatdamagecalculator mirrorcoatdamagecalculator_address
- .byte 0xA2
- .word \mirrorcoatdamagecalculator_address
- .endm
-
- .macro disablelastusedattack disablelastusedattack_address
- .byte 0xA3
- .word \disablelastusedattack_address
- .endm
-
- .macro setencore setencore_address
- .byte 0xA4
- .word \setencore_address
- .endm
-
- .macro painsplitdamagecalculator painsplitdamagecalculator_address
- .byte 0xA5
- .word \painsplitdamagecalculator_address
- .endm
-
- .macro settypetorandomresistance settypetorandomresistance_address
- .byte 0xA6
- .word \settypetorandomresistance_address
- .endm
-
- .macro setalwayshitflag
- .byte 0xA7
- .endm
-
- .macro copymovepermanently copymovepermanently_address
- .byte 0xA8
- .word \copymovepermanently_address
- .endm
-
- .macro selectrandommovefromusermoves selectrandommovefromusermoves_address
- .byte 0xA9
- .word \selectrandommovefromusermoves_address
- .endm
-
- .macro destinybondeffect
- .byte 0xAA
- .endm
-
- .macro cmdab
- .byte 0xAB
- .endm
-
- .macro remaininghptopower
- .byte 0xAC
- .endm
-
- .macro reducepprandom reducepprandom_address
- .byte 0xAD
- .word \reducepprandom_address
- .endm
-
- .macro clearstatusifnotsoundproofed
- .byte 0xAE
- .endm
-
- .macro cursetarget cursetarget_address
- .byte 0xAF
- .word \cursetarget_address
- .endm
-
- .macro setspikes setspikes_address
- .byte 0xB0
- .word \setspikes_address
- .endm
-
- .macro setforesight
- .byte 0xB1
- .endm
-
- .macro setperishsong setperishsong_address
- .byte 0xB2
- .word \setperishsong_address
- .endm
-
- .macro rolloutdamagecalculation
- .byte 0xB3
- .endm
-
- .macro jumpifconfusedandattackmaxed jumpifconfusedandattackmaxed_bank jumpifconfusedandattackmaxed_address
- .byte 0xB4
- .byte \jumpifconfusedandattackmaxed_bank
- .word \jumpifconfusedandattackmaxed_address
- .endm
-
- .macro furycutterdamagecalculation
- .byte 0xB5
- .endm
-
- .macro happinesstodamagecalculation
- .byte 0xB6
- .endm
-
- .macro presentdamagecalculation
- .byte 0xB7
- .endm
-
- .macro setsafeguard
- .byte 0xB8
- .endm
-
- .macro magnitudedamagecalculation
- .byte 0xB9
- .endm
-
- .macro cmdba cmdba_address
- .byte 0xBA
- .word \cmdba_address
- .endm
-
- .macro setsunny
- .byte 0xBB
- .endm
-
- .macro maxattackhalvehp maxattackhalvehp_address
- .byte 0xBC
- .word \maxattackhalvehp_address
- .endm
-
- .macro copyfoestats copyfoestats_address
- .byte 0xBD
- .word \copyfoestats_address
- .endm
-
- .macro breakfree
- .byte 0xBE
- .endm
-
- .macro setcurled
- .byte 0xBF
- .endm
-
- .macro recoverbasedonsunlight
- .byte 0xC0
- .endm
-
- .macro hiddenpowerdamagecalculation
- .byte 0xC1
- .endm
-
- .macro selectnexttarget
- .byte 0xC2
- .endm
-
- .macro setfutureattack setfutureattack_address
- .byte 0xC3
- .word \setfutureattack_address
- .endm
-
- .macro beatupcalculation beatupcalculation_address1 beatupcalculation_address2
- .byte 0xC4
- .word \beatupcalculation_address1
- .word \beatupcalculation_address2
- .endm
-
- .macro hidepreattack
- .byte 0xC5
- .endm
-
- .macro unhidepostattack
- .byte 0xC6
- .endm
-
- .macro setminimize
- .byte 0xC7
- .endm
-
- .macro sethail
- .byte 0xC8
- .endm
-
- .macro jumpifattackandspecialattackcannotfall jumpifattackandspecialattackcannotfall_address
- .byte 0xC9
- .word \jumpifattackandspecialattackcannotfall_address
- .endm
-
- .macro setforcedtarget
- .byte 0xCA
- .endm
-
- .macro setcharge
- .byte 0xCB
- .endm
-
- .macro callterrainattack
- .byte 0xCC
- .endm
-
- .macro cureifburnedparalysedorpoisoned cureifburnedparalysedorpoisoned_address
- .byte 0xCD
- .word \cureifburnedparalysedorpoisoned_address
- .endm
-
- .macro settorment settorment_address
- .byte 0xCE
- .word \settorment_address
- .endm
-
- .macro jumpifnodamage jumpifnodamage_address
- .byte 0xCF
- .word \jumpifnodamage_address
- .endm
-
- .macro settaunt settaunt_address
- .byte 0xD0
- .word \settaunt_address
- .endm
-
- .macro sethelpinghand sethelpinghand_address
- .byte 0xD1
- .word \sethelpinghand_address
- .endm
-
- .macro itemswap itemswap_address
- .byte 0xD2
- .word \itemswap_address
- .endm
-
- .macro copyability copyability_address
- .byte 0xD3
- .word \copyability_address
- .endm
-
- .macro cmdd4 cmdd4_byte cmdd4_address
- .byte 0xD4
- .byte \cmdd4_byte
- .word \cmdd4_address
- .endm
-
- .macro setroots setroots_address
- .byte 0xD5
- .word \setroots_address
- .endm
-
- .macro doubledamagedealtifdamaged
- .byte 0xD6
- .endm
-
- .macro setyawn setyawn_address
- .byte 0xD7
- .word \setyawn_address
- .endm
-
- .macro setdamagetohealthdifference setdamagetohealthdifference_address
- .byte 0xD8
- .word \setdamagetohealthdifference_address
- .endm
-
- .macro scaledamagebyhealthratio
- .byte 0xD9
- .endm
-
- .macro abilityswap abilityswap_address
- .byte 0xDA
- .word \abilityswap_address
- .endm
-
- .macro imprisoneffect imprisoneffect_address
- .byte 0xDB
- .word \imprisoneffect_address
- .endm
-
- .macro setgrudge setgrudge_address
- .byte 0xDC
- .word \setgrudge_address
- .endm
-
- .macro weightdamagecalculation
- .byte 0xDD
- .endm
-
- .macro assistattackselect assistattackselect_address
- .byte 0xDE
- .word \assistattackselect_address
- .endm
-
- .macro setmagiccoat setmagiccoat_address
- .byte 0xDF
- .word \setmagiccoat_address
- .endm
-
- .macro setstealstatchange setstealstatchange_address
- .byte 0xE0
- .word \setstealstatchange_address
- .endm
-
- .macro cmde1 cmde1_address
- .byte 0xE1
- .word \cmde1_address
- .endm
-
- .macro cmde2 cmde2_bank
- .byte 0xE2
- .byte \cmde2_bank
- .endm
-
- .macro jumpiffainted jumpiffainted_bank jumpiffainted_address
- .byte 0xE3
- .byte \jumpiffainted_bank
- .word \jumpiffainted_address
- .endm
-
- .macro naturepowereffect
- .byte 0xE4
- .endm
-
- .macro pickupitemcalculation
- .byte 0xE5
- .endm
-
- .macro actualcastformswitch
- .byte 0xE6
- .endm
-
- .macro castformswitch
- .byte 0xE7
- .endm
-
- .macro settypebasedhalvers settypebasedhalvers_address
- .byte 0xE8
- .word \settypebasedhalvers_address
- .endm
-
- .macro seteffectbyweather
- .byte 0xE9
- .endm
-
- .macro recycleitem recycleitem_address
- .byte 0xEA
- .word \recycleitem_address
- .endm
-
- .macro settypetoterrain settypetoterrain_address
- .byte 0xEB
- .word \settypetoterrain_address
- .endm
-
- .macro pursuitwhenswitched pursuitwhenswitched_address
- .byte 0xEC
- .word \pursuitwhenswitched_address
- .endm
-
- .macro snatchmove
- .byte 0xED
- .endm
-
- .macro removereflectlightscreen
- .byte 0xEE
- .endm
-
- .macro pokemoncatchfunction
- .byte 0xEF
- .endm
-
- .macro catchpoke
- .byte 0xF0
- .endm
-
- .macro capturesomethingf1 capturesomethingf1_address
- .byte 0xF1
- .word \capturesomethingf1_address
- .endm
-
- .macro capturesomethingf2
- .byte 0xF2
- .endm
-
- .macro capturesomethingf3 capturesomethingf3_address
- .byte 0xF3
- .word \capturesomethingf3_address
- .endm
-
- .macro removehp
- .byte 0xF4
- .endm
-
- .macro curestatutfirstword
- .byte 0xF5
- .endm
-
- .macro cmdf6
- .byte 0xF6
- .endm
-
- .macro activesidesomething
- .byte 0xF7
- .endm
|