diff options
37 files changed, 444 insertions, 442 deletions
diff --git a/constants/item_constants.asm b/constants/item_constants.asm index ec5f5f211..ec70ebf01 100644 --- a/constants/item_constants.asm +++ b/constants/item_constants.asm @@ -207,19 +207,6 @@ endc 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 @@ -275,6 +262,15 @@ ENDM add_tm NIGHTMARE ; f2 NUM_TMS = const_value - TM01 - 2 ; discount ITEM_C3 and ITEM_DC +add_hm: MACRO +if !DEF(HM01) +HM01 = const_value +endc + define _\@_1, "HM_\1" + const _\@_1 + enum \1_TMNUM +ENDM + add_hm CUT ; f3 add_hm FLY ; f4 add_hm SURF ; f5 @@ -284,6 +280,10 @@ NUM_TMS = const_value - TM01 - 2 ; discount ITEM_C3 and ITEM_DC add_hm WATERFALL ; f9 NUM_HMS = const_value - HM01 +add_mt: MACRO + enum \1_TMNUM +ENDM + add_mt FLAMETHROWER add_mt THUNDERBOLT add_mt ICE_BEAM diff --git a/constants/item_data_constants.asm b/constants/item_data_constants.asm index 055e24656..e503f3057 100644 --- a/constants/item_data_constants.asm +++ b/constants/item_data_constants.asm @@ -28,6 +28,7 @@ ITEMMENU_CLOSE EQU 6 CANT_SELECT_F EQU 6 CANT_TOSS_F EQU 7 +NO_LIMITS EQU 0 CANT_SELECT EQU 1 << CANT_SELECT_F CANT_TOSS EQU 1 << CANT_TOSS_F diff --git a/constants/script_constants.asm b/constants/script_constants.asm index e1feaaed9..3b9220095 100644 --- a/constants/script_constants.asm +++ b/constants/script_constants.asm @@ -22,7 +22,7 @@ NUM_MEM_BUFFERS EQU const_value const HAVE_AMOUNT ; 1 const HAVE_LESS ; 2 -; checkpokeitem return values +; checkpokemail return values const_def const POKEMAIL_WRONG_MAIL ; 0 const POKEMAIL_CORRECT ; 1 diff --git a/constants/sprite_constants.asm b/constants/sprite_constants.asm index 0e63cce52..caa6743c2 100644 --- a/constants/sprite_constants.asm +++ b/constants/sprite_constants.asm @@ -1,5 +1,5 @@ ; sprite ids -; OverworldSprites indexes (see data/sprites.asm) +; OverworldSprites indexes (see data/sprites/sprites.asm) const_def const SPRITE_NONE ; 00 const SPRITE_CHRIS ; 01 diff --git a/data/events/unown_walls.asm b/data/events/unown_walls.asm index 13ffdfaf9..d7fa26cbc 100644 --- a/data/events/unown_walls.asm +++ b/data/events/unown_walls.asm @@ -12,7 +12,7 @@ else x = 2 * (\1 - "A") endc db x -shift + shift endr db -1 ; end ENDM diff --git a/data/items/attributes.asm b/data/items/attributes.asm index d92c161aa..9f669e979 100644 --- a/data/items/attributes.asm +++ b/data/items/attributes.asm @@ -8,155 +8,155 @@ ENDM ItemAttributes: ; 67c1 ; entries correspond to item ids ; MASTER_BALL - item_attribute 0, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; ULTRA_BALL - item_attribute 1200, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 1200, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; BRIGHTPOWDER item_attribute 10, HELD_BRIGHTPOWDER, 20, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; GREAT_BALL - item_attribute 600, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 600, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; POKE_BALL - item_attribute 200, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; TOWN_MAP - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BICYCLE - item_attribute 0, 0, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; MOON_STONE - item_attribute 0, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; ANTIDOTE - item_attribute 100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; BURN_HEAL - item_attribute 250, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 250, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; ICE_HEAL - item_attribute 250, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 250, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; AWAKENING - item_attribute 250, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 250, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; PARLYZ_HEAL - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; FULL_RESTORE - item_attribute 3000, 0, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 3000, HELD_NONE, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; MAX_POTION - item_attribute 2500, 0, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 2500, HELD_NONE, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; HYPER_POTION - item_attribute 1200, 0, 200, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 1200, HELD_NONE, 200, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; SUPER_POTION - item_attribute 700, 0, 50, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 700, HELD_NONE, 50, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; POTION - item_attribute 300, 0, 20, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 300, HELD_NONE, 20, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; ESCAPE_ROPE - item_attribute 550, 0, 0, CANT_SELECT, ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 550, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; REPEL - item_attribute 350, 0, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE + item_attribute 350, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE ; MAX_ELIXER - item_attribute 4500, 0, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 4500, HELD_NONE, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; FIRE_STONE - item_attribute 2100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; THUNDERSTONE - item_attribute 2100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; WATER_STONE - item_attribute 2100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; ITEM_19 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; HP_UP - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; PROTEIN - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; IRON - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; CARBOS - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; LUCKY_PUNCH - item_attribute 10, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 10, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; CALCIUM - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; RARE_CANDY - item_attribute 4800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 4800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; X_ACCURACY - item_attribute 950, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 950, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; LEAF_STONE - item_attribute 2100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; METAL_POWDER item_attribute 10, HELD_METAL_POWDER, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; NUGGET - item_attribute 10000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 10000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; POKE_DOLL - item_attribute 1000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; FULL_HEAL - item_attribute 600, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 600, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; REVIVE - item_attribute 1500, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 1500, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; MAX_REVIVE - item_attribute 4000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 4000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; GUARD_SPEC - item_attribute 700, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 700, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; SUPER_REPEL - item_attribute 500, 0, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE + item_attribute 500, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE ; MAX_REPEL - item_attribute 700, 0, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE + item_attribute 700, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE ; DIRE_HIT - item_attribute 650, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 650, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; ITEM_2D - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; FRESH_WATER - item_attribute 200, 0, 50, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 200, HELD_NONE, 50, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; SODA_POP - item_attribute 300, 0, 60, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 300, HELD_NONE, 60, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; LEMONADE - item_attribute 350, 0, 80, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 350, HELD_NONE, 80, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; X_ATTACK - item_attribute 500, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 500, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; ITEM_32 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; X_DEFEND - item_attribute 550, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 550, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; X_SPEED - item_attribute 350, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 350, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; X_SPECIAL - item_attribute 350, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 350, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; COIN_CASE - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE ; ITEMFINDER - item_attribute 0, 0, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; POKE_FLUTE - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; EXP_SHARE - item_attribute 3000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; OLD_ROD - item_attribute 0, 0, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; GOOD_ROD - item_attribute 0, 0, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; SILVER_LEAF - item_attribute 1000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SUPER_ROD - item_attribute 0, 0, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; PP_UP - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; ETHER - item_attribute 1200, 0, 10, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 1200, HELD_NONE, 10, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; MAX_ETHER - item_attribute 2000, 0, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 2000, HELD_NONE, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; ELIXER - item_attribute 3000, 0, 10, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 3000, HELD_NONE, 10, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; RED_SCALE - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SECRETPOTION - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; S_S_TICKET - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; MYSTERY_EGG - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; CLEAR_BELL - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SILVER_WING - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; MOOMOO_MILK - item_attribute 500, 0, 100, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 500, HELD_NONE, 100, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; QUICK_CLAW item_attribute 100, HELD_QUICK_CLAW, 60, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; PSNCUREBERRY item_attribute 10, HELD_HEAL_POISON, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; GOLD_LEAF - item_attribute 1000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SOFT_SAND item_attribute 100, HELD_GROUND_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SHARP_BEAK @@ -176,23 +176,23 @@ ItemAttributes: ; 67c1 ; MINT_BERRY item_attribute 10, HELD_HEAL_SLEEP, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; RED_APRICORN - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; TINYMUSHROOM - item_attribute 500, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 500, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BIG_MUSHROOM - item_attribute 5000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 5000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SILVERPOWDER item_attribute 100, HELD_BUG_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BLU_APRICORN - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_5A - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; AMULET_COIN item_attribute 100, HELD_AMULET_COIN, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; YLW_APRICORN - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; GRN_APRICORN - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; CLEANSE_TAG item_attribute 200, HELD_CLEANSE_TAG, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; MYSTIC_WATER @@ -200,23 +200,23 @@ ItemAttributes: ; 67c1 ; TWISTEDSPOON item_attribute 100, HELD_PSYCHIC_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; WHT_APRICORN - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BLACKBELT item_attribute 100, HELD_FIGHTING_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BLK_APRICORN - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_64 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; PNK_APRICORN - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BLACKGLASSES item_attribute 100, HELD_DARK_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SLOWPOKETAIL - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; PINK_BOW item_attribute 100, HELD_NORMAL_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; STICK - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SMOKE_BALL item_attribute 200, HELD_ESCAPE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; NEVERMELTICE @@ -226,61 +226,61 @@ ItemAttributes: ; 67c1 ; MIRACLEBERRY item_attribute 10, HELD_HEAL_STATUS, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; PEARL - item_attribute 1400, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 1400, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BIG_PEARL - item_attribute 7500, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 7500, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; EVERSTONE - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SPELL_TAG item_attribute 100, HELD_GHOST_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; RAGECANDYBAR - item_attribute 300, 0, 20, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 300, HELD_NONE, 20, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; GS_BALL - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BLUE_CARD - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE ; MIRACLE_SEED item_attribute 100, HELD_GRASS_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; THICK_CLUB - item_attribute 500, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 500, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; FOCUS_BAND item_attribute 200, HELD_FOCUS_BAND, 30, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_78 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ENERGYPOWDER - item_attribute 500, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 500, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; ENERGY_ROOT - item_attribute 800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; HEAL_POWDER - item_attribute 450, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 450, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; REVIVAL_HERB - item_attribute 2800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY + item_attribute 2800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; HARD_STONE item_attribute 100, HELD_ROCK_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; LUCKY_EGG - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; CARD_KEY - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; MACHINE_PART - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; EGG_TICKET - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; LOST_ITEM - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; STARDUST - item_attribute 2000, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; STAR PIECE - item_attribute 9800, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 9800, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BASEMENT_KEY - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; PASS - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_87 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_88 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_89 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; CHARCOAL item_attribute 9800, HELD_FIRE_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BERRY_JUICE @@ -288,234 +288,234 @@ ItemAttributes: ; 67c1 ; SCOPE_LENS item_attribute 200, HELD_CRITICAL_UP, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_8D - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_8E - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; METAL_COAT item_attribute 100, HELD_STEEL_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; DRAGON_FANG - item_attribute 100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_91 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; LEFTOVERS item_attribute 200, HELD_LEFTOVERS, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_93 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_94 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_95 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; MYSTERYBERRY item_attribute 10, HELD_RESTORE_PP, -1, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; DRAGON_SCALE item_attribute 2100, HELD_DRAGON_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BERSERK_GENE - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_99 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_9A - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_9B - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SACRED_ASH - item_attribute 200, 0, 0, CANT_SELECT, ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; HEAVY_BALL - item_attribute 150, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 150, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; FLOWER_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; LEVEL_BALL - item_attribute 150, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 150, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; LURE_BALL - item_attribute 150, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 150, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; FAST_BALL - item_attribute 150, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 150, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; ITEM_A2 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; LIGHT_BALL - item_attribute 100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; FRIEND_BALL - item_attribute 150, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 150, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; MOON_BALL - item_attribute 150, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 150, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; LOVE_BALL - item_attribute 150, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 150, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; NORMAL_BOX - item_attribute 10, 0, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE + item_attribute 10, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE ; GORGEOUS_BOX - item_attribute 10, 0, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE + item_attribute 10, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_CURRENT, ITEMMENU_NOUSE ; SUN_STONE - item_attribute 2100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; POLKADOT_BOW item_attribute 100, HELD_NORMAL_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_AB - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; UP_GRADE - item_attribute 2100, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 2100, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BERRY item_attribute 10, HELD_BERRY, 10, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; GOLD_BERRY item_attribute 10, HELD_BERRY, 30, CANT_SELECT, ITEM, ITEMMENU_PARTY, ITEMMENU_PARTY ; SQUIRTBOTTLE - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_CLOSE, ITEMMENU_NOUSE ; ITEM_B0 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; PARK_BALL - item_attribute 0, 0, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT, BALL, ITEMMENU_NOUSE, ITEMMENU_CLOSE ; RAINBOW_WING - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, KEY_ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_B3 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BRICK_PIECE - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; SURF_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; LITEBLUEMAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; PORTRAITMAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; LOVELY_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; EON_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; MORPH_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; BLUESKY_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; MUSIC_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; MIRAGE_MAIL - item_attribute 50, 0, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute 50, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; ITEM_BE - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; TM01 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM02 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM03 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM04 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; ITEM_C3 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; TM05 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM06 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM07 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM08 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM09 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM10 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM11 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM12 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM13 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM14 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM15 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM16 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM17 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM18 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM19 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM20 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM21 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM22 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM23 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM24 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM25 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM26 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM27 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM28 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; ITEM_DC - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; TM29 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM30 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM31 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM32 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM33 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM34 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM35 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM36 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM37 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM38 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM39 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM40 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM41 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM42 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM43 - item_attribute 1000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 1000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM44 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM45 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM46 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM47 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM48 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM49 - item_attribute 3000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 3000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; TM50 - item_attribute 2000, 0, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 2000, HELD_NONE, 0, CANT_SELECT, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; HM01 - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; HM02 - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; HM03 - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; HM04 - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; HM05 - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; HM06 - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; HM07 - item_attribute 0, 0, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE + item_attribute 0, HELD_NONE, 0, CANT_SELECT | CANT_TOSS, TM_HM, ITEMMENU_PARTY, ITEMMENU_NOUSE ; ITEM_FA - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; $fb - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; $fc - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; $fd - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; $fe - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; $ff - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE ; $00 - item_attribute $9999, 0, 0, 0, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE + item_attribute $9999, HELD_NONE, 0, NO_LIMITS, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE diff --git a/data/moves/animations.asm b/data/moves/animations.asm index 030aa2fa3..037e5f1d2 100644 --- a/data/moves/animations.asm +++ b/data/moves/animations.asm @@ -303,7 +303,7 @@ BattleAnim_SweetScent2: ; c929c anim_ret ; c92c1 -BattleAnim_ThrowPokeBall +BattleAnim_ThrowPokeBall: anim_if_param_equal NO_ITEM, .TheTrainerBlockedTheBall anim_if_param_equal MASTER_BALL, .MasterBall anim_if_param_equal ULTRA_BALL, .UltraBall diff --git a/data/party_menu_qualities.asm b/data/party_menu_qualities.asm index 9ccc9745d..c0c1b3df9 100644 --- a/data/party_menu_qualities.asm +++ b/data/party_menu_qualities.asm @@ -13,7 +13,7 @@ partymenuqualities: MACRO rept _NARG db PARTYMENUQUALITY_\1 -shift + shift endr db -1 ; end ENDM diff --git a/data/pokemon/unown_words.asm b/data/pokemon/unown_words.asm index 4283d3708..0b7d93ac2 100644 --- a/data/pokemon/unown_words.asm +++ b/data/pokemon/unown_words.asm @@ -1,9 +1,9 @@ unownword: MACRO x = 1 - rept STRLEN(\1) +rept STRLEN(\1) db STRSUB(\1, x, 1) - $40 x = x + 1 - endr +endr db -1 ENDM diff --git a/data/trainers/attributes.asm b/data/trainers/attributes.asm index 29ae6ebd6..b64e2b3b4 100644 --- a/data/trainers/attributes.asm +++ b/data/trainers/attributes.asm @@ -4,403 +4,403 @@ TrainerClassAttributes: ; 3959c ; Falkner db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Whitney db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Bugsy db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Morty db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Pryce db HYPER_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Jasmine db HYPER_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Chuck db FULL_HEAL, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Clair db FULL_HEAL, HYPER_POTION ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Rival1 db NO_ITEM, NO_ITEM ; items db 15 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Pokemon Prof db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_AGGRESSIVE + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_AGGRESSIVE | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Will db MAX_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Cal db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Bruno db MAX_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Karen db FULL_HEAL, MAX_POTION ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Koga db FULL_HEAL, FULL_RESTORE ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Champion db FULL_HEAL, FULL_RESTORE ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Brock db HYPER_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Misty db FULL_HEAL, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Lt Surge db HYPER_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Scientist db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Erika db HYPER_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Youngster db NO_ITEM, NO_ITEM ; items db 4 ; base reward - dw AI_BASIC + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Schoolboy db NO_ITEM, NO_ITEM ; items db 8 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_OFTEN + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_OFTEN ; Bird Keeper db NO_ITEM, NO_ITEM ; items db 6 ; base reward - dw AI_BASIC + AI_TYPES + AI_OFFENSIVE + AI_OPPORTUNIST + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_OFFENSIVE | AI_OPPORTUNIST | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Lass db NO_ITEM, NO_ITEM ; items db 6 ; base reward - dw AI_BASIC + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_OFTEN + dw AI_BASIC | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_OFTEN ; Janine db DIRE_HIT, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Cooltrainerm db NO_ITEM, NO_ITEM ; items db 12 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Cooltrainerf db NO_ITEM, NO_ITEM ; items db 12 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Beauty db NO_ITEM, NO_ITEM ; items db 22 ; base reward - dw AI_BASIC + AI_TYPES + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Pokemaniac db NO_ITEM, NO_ITEM ; items db 15 ; base reward - dw AI_BASIC + AI_SETUP + AI_OFFENSIVE + AI_AGGRESSIVE + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_OFFENSIVE | AI_AGGRESSIVE | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Gruntm db NO_ITEM, NO_ITEM ; items db 10 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Gentleman db NO_ITEM, NO_ITEM ; items db 18 ; base reward - dw AI_BASIC + AI_SETUP + AI_AGGRESSIVE + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_AGGRESSIVE | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Skier db NO_ITEM, NO_ITEM ; items db 18 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Teacher db NO_ITEM, NO_ITEM ; items db 18 ; base reward - dw AI_BASIC + AI_OPPORTUNIST + AI_AGGRESSIVE + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_OPPORTUNIST | AI_AGGRESSIVE | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Sabrina db HYPER_POTION, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Bug Catcher db NO_ITEM, NO_ITEM ; items db 4 ; base reward - dw AI_BASIC + AI_SETUP + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Fisher db NO_ITEM, NO_ITEM ; items db 10 ; base reward - dw AI_BASIC + AI_TYPES + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_OFTEN + dw AI_BASIC | AI_TYPES | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_OFTEN ; Swimmerm db NO_ITEM, NO_ITEM ; items db 2 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_OFFENSIVE + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_OFFENSIVE | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Swimmerf db NO_ITEM, NO_ITEM ; items db 5 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Sailor db NO_ITEM, NO_ITEM ; items db 10 ; base reward - dw AI_BASIC + AI_OFFENSIVE + AI_OPPORTUNIST + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_OFFENSIVE | AI_OPPORTUNIST | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Super Nerd db NO_ITEM, NO_ITEM ; items db 8 ; base reward - dw AI_BASIC + AI_TYPES + AI_SMART + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_SMART | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Rival2 db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Guitarist db NO_ITEM, NO_ITEM ; items db 8 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Hiker db NO_ITEM, NO_ITEM ; items db 8 ; base reward - dw AI_BASIC + AI_OFFENSIVE + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_OFFENSIVE | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Biker db NO_ITEM, NO_ITEM ; items db 8 ; base reward - dw AI_BASIC + AI_TYPES + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Blaine db MAX_POTION, FULL_HEAL ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Burglar db NO_ITEM, NO_ITEM ; items db 22 ; base reward - dw AI_BASIC + AI_OFFENSIVE + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_OFFENSIVE | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Firebreather db NO_ITEM, NO_ITEM ; items db 12 ; base reward - dw AI_BASIC + AI_SETUP + AI_OFFENSIVE + AI_OPPORTUNIST + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_OFFENSIVE | AI_OPPORTUNIST | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Juggler db NO_ITEM, NO_ITEM ; items db 10 ; base reward - dw AI_BASIC + AI_TYPES + AI_SMART + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_SMART | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Blackbelt T db NO_ITEM, NO_ITEM ; items db 6 ; base reward - dw AI_BASIC + AI_OFFENSIVE + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_OFFENSIVE | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Executivem db NO_ITEM, NO_ITEM ; items db 18 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_SMART + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_SMART | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Psychic T db NO_ITEM, NO_ITEM ; items db 8 ; base reward - dw AI_BASIC + AI_TYPES + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Picnicker db NO_ITEM, NO_ITEM ; items db 5 ; base reward - dw AI_BASIC + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Camper db NO_ITEM, NO_ITEM ; items db 5 ; base reward - dw AI_BASIC + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Executivef db NO_ITEM, NO_ITEM ; items db 18 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_SMART + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_SMART | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Sage db NO_ITEM, NO_ITEM ; items db 8 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Medium db NO_ITEM, NO_ITEM ; items db 10 ; base reward - dw AI_BASIC + AI_SETUP + AI_TYPES + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_TYPES | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Boarder db NO_ITEM, NO_ITEM ; items db 18 ; base reward - dw AI_BASIC + AI_TYPES + AI_OPPORTUNIST + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_OPPORTUNIST | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Pokefanm db NO_ITEM, NO_ITEM ; items db 20 ; base reward - dw AI_BASIC + AI_TYPES + AI_SMART + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_SMART | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Kimono Girl db NO_ITEM, NO_ITEM ; items db 18 ; base reward - dw AI_BASIC + AI_TYPES + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Twins db NO_ITEM, NO_ITEM ; items db 5 ; base reward dw NO_AI - dw CONTEXT_USE + SWITCH_OFTEN + dw CONTEXT_USE | SWITCH_OFTEN ; Pokefanf db NO_ITEM, NO_ITEM ; items db 20 ; base reward - dw AI_BASIC + AI_TYPES + AI_SMART + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_SMART | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Red db FULL_RESTORE, FULL_RESTORE ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Blue db FULL_RESTORE, FULL_RESTORE ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Officer db NO_ITEM, NO_ITEM ; items db 10 ; base reward - dw AI_BASIC + AI_TYPES + AI_OPPORTUNIST + AI_STATUS - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_OPPORTUNIST | AI_STATUS + dw CONTEXT_USE | SWITCH_SOMETIMES ; Gruntf db NO_ITEM, NO_ITEM ; items db 10 ; base reward - dw AI_BASIC + AI_TYPES + AI_OPPORTUNIST + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_TYPES | AI_OPPORTUNIST | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; Mysticalman db NO_ITEM, NO_ITEM ; items db 25 ; base reward - dw AI_BASIC + AI_SETUP + AI_SMART + AI_AGGRESSIVE + AI_CAUTIOUS + AI_STATUS + AI_RISKY - dw CONTEXT_USE + SWITCH_SOMETIMES + dw AI_BASIC | AI_SETUP | AI_SMART | AI_AGGRESSIVE | AI_CAUTIOUS | AI_STATUS | AI_RISKY + dw CONTEXT_USE | SWITCH_SOMETIMES ; 39771 diff --git a/data/wild/flee_mons.asm b/data/wild/flee_mons.asm index 1b1cea036..2c235d2e6 100644 --- a/data/wild/flee_mons.asm +++ b/data/wild/flee_mons.asm @@ -31,6 +31,5 @@ OftenFleeMons: ; 3c5a8 AlwaysFleeMons: ; 3c5b1 db RAIKOU db ENTEI -; db SUICUNE db -1 ; 3c5b4 diff --git a/docs/bugs_and_glitches.md b/docs/bugs_and_glitches.md index 2e83e6908..f7675ae78 100644 --- a/docs/bugs_and_glitches.md +++ b/docs/bugs_and_glitches.md @@ -1122,7 +1122,7 @@ The exact cause is unknown, but a workaround exists for `DexEntryScreen_MenuActi ```asm .Cry: ; 40340 - ld a, [CurPartySpecies] + ld a, [wCurPartySpecies] call PlayMonCry ret ``` diff --git a/docs/event_commands.md b/docs/event_commands.md index 5eaf1d778..21c49dfee 100644 --- a/docs/event_commands.md +++ b/docs/event_commands.md @@ -99,9 +99,9 @@ Until this document is filled out, the [G/S Scripting Compendium](https://hax.ii ## `$2E`: <code>giveegg <i>mon_id</i>, <i>level</i></code> -## `$2F`: <code>givepokeitem <i>pointer</i></code> +## `$2F`: <code>givepokemail <i>pointer</i></code> -## `$30`: <code>checkpokeitem <i>pointer</i></code> +## `$30`: <code>checkpokemail <i>pointer</i></code> ## `$31`: <code>checkevent <i>event_flag</i></code> diff --git a/docs/pic_animations.md b/docs/pic_animations.md index 1075eb25b..c1a0db934 100644 --- a/docs/pic_animations.md +++ b/docs/pic_animations.md @@ -22,9 +22,9 @@ Animation data is in these files: - [gfx/pokemon/anims.asm](/gfx/pokemon/anims.asm): Main animations (played everywhere) -- [gfx/pokemon/extras.asm](/gfx/pokemon/extras.asm): - Extra animations, appended to the main animation. +- [gfx/pokemon/idles.asm](/gfx/pokemon/idles.asm): + Idle animations, appended to the main animation. Used in the status screen (blinking, tail wags etc.) -- [gfx/pokemon/unown_anims.asm](/gfx/pokemon/unown_anims.asm) and [gfx/pokemon/unown_extras.asm](/gfx/pokemon/unown_extras.asm): +- [gfx/pokemon/unown_anims.asm](/gfx/pokemon/unown_anims.asm) and [gfx/pokemon/unown_idles.asm](/gfx/pokemon/unown_idles.asm): Unown has its own animation data despite having an entry in the main tables. diff --git a/engine/battle/core.asm b/engine/battle/core.asm index ce5088fc2..3055f4e90 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -6451,7 +6451,7 @@ LoadEnemyMon: ; 3e8eb .InitRoamHP: ; HP only uses the lo byte in the RoamMon struct since -; Raikou/Entei/Suicune will have < 256 hp at level 40 +; Raikou and Entei will have < 256 hp at level 40 ld a, [wEnemyMonHP + 1] ld [hl], a jr .Moves diff --git a/engine/battle/effect_commands.asm b/engine/battle/effect_commands.asm index 580c25583..fad5b27a0 100644 --- a/engine/battle/effect_commands.asm +++ b/engine/battle/effect_commands.asm @@ -2404,10 +2404,10 @@ GetFailureResultText: ; 350e4 ld hl, wCurDamage ld a, [hli] ld b, [hl] - rept 3 +rept 3 srl a rr b - endr +endr ld [hl], b dec hl ld [hli], a diff --git a/engine/events/std_scripts.asm b/engine/events/std_scripts.asm index 85d6e7dc5..6e873a7c7 100644 --- a/engine/events/std_scripts.asm +++ b/engine/events/std_scripts.asm @@ -240,7 +240,7 @@ SmashRockScript: PokecenterSignScript: farjumptext PokecenterSignText -MartSignScript +MartSignScript: farjumptext MartSignText DayToTextScript: @@ -331,30 +331,30 @@ BugContestResultsScript: verbosegiveitem BERRY iffalse BugContestResults_NoRoomForBerry -BugContestResults_DidNotWin +BugContestResults_DidNotWin: farwritetext ContestResults_DidNotWinText buttonsound jump BugContestResults_FinishUp ; 0xbc2b1 -BugContestResults_ReturnAfterWinnersPrize ; 0xbc2b1 +BugContestResults_ReturnAfterWinnersPrize: ; 0xbc2b1 farwritetext ContestResults_JoinUsNextTimeText buttonsound -BugContestResults_FinishUp +BugContestResults_FinishUp: checkevent EVENT_LEFT_MONS_WITH_CONTEST_OFFICER iffalse BugContestResults_DidNotLeaveMons farwritetext ContestResults_ReturnPartyText waitbutton special ContestReturnMons -BugContestResults_DidNotLeaveMons +BugContestResults_DidNotLeaveMons: special CheckPartyFullAfterContest ifequal BUGCONTEST_CAUGHT_MON, BugContestResults_CleanUp ifequal BUGCONTEST_NO_CATCH, BugContestResults_CleanUp ; BUGCONTEST_BOXED_MON farwritetext ContestResults_PartyFullText waitbutton -BugContestResults_CleanUp +BugContestResults_CleanUp: closetext setscene SCENE_ROUTE36NATIONALPARKGATE_NOTHING setmapscene ROUTE_35_NATIONAL_PARK_GATE, SCENE_ROUTE35NATIONALPARKGATE_NOTHING @@ -383,7 +383,7 @@ BugContestResults_CleanUp end ; 0xbc31e -BugContestResults_FirstPlace ; 0xbc31e +BugContestResults_FirstPlace: ; 0xbc31e setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1 itemtotext SUN_STONE, MEM_BUFFER_1 farwritetext ContestResults_PlayerWonAPrizeText @@ -393,7 +393,7 @@ BugContestResults_FirstPlace ; 0xbc31e jump BugContestResults_ReturnAfterWinnersPrize ; 0xbc332 -BugContestResults_SecondPlace ; 0xbc332 +BugContestResults_SecondPlace: ; 0xbc332 itemtotext EVERSTONE, MEM_BUFFER_1 farwritetext ContestResults_PlayerWonAPrizeText waitbutton @@ -402,7 +402,7 @@ BugContestResults_SecondPlace ; 0xbc332 jump BugContestResults_ReturnAfterWinnersPrize ; 0xbc343 -BugContestResults_ThirdPlace ; 0xbc343 +BugContestResults_ThirdPlace: ; 0xbc343 itemtotext GOLD_BERRY, MEM_BUFFER_1 farwritetext ContestResults_PlayerWonAPrizeText waitbutton @@ -411,35 +411,35 @@ BugContestResults_ThirdPlace ; 0xbc343 jump BugContestResults_ReturnAfterWinnersPrize ; 0xbc354 -BugContestResults_NoRoomForSunStone ; 0xbc354 +BugContestResults_NoRoomForSunStone: ; 0xbc354 farwritetext BugContestPrizeNoRoomText buttonsound setevent EVENT_CONTEST_OFFICER_HAS_SUN_STONE jump BugContestResults_ReturnAfterWinnersPrize ; 0xbc35f -BugContestResults_NoRoomForEverstone ; 0xbc35f +BugContestResults_NoRoomForEverstone: ; 0xbc35f farwritetext BugContestPrizeNoRoomText buttonsound setevent EVENT_CONTEST_OFFICER_HAS_EVERSTONE jump BugContestResults_ReturnAfterWinnersPrize ; 0xbc36a -BugContestResults_NoRoomForGoldBerry ; 0xbc36a +BugContestResults_NoRoomForGoldBerry: ; 0xbc36a farwritetext BugContestPrizeNoRoomText buttonsound setevent EVENT_CONTEST_OFFICER_HAS_GOLD_BERRY jump BugContestResults_ReturnAfterWinnersPrize ; 0xbc375 -BugContestResults_NoRoomForBerry ; 0xbc375 +BugContestResults_NoRoomForBerry: ; 0xbc375 farwritetext BugContestPrizeNoRoomText buttonsound setevent EVENT_CONTEST_OFFICER_HAS_BERRY jump BugContestResults_DidNotWin ; 0xbc380 -BugContestResults_CopyContestantsToResults ; 0xbc380 +BugContestResults_CopyContestantsToResults: ; 0xbc380 checkevent EVENT_BUG_CATCHING_CONTESTANT_1A iftrue .skip1 clearevent EVENT_BUG_CATCHING_CONTESTANT_1B diff --git a/engine/gfx/pic_animation.asm b/engine/gfx/pic_animation.asm index 8781c2fd0..54999a6bb 100644 --- a/engine/gfx/pic_animation.asm +++ b/engine/gfx/pic_animation.asm @@ -53,14 +53,14 @@ AnimateMon_Unused: ; d003a ; d0042 pokeanim: MACRO - rept _NARG +rept _NARG ; Workaround for a bug where macro args can't come after the start of a symbol if !DEF(\1_POKEANIM) \1_POKEANIM EQUS "PokeAnim_\1_" endc db (\1_POKEANIM - PokeAnim_SetupCommands) / 2 shift - endr +endr db (PokeAnim_Finish_ - PokeAnim_SetupCommands) / 2 ENDM diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index 597a75e47..a32ce0ef7 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -806,10 +806,10 @@ HeavyBallMultiplier: ld b, h ld c, l - rept 4 +rept 4 srl b rr c - endr +endr call .subbc srl b @@ -2529,9 +2529,9 @@ BattleRestorePP: ; f652 push hl push de push bc - rept NUM_MOVES + 2 ; wBattleMonPP - wBattleMonMoves +rept NUM_MOVES + 2 ; wBattleMonPP - wBattleMonMoves inc de - endr +endr ld bc, MON_PP - MON_MOVES add hl, bc ld a, [hl] diff --git a/engine/overworld/map_objects.asm b/engine/overworld/map_objects.asm index 8d6f4082f..1573a27b5 100644 --- a/engine/overworld/map_objects.asm +++ b/engine/overworld/map_objects.asm @@ -163,12 +163,12 @@ Function4440: ; 4440 add hl, bc bit INVISIBLE, [hl] jr nz, SetFacingStanding -asm_4448 +asm_4448: ld de, ObjectActionPairPointers + 2 ; use second column jr _HandleObjectAction ; 444d -_HandleObjectAction +_HandleObjectAction: ; call [4 * wObjectStructs[ObjInd, OBJECT_ACTION] + de] ld hl, OBJECT_ACTION add hl, bc diff --git a/engine/overworld/scripting.asm b/engine/overworld/scripting.asm index 9aaf98f39..a18be2e6c 100644 --- a/engine/overworld/scripting.asm +++ b/engine/overworld/scripting.asm @@ -112,8 +112,8 @@ ScriptCommandTable: dw Script_checkpoke ; 2c dw Script_givepoke ; 2d dw Script_giveegg ; 2e - dw Script_givepokeitem ; 2f - dw Script_checkpokeitem ; 30 + dw Script_givepokemail ; 2f + dw Script_checkpokemail ; 30 dw Script_checkevent ; 31 dw Script_clearevent ; 32 dw Script_setevent ; 33 @@ -2019,7 +2019,7 @@ Script_stringtotext: ld de, wStringBuffer2 jp ConvertMemToText -Script_givepokeitem: +Script_givepokemail: ; script command 0x2f ; parameters: pointer @@ -2037,10 +2037,10 @@ Script_givepokeitem: ld a, [wScriptBank] call FarCopyBytes pop bc - farcall GivePokeItem + farcall GivePokeMail ret -Script_checkpokeitem: +Script_checkpokemail: ; script command 0x30 ; parameters: pointer @@ -2050,7 +2050,7 @@ Script_checkpokeitem: ld d, a ld a, [wScriptBank] ld b, a - farcall CheckPokeItem + farcall CheckPokeMail ret Script_giveitem: diff --git a/engine/overworld/wildmons.asm b/engine/overworld/wildmons.asm index 494e8d2a4..20375ba6c 100644 --- a/engine/overworld/wildmons.asm +++ b/engine/overworld/wildmons.asm @@ -417,7 +417,7 @@ _WaterWildmonLookup: ; 2a21d ld bc, WATER_WILDDATA_LENGTH jr _NormalWildmonOK -_JohtoWildmonCheck +_JohtoWildmonCheck: call IsInJohto and a ret z @@ -425,7 +425,7 @@ _JohtoWildmonCheck ld l, e ret -_SwarmWildmonCheck +_SwarmWildmonCheck: call CopyCurrMapDE push hl ld hl, wSwarmFlags @@ -460,11 +460,11 @@ _SwarmWildmonCheck scf ret -_NoSwarmWildmon +_NoSwarmWildmon: and a ret -_NormalWildmonOK +_NormalWildmonOK: call CopyCurrMapDE jr LookUpWildmonsForMapDE ; 2a27f diff --git a/engine/phone/phone.asm b/engine/phone/phone.asm index 633096cd9..41f7bf47f 100644 --- a/engine/phone/phone.asm +++ b/engine/phone/phone.asm @@ -604,7 +604,7 @@ Phone_StartRinging: ; 9033f HangUp_Wait20Frames: ; 90355 jr Phone_Wait20Frames -Phone_Wait20Frames +Phone_Wait20Frames: ld c, 20 call DelayFrames farcall PhoneRing_CopyTilemapAtOnce diff --git a/engine/pokemon/breeding.asm b/engine/pokemon/breeding.asm index 58b42953c..e32d1a3a6 100644 --- a/engine/pokemon/breeding.asm +++ b/engine/pokemon/breeding.asm @@ -24,7 +24,7 @@ CheckBreedmonCompatibility: ; 16e1d ld [wTempMonDVs], a ld a, [wBreedMon2DVs + 1] ld [wTempMonDVs + 1], a - ld a, $3 + ld a, TEMPMON ld [wMonType], a predef GetGender pop bc diff --git a/engine/pokemon/evolve.asm b/engine/pokemon/evolve.asm index 5a7e75dfa..291bd79b0 100644 --- a/engine/pokemon/evolve.asm +++ b/engine/pokemon/evolve.asm @@ -18,7 +18,7 @@ EvolveAfterBattle: ; 421e6 push hl -EvolveAfterBattle_MasterLoop +EvolveAfterBattle_MasterLoop: ld hl, wCurPartyMon inc [hl] diff --git a/engine/pokemon/mail.asm b/engine/pokemon/mail.asm index b8685c0df..33bce604d 100644 --- a/engine/pokemon/mail.asm +++ b/engine/pokemon/mail.asm @@ -124,7 +124,7 @@ GetMailboxCount: ; 44648 jp CloseSRAM ; 44654 -CheckPokeItem:: ; 44654 +CheckPokeMail:: ; 44654 push bc push de farcall SelectMonFromParty @@ -194,7 +194,7 @@ CheckPokeItem:: ; 44654 ; 446cc -GivePokeItem:: ; 446cc +GivePokeMail:: ; 446cc ld a, [wPartyCount] dec a push af diff --git a/engine/pokemon/move_mon.asm b/engine/pokemon/move_mon.asm index 8ccf319f0..630479797 100644 --- a/engine/pokemon/move_mon.asm +++ b/engine/pokemon/move_mon.asm @@ -115,20 +115,20 @@ GeneratePartyMonStats: ; d906 and a jr nz, .randomlygeneratemoves ld de, wEnemyMonMoves - rept NUM_MOVES + -1 +rept NUM_MOVES + -1 ld a, [de] inc de ld [hli], a - endr +endr ld a, [de] ld [hl], a jr .next .randomlygeneratemoves xor a - rept NUM_MOVES + -1 +rept NUM_MOVES + -1 ld [hli], a - endr +endr ld [hl], a ld [wBuffer1], a predef FillMoves @@ -220,7 +220,7 @@ endr call FillPP pop de pop hl -rept 4 +rept NUM_MOVES inc de endr diff --git a/macros/coords.asm b/macros/coords.asm index 95c4cb041..0833c242c 100644 --- a/macros/coords.asm +++ b/macros/coords.asm @@ -26,11 +26,11 @@ ENDM dwcoord: MACRO ; x, y - rept _NARG / 2 +rept _NARG / 2 dw (\2) * SCREEN_WIDTH + (\1) + wTileMap shift shift - endr +endr ENDM ldcoord_a: MACRO diff --git a/macros/legacy.asm b/macros/legacy.asm index a139e02b4..9e452da28 100644 --- a/macros/legacy.asm +++ b/macros/legacy.asm @@ -51,6 +51,8 @@ reloadmapmusic EQUS "dontrestartmapmusic" resetfuncs EQUS "endall" storetext EQUS "battletowertext" displaylocation EQUS "landmarktotext" +givepokeitem EQUS "givepokemail" +checkpokeitem EQUS "checkpokemail" ; macros/scripts/maps.asm diff --git a/macros/scripts/events.asm b/macros/scripts/events.asm index 3723a3a8d..a8f6c2015 100644 --- a/macros/scripts/events.asm +++ b/macros/scripts/events.asm @@ -1,4 +1,4 @@ -; ScriptCommandTable indexes (see engine/scripting.asm) +; ScriptCommandTable indexes (see engine/overworld/scripting.asm) enum_start enum scall_command ; $00 @@ -315,15 +315,15 @@ giveegg: MACRO db \2 ; level ENDM - enum givepokeitem_command ; $2f -givepokeitem: MACRO - db givepokeitem_command + enum givepokemail_command ; $2f +givepokemail: MACRO + db givepokemail_command dw \1 ; pointer ENDM - enum checkpokeitem_command ; $30 -checkpokeitem: MACRO - db checkpokeitem_command + enum checkpokemail_command ; $30 +checkpokemail: MACRO + db checkpokemail_command dw \1 ; pointer ENDM diff --git a/macros/scripts/movement.asm b/macros/scripts/movement.asm index 451608723..83d1ad0e6 100644 --- a/macros/scripts/movement.asm +++ b/macros/scripts/movement.asm @@ -1,4 +1,4 @@ -; MovementPointers indexes (see engine/movement.asm) +; MovementPointers indexes (see engine/overworld/movement.asm) enum_start ; Directional movements diff --git a/maps/OaksLab.asm b/maps/OaksLab.asm index 1931747e5..86ac71ac0 100644 --- a/maps/OaksLab.asm +++ b/maps/OaksLab.asm @@ -223,7 +223,7 @@ OaksLabPoster2Text: line "manner." done -OaksLabTrashcanText +OaksLabTrashcanText: text "There's nothing in" line "here…" done diff --git a/maps/Route31.asm b/maps/Route31.asm index 36bf98412..1a7ba7205 100644 --- a/maps/Route31.asm +++ b/maps/Route31.asm @@ -195,7 +195,7 @@ Route31MailRecipientScript: .TryGiveKenya: writetext Text_Route31SleepyManGotMail buttonsound - checkpokeitem ReceivedSpearowMailText + checkpokemail ReceivedSpearowMailText ifequal POKEMAIL_WRONG_MAIL, .WrongMail ifequal POKEMAIL_REFUSED, .Refused ifequal POKEMAIL_NO_MAIL, .NoMail diff --git a/maps/Route35GoldenrodGate.asm b/maps/Route35GoldenrodGate.asm index 79adcf93e..52089c4db 100644 --- a/maps/Route35GoldenrodGate.asm +++ b/maps/Route35GoldenrodGate.asm @@ -29,7 +29,7 @@ RandyScript: playsound SFX_KEY_ITEM waitsfx givepoke SPEAROW, 10, NO_ITEM, TRUE, GiftSpearowName, GiftSpearowOTName - givepokeitem GiftSpearowMail + givepokemail GiftSpearowMail setevent EVENT_GOT_KENYA .alreadyhavekenya writetext UnknownText_0x69ed6 diff --git a/mobile/mobile_40.asm b/mobile/mobile_40.asm index 79324161a..c64e348de 100644 --- a/mobile/mobile_40.asm +++ b/mobile/mobile_40.asm @@ -2320,7 +2320,7 @@ Function100eb4: ; 100eb4 and a call Function100eca -asm_100eb8 +asm_100eb8: ld hl, wcd68 inc [hl] ld a, [hl] @@ -2332,7 +2332,7 @@ asm_100eb8 Function100ec4: ; 100ec4 ret -Function100ec5 +Function100ec5: ld hl, wcd67 inc [hl] ret diff --git a/mobile/mobile_42.asm b/mobile/mobile_42.asm index eeedffb5a..566b00755 100644 --- a/mobile/mobile_42.asm +++ b/mobile/mobile_42.asm @@ -1293,7 +1293,7 @@ MobileTradeAnim_DisplayReceivedMon: call MobileTradeAnim_MonDisplay_UpdateBGMap ret -MobileTradeAnim_DisplayEggData +MobileTradeAnim_DisplayEggData: call WaitTop call MobileTradeAnim_ClearTilemap ld a, HIGH(vBGMap1) diff --git a/mobile/mobile_5f.asm b/mobile/mobile_5f.asm index 9157353b0..05a1fc34c 100644 --- a/mobile/mobile_5f.asm +++ b/mobile/mobile_5f.asm @@ -1651,17 +1651,17 @@ Function17da31: ; 17da31 Unknown_17da8c: x = 0 - rept 8 +rept 8 db 1 << x x = x + 1 - endr +endr Unknown_17da94: x = 0 - rept 8 +rept 8 db (1 << x) ^ $ff x = x + 1 - endr +endr ; 17da9c Function17da9c: ; 17da9c |