mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-09-09 09:51:34 -07:00
Specialized macros go with their data/code
This commit is contained in:
parent
9af6d8d0f1
commit
8aa58dca9e
@ -5,262 +5,285 @@
|
||||
; - ItemAttributes (see data/items/attributes.asm)
|
||||
; - ItemEffects (see engine/item_effects.asm)
|
||||
const_def
|
||||
const NO_ITEM ; $00
|
||||
const MASTER_BALL ; $01
|
||||
const ULTRA_BALL ; $02
|
||||
const BRIGHTPOWDER ; $03
|
||||
const GREAT_BALL ; $04
|
||||
const POKE_BALL ; $05
|
||||
const TOWN_MAP ; $06
|
||||
const BICYCLE ; $07
|
||||
const MOON_STONE ; $08
|
||||
const ANTIDOTE ; $09
|
||||
const BURN_HEAL ; $0A
|
||||
const ICE_HEAL ; $0B
|
||||
const AWAKENING ; $0C
|
||||
const PARLYZ_HEAL ; $0D
|
||||
const FULL_RESTORE ; $0E
|
||||
const MAX_POTION ; $0F
|
||||
const HYPER_POTION ; $10
|
||||
const SUPER_POTION ; $11
|
||||
const POTION ; $12
|
||||
const ESCAPE_ROPE ; $13
|
||||
const REPEL ; $14
|
||||
const MAX_ELIXER ; $15
|
||||
const FIRE_STONE ; $16
|
||||
const THUNDERSTONE ; $17
|
||||
const WATER_STONE ; $18
|
||||
const ITEM_19 ; $19
|
||||
const HP_UP ; $1A
|
||||
const PROTEIN ; $1B
|
||||
const IRON ; $1C
|
||||
const CARBOS ; $1D
|
||||
const LUCKY_PUNCH ; $1E
|
||||
const CALCIUM ; $1F
|
||||
const RARE_CANDY ; $20
|
||||
const X_ACCURACY ; $21
|
||||
const LEAF_STONE ; $22
|
||||
const METAL_POWDER ; $23
|
||||
const NUGGET ; $24
|
||||
const POKE_DOLL ; $25
|
||||
const FULL_HEAL ; $26
|
||||
const REVIVE ; $27
|
||||
const MAX_REVIVE ; $28
|
||||
const GUARD_SPEC ; $29
|
||||
const SUPER_REPEL ; $2A
|
||||
const MAX_REPEL ; $2B
|
||||
const DIRE_HIT ; $2C
|
||||
const ITEM_2D ; $2D
|
||||
const FRESH_WATER ; $2E
|
||||
const SODA_POP ; $2F
|
||||
const LEMONADE ; $30
|
||||
const X_ATTACK ; $31
|
||||
const ITEM_32 ; $32
|
||||
const X_DEFEND ; $33
|
||||
const X_SPEED ; $34
|
||||
const X_SPECIAL ; $35
|
||||
const COIN_CASE ; $36
|
||||
const ITEMFINDER ; $37
|
||||
const POKE_FLUTE ; $38
|
||||
const EXP_SHARE ; $39
|
||||
const OLD_ROD ; $3A
|
||||
const GOOD_ROD ; $3B
|
||||
const SILVER_LEAF ; $3C
|
||||
const SUPER_ROD ; $3D
|
||||
const PP_UP ; $3E
|
||||
const ETHER ; $3F
|
||||
const MAX_ETHER ; $40
|
||||
const ELIXER ; $41
|
||||
const RED_SCALE ; $42
|
||||
const SECRETPOTION ; $43
|
||||
const S_S_TICKET ; $44
|
||||
const MYSTERY_EGG ; $45
|
||||
const CLEAR_BELL ; $46
|
||||
const SILVER_WING ; $47
|
||||
const MOOMOO_MILK ; $48
|
||||
const QUICK_CLAW ; $49
|
||||
const PSNCUREBERRY ; $4A
|
||||
const GOLD_LEAF ; $4B
|
||||
const SOFT_SAND ; $4C
|
||||
const SHARP_BEAK ; $4D
|
||||
const PRZCUREBERRY ; $4E
|
||||
const BURNT_BERRY ; $4F
|
||||
const ICE_BERRY ; $50
|
||||
const POISON_BARB ; $51
|
||||
const KINGS_ROCK ; $52
|
||||
const BITTER_BERRY ; $53
|
||||
const MINT_BERRY ; $54
|
||||
const RED_APRICORN ; $55
|
||||
const TINYMUSHROOM ; $56
|
||||
const BIG_MUSHROOM ; $57
|
||||
const SILVERPOWDER ; $58
|
||||
const BLU_APRICORN ; $59
|
||||
const ITEM_5A ; $5A
|
||||
const AMULET_COIN ; $5B
|
||||
const YLW_APRICORN ; $5C
|
||||
const GRN_APRICORN ; $5D
|
||||
const CLEANSE_TAG ; $5E
|
||||
const MYSTIC_WATER ; $5F
|
||||
const TWISTEDSPOON ; $60
|
||||
const WHT_APRICORN ; $61
|
||||
const BLACKBELT ; $62
|
||||
const BLK_APRICORN ; $63
|
||||
const ITEM_64 ; $64
|
||||
const PNK_APRICORN ; $65
|
||||
const BLACKGLASSES ; $66
|
||||
const SLOWPOKETAIL ; $67
|
||||
const PINK_BOW ; $68
|
||||
const STICK ; $69
|
||||
const SMOKE_BALL ; $6A
|
||||
const NEVERMELTICE ; $6B
|
||||
const MAGNET ; $6C
|
||||
const MIRACLEBERRY ; $6D
|
||||
const PEARL ; $6E
|
||||
const BIG_PEARL ; $6F
|
||||
const EVERSTONE ; $70
|
||||
const SPELL_TAG ; $71
|
||||
const RAGECANDYBAR ; $72
|
||||
const GS_BALL ; $73
|
||||
const BLUE_CARD ; $74
|
||||
const MIRACLE_SEED ; $75
|
||||
const THICK_CLUB ; $76
|
||||
const FOCUS_BAND ; $77
|
||||
const ITEM_78 ; $78
|
||||
const ENERGYPOWDER ; $79
|
||||
const ENERGY_ROOT ; $7A
|
||||
const HEAL_POWDER ; $7B
|
||||
const REVIVAL_HERB ; $7C
|
||||
const HARD_STONE ; $7D
|
||||
const LUCKY_EGG ; $7E
|
||||
const CARD_KEY ; $7F
|
||||
const MACHINE_PART ; $80
|
||||
const EGG_TICKET ; $81
|
||||
const LOST_ITEM ; $82
|
||||
const STARDUST ; $83
|
||||
const STAR_PIECE ; $84
|
||||
const BASEMENT_KEY ; $85
|
||||
const PASS ; $86
|
||||
const ITEM_87 ; $87
|
||||
const ITEM_88 ; $88
|
||||
const ITEM_89 ; $89
|
||||
const CHARCOAL ; $8A
|
||||
const BERRY_JUICE ; $8B
|
||||
const SCOPE_LENS ; $8C
|
||||
const ITEM_8D ; $8D
|
||||
const ITEM_8E ; $8E
|
||||
const METAL_COAT ; $8F
|
||||
const DRAGON_FANG ; $90
|
||||
const ITEM_91 ; $91
|
||||
const LEFTOVERS ; $92
|
||||
const ITEM_93 ; $93
|
||||
const ITEM_94 ; $94
|
||||
const ITEM_95 ; $95
|
||||
const MYSTERYBERRY ; $96
|
||||
const DRAGON_SCALE ; $97
|
||||
const BERSERK_GENE ; $98
|
||||
const ITEM_99 ; $99
|
||||
const ITEM_9A ; $9A
|
||||
const ITEM_9B ; $9B
|
||||
const SACRED_ASH ; $9C
|
||||
const HEAVY_BALL ; $9D
|
||||
const FLOWER_MAIL ; $9E
|
||||
const LEVEL_BALL ; $9F
|
||||
const LURE_BALL ; $A0
|
||||
const FAST_BALL ; $A1
|
||||
const ITEM_A2 ; $A2
|
||||
const LIGHT_BALL ; $A3
|
||||
const FRIEND_BALL ; $A4
|
||||
const MOON_BALL ; $A5
|
||||
const LOVE_BALL ; $A6
|
||||
const NORMAL_BOX ; $A7
|
||||
const GORGEOUS_BOX ; $A8
|
||||
const SUN_STONE ; $A9
|
||||
const POLKADOT_BOW ; $AA
|
||||
const ITEM_AB ; $AB
|
||||
const UP_GRADE ; $AC
|
||||
const BERRY ; $AD
|
||||
const GOLD_BERRY ; $AE
|
||||
const SQUIRTBOTTLE ; $AF
|
||||
const ITEM_B0 ; $B0
|
||||
const PARK_BALL ; $B1
|
||||
const RAINBOW_WING ; $B2
|
||||
const ITEM_B3 ; $B3
|
||||
const BRICK_PIECE ; $B4
|
||||
const SURF_MAIL ; $B5
|
||||
const LITEBLUEMAIL ; $B6
|
||||
const PORTRAITMAIL ; $B7
|
||||
const LOVELY_MAIL ; $B8
|
||||
const EON_MAIL ; $B9
|
||||
const MORPH_MAIL ; $BA
|
||||
const BLUESKY_MAIL ; $BB
|
||||
const MUSIC_MAIL ; $BC
|
||||
const MIRAGE_MAIL ; $BD
|
||||
const ITEM_BE ; $BE
|
||||
const NO_ITEM ; 00
|
||||
const MASTER_BALL ; 01
|
||||
const ULTRA_BALL ; 02
|
||||
const BRIGHTPOWDER ; 03
|
||||
const GREAT_BALL ; 04
|
||||
const POKE_BALL ; 05
|
||||
const TOWN_MAP ; 06
|
||||
const BICYCLE ; 07
|
||||
const MOON_STONE ; 08
|
||||
const ANTIDOTE ; 09
|
||||
const BURN_HEAL ; 0a
|
||||
const ICE_HEAL ; 0b
|
||||
const AWAKENING ; 0c
|
||||
const PARLYZ_HEAL ; 0d
|
||||
const FULL_RESTORE ; 0e
|
||||
const MAX_POTION ; 0f
|
||||
const HYPER_POTION ; 10
|
||||
const SUPER_POTION ; 11
|
||||
const POTION ; 12
|
||||
const ESCAPE_ROPE ; 13
|
||||
const REPEL ; 14
|
||||
const MAX_ELIXER ; 15
|
||||
const FIRE_STONE ; 16
|
||||
const THUNDERSTONE ; 17
|
||||
const WATER_STONE ; 18
|
||||
const ITEM_19 ; 19
|
||||
const HP_UP ; 1a
|
||||
const PROTEIN ; 1b
|
||||
const IRON ; 1c
|
||||
const CARBOS ; 1d
|
||||
const LUCKY_PUNCH ; 1e
|
||||
const CALCIUM ; 1f
|
||||
const RARE_CANDY ; 20
|
||||
const X_ACCURACY ; 21
|
||||
const LEAF_STONE ; 22
|
||||
const METAL_POWDER ; 23
|
||||
const NUGGET ; 24
|
||||
const POKE_DOLL ; 25
|
||||
const FULL_HEAL ; 26
|
||||
const REVIVE ; 27
|
||||
const MAX_REVIVE ; 28
|
||||
const GUARD_SPEC ; 29
|
||||
const SUPER_REPEL ; 2a
|
||||
const MAX_REPEL ; 2b
|
||||
const DIRE_HIT ; 2c
|
||||
const ITEM_2D ; 2d
|
||||
const FRESH_WATER ; 2e
|
||||
const SODA_POP ; 2f
|
||||
const LEMONADE ; 30
|
||||
const X_ATTACK ; 31
|
||||
const ITEM_32 ; 32
|
||||
const X_DEFEND ; 33
|
||||
const X_SPEED ; 34
|
||||
const X_SPECIAL ; 35
|
||||
const COIN_CASE ; 36
|
||||
const ITEMFINDER ; 37
|
||||
const POKE_FLUTE ; 38
|
||||
const EXP_SHARE ; 39
|
||||
const OLD_ROD ; 3a
|
||||
const GOOD_ROD ; 3b
|
||||
const SILVER_LEAF ; 3c
|
||||
const SUPER_ROD ; 3d
|
||||
const PP_UP ; 3e
|
||||
const ETHER ; 3f
|
||||
const MAX_ETHER ; 40
|
||||
const ELIXER ; 41
|
||||
const RED_SCALE ; 42
|
||||
const SECRETPOTION ; 43
|
||||
const S_S_TICKET ; 44
|
||||
const MYSTERY_EGG ; 45
|
||||
const CLEAR_BELL ; 46
|
||||
const SILVER_WING ; 47
|
||||
const MOOMOO_MILK ; 48
|
||||
const QUICK_CLAW ; 49
|
||||
const PSNCUREBERRY ; 4a
|
||||
const GOLD_LEAF ; 4b
|
||||
const SOFT_SAND ; 4c
|
||||
const SHARP_BEAK ; 4d
|
||||
const PRZCUREBERRY ; 4e
|
||||
const BURNT_BERRY ; 4f
|
||||
const ICE_BERRY ; 50
|
||||
const POISON_BARB ; 51
|
||||
const KINGS_ROCK ; 52
|
||||
const BITTER_BERRY ; 53
|
||||
const MINT_BERRY ; 54
|
||||
const RED_APRICORN ; 55
|
||||
const TINYMUSHROOM ; 56
|
||||
const BIG_MUSHROOM ; 57
|
||||
const SILVERPOWDER ; 58
|
||||
const BLU_APRICORN ; 59
|
||||
const ITEM_5A ; 5a
|
||||
const AMULET_COIN ; 5b
|
||||
const YLW_APRICORN ; 5c
|
||||
const GRN_APRICORN ; 5d
|
||||
const CLEANSE_TAG ; 5e
|
||||
const MYSTIC_WATER ; 5f
|
||||
const TWISTEDSPOON ; 60
|
||||
const WHT_APRICORN ; 61
|
||||
const BLACKBELT ; 62
|
||||
const BLK_APRICORN ; 63
|
||||
const ITEM_64 ; 64
|
||||
const PNK_APRICORN ; 65
|
||||
const BLACKGLASSES ; 66
|
||||
const SLOWPOKETAIL ; 67
|
||||
const PINK_BOW ; 68
|
||||
const STICK ; 69
|
||||
const SMOKE_BALL ; 6a
|
||||
const NEVERMELTICE ; 6b
|
||||
const MAGNET ; 6c
|
||||
const MIRACLEBERRY ; 6d
|
||||
const PEARL ; 6e
|
||||
const BIG_PEARL ; 6f
|
||||
const EVERSTONE ; 70
|
||||
const SPELL_TAG ; 71
|
||||
const RAGECANDYBAR ; 72
|
||||
const GS_BALL ; 73
|
||||
const BLUE_CARD ; 74
|
||||
const MIRACLE_SEED ; 75
|
||||
const THICK_CLUB ; 76
|
||||
const FOCUS_BAND ; 77
|
||||
const ITEM_78 ; 78
|
||||
const ENERGYPOWDER ; 79
|
||||
const ENERGY_ROOT ; 7a
|
||||
const HEAL_POWDER ; 7b
|
||||
const REVIVAL_HERB ; 7c
|
||||
const HARD_STONE ; 7d
|
||||
const LUCKY_EGG ; 7e
|
||||
const CARD_KEY ; 7f
|
||||
const MACHINE_PART ; 80
|
||||
const EGG_TICKET ; 81
|
||||
const LOST_ITEM ; 82
|
||||
const STARDUST ; 83
|
||||
const STAR_PIECE ; 84
|
||||
const BASEMENT_KEY ; 85
|
||||
const PASS ; 86
|
||||
const ITEM_87 ; 87
|
||||
const ITEM_88 ; 88
|
||||
const ITEM_89 ; 89
|
||||
const CHARCOAL ; 8a
|
||||
const BERRY_JUICE ; 8b
|
||||
const SCOPE_LENS ; 8c
|
||||
const ITEM_8D ; 8d
|
||||
const ITEM_8E ; 8e
|
||||
const METAL_COAT ; 8f
|
||||
const DRAGON_FANG ; 90
|
||||
const ITEM_91 ; 91
|
||||
const LEFTOVERS ; 92
|
||||
const ITEM_93 ; 93
|
||||
const ITEM_94 ; 94
|
||||
const ITEM_95 ; 95
|
||||
const MYSTERYBERRY ; 96
|
||||
const DRAGON_SCALE ; 97
|
||||
const BERSERK_GENE ; 98
|
||||
const ITEM_99 ; 99
|
||||
const ITEM_9A ; 9a
|
||||
const ITEM_9B ; 9b
|
||||
const SACRED_ASH ; 9c
|
||||
const HEAVY_BALL ; 9d
|
||||
const FLOWER_MAIL ; 9e
|
||||
const LEVEL_BALL ; 9f
|
||||
const LURE_BALL ; a0
|
||||
const FAST_BALL ; a1
|
||||
const ITEM_A2 ; a2
|
||||
const LIGHT_BALL ; a3
|
||||
const FRIEND_BALL ; a4
|
||||
const MOON_BALL ; a5
|
||||
const LOVE_BALL ; a6
|
||||
const NORMAL_BOX ; a7
|
||||
const GORGEOUS_BOX ; a8
|
||||
const SUN_STONE ; a9
|
||||
const POLKADOT_BOW ; aa
|
||||
const ITEM_AB ; ab
|
||||
const UP_GRADE ; ac
|
||||
const BERRY ; ad
|
||||
const GOLD_BERRY ; ae
|
||||
const SQUIRTBOTTLE ; af
|
||||
const ITEM_B0 ; b0
|
||||
const PARK_BALL ; b1
|
||||
const RAINBOW_WING ; b2
|
||||
const ITEM_B3 ; b3
|
||||
const BRICK_PIECE ; b4
|
||||
const SURF_MAIL ; b5
|
||||
const LITEBLUEMAIL ; b6
|
||||
const PORTRAITMAIL ; b7
|
||||
const LOVELY_MAIL ; b8
|
||||
const EON_MAIL ; b9
|
||||
const MORPH_MAIL ; ba
|
||||
const BLUESKY_MAIL ; bb
|
||||
const MUSIC_MAIL ; bc
|
||||
const MIRAGE_MAIL ; bd
|
||||
const ITEM_BE ; be
|
||||
|
||||
add_tm: MACRO
|
||||
if !DEF(TM01)
|
||||
TM01 = const_value
|
||||
enum_start 1
|
||||
endc
|
||||
define _\@_1, "TM_\1"
|
||||
const _\@_1
|
||||
enum \1_TMNUM
|
||||
ENDM
|
||||
|
||||
add_hm: MACRO
|
||||
if !DEF(HM01)
|
||||
HM01 = const_value
|
||||
endc
|
||||
define _\@_1, "HM_\1"
|
||||
const _\@_1
|
||||
enum \1_TMNUM
|
||||
ENDM
|
||||
|
||||
add_mt: MACRO
|
||||
enum \1_TMNUM
|
||||
ENDM
|
||||
|
||||
; see data/moves/tmhm_moves.asm for moves
|
||||
add_tm DYNAMICPUNCH ; $BF
|
||||
add_tm HEADBUTT ; $C0
|
||||
add_tm CURSE ; $C1
|
||||
add_tm ROLLOUT ; $C2
|
||||
const ITEM_C3 ; $C3
|
||||
add_tm ROAR ; $C4
|
||||
add_tm TOXIC ; $C5
|
||||
add_tm ZAP_CANNON ; $C6
|
||||
add_tm ROCK_SMASH ; $C7
|
||||
add_tm PSYCH_UP ; $C8
|
||||
add_tm HIDDEN_POWER ; $C9
|
||||
add_tm SUNNY_DAY ; $CA
|
||||
add_tm SWEET_SCENT ; $CB
|
||||
add_tm SNORE ; $CC
|
||||
add_tm BLIZZARD ; $CD
|
||||
add_tm HYPER_BEAM ; $CE
|
||||
add_tm ICY_WIND ; $CF
|
||||
add_tm PROTECT ; $D0
|
||||
add_tm RAIN_DANCE ; $D1
|
||||
add_tm GIGA_DRAIN ; $D2
|
||||
add_tm ENDURE ; $D3
|
||||
add_tm FRUSTRATION ; $D4
|
||||
add_tm SOLARBEAM ; $D5
|
||||
add_tm IRON_TAIL ; $D6
|
||||
add_tm DRAGONBREATH ; $D7
|
||||
add_tm THUNDER ; $D8
|
||||
add_tm EARTHQUAKE ; $D9
|
||||
add_tm RETURN ; $DA
|
||||
add_tm DIG ; $DB
|
||||
const ITEM_DC ; $DC
|
||||
add_tm PSYCHIC_M ; $DD
|
||||
add_tm SHADOW_BALL ; $DE
|
||||
add_tm MUD_SLAP ; $DF
|
||||
add_tm DOUBLE_TEAM ; $E0
|
||||
add_tm ICE_PUNCH ; $E1
|
||||
add_tm SWAGGER ; $E2
|
||||
add_tm SLEEP_TALK ; $E3
|
||||
add_tm SLUDGE_BOMB ; $E4
|
||||
add_tm SANDSTORM ; $E5
|
||||
add_tm FIRE_BLAST ; $E6
|
||||
add_tm SWIFT ; $E7
|
||||
add_tm DEFENSE_CURL ; $E8
|
||||
add_tm THUNDERPUNCH ; $E9
|
||||
add_tm DREAM_EATER ; $EA
|
||||
add_tm DETECT ; $EB
|
||||
add_tm REST ; $EC
|
||||
add_tm ATTRACT ; $ED
|
||||
add_tm THIEF ; $EE
|
||||
add_tm STEEL_WING ; $EF
|
||||
add_tm FIRE_PUNCH ; $F0
|
||||
add_tm FURY_CUTTER ; $F1
|
||||
add_tm NIGHTMARE ; $F2
|
||||
add_tm DYNAMICPUNCH ; bf
|
||||
add_tm HEADBUTT ; c0
|
||||
add_tm CURSE ; c1
|
||||
add_tm ROLLOUT ; c2
|
||||
const ITEM_C3 ; c3
|
||||
add_tm ROAR ; c4
|
||||
add_tm TOXIC ; c5
|
||||
add_tm ZAP_CANNON ; c6
|
||||
add_tm ROCK_SMASH ; c7
|
||||
add_tm PSYCH_UP ; c8
|
||||
add_tm HIDDEN_POWER ; c9
|
||||
add_tm SUNNY_DAY ; ca
|
||||
add_tm SWEET_SCENT ; cb
|
||||
add_tm SNORE ; cc
|
||||
add_tm BLIZZARD ; cd
|
||||
add_tm HYPER_BEAM ; ce
|
||||
add_tm ICY_WIND ; cf
|
||||
add_tm PROTECT ; d0
|
||||
add_tm RAIN_DANCE ; d1
|
||||
add_tm GIGA_DRAIN ; d2
|
||||
add_tm ENDURE ; d3
|
||||
add_tm FRUSTRATION ; d4
|
||||
add_tm SOLARBEAM ; d5
|
||||
add_tm IRON_TAIL ; d6
|
||||
add_tm DRAGONBREATH ; d7
|
||||
add_tm THUNDER ; d8
|
||||
add_tm EARTHQUAKE ; d9
|
||||
add_tm RETURN ; da
|
||||
add_tm DIG ; db
|
||||
const ITEM_DC ; dc
|
||||
add_tm PSYCHIC_M ; dd
|
||||
add_tm SHADOW_BALL ; de
|
||||
add_tm MUD_SLAP ; df
|
||||
add_tm DOUBLE_TEAM ; e0
|
||||
add_tm ICE_PUNCH ; e1
|
||||
add_tm SWAGGER ; e2
|
||||
add_tm SLEEP_TALK ; e3
|
||||
add_tm SLUDGE_BOMB ; e4
|
||||
add_tm SANDSTORM ; e5
|
||||
add_tm FIRE_BLAST ; e6
|
||||
add_tm SWIFT ; e7
|
||||
add_tm DEFENSE_CURL ; e8
|
||||
add_tm THUNDERPUNCH ; e9
|
||||
add_tm DREAM_EATER ; ea
|
||||
add_tm DETECT ; eb
|
||||
add_tm REST ; ec
|
||||
add_tm ATTRACT ; ed
|
||||
add_tm THIEF ; ee
|
||||
add_tm STEEL_WING ; ef
|
||||
add_tm FIRE_PUNCH ; f0
|
||||
add_tm FURY_CUTTER ; f1
|
||||
add_tm NIGHTMARE ; f2
|
||||
NUM_TMS = const_value - TM01 - 2 ; discount ITEM_C3 and ITEM_DC
|
||||
|
||||
add_hm CUT ; $F3
|
||||
add_hm FLY ; $F4
|
||||
add_hm SURF ; $F5
|
||||
add_hm STRENGTH ; $F6
|
||||
add_hm FLASH ; $F7
|
||||
add_hm WHIRLPOOL ; $F8
|
||||
add_hm WATERFALL ; $F9
|
||||
add_hm CUT ; f3
|
||||
add_hm FLY ; f4
|
||||
add_hm SURF ; f5
|
||||
add_hm STRENGTH ; f6
|
||||
add_hm FLASH ; f7
|
||||
add_hm WHIRLPOOL ; f8
|
||||
add_hm WATERFALL ; f9
|
||||
NUM_HMS = const_value - HM01
|
||||
const ITEM_FA ; $FA
|
||||
const ITEM_FA ; fa
|
||||
|
||||
add_mt FLAMETHROWER
|
||||
add_mt THUNDERBOLT
|
||||
|
@ -1,3 +1,36 @@
|
||||
tmhm: MACRO
|
||||
; used in data/pokemon/base_stats/*.asm
|
||||
tms1 = 0 ; TM01-TM24 (24)
|
||||
tms2 = 0 ; TM25-TM48 (24)
|
||||
tms3 = 0 ; TM49-TM50 + HM01-HM07 + MT01-MT03 (12/24)
|
||||
rept _NARG
|
||||
if DEF(\1_TMNUM)
|
||||
if \1_TMNUM < 24 + 1
|
||||
tms1 = tms1 | (1 << ((\1_TMNUM) - 1))
|
||||
elif \1_TMNUM < 48 + 1
|
||||
tms2 = tms2 | (1 << ((\1_TMNUM) - 1 - 24))
|
||||
else
|
||||
tms3 = tms3 | (1 << ((\1_TMNUM) - 1 - 48))
|
||||
endc
|
||||
else
|
||||
fail "\1 is not a TM, HM, or move tutor move"
|
||||
endc
|
||||
shift
|
||||
endr
|
||||
rept 3 ; TM01-TM24 (24/24)
|
||||
db tms1 & $ff
|
||||
tms1 = tms1 >> 8
|
||||
endr
|
||||
rept 3 ; TM25-TM48 (24/24)
|
||||
db tms2 & $ff
|
||||
tms2 = tms2 >> 8
|
||||
endr
|
||||
rept 2 ; TM49-TM50 + HM01-HM07 + MT01-MT03 (12/16)
|
||||
db tms3 & $ff
|
||||
tms3 = tms3 >> 8
|
||||
endr
|
||||
ENDM
|
||||
|
||||
BaseData::
|
||||
INCLUDE "data/pokemon/base_stats/bulbasaur.asm"
|
||||
INCLUDE "data/pokemon/base_stats/ivysaur.asm"
|
||||
|
@ -5,7 +5,6 @@ INCLUDE "macros/data.asm"
|
||||
INCLUDE "macros/code.asm"
|
||||
INCLUDE "macros/coords.asm"
|
||||
INCLUDE "macros/color.asm"
|
||||
INCLUDE "macros/tmhm.asm"
|
||||
|
||||
INCLUDE "macros/scripts/audio.asm"
|
||||
INCLUDE "macros/scripts/maps.asm"
|
||||
|
@ -38,3 +38,12 @@ shift_const: MACRO
|
||||
\1 EQU (1 << const_value)
|
||||
const_value = const_value + 1
|
||||
ENDM
|
||||
|
||||
|
||||
; Enumerate strings
|
||||
|
||||
define: MACRO
|
||||
if !DEF(\1)
|
||||
\1 EQUS \2
|
||||
endc
|
||||
ENDM
|
||||
|
@ -1,71 +0,0 @@
|
||||
define: MACRO
|
||||
if !DEF(\1)
|
||||
\1 EQUS \2
|
||||
endc
|
||||
ENDM
|
||||
|
||||
|
||||
; Used in constants/item_constants.asm
|
||||
|
||||
const_value = 0
|
||||
|
||||
add_tm: MACRO
|
||||
if !DEF(TM01)
|
||||
TM01 = const_value
|
||||
enum_start 1
|
||||
endc
|
||||
define _\@_1, "TM_\1"
|
||||
const _\@_1
|
||||
enum \1_TMNUM
|
||||
ENDM
|
||||
|
||||
add_hm: MACRO
|
||||
if !DEF(HM01)
|
||||
HM01 = const_value
|
||||
endc
|
||||
define _\@_1, "HM_\1"
|
||||
const _\@_1
|
||||
enum \1_TMNUM
|
||||
ENDM
|
||||
|
||||
add_mt: MACRO
|
||||
enum \1_TMNUM
|
||||
ENDM
|
||||
|
||||
|
||||
; Used in data/pokemon/base_stats/*.asm
|
||||
|
||||
; N TMs/HMs need (N+7)/8 bytes for their bit flags.
|
||||
; The rgbasm integers tms1, tms2, tms3 each hold 3 bytes, or 24 bits.
|
||||
tmhm: MACRO
|
||||
tms1 = 0
|
||||
tms2 = 0
|
||||
tms3 = 0
|
||||
rept _NARG
|
||||
if DEF(\1_TMNUM)
|
||||
if \1_TMNUM < 24 + 1
|
||||
tms1 = tms1 | (1 << ((\1_TMNUM) - 1))
|
||||
elif \1_TMNUM < 48 + 1
|
||||
tms2 = tms2 | (1 << ((\1_TMNUM) - 1 - 24))
|
||||
else
|
||||
tms3 = tms3 | (1 << ((\1_TMNUM) - 1 - 48))
|
||||
endc
|
||||
else
|
||||
fail "\1 is not a TM, HM, or move tutor move"
|
||||
endc
|
||||
shift
|
||||
endr
|
||||
|
||||
rept 3
|
||||
db tms1 & $ff
|
||||
tms1 = tms1 >> 8
|
||||
endr
|
||||
rept 3
|
||||
db tms2 & $ff
|
||||
tms2 = tms2 >> 8
|
||||
endr
|
||||
rept 2
|
||||
db tms3 & $ff
|
||||
tms3 = tms3 >> 8
|
||||
endr
|
||||
ENDM
|
Loading…
Reference in New Issue
Block a user