Simple cleanups in constants/data/macros and banks 1-4.

This commit is contained in:
entrpntr 2020-05-12 13:10:01 -04:00
parent dac57cee38
commit 3e40a1ecd0
71 changed files with 1969 additions and 2174 deletions

View File

@ -192,7 +192,7 @@
charmap "♂", $ef
charmap "¥", $f0
charmap "×", $f1
charmap "·", $f2
charmap "<DOT>", $f2 ; decimal point; same as "." in English
charmap "/", $f3
charmap ",", $f4
charmap "♀", $f5

View File

@ -11,7 +11,7 @@
const BATTLEANIMSTRUCT_YCOORD
const BATTLEANIMSTRUCT_XOFFSET
const BATTLEANIMSTRUCT_YOFFSET
const BATTLEANIMSTRUCT_0B
const BATTLEANIMSTRUCT_PARAM
const BATTLEANIMSTRUCT_DURATION
const BATTLEANIMSTRUCT_FRAME
const BATTLEANIMSTRUCT_ANON_JT_INDEX
@ -708,7 +708,7 @@ BATTLEANIMSTRUCT_LENGTH EQU const_value
const BATTLEANIMOAMSET_D7
; BattleBGEffects indexes (see engine/battle_anims/bg_effects.asm)
const_value SET 1
const_def 1
const ANIM_BG_FLASH_INVERTED
const ANIM_BG_FLASH_WHITE
const ANIM_BG_WHITE_HUES
@ -763,7 +763,7 @@ const_value SET 1
const ANIM_BG_34
; AnimObjGFX indexes (see data/battle_anims/object_gfx.asm)
const_value SET 1
const_def 1
const ANIM_GFX_HIT
const ANIM_GFX_CUT
const ANIM_GFX_FIRE

View File

@ -37,19 +37,19 @@ NO_EFFECT EQU 00
const SP_DEFENSE
const ACCURACY
const EVASION
const ABILITY
const ABILITY ; used for BattleCommand_Curse
NUM_LEVEL_STATS EQU const_value
; move struct members (see data/moves/moves.asm)
const_def
const MOVE_ANIM
const MOVE_EFFECT
const MOVE_POWER
const MOVE_TYPE
const MOVE_ACC
const MOVE_PP
const MOVE_CHANCE
const MOVE_LENGTH
const MOVE_ANIM ; 0
const MOVE_EFFECT ; 1
const MOVE_POWER ; 2
const MOVE_TYPE ; 3
const MOVE_ACC ; 4
const MOVE_PP ; 5
const MOVE_CHANCE ; 6
MOVE_LENGTH EQU const_value
; stat constants
; indexes for:
@ -76,12 +76,12 @@ MAX_STAT_VALUE EQU 999
ATKDEFDV_SHINY EQU $EA
SPDSPCDV_SHINY EQU $AA
; battle classes
const_value SET 1
; battle classes (wBattleMode values)
const_def 1
const WILD_BATTLE
const TRAINER_BATTLE
; battle types
; battle types (wBattleType values)
const_def
const BATTLETYPE_NORMAL
const BATTLETYPE_CANLOSE
@ -95,7 +95,7 @@ const_value SET 1
const BATTLETYPE_TRAP
const BATTLETYPE_FORCEITEM
; battle variables
; BattleVarPairs indexes (see home/battle.asm)
const_def
const BATTLE_VARS_SUBSTATUS1
const BATTLE_VARS_SUBSTATUS2
@ -119,79 +119,7 @@ const_value SET 1
const BATTLE_VARS_LAST_MOVE
const BATTLE_VARS_LAST_MOVE_OPP
; status
const_value SET 3
const PSN
const BRN
const FRZ
const PAR
const SLP ; 7 turns
ALL_STATUS EQU (1 << PSN) + (1 << BRN) + (1 << FRZ) + (1 << PAR) + SLP
; substatus
enum_start 7, -1
enum SUBSTATUS_IN_LOVE
enum SUBSTATUS_ROLLOUT
enum SUBSTATUS_ENDURE
enum SUBSTATUS_PERISH
enum SUBSTATUS_IDENTIFIED
enum SUBSTATUS_PROTECT
enum SUBSTATUS_CURSE
enum SUBSTATUS_NIGHTMARE
SUBSTATUS_CURLED EQU 0
enum_start 7, -1
enum SUBSTATUS_CONFUSED
enum SUBSTATUS_FLYING
enum SUBSTATUS_UNDERGROUND
enum SUBSTATUS_CHARGED
enum SUBSTATUS_FLINCHED
enum SUBSTATUS_IN_LOOP
enum SUBSTATUS_RAMPAGE
enum SUBSTATUS_BIDE
enum_start 7, -1
enum SUBSTATUS_LEECH_SEED
enum SUBSTATUS_RAGE
enum SUBSTATUS_RECHARGE
enum SUBSTATUS_SUBSTITUTE
enum SUBSTATUS_UNKNOWN_1
enum SUBSTATUS_FOCUS_ENERGY
enum SUBSTATUS_MIST
enum SUBSTATUS_X_ACCURACY
enum_start 7, -1
enum SUBSTATUS_CANT_RUN
enum SUBSTATUS_DESTINY_BOND
enum SUBSTATUS_LOCK_ON
enum SUBSTATUS_ENCORED
enum SUBSTATUS_TRANSFORMED
enum SUBSTATUS_UNKNOWN_2
enum SUBSTATUS_UNKNOWN_3
enum SUBSTATUS_TOXIC
; environmental
enum_start 4, -1
enum SCREENS_REFLECT
enum SCREENS_LIGHT_SCREEN
enum SCREENS_SAFEGUARD
enum SCREENS_UNUSED
enum SCREENS_SPIKES
; weather
const_def
const WEATHER_NONE
const WEATHER_RAIN
const WEATHER_SUN
const WEATHER_SANDSTORM
const WEATHER_RAIN_END
const WEATHER_SUN_END
const WEATHER_SANDSTORM_END
; Battle vars used in home/battle.asm
; BattleVarLocations indexes (see home/battle.asm)
const_def
const PLAYER_SUBSTATUS_1
const ENEMY_SUBSTATUS_1
@ -220,6 +148,81 @@ SUBSTATUS_CURLED EQU 0
const PLAYER_LAST_MOVE
const ENEMY_LAST_MOVE
; status condition bit flags
SLP EQU %111 ; 0-7 turns
const_def 3
const PSN
const BRN
const FRZ
const PAR
ALL_STATUS EQU (1 << PSN) | (1 << BRN) | (1 << FRZ) | (1 << PAR) | SLP
; wPlayerSubStatus1 or wEnemySubStatus1 bit flags
enum_start 7, -1
enum SUBSTATUS_IN_LOVE
enum SUBSTATUS_ROLLOUT
enum SUBSTATUS_ENDURE
enum SUBSTATUS_PERISH
enum SUBSTATUS_IDENTIFIED
enum SUBSTATUS_PROTECT
enum SUBSTATUS_CURSE
enum SUBSTATUS_NIGHTMARE
; wPlayerSubStatus2 or wEnemySubStatus2 bit flags
SUBSTATUS_CURLED EQU 0
; wPlayerSubStatus3 or wEnemySubStatus3 bit flags
enum_start 7, -1
enum SUBSTATUS_CONFUSED
enum SUBSTATUS_FLYING
enum SUBSTATUS_UNDERGROUND
enum SUBSTATUS_CHARGED
enum SUBSTATUS_FLINCHED
enum SUBSTATUS_IN_LOOP
enum SUBSTATUS_RAMPAGE
enum SUBSTATUS_BIDE
; wPlayerSubStatus4 or wEnemySubStatus4 bit flags
enum_start 7, -1
enum SUBSTATUS_LEECH_SEED
enum SUBSTATUS_RAGE
enum SUBSTATUS_RECHARGE
enum SUBSTATUS_SUBSTITUTE
enum SUBSTATUS_UNKNOWN_1
enum SUBSTATUS_FOCUS_ENERGY
enum SUBSTATUS_MIST
enum SUBSTATUS_X_ACCURACY
; wPlayerSubStatus5 or wEnemySubStatus5 bit flags
enum_start 7, -1
enum SUBSTATUS_CANT_RUN
enum SUBSTATUS_DESTINY_BOND
enum SUBSTATUS_LOCK_ON
enum SUBSTATUS_ENCORED
enum SUBSTATUS_TRANSFORMED
enum SUBSTATUS_UNKNOWN_2
enum SUBSTATUS_UNKNOWN_3
enum SUBSTATUS_TOXIC
; wPlayerScreens or wEnemyScreens bit flags
enum_start 4, -1
enum SCREENS_REFLECT
enum SCREENS_LIGHT_SCREEN
enum SCREENS_SAFEGUARD
enum SCREENS_UNUSED
enum SCREENS_SPIKES
; values in wBattleWeather
const_def
const WEATHER_NONE
const WEATHER_RAIN
const WEATHER_SUN
const WEATHER_SANDSTORM
const WEATHER_RAIN_END
const WEATHER_SUN_END
const WEATHER_SANDSTORM_END
; wBattleAction
const_def
const BATTLEACTION_MOVE1

View File

@ -1,8 +1,8 @@
; collision permissions (see data/collision_permissions.asm)
LANDTILE EQU $00
WATER_TILE EQU $01
WALLTILE EQU $0f
TALK EQU $10
LAND_TILE EQU $00
WATER_TILE EQU $01
WALL_TILE EQU $0f
TALK EQU $10
; collision data types (see data/tilesets/*_collision.asm)
; TileCollisionTable indexes (see data/collision_permissions.asm)
@ -20,7 +20,7 @@ COLL_TALL_GRASS EQU $18
COLL_CUT_TREE_1A EQU $1a ; unused
COLL_LONG_GRASS_1C EQU $1c ; unused
COLL_HEADBUTT_TREE_1D EQU $1d ; unused
COLL_WATER_21 EQU $21 ; ???
COLL_WATER_21 EQU $21 ; unused
COLL_ICE EQU $23
COLL_WHIRLPOOL EQU $24
COLL_BUOY EQU $27

View File

@ -1,3 +1,4 @@
; Cries indexes (see audio/cry_pointers.asm)
const_def
; gen 1

View File

@ -1,3 +1,4 @@
; decoration types
const_value = 1
const DECO_PLANT
const DECO_BED
@ -6,6 +7,7 @@ const_value = 1
const DECO_DOLL
const DECO_BIGDOLL
; DecorationNames indexes (see data/decorations/names.asm)
const_value = 1
const PUT_IT_AWAY
const MAGNAPLANT
@ -33,6 +35,7 @@ const_value = 1
const YELLOW_CARPET
const GREEN_CARPET
; DoDecorationAction2.DecoActions indexes (see engine/overworld/decorations.asm)
const_value = 1
const SET_UP_BED
const PUT_AWAY_BED
@ -54,68 +57,71 @@ const_value = 1
deco: MACRO
const DECO_\1
enum DECOFLAG_\1
endm
ENDM
const_value = 1
__enum__ = 0
; decorations:
; - DecorationAttributes (see data/decorations/attributes.asm)
; - DecorationIDs (see data/decorations/decorations.asm)
const_def 1
enum_start
; FindOwnedBeds.beds values (see engine/overworld/decorations.asm)
const BEDS
deco FEATHERY_BED ; 2 (0)
deco PINK_BED ; 3 (1)
deco POLKADOT_BED ; 4 (2)
deco PIKACHU_BED ; 5 (3)
deco FEATHERY_BED
deco PINK_BED
deco POLKADOT_BED
deco PIKACHU_BED
; FindOwnedCarpets.carpets values (see engine/overworld/decorations.asm)
const CARPETS
deco RED_CARPET ; 7 (4)
deco BLUE_CARPET ; 8 (5)
deco YELLOW_CARPET ; 9 (6)
deco GREEN_CARPET ; a (7)
deco RED_CARPET
deco BLUE_CARPET
deco YELLOW_CARPET
deco GREEN_CARPET
; FindOwnedPlants.plants values (see engine/overworld/decorations.asm)
const PLANTS
deco MAGNAPLANT ; c (8)
deco TROPICPLANT ; d (9)
deco JUMBOPLANT ; e (a)
deco MAGNAPLANT
deco TROPICPLANT
deco JUMBOPLANT
; FindOwnedPosters.posters values (see engine/overworld/decorations.asm)
const POSTERS
deco TOWN_MAP ; 10 (b)
deco PIKACHU_POSTER ; 11 (c)
deco CLEFAIRY_POSTER ; 12 (d)
deco JIGGLYPUFF_POSTER ; 13(e)
deco TOWN_MAP
deco PIKACHU_POSTER
deco CLEFAIRY_POSTER
deco JIGGLYPUFF_POSTER
; FindOwnedConsoles.consoles values (see engine/overworld/decorations.asm)
const CONSOLES
deco FAMICOM ; 15 (f)
deco SNES ; 16 (10)
deco N64 ; 17 (11)
deco VIRTUAL_BOY ; 18 (12)
deco FAMICOM
deco SNES
deco N64
deco VIRTUAL_BOY
; FindOwnedBigDolls.big_dolls values (see engine/overworld/decorations.asm)
const BIG_DOLLS
deco BIG_SNORLAX_DOLL ; 1a (13)
deco BIG_ONIX_DOLL ; 1b (14)
deco BIG_LAPRAS_DOLL ; 1c (15)
deco BIG_SNORLAX_DOLL
deco BIG_ONIX_DOLL
deco BIG_LAPRAS_DOLL
; FindOwnedOrnaments.ornaments values (see engine/overworld/decorations.asm)
const DOLLS
deco PIKACHU_DOLL ; 1e (16)
deco SURF_PIKACHU_DOLL ; 1f (17)
deco CLEFAIRY_DOLL ; 20 (18)
deco JIGGLYPUFF_DOLL ; 21 (19)
deco BULBASAUR_DOLL ; 22 (1a)
deco CHARMANDER_DOLL ; 23 (1b)
deco SQUIRTLE_DOLL ; 24 (1c)
deco POLIWAG_DOLL ; 25 (1d)
deco DIGLETT_DOLL ; 26 (1e)
deco STARMIE_DOLL ; 27 (1f)
deco MAGIKARP_DOLL ; 28 (20)
deco ODDISH_DOLL ; 29 (21)
deco GENGAR_DOLL ; 2a (22)
deco SHELLDER_DOLL ; 2b (23)
deco GRIMER_DOLL ; 2c (24)
deco VOLTORB_DOLL ; 2d (25)
deco WEEDLE_DOLL ; 2e (26)
deco UNOWN_DOLL ; 2f (27)
deco GEODUDE_DOLL ; 30 (28)
deco MACHOP_DOLL ; 31 (29)
deco TENTACOOL_DOLL ; 32 (2a)
deco GOLD_TROPHY_DOLL ; 33 (2b)
deco SILVER_TROPHY_DOLL ; 34 (2c)
NUM_NON_TROPHY_DECOS EQU $2b
NUM_DECOS EQU $2d
deco PIKACHU_DOLL
deco SURF_PIKACHU_DOLL
deco CLEFAIRY_DOLL
deco JIGGLYPUFF_DOLL
deco BULBASAUR_DOLL
deco CHARMANDER_DOLL
deco SQUIRTLE_DOLL
deco POLIWAG_DOLL
deco DIGLETT_DOLL
deco STARMIE_DOLL
deco MAGIKARP_DOLL
deco ODDISH_DOLL
deco GENGAR_DOLL
deco SHELLDER_DOLL
deco GRIMER_DOLL
deco VOLTORB_DOLL
deco WEEDLE_DOLL
deco UNOWN_DOLL
deco GEODUDE_DOLL
deco MACHOP_DOLL
deco TENTACOOL_DOLL
NUM_NON_TROPHY_DECOS EQU __enum__
deco GOLD_TROPHY_DOLL
deco SILVER_TROPHY_DOLL
NUM_DECOS EQU __enum__

View File

@ -41,6 +41,8 @@ HP_RED EQU 2
SPRITEOAMSTRUCT_LENGTH EQU const_value
NUM_SPRITE_OAM_STRUCTS EQU 40 ; see wVirtualOAM
SPRITE_GFX_LIST_CAPACITY EQU 12 ; see wUsedSprites
; PokeAnims indexes (see engine/gfx/pic_animation.asm)
const_def
const ANIM_MON_SLOW

View File

@ -24,8 +24,6 @@ ENDM
; - attributes (see data/maps/attributes.asm)
; - blocks (see data/maps/blocks.asm)
; - scripts and events (see data/maps/scripts.asm)
; map group ids
const_def
newgroup ; 1

View File

@ -129,6 +129,4 @@ KANTO_FLYPOINT EQU const_value
const FLY_CINNABAR
const FLY_INDIGO
; outdoor sprite limits (see engine/overworld/overworld.asm)
MAX_OUTDOOR_SPRITES EQU 11
SPRITE_GFX_LIST_CAPACITY EQU 12
MAX_OUTDOOR_SPRITES EQU 11 ; see engine/overworld/overworld.asm

View File

@ -38,7 +38,7 @@
const SCROLLINGMENU_ITEMS_QUANTITY
; MonMenuOptions indexes (see data/mon_menu.asm)
; used by PokemonActionSubmenu (see engine/menus/start_menu.asm)
; used by PokemonActionSubmenu (see engine/pokemon/mon_menu.asm)
const_def 1
; moves
const MONMENUITEM_CUT ; 1

View File

@ -7,9 +7,10 @@ MALE EQU 0
FEMALE EQU 1
; FlagAction arguments (see home/flag.asm)
RESET_FLAG EQU 0
SET_FLAG EQU 1
CHECK_FLAG EQU 2
const_def
const RESET_FLAG
const SET_FLAG
const CHECK_FLAG
; G/S version ID: 0 = Gold, 1 = Silver (used by checkver)
IF DEF(_GOLD)

View File

@ -1,291 +1,293 @@
; move ids
; indexes for:
; - Moves (see data/moves/moves.asm)
; - MoveNames (see data/moves/names.asm)
; - MoveDescriptions (see data/moves/descriptions.asm)
; - BattleAnimations (see data/moves/animations.asm)
const_def
const NO_MOVE ; $00
const POUND ; $01
const KARATE_CHOP ; $02
const DOUBLESLAP ; $03
const COMET_PUNCH ; $04
const MEGA_PUNCH ; $05
const PAY_DAY ; $06
const FIRE_PUNCH ; $07
const ICE_PUNCH ; $08
const THUNDERPUNCH ; $09
const SCRATCH ; $0a
const VICEGRIP ; $0b
const GUILLOTINE ; $0c
const RAZOR_WIND ; $0d
const SWORDS_DANCE ; $0e
const CUT ; $0f
const GUST ; $10
const WING_ATTACK ; $11
const WHIRLWIND ; $12
const FLY ; $13
const BIND ; $14
const SLAM ; $15
const VINE_WHIP ; $16
const STOMP ; $17
const DOUBLE_KICK ; $18
const MEGA_KICK ; $19
const JUMP_KICK ; $1a
const ROLLING_KICK ; $1b
const SAND_ATTACK ; $1c
const HEADBUTT ; $1d
const HORN_ATTACK ; $1e
const FURY_ATTACK ; $1f
const HORN_DRILL ; $20
const TACKLE ; $21
const BODY_SLAM ; $22
const WRAP ; $23
const TAKE_DOWN ; $24
const THRASH ; $25
const DOUBLE_EDGE ; $26
const TAIL_WHIP ; $27
const POISON_STING ; $28
const TWINEEDLE ; $29
const PIN_MISSILE ; $2a
const LEER ; $2b
const BITE ; $2c
const GROWL ; $2d
const ROAR ; $2e
const SING ; $2f
const SUPERSONIC ; $30
const SONICBOOM ; $31
const DISABLE ; $32
const ACID ; $33
const EMBER ; $34
const FLAMETHROWER ; $35
const MIST ; $36
const WATER_GUN ; $37
const HYDRO_PUMP ; $38
const SURF ; $39
const ICE_BEAM ; $3a
const BLIZZARD ; $3b
const PSYBEAM ; $3c
const BUBBLEBEAM ; $3d
const AURORA_BEAM ; $3e
const HYPER_BEAM ; $3f
const PECK ; $40
const DRILL_PECK ; $41
const SUBMISSION ; $42
const LOW_KICK ; $43
const COUNTER ; $44
const SEISMIC_TOSS ; $45
const STRENGTH ; $46
const ABSORB ; $47
const MEGA_DRAIN ; $48
const LEECH_SEED ; $49
const GROWTH ; $4a
const RAZOR_LEAF ; $4b
const SOLARBEAM ; $4c
const POISONPOWDER ; $4d
const STUN_SPORE ; $4e
const SLEEP_POWDER ; $4f
const PETAL_DANCE ; $50
const STRING_SHOT ; $51
const DRAGON_RAGE ; $52
const FIRE_SPIN ; $53
const THUNDERSHOCK ; $54
const THUNDERBOLT ; $55
const THUNDER_WAVE ; $56
const THUNDER ; $57
const ROCK_THROW ; $58
const EARTHQUAKE ; $59
const FISSURE ; $5a
const DIG ; $5b
const TOXIC ; $5c
const CONFUSION ; $5d
const PSYCHIC_M ; $5e
const HYPNOSIS ; $5f
const MEDITATE ; $60
const AGILITY ; $61
const QUICK_ATTACK ; $62
const RAGE ; $63
const TELEPORT ; $64
const NIGHT_SHADE ; $65
const MIMIC ; $66
const SCREECH ; $67
const DOUBLE_TEAM ; $68
const RECOVER ; $69
const HARDEN ; $6a
const MINIMIZE ; $6b
const SMOKESCREEN ; $6c
const CONFUSE_RAY ; $6d
const WITHDRAW ; $6e
const DEFENSE_CURL ; $6f
const BARRIER ; $70
const LIGHT_SCREEN ; $71
const HAZE ; $72
const REFLECT ; $73
const FOCUS_ENERGY ; $74
const BIDE ; $75
const METRONOME ; $76
const MIRROR_MOVE ; $77
const SELFDESTRUCT ; $78
const EGG_BOMB ; $79
const LICK ; $7a
const SMOG ; $7b
const SLUDGE ; $7c
const BONE_CLUB ; $7d
const FIRE_BLAST ; $7e
const WATERFALL ; $7f
const CLAMP ; $80
const SWIFT ; $81
const SKULL_BASH ; $82
const SPIKE_CANNON ; $83
const CONSTRICT ; $84
const AMNESIA ; $85
const KINESIS ; $86
const SOFTBOILED ; $87
const HI_JUMP_KICK ; $88
const GLARE ; $89
const DREAM_EATER ; $8a
const POISON_GAS ; $8b
const BARRAGE ; $8c
const LEECH_LIFE ; $8d
const LOVELY_KISS ; $8e
const SKY_ATTACK ; $8f
const TRANSFORM ; $90
const BUBBLE ; $91
const DIZZY_PUNCH ; $92
const SPORE ; $93
const FLASH ; $94
const PSYWAVE ; $95
const SPLASH ; $96
const ACID_ARMOR ; $97
const CRABHAMMER ; $98
const EXPLOSION ; $99
const FURY_SWIPES ; $9a
const BONEMERANG ; $9b
const REST ; $9c
const ROCK_SLIDE ; $9d
const HYPER_FANG ; $9e
const SHARPEN ; $9f
const CONVERSION ; $a0
const TRI_ATTACK ; $a1
const SUPER_FANG ; $a2
const SLASH ; $a3
const SUBSTITUTE ; $a4
const STRUGGLE ; $a5
const SKETCH ; $a6
const TRIPLE_KICK ; $a7
const THIEF ; $a8
const SPIDER_WEB ; $a9
const MIND_READER ; $aa
const NIGHTMARE ; $ab
const FLAME_WHEEL ; $ac
const SNORE ; $ad
const CURSE ; $ae
const FLAIL ; $af
const CONVERSION2 ; $b0
const AEROBLAST ; $b1
const COTTON_SPORE ; $b2
const REVERSAL ; $b3
const SPITE ; $b4
const POWDER_SNOW ; $b5
const PROTECT ; $b6
const MACH_PUNCH ; $b7
const SCARY_FACE ; $b8
const FAINT_ATTACK ; $b9
const SWEET_KISS ; $ba
const BELLY_DRUM ; $bb
const SLUDGE_BOMB ; $bc
const MUD_SLAP ; $bd
const OCTAZOOKA ; $be
const SPIKES ; $bf
const ZAP_CANNON ; $c0
const FORESIGHT ; $c1
const DESTINY_BOND ; $c2
const PERISH_SONG ; $c3
const ICY_WIND ; $c4
const DETECT ; $c5
const BONE_RUSH ; $c6
const LOCK_ON ; $c7
const OUTRAGE ; $c8
const SANDSTORM ; $c9
const GIGA_DRAIN ; $ca
const ENDURE ; $cb
const CHARM ; $cc
const ROLLOUT ; $cd
const FALSE_SWIPE ; $ce
const SWAGGER ; $cf
const MILK_DRINK ; $d0
const SPARK ; $d1
const FURY_CUTTER ; $d2
const STEEL_WING ; $d3
const MEAN_LOOK ; $d4
const ATTRACT ; $d5
const SLEEP_TALK ; $d6
const HEAL_BELL ; $d7
const RETURN ; $d8
const PRESENT ; $d9
const FRUSTRATION ; $da
const SAFEGUARD ; $db
const PAIN_SPLIT ; $dc
const SACRED_FIRE ; $dd
const MAGNITUDE ; $de
const DYNAMICPUNCH ; $df
const MEGAHORN ; $e0
const DRAGONBREATH ; $e1
const BATON_PASS ; $e2
const ENCORE ; $e3
const PURSUIT ; $e4
const RAPID_SPIN ; $e5
const SWEET_SCENT ; $e6
const IRON_TAIL ; $e7
const METAL_CLAW ; $e8
const VITAL_THROW ; $e9
const MORNING_SUN ; $ea
const SYNTHESIS ; $eb
const MOONLIGHT ; $ec
const HIDDEN_POWER ; $ed
const CROSS_CHOP ; $ee
const TWISTER ; $ef
const RAIN_DANCE ; $f0
const SUNNY_DAY ; $f1
const CRUNCH ; $f2
const MIRROR_COAT ; $f3
const PSYCH_UP ; $f4
const EXTREMESPEED ; $f5
const ANCIENTPOWER ; $f6
const SHADOW_BALL ; $f7
const FUTURE_SIGHT ; $f8
const ROCK_SMASH ; $f9
const WHIRLPOOL ; $fa
const BEAT_UP ; $fb
const NO_MOVE ; 00
const POUND ; 01
const KARATE_CHOP ; 02
const DOUBLESLAP ; 03
const COMET_PUNCH ; 04
const MEGA_PUNCH ; 05
const PAY_DAY ; 06
const FIRE_PUNCH ; 07
const ICE_PUNCH ; 08
const THUNDERPUNCH ; 09
const SCRATCH ; 0a
const VICEGRIP ; 0b
const GUILLOTINE ; 0c
const RAZOR_WIND ; 0d
const SWORDS_DANCE ; 0e
const CUT ; 0f
const GUST ; 10
const WING_ATTACK ; 11
const WHIRLWIND ; 12
const FLY ; 13
const BIND ; 14
const SLAM ; 15
const VINE_WHIP ; 16
const STOMP ; 17
const DOUBLE_KICK ; 18
const MEGA_KICK ; 19
const JUMP_KICK ; 1a
const ROLLING_KICK ; 1b
const SAND_ATTACK ; 1c
const HEADBUTT ; 1d
const HORN_ATTACK ; 1e
const FURY_ATTACK ; 1f
const HORN_DRILL ; 20
const TACKLE ; 21
const BODY_SLAM ; 22
const WRAP ; 23
const TAKE_DOWN ; 24
const THRASH ; 25
const DOUBLE_EDGE ; 26
const TAIL_WHIP ; 27
const POISON_STING ; 28
const TWINEEDLE ; 29
const PIN_MISSILE ; 2a
const LEER ; 2b
const BITE ; 2c
const GROWL ; 2d
const ROAR ; 2e
const SING ; 2f
const SUPERSONIC ; 30
const SONICBOOM ; 31
const DISABLE ; 32
const ACID ; 33
const EMBER ; 34
const FLAMETHROWER ; 35
const MIST ; 36
const WATER_GUN ; 37
const HYDRO_PUMP ; 38
const SURF ; 39
const ICE_BEAM ; 3a
const BLIZZARD ; 3b
const PSYBEAM ; 3c
const BUBBLEBEAM ; 3d
const AURORA_BEAM ; 3e
const HYPER_BEAM ; 3f
const PECK ; 40
const DRILL_PECK ; 41
const SUBMISSION ; 42
const LOW_KICK ; 43
const COUNTER ; 44
const SEISMIC_TOSS ; 45
const STRENGTH ; 46
const ABSORB ; 47
const MEGA_DRAIN ; 48
const LEECH_SEED ; 49
const GROWTH ; 4a
const RAZOR_LEAF ; 4b
const SOLARBEAM ; 4c
const POISONPOWDER ; 4d
const STUN_SPORE ; 4e
const SLEEP_POWDER ; 4f
const PETAL_DANCE ; 50
const STRING_SHOT ; 51
const DRAGON_RAGE ; 52
const FIRE_SPIN ; 53
const THUNDERSHOCK ; 54
const THUNDERBOLT ; 55
const THUNDER_WAVE ; 56
const THUNDER ; 57
const ROCK_THROW ; 58
const EARTHQUAKE ; 59
const FISSURE ; 5a
const DIG ; 5b
const TOXIC ; 5c
const CONFUSION ; 5d
const PSYCHIC_M ; 5e
const HYPNOSIS ; 5f
const MEDITATE ; 60
const AGILITY ; 61
const QUICK_ATTACK ; 62
const RAGE ; 63
const TELEPORT ; 64
const NIGHT_SHADE ; 65
const MIMIC ; 66
const SCREECH ; 67
const DOUBLE_TEAM ; 68
const RECOVER ; 69
const HARDEN ; 6a
const MINIMIZE ; 6b
const SMOKESCREEN ; 6c
const CONFUSE_RAY ; 6d
const WITHDRAW ; 6e
const DEFENSE_CURL ; 6f
const BARRIER ; 70
const LIGHT_SCREEN ; 71
const HAZE ; 72
const REFLECT ; 73
const FOCUS_ENERGY ; 74
const BIDE ; 75
const METRONOME ; 76
const MIRROR_MOVE ; 77
const SELFDESTRUCT ; 78
const EGG_BOMB ; 79
const LICK ; 7a
const SMOG ; 7b
const SLUDGE ; 7c
const BONE_CLUB ; 7d
const FIRE_BLAST ; 7e
const WATERFALL ; 7f
const CLAMP ; 80
const SWIFT ; 81
const SKULL_BASH ; 82
const SPIKE_CANNON ; 83
const CONSTRICT ; 84
const AMNESIA ; 85
const KINESIS ; 86
const SOFTBOILED ; 87
const HI_JUMP_KICK ; 88
const GLARE ; 89
const DREAM_EATER ; 8a
const POISON_GAS ; 8b
const BARRAGE ; 8c
const LEECH_LIFE ; 8d
const LOVELY_KISS ; 8e
const SKY_ATTACK ; 8f
const TRANSFORM ; 90
const BUBBLE ; 91
const DIZZY_PUNCH ; 92
const SPORE ; 93
const FLASH ; 94
const PSYWAVE ; 95
const SPLASH ; 96
const ACID_ARMOR ; 97
const CRABHAMMER ; 98
const EXPLOSION ; 99
const FURY_SWIPES ; 9a
const BONEMERANG ; 9b
const REST ; 9c
const ROCK_SLIDE ; 9d
const HYPER_FANG ; 9e
const SHARPEN ; 9f
const CONVERSION ; a0
const TRI_ATTACK ; a1
const SUPER_FANG ; a2
const SLASH ; a3
const SUBSTITUTE ; a4
const STRUGGLE ; a5
const SKETCH ; a6
const TRIPLE_KICK ; a7
const THIEF ; a8
const SPIDER_WEB ; a9
const MIND_READER ; aa
const NIGHTMARE ; ab
const FLAME_WHEEL ; ac
const SNORE ; ad
const CURSE ; ae
const FLAIL ; af
const CONVERSION2 ; b0
const AEROBLAST ; b1
const COTTON_SPORE ; b2
const REVERSAL ; b3
const SPITE ; b4
const POWDER_SNOW ; b5
const PROTECT ; b6
const MACH_PUNCH ; b7
const SCARY_FACE ; b8
const FAINT_ATTACK ; b9
const SWEET_KISS ; ba
const BELLY_DRUM ; bb
const SLUDGE_BOMB ; bc
const MUD_SLAP ; bd
const OCTAZOOKA ; be
const SPIKES ; bf
const ZAP_CANNON ; c0
const FORESIGHT ; c1
const DESTINY_BOND ; c2
const PERISH_SONG ; c3
const ICY_WIND ; c4
const DETECT ; c5
const BONE_RUSH ; c6
const LOCK_ON ; c7
const OUTRAGE ; c8
const SANDSTORM ; c9
const GIGA_DRAIN ; ca
const ENDURE ; cb
const CHARM ; cc
const ROLLOUT ; cd
const FALSE_SWIPE ; ce
const SWAGGER ; cf
const MILK_DRINK ; d0
const SPARK ; d1
const FURY_CUTTER ; d2
const STEEL_WING ; d3
const MEAN_LOOK ; d4
const ATTRACT ; d5
const SLEEP_TALK ; d6
const HEAL_BELL ; d7
const RETURN ; d8
const PRESENT ; d9
const FRUSTRATION ; da
const SAFEGUARD ; db
const PAIN_SPLIT ; dc
const SACRED_FIRE ; dd
const MAGNITUDE ; de
const DYNAMICPUNCH ; df
const MEGAHORN ; e0
const DRAGONBREATH ; e1
const BATON_PASS ; e2
const ENCORE ; e3
const PURSUIT ; e4
const RAPID_SPIN ; e5
const SWEET_SCENT ; e6
const IRON_TAIL ; e7
const METAL_CLAW ; e8
const VITAL_THROW ; e9
const MORNING_SUN ; ea
const SYNTHESIS ; eb
const MOONLIGHT ; ec
const HIDDEN_POWER ; ed
const CROSS_CHOP ; ee
const TWISTER ; ef
const RAIN_DANCE ; f0
const SUNNY_DAY ; f1
const CRUNCH ; f2
const MIRROR_COAT ; f3
const PSYCH_UP ; f4
const EXTREMESPEED ; f5
const ANCIENTPOWER ; f6
const SHADOW_BALL ; f7
const FUTURE_SIGHT ; f8
const ROCK_SMASH ; f9
const WHIRLPOOL ; fa
const BEAT_UP ; fb
NUM_ATTACKS EQU const_value - 1
const_value SET const_value - 1
const MOVE_OR_ANIM_FC ; fc
const MOVE_OR_ANIM_FD ; fd
const MOVE_OR_ANIM_FE ; fe
const NUM_ATTACKS ; $fb
; Battle animations use the same constants
; as the moves up to this point.
const ANIM_FC ; $fc
const ANIM_FD ; $fd
const ANIM_FE ; $fe
const ANIM_SWEET_SCENT_2 ; $ff
const ANIM_THROW_POKE_BALL ; $100
const ANIM_SEND_OUT_MON ; $101
const ANIM_RETURN_MON ; $102
const ANIM_CONFUSED ; $103
const ANIM_SLP ; $104
const ANIM_BRN ; $105
const ANIM_PSN ; $106
const ANIM_SAP ; $107
const ANIM_FRZ ; $108
const ANIM_PAR ; $109
const ANIM_IN_LOVE ; $10a
const ANIM_IN_SANDSTORM ; $10b
const ANIM_IN_NIGHTMARE ; $10c
const ANIM_IN_WHIRLPOOL ; $10d
; Battle animations use the same constants as the moves up to this point
const ANIM_SWEET_SCENT_2 ; ff
const ANIM_THROW_POKE_BALL ; 100
const ANIM_SEND_OUT_MON ; 101
const ANIM_RETURN_MON ; 102
const ANIM_CONFUSED ; 103
const ANIM_SLP ; 104
const ANIM_BRN ; 105
const ANIM_PSN ; 106
const ANIM_SAP ; 107
const ANIM_FRZ ; 108
const ANIM_PAR ; 109
const ANIM_IN_LOVE ; 10a
const ANIM_IN_SANDSTORM ; 10b
const ANIM_IN_NIGHTMARE ; 10c
const ANIM_IN_WHIRLPOOL ; 10d
; battle anims
const ANIM_MISS ; $10e
const ANIM_ENEMY_DAMAGE ; $10f
const ANIM_ENEMY_STAT_DOWN ; $110
const ANIM_PLAYER_STAT_DOWN ; $111
const ANIM_PLAYER_DAMAGE ; $112
const ANIM_WOBBLE ; $113
const ANIM_SHAKE ; $114
const ANIM_HIT_CONFUSION ; $115
const ANIM_MISS ; 10e
const ANIM_ENEMY_DAMAGE ; 10f
const ANIM_ENEMY_STAT_DOWN ; 110
const ANIM_PLAYER_STAT_DOWN ; 111
const ANIM_PLAYER_DAMAGE ; 112
const ANIM_WOBBLE ; 113
const ANIM_SHAKE ; 114
const ANIM_HIT_CONFUSION ; 115
; wNumHits uses offsets from ANIM_MISS
const_def

View File

@ -1,3 +1,5 @@
; song ids
; Music indexes (see audio/music_pointers.asm)
const_def
const MUSIC_NONE ; 00
@ -94,6 +96,7 @@
const MUSIC_PRINTER ; 5b
const MUSIC_POST_CREDITS ; 5c
; GetMapMusic picks music for this value (see home/map.asm)
MUSIC_MAHOGANY_MART EQU $64
; ExitPokegearRadio_HandleMusic uses these values

View File

@ -1,4 +1,4 @@
; PhoneContacts indexes (see data/phone/phone_contacts.asm)
const_def
const PHONE_00
const PHONE_MOM
@ -37,8 +37,8 @@
const PHONE_BLACKBELT_KENJI
const PHONE_HIKER_PARRY
const PHONE_PICNICKER_ERIN
const PHONE_BUENA
; SpecialPhoneCallList indexes (see data/phone/special_calls.asm)
const_def
const SPECIALCALL_NONE
const SPECIALCALL_POKERUS
@ -50,6 +50,7 @@
const SPECIALCALL_WORRIED
const SPECIALCALL_MASTERBALL
; phone struct members
const_def
const PHONE_CONTACT_TRAINER_CLASS
const PHONE_CONTACT_TRAINER_NUMBER
@ -64,4 +65,6 @@
const PHONE_CONTACT_SCRIPT2_ADDR_LO
const PHONE_CONTACT_SCRIPT2_ADDR_HI
PHONE_CONTACT_SIZE EQU const_value
; maximum number of pokegear contacts
CONTACT_LIST_SIZE EQU 10

View File

@ -306,61 +306,3 @@ NUM_POKEMON EQU const_value - 1
const UNOWN_Y ; 25
const UNOWN_Z ; 26
NUM_UNOWN EQU const_value - 1 ; 26
; pokemon structure in RAM
MON_SPECIES EQUS "(wPartyMon1Species - wPartyMon1)"
MON_ITEM EQUS "(wPartyMon1Item - wPartyMon1)"
MON_MOVES EQUS "(wPartyMon1Moves - wPartyMon1)"
MON_ID EQUS "(wPartyMon1ID - wPartyMon1)"
MON_EXP EQUS "(wPartyMon1Exp - wPartyMon1)"
MON_STAT_EXP EQUS "(wPartyMon1StatExp - wPartyMon1)"
MON_HP_EXP EQUS "(wPartyMon1HPExp - wPartyMon1)"
MON_ATK_EXP EQUS "(wPartyMon1AtkExp - wPartyMon1)"
MON_DEF_EXP EQUS "(wPartyMon1DefExp - wPartyMon1)"
MON_SPD_EXP EQUS "(wPartyMon1SpdExp - wPartyMon1)"
MON_SPC_EXP EQUS "(wPartyMon1SpcExp - wPartyMon1)"
MON_DVS EQUS "(wPartyMon1DVs - wPartyMon1)"
MON_PP EQUS "(wPartyMon1PP - wPartyMon1)"
MON_HAPPINESS EQUS "(wPartyMon1Happiness - wPartyMon1)"
MON_PKRUS EQUS "(wPartyMon1PokerusStatus - wPartyMon1)"
MON_CAUGHTDATA EQUS "(wPartyMon1CaughtData - wPartyMon1)"
MON_CAUGHTLEVEL EQUS "(wPartyMon1CaughtLevel - wPartyMon1)"
MON_CAUGHTTIME EQUS "(wPartyMon1CaughtTime - wPartyMon1)"
MON_CAUGHTGENDER EQUS "(wPartyMon1CaughtGender - wPartyMon1)"
MON_CAUGHTLOCATION EQUS "(wPartyMon1CaughtLocation - wPartyMon1)"
MON_LEVEL EQUS "(wPartyMon1Level - wPartyMon1)"
MON_STATUS EQUS "(wPartyMon1Status - wPartyMon1)"
MON_HP EQUS "(wPartyMon1HP - wPartyMon1)"
MON_MAXHP EQUS "(wPartyMon1MaxHP - wPartyMon1)"
MON_ATK EQUS "(wPartyMon1Attack - wPartyMon1)"
MON_DEF EQUS "(wPartyMon1Defense - wPartyMon1)"
MON_SPD EQUS "(wPartyMon1Speed - wPartyMon1)"
MON_SAT EQUS "(wPartyMon1SpclAtk - wPartyMon1)"
MON_SDF EQUS "(wPartyMon1SpclDef - wPartyMon1)"
BOXMON_STRUCT_LENGTH EQUS "(wPartyMon1End - wPartyMon1)"
PARTYMON_STRUCT_LENGTH EQUS "(wPartyMon1StatsEnd - wPartyMon1)"
REDMON_STRUCT_LENGTH EQU 44
const_value SET 1
const MONMENU_CUT ; 1
const MONMENU_FLY ; 2
const MONMENU_SURF ; 3
const MONMENU_STRENGTH ; 4
const MONMENU_WATERFALL ; 5
const MONMENU_FLASH ; 6
const MONMENU_WHIRLPOOL ; 7
const MONMENU_DIG ; 8
const MONMENU_TELEPORT ; 9
const MONMENU_SOFTBOILED ; 10
const MONMENU_HEADBUTT ; 11
const MONMENU_ROCKSMASH ; 12
const MONMENU_MILKDRINK ; 13
const MONMENU_SWEETSCENT ; 14
const MONMENU_STATS ; 15
const MONMENU_SWITCH ; 16
const MONMENU_ITEM ; 17
const MONMENU_CANCEL ; 18
const MONMENU_MOVE ; 19
const MONMENU_MAIL ; 20
const MONMENU_ERROR ; 21

View File

@ -27,11 +27,11 @@ BASE_TMHM EQUS "(wBaseTMHM - wCurBaseData)"
BASE_DATA_SIZE EQUS "(wCurBaseDataEnd - wCurBaseData)"
; gender ratio constants
GENDER_F0 EQU 0 percent
GENDER_F12_5 EQU 12 percent + 1
GENDER_F25 EQU 25 percent
GENDER_F50 EQU 50 percent
GENDER_F75 EQU 75 percent
GENDER_F0 EQU 0 percent
GENDER_F12_5 EQU 12 percent + 1
GENDER_F25 EQU 25 percent
GENDER_F50 EQU 50 percent
GENDER_F75 EQU 75 percent
GENDER_F100 EQU 100 percent - 1
GENDER_UNKNOWN EQU -1
@ -63,6 +63,45 @@ GENDER_UNKNOWN EQU -1
const EGG_DRAGON ; e
const EGG_NONE ; f (Undiscovered)
; pokedex entries (see data/pokemon/dex_entries.asm)
NUM_DEX_ENTRY_BANKS EQU 4
; party_struct members (see macros/wram.asm)
MON_SPECIES EQUS "(wPartyMon1Species - wPartyMon1)"
MON_ITEM EQUS "(wPartyMon1Item - wPartyMon1)"
MON_MOVES EQUS "(wPartyMon1Moves - wPartyMon1)"
MON_ID EQUS "(wPartyMon1ID - wPartyMon1)"
MON_EXP EQUS "(wPartyMon1Exp - wPartyMon1)"
MON_STAT_EXP EQUS "(wPartyMon1StatExp - wPartyMon1)"
MON_HP_EXP EQUS "(wPartyMon1HPExp - wPartyMon1)"
MON_ATK_EXP EQUS "(wPartyMon1AtkExp - wPartyMon1)"
MON_DEF_EXP EQUS "(wPartyMon1DefExp - wPartyMon1)"
MON_SPD_EXP EQUS "(wPartyMon1SpdExp - wPartyMon1)"
MON_SPC_EXP EQUS "(wPartyMon1SpcExp - wPartyMon1)"
MON_DVS EQUS "(wPartyMon1DVs - wPartyMon1)"
MON_PP EQUS "(wPartyMon1PP - wPartyMon1)"
MON_HAPPINESS EQUS "(wPartyMon1Happiness - wPartyMon1)"
MON_PKRUS EQUS "(wPartyMon1PokerusStatus - wPartyMon1)"
MON_CAUGHTDATA EQUS "(wPartyMon1CaughtData - wPartyMon1)"
MON_CAUGHTLEVEL EQUS "(wPartyMon1CaughtLevel - wPartyMon1)"
MON_CAUGHTTIME EQUS "(wPartyMon1CaughtTime - wPartyMon1)"
MON_CAUGHTGENDER EQUS "(wPartyMon1CaughtGender - wPartyMon1)"
MON_CAUGHTLOCATION EQUS "(wPartyMon1CaughtLocation - wPartyMon1)"
MON_LEVEL EQUS "(wPartyMon1Level - wPartyMon1)"
MON_STATUS EQUS "(wPartyMon1Status - wPartyMon1)"
MON_HP EQUS "(wPartyMon1HP - wPartyMon1)"
MON_MAXHP EQUS "(wPartyMon1MaxHP - wPartyMon1)"
MON_ATK EQUS "(wPartyMon1Attack - wPartyMon1)"
MON_DEF EQUS "(wPartyMon1Defense - wPartyMon1)"
MON_SPD EQUS "(wPartyMon1Speed - wPartyMon1)"
MON_SAT EQUS "(wPartyMon1SpclAtk - wPartyMon1)"
MON_SDF EQUS "(wPartyMon1SpclDef - wPartyMon1)"
BOXMON_STRUCT_LENGTH EQUS "(wPartyMon1End - wPartyMon1)"
PARTYMON_STRUCT_LENGTH EQUS "(wPartyMon1StatsEnd - wPartyMon1)"
NICKNAMED_MON_STRUCT_LENGTH EQUS "(PARTYMON_STRUCT_LENGTH + MON_NAME_LENGTH)"
REDMON_STRUCT_LENGTH EQU 44
; maximum number of party pokemon
PARTY_LENGTH EQU 6

View File

@ -1,5 +1,5 @@
const_value SET 1
; wPrinterStatus
const_def 1
const PRINTER_STATUS_CHECKING
const PRINTER_STATUS_TRANSMITTING
const PRINTER_STATUS_PRINTING

View File

@ -1,77 +1,84 @@
; radio channel ids
; indexes for:
; - RadioChannelSongs (see data/radio/channel_music.asm)
; - PlayRadioShow/RadioJumptable (see engine/pokegear/radio.asm)
; - RadioChannels (see engine/pokegear/pokegear.asm)
const_def
const OAKS_POKEMON_TALK ; $00
const POKEDEX_SHOW ; $01
const POKEMON_MUSIC ; $02
const LUCKY_CHANNEL ; $03
const PLACES_AND_PEOPLE ; $04
const LETS_ALL_SING ; $05
const ROCKET_RADIO ; $06
const POKE_FLUTE_RADIO ; $07
const UNOWN_RADIO ; $08
const EVOLUTION_RADIO ; $09
const OAKS_POKEMON_TALK_2 ; $0a
const OAKS_POKEMON_TALK_3 ; $0b
const OAKS_POKEMON_TALK_4 ; $0c
const OAKS_POKEMON_TALK_5 ; $0d
const OAKS_POKEMON_TALK_6 ; $0e
const OAKS_POKEMON_TALK_7 ; $0f
const OAKS_POKEMON_TALK_8 ; $10
const OAKS_POKEMON_TALK_9 ; $11
const POKEDEX_SHOW_2 ; $12
const POKEDEX_SHOW_3 ; $13
const POKEDEX_SHOW_4 ; $14
const POKEDEX_SHOW_5 ; $15
const POKEMON_MUSIC_2 ; $16
const POKEMON_MUSIC_3 ; $17
const POKEMON_MUSIC_4 ; $18
const POKEMON_MUSIC_5 ; $19
const POKEMON_MUSIC_6 ; $1a
const POKEMON_MUSIC_7 ; $1b
const LETS_ALL_SING_2 ; $1c
const LUCKY_NUMBER_SHOW_2 ; $1d
const LUCKY_NUMBER_SHOW_3 ; $1e
const LUCKY_NUMBER_SHOW_4 ; $1f
const LUCKY_NUMBER_SHOW_5 ; $20
const LUCKY_NUMBER_SHOW_6 ; $21
const LUCKY_NUMBER_SHOW_7 ; $22
const LUCKY_NUMBER_SHOW_8 ; $23
const LUCKY_NUMBER_SHOW_9 ; $24
const LUCKY_NUMBER_SHOW_10 ; $25
const LUCKY_NUMBER_SHOW_11 ; $26
const LUCKY_NUMBER_SHOW_12 ; $27
const LUCKY_NUMBER_SHOW_13 ; $28
const LUCKY_NUMBER_SHOW_14 ; $29
const LUCKY_NUMBER_SHOW_15 ; $2a
const PLACES_AND_PEOPLE_2 ; $2b
const PLACES_AND_PEOPLE_3 ; $2c
const PLACES_AND_PEOPLE_4 ; $2d
const PLACES_AND_PEOPLE_5 ; $2e
const PLACES_AND_PEOPLE_6 ; $2f
const PLACES_AND_PEOPLE_7 ; $30
const ROCKET_RADIO_2 ; $31
const ROCKET_RADIO_3 ; $32
const ROCKET_RADIO_4 ; $33
const ROCKET_RADIO_5 ; $34
const ROCKET_RADIO_6 ; $35
const ROCKET_RADIO_7 ; $36
const ROCKET_RADIO_8 ; $37
const ROCKET_RADIO_9 ; $38
const ROCKET_RADIO_10 ; $39
const OAKS_POKEMON_TALK_10 ; $3a
const OAKS_POKEMON_TALK_11 ; $3b
const OAKS_POKEMON_TALK_12 ; $3c
const OAKS_POKEMON_TALK_13 ; $3d
const OAKS_POKEMON_TALK_14 ; $3e
const RADIO_SCROLL ; $3f
const POKEDEX_SHOW_6 ; $40
const POKEDEX_SHOW_7 ; $41
const POKEDEX_SHOW_8 ; $42
const OAKS_POKEMON_TALK ; 00
const POKEDEX_SHOW ; 01
const POKEMON_MUSIC ; 02
const LUCKY_CHANNEL ; 03
const PLACES_AND_PEOPLE ; 04
const LETS_ALL_SING ; 05
const ROCKET_RADIO ; 06
const POKE_FLUTE_RADIO ; 07
const UNOWN_RADIO ; 08
const EVOLUTION_RADIO ; 09
; internal indexes for channel segments
const OAKS_POKEMON_TALK_2 ; 0a
const OAKS_POKEMON_TALK_3 ; 0b
const OAKS_POKEMON_TALK_4 ; 0c
const OAKS_POKEMON_TALK_5 ; 0d
const OAKS_POKEMON_TALK_6 ; 0e
const OAKS_POKEMON_TALK_7 ; 0f
const OAKS_POKEMON_TALK_8 ; 10
const OAKS_POKEMON_TALK_9 ; 11
const POKEDEX_SHOW_2 ; 12
const POKEDEX_SHOW_3 ; 13
const POKEDEX_SHOW_4 ; 14
const POKEDEX_SHOW_5 ; 15
const POKEMON_MUSIC_2 ; 16
const POKEMON_MUSIC_3 ; 17
const POKEMON_MUSIC_4 ; 18
const POKEMON_MUSIC_5 ; 19
const POKEMON_MUSIC_6 ; 1a
const POKEMON_MUSIC_7 ; 1b
const LETS_ALL_SING_2 ; 1c
const LUCKY_NUMBER_SHOW_2 ; 1d
const LUCKY_NUMBER_SHOW_3 ; 1e
const LUCKY_NUMBER_SHOW_4 ; 1f
const LUCKY_NUMBER_SHOW_5 ; 20
const LUCKY_NUMBER_SHOW_6 ; 21
const LUCKY_NUMBER_SHOW_7 ; 22
const LUCKY_NUMBER_SHOW_8 ; 23
const LUCKY_NUMBER_SHOW_9 ; 24
const LUCKY_NUMBER_SHOW_10 ; 25
const LUCKY_NUMBER_SHOW_11 ; 26
const LUCKY_NUMBER_SHOW_12 ; 27
const LUCKY_NUMBER_SHOW_13 ; 28
const LUCKY_NUMBER_SHOW_14 ; 29
const LUCKY_NUMBER_SHOW_15 ; 2a
const PLACES_AND_PEOPLE_2 ; 2b
const PLACES_AND_PEOPLE_3 ; 2c
const PLACES_AND_PEOPLE_4 ; 2d
const PLACES_AND_PEOPLE_5 ; 2e
const PLACES_AND_PEOPLE_6 ; 2f
const PLACES_AND_PEOPLE_7 ; 30
const ROCKET_RADIO_2 ; 31
const ROCKET_RADIO_3 ; 32
const ROCKET_RADIO_4 ; 33
const ROCKET_RADIO_5 ; 34
const ROCKET_RADIO_6 ; 35
const ROCKET_RADIO_7 ; 36
const ROCKET_RADIO_8 ; 37
const ROCKET_RADIO_9 ; 38
const ROCKET_RADIO_10 ; 39
const OAKS_POKEMON_TALK_10 ; 3a
const OAKS_POKEMON_TALK_11 ; 3b
const OAKS_POKEMON_TALK_12 ; 3c
const OAKS_POKEMON_TALK_13 ; 3d
const OAKS_POKEMON_TALK_14 ; 3e
const RADIO_SCROLL ; 3f
const POKEDEX_SHOW_6 ; 40
const POKEDEX_SHOW_7 ; 41
const POKEDEX_SHOW_8 ; 42
; PlayRadio.StationPointers indexes (see engine/pokegear/pokegear.asm)
const_def
const MAPRADIO_POKEMON_CHANNEL
const MAPRADIO_OAKS_MON_TALK
const MAPRADIO_OAKS_POKEMON_TALK
const MAPRADIO_POKEDEX_SHOW
const MAPRADIO_PKMN_MUSIC
const MAPRADIO_POKEMON_MUSIC
const MAPRADIO_LUCKY_CHANNEL
const MAPRADIO_UNOWN
const MAPRADIO_PLACES_PEOPLE

View File

@ -1,3 +1,4 @@
; GetSGBLayout arguments (see engine/gfx/cgb_layouts.asm and engine/gfx/sgb_layouts.asm)
const_def
const SCGB_BATTLE_GRAYSCALE
const SCGB_BATTLE_COLORS
@ -5,20 +6,20 @@
const SCGB_STATS_SCREEN_HP_PALS
const SCGB_POKEDEX
const SCGB_SLOT_MACHINE
const SCGB_06
const SCGB_07
const SCGB_BETA_TITLE_SCREEN
const SCGB_GS_INTRO
const SCGB_DIPLOMA
const SCGB_MAPPALS
const SCGB_PARTY_MENU
const SCGB_EVOLUTION
const SCGB_0C
const SCGB_GS_TITLE_SCREEN
const SCGB_0D
const SCGB_MOVE_LIST
const SCGB_0F
const SCGB_BETA_PIKACHU_MINIGAME
const SCGB_POKEDEX_SEARCH_OPTION
const SCGB_11
const SCGB_BETA_POKER
const SCGB_POKEPIC
const SCGB_13
const SCGB_MAGNET_TRAIN
const SCGB_PACKPALS
const SCGB_TRAINER_CARD
const SCGB_POKEDEX_UNOWN_MODE
@ -30,6 +31,10 @@
const SCGB_TRAINER_OR_MON_FRONTPIC_PALS
const SCGB_MYSTERY_GIFT
const SCGB_1E
const SCGB_1F
SCGB_PARTY_MENU_HP_PALS EQU -4
SCGB_RAM EQU -1
; PredefPals indexes (see gfx/sgb/predef.pal)
; GetPredefPal arguments (see engine/gfx/color.asm)
@ -143,6 +148,4 @@
const SGB_MASK_EN
const SGB_OBJ_TRN
SCGB_PARTY_MENU_HP_PALS EQU -4
SCGB_RAM EQU -1
PALPACKET_LENGTH EQU $10

View File

@ -40,7 +40,7 @@ NUM_STRING_BUFFERS EQU const_value
const TRAINERTEXT_WIN
const TRAINERTEXT_LOSS
; writecode/checkcode arguments
; readvar/writevar/loadvar arguments
; _GetVarAction.VarActionTable indexes (see engine/overworld/variables.asm)
const_def
const VAR_STRINGBUFFER2 ; 00
@ -72,7 +72,7 @@ RETVAR_ADDR_DE EQU (1 << 6)
RETVAR_EXECUTE EQU (2 << 6)
; PlayerEventScriptPointers indexes (see engine/overworld/events.asm)
const_value SET -1
const_def -1
const PLAYEREVENT_MAPSCRIPT
const PLAYEREVENT_NONE
const PLAYEREVENT_SEENBYTRAINER
@ -262,14 +262,14 @@ NUM_FRUIT_TREES EQU const_value - 1
const BUGCONTEST_BOXED_MON ; 1
const BUGCONTEST_NO_CATCH ; 2
; HealMachineAnim writebyte arguments
; HealMachineAnim setval arguments
; HealMachineAnim.Pointers indexes (see engine/events/heal_machine_anim.asm)
const_def
const HEALMACHINE_POKECENTER ; 0
const HEALMACHINE_ELMS_LAB ; 1
const HEALMACHINE_HALL_OF_FAME ; 2
; UnownPuzzle writebyte arguments
; UnownPuzzle setval arguments
; LoadUnownPuzzlePiecesGFX.LZPointers indexes (see engine/games/unown_puzzle.asm)
const_def
const UNOWNPUZZLE_KABUTO ; 0

View File

@ -1,4 +1,4 @@
; link types
; wLinkMode
const_def
const LINK_NULL ; 0
const LINK_TIMECAPSULE ; 1

View File

@ -1,3 +1,4 @@
; SFX indexes (see audio/sfx_pointers.asm)
const_def
const SFX_DEX_FANFARE_50_79 ; 00
@ -188,5 +189,3 @@
const SFX_TRAIN_ARRIVED ; b9
const SFX_STOP_SLOT ; ba
const SFX_2_BOOPS ; bb
const SFX_GLASS_TING ; bc
const SFX_GLASS_TING_2 ; bd

View File

@ -1,3 +1,5 @@
; StdScripts indexes (see engine/events/std_scripts.asm)
; also used in TileCollisionStdScripts (see data/events/collision_stdscripts.asm)
enum_start
enum pokecenternurse
enum difficultbookshelf

View File

@ -44,3 +44,6 @@ PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
; character sets (see charmap.asm)
FIRST_REGULAR_TEXT_CHAR EQU $60
FIRST_HIRAGANA_DAKUTEN_CHAR EQU $20
; gfx/font/unown_font.png
FIRST_UNOWN_CHAR EQU $40

View File

@ -1,4 +1,4 @@
const_value SET 1
; Tilesets indexes (see data/tilesets.asm)
const_def 1
const TILESET_JOHTO ; 01
const TILESET_JOHTO_MODERN ; 02

View File

@ -80,14 +80,16 @@ RIGHT_MASK EQU 1 << RIGHT
; wFacingDirection:: ; cf2f
FACE_CURRENT EQU 0
FACE_DOWN EQU 8
FACE_UP EQU 4
FACE_LEFT EQU 2
FACE_RIGHT EQU 1
FACE_DOWN EQU 8
FACE_UP EQU 4
FACE_LEFT EQU 2
FACE_RIGHT EQU 1
; wPokemonWithdrawDepositParameter:: ; d008
PC_WITHDRAW EQU 0
PC_DEPOSIT EQU 1
PC_WITHDRAW EQU 0
PC_DEPOSIT EQU 1
REMOVE_PARTY EQU 0
REMOVE_BOX EQU 1
DAY_CARE_WITHDRAW EQU 2
DAY_CARE_DEPOSIT EQU 3
@ -151,7 +153,7 @@ SCRIPT_RUNNING EQU 2
; wSpawnAfterChampion::
SPAWN_LANCE EQU 1
SPAWN_RED EQU 2
SPAWN_RED EQU 2
; wCurDay:: ; d1f2
const_def
@ -278,5 +280,5 @@ DAYCAREMAN_HAS_EGG_F EQU 6
; wDayCareLady:: ; dc77
DAYCARELADY_HAS_MON_F EQU 0
; used with both wDayCareMan and wDayCareLady
; shared flag between wDayCareMan and wDayCareLady
DAYCARE_INTRO_SEEN_F EQU 7

View File

@ -1,8 +1,8 @@
CriticalHitChances:
db 7 percent ; 0
db 12 percent + 2 ; +1
db 25 percent + 1 ; +2
db 33 percent + 1 ; +3
db 50 percent + 1 ; +4
db 50 percent + 1 ; +5
db 50 percent + 1 ; +6
db 1 out_of 15 ; 0
db 1 out_of 8 ; +1
db 1 out_of 4 ; +2
db 1 out_of 3 ; +3
db 1 out_of 2 ; +4
db 1 out_of 2 ; +5
db 1 out_of 2 ; +6

View File

@ -3,54 +3,54 @@ TALKABLE EQUS "db TALK +"
TileCollisionTable::
; entries correspond to COLL_* constants
NONTALKABLE LANDTILE ; COLL_FLOOR
NONTALKABLE LANDTILE ; COLL_01
NONTALKABLE LANDTILE ; 02
NONTALKABLE LANDTILE ; COLL_03
NONTALKABLE LANDTILE ; COLL_04
NONTALKABLE LANDTILE ; 05
NONTALKABLE LANDTILE ; 06
NONTALKABLE WALLTILE ; COLL_WALL
NONTALKABLE LANDTILE ; COLL_CUT_08
NONTALKABLE LANDTILE ; 09
NONTALKABLE LANDTILE ; 0a
NONTALKABLE LANDTILE ; 0b
NONTALKABLE LANDTILE ; 0c
NONTALKABLE LANDTILE ; 0d
NONTALKABLE LANDTILE ; 0e
NONTALKABLE WALLTILE ; 0f
NONTALKABLE LANDTILE ; COLL_TALL_GRASS_10
NONTALKABLE LANDTILE ; 11
TALKABLE WALLTILE ; COLL_CUT_TREE
NONTALKABLE LANDTILE ; 13
NONTALKABLE LANDTILE ; COLL_LONG_GRASS
TALKABLE WALLTILE ; COLL_HEADBUTT_TREE
NONTALKABLE LANDTILE ; 16
NONTALKABLE LANDTILE ; 17
NONTALKABLE LANDTILE ; COLL_TALL_GRASS
NONTALKABLE LANDTILE ; 19
TALKABLE WALLTILE ; COLL_CUT_TREE_1A
NONTALKABLE LANDTILE ; 1b
NONTALKABLE LANDTILE ; COLL_LONG_GRASS_1C
TALKABLE WALLTILE ; COLL_HEADBUTT_TREE_1D
NONTALKABLE LANDTILE ; 1e
NONTALKABLE LANDTILE ; 1f
NONTALKABLE LAND_TILE ; COLL_FLOOR
NONTALKABLE LAND_TILE ; COLL_01
NONTALKABLE LAND_TILE ; 02
NONTALKABLE LAND_TILE ; COLL_03
NONTALKABLE LAND_TILE ; COLL_04
NONTALKABLE LAND_TILE ; 05
NONTALKABLE LAND_TILE ; 06
NONTALKABLE WALL_TILE ; COLL_WALL
NONTALKABLE LAND_TILE ; COLL_CUT_08
NONTALKABLE LAND_TILE ; 09
NONTALKABLE LAND_TILE ; 0a
NONTALKABLE LAND_TILE ; 0b
NONTALKABLE LAND_TILE ; 0c
NONTALKABLE LAND_TILE ; 0d
NONTALKABLE LAND_TILE ; 0e
NONTALKABLE WALL_TILE ; 0f
NONTALKABLE LAND_TILE ; COLL_TALL_GRASS_10
NONTALKABLE LAND_TILE ; 11
TALKABLE WALL_TILE ; COLL_CUT_TREE
NONTALKABLE LAND_TILE ; 13
NONTALKABLE LAND_TILE ; COLL_LONG_GRASS
TALKABLE WALL_TILE ; COLL_HEADBUTT_TREE
NONTALKABLE LAND_TILE ; 16
NONTALKABLE LAND_TILE ; 17
NONTALKABLE LAND_TILE ; COLL_TALL_GRASS
NONTALKABLE LAND_TILE ; 19
TALKABLE WALL_TILE ; COLL_CUT_TREE_1A
NONTALKABLE LAND_TILE ; 1b
NONTALKABLE LAND_TILE ; COLL_LONG_GRASS_1C
TALKABLE WALL_TILE ; COLL_HEADBUTT_TREE_1D
NONTALKABLE LAND_TILE ; 1e
NONTALKABLE LAND_TILE ; 1f
NONTALKABLE WATERTILE ; 20
NONTALKABLE WATERTILE ; COLL_WATER_21
TALKABLE WATERTILE ; 22
NONTALKABLE LANDTILE ; COLL_ICE
NONTALKABLE LAND_TILE ; COLL_ICE
TALKABLE WATERTILE ; COLL_WHIRLPOOL
NONTALKABLE WATERTILE ; 25
NONTALKABLE WATERTILE ; 26
NONTALKABLE WALLTILE ; COLL_BUOY
NONTALKABLE WALL_TILE ; COLL_BUOY
NONTALKABLE WATERTILE ; COLL_CUT_28
NONTALKABLE WATERTILE ; COLL_WATER
TALKABLE WATERTILE ; 2a
NONTALKABLE LANDTILE ; COLL_ICE_2B
NONTALKABLE LAND_TILE ; COLL_ICE_2B
TALKABLE WATERTILE ; COLL_WHIRLPOOL_2C
NONTALKABLE WATERTILE ; 2d
NONTALKABLE WATERTILE ; 2e
NONTALKABLE WALLTILE ; 2f
NONTALKABLE WALL_TILE ; 2f
NONTALKABLE WATERTILE ; COLL_WATERFALL_RIGHT
NONTALKABLE WATERTILE ; COLL_WATERFALL_LEFT
NONTALKABLE WATERTILE ; COLL_WATERFALL_UP
@ -67,134 +67,134 @@ TileCollisionTable::
NONTALKABLE WATERTILE ; 3d
NONTALKABLE WATERTILE ; 3e
NONTALKABLE WATERTILE ; 3f
NONTALKABLE LANDTILE ; COLL_BRAKE
NONTALKABLE LANDTILE ; COLL_WALK_RIGHT
NONTALKABLE LANDTILE ; COLL_WALK_LEFT
NONTALKABLE LANDTILE ; COLL_WALK_UP
NONTALKABLE LANDTILE ; COLL_WALK_DOWN
NONTALKABLE LANDTILE ; COLL_BRAKE_45
NONTALKABLE LANDTILE ; COLL_BRAKE_46
NONTALKABLE LANDTILE ; COLL_BRAKE_47
NONTALKABLE LANDTILE ; COLL_GRASS_48
NONTALKABLE LANDTILE ; COLL_GRASS_49
NONTALKABLE LANDTILE ; COLL_GRASS_4A
NONTALKABLE LANDTILE ; COLL_GRASS_4B
NONTALKABLE LANDTILE ; COLL_GRASS_4C
NONTALKABLE LANDTILE ; 4d
NONTALKABLE LANDTILE ; 4e
NONTALKABLE LANDTILE ; 4f
NONTALKABLE LANDTILE ; COLL_WALK_RIGHT_ALT
NONTALKABLE LANDTILE ; COLL_WALK_LEFT_ALT
NONTALKABLE LANDTILE ; COLL_WALK_UP_ALT
NONTALKABLE LANDTILE ; COLL_WALK_DOWN_ALT
NONTALKABLE LANDTILE ; COLL_BRAKE_ALT
NONTALKABLE LANDTILE ; COLL_BRAKE_55
NONTALKABLE LANDTILE ; COLL_BRAKE_56
NONTALKABLE LANDTILE ; COLL_BRAKE_57
NONTALKABLE LANDTILE ; 58
NONTALKABLE LANDTILE ; 59
NONTALKABLE LANDTILE ; 5a
NONTALKABLE LANDTILE ; COLL_5B
NONTALKABLE LANDTILE ; 5c
NONTALKABLE LANDTILE ; 5d
NONTALKABLE LANDTILE ; 5e
NONTALKABLE LANDTILE ; 5f
NONTALKABLE LANDTILE ; COLL_PIT
NONTALKABLE LANDTILE ; COLL_VIRTUAL_BOY
NONTALKABLE WALLTILE ; 62
NONTALKABLE LANDTILE ; 63
NONTALKABLE LANDTILE ; COLL_64
NONTALKABLE LANDTILE ; COLL_65
NONTALKABLE LANDTILE ; 66
NONTALKABLE LANDTILE ; 67
NONTALKABLE LANDTILE ; COLL_PIT_68
NONTALKABLE LANDTILE ; 69
NONTALKABLE WALLTILE ; 6a
NONTALKABLE LANDTILE ; 6b
NONTALKABLE LANDTILE ; 6c
NONTALKABLE LANDTILE ; 6d
NONTALKABLE LANDTILE ; 6e
NONTALKABLE LANDTILE ; 6f
NONTALKABLE LANDTILE ; COLL_WARP_CARPET_DOWN
NONTALKABLE LANDTILE ; COLL_DOOR
NONTALKABLE LANDTILE ; COLL_LADDER
NONTALKABLE LANDTILE ; COLL_STAIRCASE_73
NONTALKABLE LANDTILE ; COLL_CAVE_74
NONTALKABLE LANDTILE ; COLL_DOOR_75
NONTALKABLE LANDTILE ; COLL_WARP_CARPET_LEFT
NONTALKABLE LANDTILE ; COLL_WARP_77
NONTALKABLE LANDTILE ; COLL_WARP_CARPET_UP
NONTALKABLE LANDTILE ; COLL_DOOR_79
NONTALKABLE LANDTILE ; COLL_STAIRCASE
NONTALKABLE LANDTILE ; COLL_CAVE
NONTALKABLE LANDTILE ; COLL_WARP_PANEL
NONTALKABLE LANDTILE ; COLL_DOOR_7D
NONTALKABLE LANDTILE ; COLL_WARP_CARPET_RIGHT
NONTALKABLE LANDTILE ; COLL_WARP_7F
NONTALKABLE WALLTILE ; 80
NONTALKABLE WALLTILE ; 81
NONTALKABLE WALLTILE ; 82
NONTALKABLE WALLTILE ; 83
NONTALKABLE WALLTILE ; 84
NONTALKABLE LANDTILE ; 85
NONTALKABLE LANDTILE ; 86
NONTALKABLE LANDTILE ; 87
NONTALKABLE WALLTILE ; 88
NONTALKABLE WALLTILE ; 89
NONTALKABLE WALLTILE ; 8a
NONTALKABLE WALLTILE ; 8b
NONTALKABLE WALLTILE ; 8c
NONTALKABLE LANDTILE ; 8d
NONTALKABLE LANDTILE ; 8e
NONTALKABLE LANDTILE ; 8f
NONTALKABLE WALLTILE ; COLL_COUNTER
NONTALKABLE WALLTILE ; COLL_BOOKSHELF
NONTALKABLE WALLTILE ; 92
NONTALKABLE WALLTILE ; COLL_PC
NONTALKABLE WALLTILE ; COLL_RADIO
NONTALKABLE WALLTILE ; COLL_TOWN_MAP
NONTALKABLE WALLTILE ; COLL_MART_SHELF
NONTALKABLE WALLTILE ; COLL_TV
NONTALKABLE WALLTILE ; COLL_COUNTER_98
NONTALKABLE WALLTILE ; 99
NONTALKABLE WALLTILE ; 9a
NONTALKABLE WALLTILE ; 9b
NONTALKABLE WALLTILE ; COLL_9C
NONTALKABLE WALLTILE ; COLL_WINDOW
NONTALKABLE WALLTILE ; 9e
NONTALKABLE WALLTILE ; COLL_INCENSE_BURNER
NONTALKABLE LANDTILE ; COLL_HOP_RIGHT
NONTALKABLE LANDTILE ; COLL_HOP_LEFT
NONTALKABLE LANDTILE ; COLL_HOP_UP
NONTALKABLE LANDTILE ; COLL_HOP_DOWN
NONTALKABLE LANDTILE ; COLL_HOP_DOWN_RIGHT
NONTALKABLE LANDTILE ; COLL_HOP_DOWN_LEFT
NONTALKABLE LANDTILE ; COLL_HOP_UP_RIGHT
NONTALKABLE LANDTILE ; COLL_HOP_UP_LEFT
NONTALKABLE LANDTILE ; a8
NONTALKABLE LANDTILE ; a9
NONTALKABLE LANDTILE ; aa
NONTALKABLE LANDTILE ; ab
NONTALKABLE LANDTILE ; ac
NONTALKABLE LANDTILE ; ad
NONTALKABLE LANDTILE ; ae
NONTALKABLE LANDTILE ; af
NONTALKABLE LANDTILE ; COLL_RIGHT_WALL
NONTALKABLE LANDTILE ; COLL_LEFT_WALL
NONTALKABLE LANDTILE ; COLL_UP_WALL
NONTALKABLE LANDTILE ; COLL_DOWN_WALL
NONTALKABLE LANDTILE ; COLL_DOWN_RIGHT_WALL
NONTALKABLE LANDTILE ; COLL_DOWN_LEFT_WALL
NONTALKABLE LANDTILE ; COLL_UP_RIGHT_WALL
NONTALKABLE LANDTILE ; COLL_UP_LEFT_WALL
NONTALKABLE LANDTILE ; b8
NONTALKABLE LANDTILE ; b9
NONTALKABLE LANDTILE ; ba
NONTALKABLE LANDTILE ; bb
NONTALKABLE LANDTILE ; bc
NONTALKABLE LANDTILE ; bd
NONTALKABLE LANDTILE ; be
NONTALKABLE LANDTILE ; bf
NONTALKABLE LAND_TILE ; COLL_BRAKE
NONTALKABLE LAND_TILE ; COLL_WALK_RIGHT
NONTALKABLE LAND_TILE ; COLL_WALK_LEFT
NONTALKABLE LAND_TILE ; COLL_WALK_UP
NONTALKABLE LAND_TILE ; COLL_WALK_DOWN
NONTALKABLE LAND_TILE ; COLL_BRAKE_45
NONTALKABLE LAND_TILE ; COLL_BRAKE_46
NONTALKABLE LAND_TILE ; COLL_BRAKE_47
NONTALKABLE LAND_TILE ; COLL_GRASS_48
NONTALKABLE LAND_TILE ; COLL_GRASS_49
NONTALKABLE LAND_TILE ; COLL_GRASS_4A
NONTALKABLE LAND_TILE ; COLL_GRASS_4B
NONTALKABLE LAND_TILE ; COLL_GRASS_4C
NONTALKABLE LAND_TILE ; 4d
NONTALKABLE LAND_TILE ; 4e
NONTALKABLE LAND_TILE ; 4f
NONTALKABLE LAND_TILE ; COLL_WALK_RIGHT_ALT
NONTALKABLE LAND_TILE ; COLL_WALK_LEFT_ALT
NONTALKABLE LAND_TILE ; COLL_WALK_UP_ALT
NONTALKABLE LAND_TILE ; COLL_WALK_DOWN_ALT
NONTALKABLE LAND_TILE ; COLL_BRAKE_ALT
NONTALKABLE LAND_TILE ; COLL_BRAKE_55
NONTALKABLE LAND_TILE ; COLL_BRAKE_56
NONTALKABLE LAND_TILE ; COLL_BRAKE_57
NONTALKABLE LAND_TILE ; 58
NONTALKABLE LAND_TILE ; 59
NONTALKABLE LAND_TILE ; 5a
NONTALKABLE LAND_TILE ; COLL_5B
NONTALKABLE LAND_TILE ; 5c
NONTALKABLE LAND_TILE ; 5d
NONTALKABLE LAND_TILE ; 5e
NONTALKABLE LAND_TILE ; 5f
NONTALKABLE LAND_TILE ; COLL_PIT
NONTALKABLE LAND_TILE ; COLL_VIRTUAL_BOY
NONTALKABLE WALL_TILE ; 62
NONTALKABLE LAND_TILE ; 63
NONTALKABLE LAND_TILE ; COLL_64
NONTALKABLE LAND_TILE ; COLL_65
NONTALKABLE LAND_TILE ; 66
NONTALKABLE LAND_TILE ; 67
NONTALKABLE LAND_TILE ; COLL_PIT_68
NONTALKABLE LAND_TILE ; 69
NONTALKABLE WALL_TILE ; 6a
NONTALKABLE LAND_TILE ; 6b
NONTALKABLE LAND_TILE ; 6c
NONTALKABLE LAND_TILE ; 6d
NONTALKABLE LAND_TILE ; 6e
NONTALKABLE LAND_TILE ; 6f
NONTALKABLE LAND_TILE ; COLL_WARP_CARPET_DOWN
NONTALKABLE LAND_TILE ; COLL_DOOR
NONTALKABLE LAND_TILE ; COLL_LADDER
NONTALKABLE LAND_TILE ; COLL_STAIRCASE_73
NONTALKABLE LAND_TILE ; COLL_CAVE_74
NONTALKABLE LAND_TILE ; COLL_DOOR_75
NONTALKABLE LAND_TILE ; COLL_WARP_CARPET_LEFT
NONTALKABLE LAND_TILE ; COLL_WARP_77
NONTALKABLE LAND_TILE ; COLL_WARP_CARPET_UP
NONTALKABLE LAND_TILE ; COLL_DOOR_79
NONTALKABLE LAND_TILE ; COLL_STAIRCASE
NONTALKABLE LAND_TILE ; COLL_CAVE
NONTALKABLE LAND_TILE ; COLL_WARP_PANEL
NONTALKABLE LAND_TILE ; COLL_DOOR_7D
NONTALKABLE LAND_TILE ; COLL_WARP_CARPET_RIGHT
NONTALKABLE LAND_TILE ; COLL_WARP_7F
NONTALKABLE WALL_TILE ; 80
NONTALKABLE WALL_TILE ; 81
NONTALKABLE WALL_TILE ; 82
NONTALKABLE WALL_TILE ; 83
NONTALKABLE WALL_TILE ; 84
NONTALKABLE LAND_TILE ; 85
NONTALKABLE LAND_TILE ; 86
NONTALKABLE LAND_TILE ; 87
NONTALKABLE WALL_TILE ; 88
NONTALKABLE WALL_TILE ; 89
NONTALKABLE WALL_TILE ; 8a
NONTALKABLE WALL_TILE ; 8b
NONTALKABLE WALL_TILE ; 8c
NONTALKABLE LAND_TILE ; 8d
NONTALKABLE LAND_TILE ; 8e
NONTALKABLE LAND_TILE ; 8f
NONTALKABLE WALL_TILE ; COLL_COUNTER
NONTALKABLE WALL_TILE ; COLL_BOOKSHELF
NONTALKABLE WALL_TILE ; 92
NONTALKABLE WALL_TILE ; COLL_PC
NONTALKABLE WALL_TILE ; COLL_RADIO
NONTALKABLE WALL_TILE ; COLL_TOWN_MAP
NONTALKABLE WALL_TILE ; COLL_MART_SHELF
NONTALKABLE WALL_TILE ; COLL_TV
NONTALKABLE WALL_TILE ; COLL_COUNTER_98
NONTALKABLE WALL_TILE ; 99
NONTALKABLE WALL_TILE ; 9a
NONTALKABLE WALL_TILE ; 9b
NONTALKABLE WALL_TILE ; COLL_9C
NONTALKABLE WALL_TILE ; COLL_WINDOW
NONTALKABLE WALL_TILE ; 9e
NONTALKABLE WALL_TILE ; COLL_INCENSE_BURNER
NONTALKABLE LAND_TILE ; COLL_HOP_RIGHT
NONTALKABLE LAND_TILE ; COLL_HOP_LEFT
NONTALKABLE LAND_TILE ; COLL_HOP_UP
NONTALKABLE LAND_TILE ; COLL_HOP_DOWN
NONTALKABLE LAND_TILE ; COLL_HOP_DOWN_RIGHT
NONTALKABLE LAND_TILE ; COLL_HOP_DOWN_LEFT
NONTALKABLE LAND_TILE ; COLL_HOP_UP_RIGHT
NONTALKABLE LAND_TILE ; COLL_HOP_UP_LEFT
NONTALKABLE LAND_TILE ; a8
NONTALKABLE LAND_TILE ; a9
NONTALKABLE LAND_TILE ; aa
NONTALKABLE LAND_TILE ; ab
NONTALKABLE LAND_TILE ; ac
NONTALKABLE LAND_TILE ; ad
NONTALKABLE LAND_TILE ; ae
NONTALKABLE LAND_TILE ; af
NONTALKABLE LAND_TILE ; COLL_RIGHT_WALL
NONTALKABLE LAND_TILE ; COLL_LEFT_WALL
NONTALKABLE LAND_TILE ; COLL_UP_WALL
NONTALKABLE LAND_TILE ; COLL_DOWN_WALL
NONTALKABLE LAND_TILE ; COLL_DOWN_RIGHT_WALL
NONTALKABLE LAND_TILE ; COLL_DOWN_LEFT_WALL
NONTALKABLE LAND_TILE ; COLL_UP_RIGHT_WALL
NONTALKABLE LAND_TILE ; COLL_UP_LEFT_WALL
NONTALKABLE LAND_TILE ; b8
NONTALKABLE LAND_TILE ; b9
NONTALKABLE LAND_TILE ; ba
NONTALKABLE LAND_TILE ; bb
NONTALKABLE LAND_TILE ; bc
NONTALKABLE LAND_TILE ; bd
NONTALKABLE LAND_TILE ; be
NONTALKABLE LAND_TILE ; bf
NONTALKABLE WATERTILE ; COLL_RIGHT_BUOY
NONTALKABLE WATERTILE ; COLL_LEFT_BUOY
NONTALKABLE WATERTILE ; COLL_UP_BUOY
@ -211,51 +211,51 @@ TileCollisionTable::
NONTALKABLE WATERTILE ; cd
NONTALKABLE WATERTILE ; ce
NONTALKABLE WATERTILE ; cf
NONTALKABLE LANDTILE ; d0
NONTALKABLE LANDTILE ; d1
NONTALKABLE LANDTILE ; d2
NONTALKABLE LANDTILE ; d3
NONTALKABLE LANDTILE ; d4
NONTALKABLE LANDTILE ; d5
NONTALKABLE LANDTILE ; d6
NONTALKABLE LANDTILE ; d7
NONTALKABLE LANDTILE ; d8
NONTALKABLE LANDTILE ; d9
NONTALKABLE LANDTILE ; da
NONTALKABLE LANDTILE ; db
NONTALKABLE LANDTILE ; dc
NONTALKABLE LANDTILE ; dd
NONTALKABLE LANDTILE ; de
NONTALKABLE LANDTILE ; df
NONTALKABLE LANDTILE ; e0
NONTALKABLE LANDTILE ; e1
NONTALKABLE LANDTILE ; e2
NONTALKABLE LANDTILE ; e3
NONTALKABLE LANDTILE ; e4
NONTALKABLE LANDTILE ; e5
NONTALKABLE LANDTILE ; e6
NONTALKABLE LANDTILE ; e7
NONTALKABLE LANDTILE ; e8
NONTALKABLE LANDTILE ; e9
NONTALKABLE LANDTILE ; ea
NONTALKABLE LANDTILE ; eb
NONTALKABLE LANDTILE ; ec
NONTALKABLE LANDTILE ; ed
NONTALKABLE LANDTILE ; ee
NONTALKABLE LANDTILE ; ef
NONTALKABLE LANDTILE ; f0
NONTALKABLE LANDTILE ; f1
NONTALKABLE LANDTILE ; f2
NONTALKABLE LANDTILE ; f3
NONTALKABLE LANDTILE ; f4
NONTALKABLE LANDTILE ; f5
NONTALKABLE LANDTILE ; f6
NONTALKABLE LANDTILE ; f7
NONTALKABLE LANDTILE ; f8
NONTALKABLE LANDTILE ; f9
NONTALKABLE LANDTILE ; fa
NONTALKABLE LANDTILE ; fb
NONTALKABLE LANDTILE ; fc
NONTALKABLE LANDTILE ; fd
NONTALKABLE LANDTILE ; fe
NONTALKABLE WALLTILE ; COLL_FF
NONTALKABLE LAND_TILE ; d0
NONTALKABLE LAND_TILE ; d1
NONTALKABLE LAND_TILE ; d2
NONTALKABLE LAND_TILE ; d3
NONTALKABLE LAND_TILE ; d4
NONTALKABLE LAND_TILE ; d5
NONTALKABLE LAND_TILE ; d6
NONTALKABLE LAND_TILE ; d7
NONTALKABLE LAND_TILE ; d8
NONTALKABLE LAND_TILE ; d9
NONTALKABLE LAND_TILE ; da
NONTALKABLE LAND_TILE ; db
NONTALKABLE LAND_TILE ; dc
NONTALKABLE LAND_TILE ; dd
NONTALKABLE LAND_TILE ; de
NONTALKABLE LAND_TILE ; df
NONTALKABLE LAND_TILE ; e0
NONTALKABLE LAND_TILE ; e1
NONTALKABLE LAND_TILE ; e2
NONTALKABLE LAND_TILE ; e3
NONTALKABLE LAND_TILE ; e4
NONTALKABLE LAND_TILE ; e5
NONTALKABLE LAND_TILE ; e6
NONTALKABLE LAND_TILE ; e7
NONTALKABLE LAND_TILE ; e8
NONTALKABLE LAND_TILE ; e9
NONTALKABLE LAND_TILE ; ea
NONTALKABLE LAND_TILE ; eb
NONTALKABLE LAND_TILE ; ec
NONTALKABLE LAND_TILE ; ed
NONTALKABLE LAND_TILE ; ee
NONTALKABLE LAND_TILE ; ef
NONTALKABLE LAND_TILE ; f0
NONTALKABLE LAND_TILE ; f1
NONTALKABLE LAND_TILE ; f2
NONTALKABLE LAND_TILE ; f3
NONTALKABLE LAND_TILE ; f4
NONTALKABLE LAND_TILE ; f5
NONTALKABLE LAND_TILE ; f6
NONTALKABLE LAND_TILE ; f7
NONTALKABLE LAND_TILE ; f8
NONTALKABLE LAND_TILE ; f9
NONTALKABLE LAND_TILE ; fa
NONTALKABLE LAND_TILE ; fb
NONTALKABLE LAND_TILE ; fc
NONTALKABLE LAND_TILE ; fd
NONTALKABLE LAND_TILE ; fe
NONTALKABLE WALL_TILE ; COLL_FF

View File

@ -1,12 +1,12 @@
HappinessData_OlderHaircutBrother:
db $4c, 2, HAPPINESS_OLDERCUT1 ; 30% chance
db $80, 3, HAPPINESS_OLDERCUT2 ; 20% chance
db $ff, 4, HAPPINESS_OLDERCUT3 ; 50% chance
db 30 percent, 2, HAPPINESS_OLDERCUT1 ; 30% chance
db 50 percent + 1, 3, HAPPINESS_OLDERCUT2 ; 50% chance
db 100 percent, 4, HAPPINESS_OLDERCUT3 ; 20% chance
HappinessData_YoungerHaircutBrother:
db $9a, 2, HAPPINESS_YOUNGCUT1 ; 60% chance
db $4c, 3, HAPPINESS_YOUNGCUT2 ; 10% chance
db $ff, 4, HAPPINESS_YOUNGCUT3 ; 30% chance
db 60 percent + 1, 2, HAPPINESS_YOUNGCUT1 ; 60% chance
db 30 percent, 3, HAPPINESS_YOUNGCUT2 ; 30% chance
db 100 percent, 4, HAPPINESS_YOUNGCUT3 ; 10% chance
HappinessData_DaisysGrooming:
db $ff, 2, HAPPINESS_GROOMING ; 99.6% chance
db 100 percent, 2, HAPPINESS_GROOMING ; 99.6% chance

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,9 @@
MagnitudePower:
; chance, power, magnitude #
db 13, 10, 4
db 38, 30, 5
db 89, 50, 6
db 166, 70, 7
db 217, 90, 8
db 242, 110, 9
db 255, 150, 10
db 5 percent + 1, 10, 4 ; 5%
db 15 percent, 30, 5 ; 10%
db 35 percent, 50, 6 ; 20%
db 65 percent + 1, 70, 7 ; 30%
db 85 percent + 1, 90, 8 ; 20%
db 95 percent, 110, 9 ; 10%
db 100 percent, 150, 10 ; 5%

View File

@ -1,6 +1,6 @@
PresentPower:
; chance, power
db 40 percent, 40 ; 40%
db 70 percent + 1, 80 ; 30%
db 80 percent, 120 ; 10%
db 40 percent, 40 ; 40% chance
db 70 percent + 1, 80 ; 30% chance
db 80 percent, 120 ; 10% chance
db -1 ; 20% chance to heal instead

66
data/moves/tmhm_moves.asm Normal file
View File

@ -0,0 +1,66 @@
TMHMMoves:
; entries correspond to *_TMNUM enums (see constants/item_constants.asm)
; TMs
db DYNAMICPUNCH
db HEADBUTT
db CURSE
db ROLLOUT
db ROAR
db TOXIC
db ZAP_CANNON
db ROCK_SMASH
db PSYCH_UP
db HIDDEN_POWER
db SUNNY_DAY
db SWEET_SCENT
db SNORE
db BLIZZARD
db HYPER_BEAM
db ICY_WIND
db PROTECT
db RAIN_DANCE
db GIGA_DRAIN
db ENDURE
db FRUSTRATION
db SOLARBEAM
db IRON_TAIL
db DRAGONBREATH
db THUNDER
db EARTHQUAKE
db RETURN
db DIG
db PSYCHIC_M
db SHADOW_BALL
db MUD_SLAP
db DOUBLE_TEAM
db ICE_PUNCH
db SWAGGER
db SLEEP_TALK
db SLUDGE_BOMB
db SANDSTORM
db FIRE_BLAST
db SWIFT
db DEFENSE_CURL
db THUNDERPUNCH
db DREAM_EATER
db DETECT
db REST
db ATTRACT
db THIEF
db STEEL_WING
db FIRE_PUNCH
db FURY_CUTTER
db NIGHTMARE
; HMs
db CUT
db FLY
db SURF
db STRENGTH
db FLASH
db WHIRLPOOL
db WATERFALL
; Move tutor (Crystal-only)
db 0
db 0
db 0
db 0 ; end

View File

@ -8,6 +8,7 @@ NameMenuHeader:
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B ; flags
db 5 ; items
db "NEW NAME@"
PlayerNameArray:
IF DEF(_GOLD)
db "GOLD@"

View File

@ -1,19 +1,18 @@
INCLUDE "constants.asm"
SECTION "Egg Moves", ROMX
; All instances of Charm, Steel Wing, Sweet Scent, and Lovely Kiss were
; removed from egg move lists in Crystal, because they are also TMs.
; removed from egg move lists in Crystal.
; Sweet Scent and Steel Wing were redundant since they're TMs, and
; Charm and Lovely Kiss were unobtainable.
; Staryu's egg moves were removed in Crystal, because Staryu is genderless
; and can only breed with Ditto.
INCLUDE "data/pokemon/egg_move_pointers.asm"
EggMoves::
BulbasaurEggMoves:
db LIGHT_SCREEN
db SKULL_BASH
@ -21,7 +20,7 @@ BulbasaurEggMoves:
db CHARM
db RAZOR_WIND
db PETAL_DANCE
db -1
db -1 ; end
CharmanderEggMoves:
db BELLY_DRUM
@ -30,7 +29,7 @@ CharmanderEggMoves:
db BITE
db OUTRAGE
db BEAT_UP
db -1
db -1 ; end
SquirtleEggMoves:
db MIRROR_COAT
@ -39,14 +38,14 @@ SquirtleEggMoves:
db CONFUSION
db FORESIGHT
db FLAIL
db -1
db -1 ; end
PidgeyEggMoves:
db PURSUIT
db FAINT_ATTACK
db FORESIGHT
db STEEL_WING
db -1
db -1 ; end
RattataEggMoves:
db SCREECH
@ -55,7 +54,7 @@ RattataEggMoves:
db BITE
db COUNTER
db REVERSAL
db -1
db -1 ; end
SpearowEggMoves:
db FAINT_ATTACK
@ -63,21 +62,21 @@ SpearowEggMoves:
db SCARY_FACE
db QUICK_ATTACK
db TRI_ATTACK
db -1
db -1 ; end
EkansEggMoves:
db PURSUIT
db SLAM
db SPITE
db BEAT_UP
db -1
db -1 ; end
SandshrewEggMoves:
db FLAIL
db SAFEGUARD
db COUNTER
db RAPID_SPIN
db -1
db -1 ; end
NidoranFEggMoves:
db SUPERSONIC
@ -87,7 +86,7 @@ NidoranFEggMoves:
db CHARM
db COUNTER
db BEAT_UP
db -1
db -1 ; end
NidoranMEggMoves:
db SUPERSONIC
@ -97,7 +96,7 @@ NidoranMEggMoves:
db AMNESIA
db COUNTER
db BEAT_UP
db -1
db -1 ; end
VulpixEggMoves:
db FAINT_ATTACK
@ -105,7 +104,7 @@ VulpixEggMoves:
db FLAIL
db SPITE
db DISABLE
db -1
db -1 ; end
ZubatEggMoves:
db QUICK_ATTACK
@ -113,7 +112,7 @@ ZubatEggMoves:
db FAINT_ATTACK
db GUST
db WHIRLWIND
db -1
db -1 ; end
OddishEggMoves:
db SWORDS_DANCE
@ -121,7 +120,7 @@ OddishEggMoves:
db FLAIL
db SYNTHESIS
db CHARM
db -1
db -1 ; end
ParasEggMoves:
db FALSE_SWIPE
@ -132,13 +131,13 @@ ParasEggMoves:
db SWEET_SCENT
db LIGHT_SCREEN
db PURSUIT
db -1
db -1 ; end
VenonatEggMoves:
db BATON_PASS
db SCREECH
db GIGA_DRAIN
db -1
db -1 ; end
DiglettEggMoves:
db FAINT_ATTACK
@ -146,14 +145,14 @@ DiglettEggMoves:
db ANCIENTPOWER
db PURSUIT
db BEAT_UP
db -1
db -1 ; end
MeowthEggMoves:
db SPITE
db CHARM
db HYPNOSIS
db AMNESIA
db -1
db -1 ; end
PsyduckEggMoves:
db ICE_BEAM
@ -163,7 +162,7 @@ PsyduckEggMoves:
db LIGHT_SCREEN
db FUTURE_SIGHT
db PSYCHIC_M
db -1
db -1 ; end
MankeyEggMoves:
db ROCK_SLIDE
@ -172,7 +171,7 @@ MankeyEggMoves:
db COUNTER
db REVERSAL
db BEAT_UP
db -1
db -1 ; end
GrowlitheEggMoves:
db BODY_SLAM
@ -180,7 +179,7 @@ GrowlitheEggMoves:
db CRUNCH
db THRASH
db FIRE_SPIN
db -1
db -1 ; end
PoliwagEggMoves:
db MIST
@ -188,20 +187,20 @@ PoliwagEggMoves:
db BUBBLEBEAM
db HAZE
db MIND_READER
db -1
db -1 ; end
AbraEggMoves:
db LIGHT_SCREEN
db ENCORE
db BARRIER
db -1
db -1 ; end
MachopEggMoves:
db LIGHT_SCREEN
db MEDITATE
db ROLLING_KICK
db ENCORE
db -1
db -1 ; end
BellsproutEggMoves:
db SWORDS_DANCE
@ -209,7 +208,7 @@ BellsproutEggMoves:
db REFLECT
db SYNTHESIS
db LEECH_LIFE
db -1
db -1 ; end
TentacoolEggMoves:
db AURORA_BEAM
@ -217,12 +216,12 @@ TentacoolEggMoves:
db RAPID_SPIN
db HAZE
db SAFEGUARD
db -1
db -1 ; end
GeodudeEggMoves:
db MEGA_PUNCH
db ROCK_SLIDE
db -1
db -1 ; end
PonytaEggMoves:
db FLAME_WHEEL
@ -231,14 +230,14 @@ PonytaEggMoves:
db HYPNOSIS
db CHARM
db QUICK_ATTACK
db -1
db -1 ; end
SlowpokeEggMoves:
db SAFEGUARD
db BELLY_DRUM
db FUTURE_SIGHT
db STOMP
db -1
db -1 ; end
FarfetchDEggMoves:
db STEEL_WING
@ -247,7 +246,7 @@ FarfetchDEggMoves:
db GUST
db QUICK_ATTACK
db FLAIL
db -1
db -1 ; end
DoduoEggMoves:
db QUICK_ATTACK
@ -255,7 +254,7 @@ DoduoEggMoves:
db HAZE
db FAINT_ATTACK
db FLAIL
db -1
db -1 ; end
SeelEggMoves:
db LICK
@ -264,13 +263,13 @@ SeelEggMoves:
db PECK
db SLAM
db ENCORE
db -1
db -1 ; end
GrimerEggMoves:
db HAZE
db MEAN_LOOK
db LICK
db -1
db -1 ; end
ShellderEggMoves:
db BUBBLEBEAM
@ -278,23 +277,23 @@ ShellderEggMoves:
db BARRIER
db RAPID_SPIN
db SCREECH
db -1
db -1 ; end
GastlyEggMoves:
db PSYWAVE
db PERISH_SONG
db HAZE
db -1
db -1 ; end
OnixEggMoves:
db ROCK_SLIDE
db FLAIL
db -1
db -1 ; end
DrowzeeEggMoves:
db LIGHT_SCREEN
db BARRIER
db -1
db -1 ; end
KrabbyEggMoves:
db DIG
@ -302,7 +301,7 @@ KrabbyEggMoves:
db AMNESIA
db FLAIL
db SLAM
db -1
db -1 ; end
ExeggcuteEggMoves:
db SYNTHESIS
@ -310,7 +309,7 @@ ExeggcuteEggMoves:
db REFLECT
db MEGA_DRAIN
db ANCIENTPOWER
db -1
db -1 ; end
CuboneEggMoves:
db ROCK_SLIDE
@ -319,13 +318,13 @@ CuboneEggMoves:
db SCREECH
db SKULL_BASH
db PERISH_SONG
db -1
db -1 ; end
LickitungEggMoves:
db BELLY_DRUM
db MAGNITUDE
db BODY_SLAM
db -1
db -1 ; end
KoffingEggMoves:
db SCREECH
@ -333,7 +332,7 @@ KoffingEggMoves:
db PSYBEAM
db DESTINY_BOND
db PAIN_SPLIT
db -1
db -1 ; end
RhyhornEggMoves:
db CRUNCH
@ -343,13 +342,13 @@ RhyhornEggMoves:
db PURSUIT
db COUNTER
db MAGNITUDE
db -1
db -1 ; end
ChanseyEggMoves:
db PRESENT
db METRONOME
db HEAL_BELL
db -1
db -1 ; end
TangelaEggMoves:
db FLAIL
@ -357,7 +356,7 @@ TangelaEggMoves:
db MEGA_DRAIN
db REFLECT
db AMNESIA
db -1
db -1 ; end
KangaskhanEggMoves:
db STOMP
@ -365,7 +364,7 @@ KangaskhanEggMoves:
db FOCUS_ENERGY
db SAFEGUARD
db DISABLE
db -1
db -1 ; end
HorseaEggMoves:
db FLAIL
@ -374,13 +373,13 @@ HorseaEggMoves:
db DISABLE
db SPLASH
db DRAGON_RAGE
db -1
db -1 ; end
GoldeenEggMoves:
db PSYBEAM
db HAZE
db HYDRO_PUMP
db -1
db -1 ; end
StaryuEggMoves:
db AURORA_BEAM
@ -392,7 +391,7 @@ MrMimeEggMoves:
db FUTURE_SIGHT
db HYPNOSIS
db MIMIC
db -1
db -1 ; end
ScytherEggMoves:
db COUNTER
@ -401,22 +400,22 @@ ScytherEggMoves:
db RAZOR_WIND
db REVERSAL
db LIGHT_SCREEN
db -1
db -1 ; end
PinsirEggMoves:
db FURY_ATTACK
db FLAIL
db -1
db -1 ; end
LaprasEggMoves:
db AURORA_BEAM
db FORESIGHT
db -1
db -1 ; end
EeveeEggMoves:
db FLAIL
db CHARM
db -1
db -1 ; end
OmanyteEggMoves:
db BUBBLEBEAM
@ -424,7 +423,7 @@ OmanyteEggMoves:
db SLAM
db SUPERSONIC
db HAZE
db -1
db -1 ; end
KabutoEggMoves:
db BUBBLEBEAM
@ -432,26 +431,26 @@ KabutoEggMoves:
db RAPID_SPIN
db DIG
db FLAIL
db -1
db -1 ; end
AerodactylEggMoves:
db WHIRLWIND
db PURSUIT
db FORESIGHT
db STEEL_WING
db -1
db -1 ; end
SnorlaxEggMoves:
db LICK
db CHARM
db -1
db -1 ; end
DratiniEggMoves:
db LIGHT_SCREEN
db MIST
db HAZE
db SUPERSONIC
db -1
db -1 ; end
ChikoritaEggMoves:
db VINE_WHIP
@ -459,7 +458,7 @@ ChikoritaEggMoves:
db COUNTER
db ANCIENTPOWER
db FLAIL
db -1
db -1 ; end
CyndaquilEggMoves:
db FURY_SWIPES
@ -467,7 +466,7 @@ CyndaquilEggMoves:
db REVERSAL
db THRASH
db FORESIGHT
db -1
db -1 ; end
TotodileEggMoves:
db CRUNCH
@ -476,7 +475,7 @@ TotodileEggMoves:
db ANCIENTPOWER
db RAZOR_WIND
db ROCK_SLIDE
db -1
db -1 ; end
SentretEggMoves:
db DOUBLE_EDGE
@ -484,7 +483,7 @@ SentretEggMoves:
db SLASH
db FOCUS_ENERGY
db REVERSAL
db -1
db -1 ; end
HoothootEggMoves:
db MIRROR_MOVE
@ -492,13 +491,13 @@ HoothootEggMoves:
db FAINT_ATTACK
db WING_ATTACK
db WHIRLWIND
db -1
db -1 ; end
LedybaEggMoves:
db PSYBEAM
db BIDE
db LIGHT_SCREEN
db -1
db -1 ; end
SpinarakEggMoves:
db PSYBEAM
@ -506,13 +505,13 @@ SpinarakEggMoves:
db SONICBOOM
db BATON_PASS
db PURSUIT
db -1
db -1 ; end
ChinchouEggMoves:
db FLAIL
db SUPERSONIC
db SCREECH
db -1
db -1 ; end
PichuEggMoves:
db REVERSAL
@ -520,7 +519,7 @@ PichuEggMoves:
db PRESENT
db ENCORE
db DOUBLESLAP
db -1
db -1 ; end
CleffaEggMoves:
db PRESENT
@ -529,13 +528,13 @@ CleffaEggMoves:
db BELLY_DRUM
db SPLASH
db MIMIC
db -1
db -1 ; end
IgglybuffEggMoves:
db PERISH_SONG
db PRESENT
db FAINT_ATTACK
db -1
db -1 ; end
TogepiEggMoves:
db PRESENT
@ -543,7 +542,7 @@ TogepiEggMoves:
db PECK
db FORESIGHT
db FUTURE_SIGHT
db -1
db -1 ; end
NatuEggMoves:
db HAZE
@ -551,7 +550,7 @@ NatuEggMoves:
db QUICK_ATTACK
db FAINT_ATTACK
db STEEL_WING
db -1
db -1 ; end
MareepEggMoves:
db THUNDERBOLT
@ -560,7 +559,7 @@ MareepEggMoves:
db SAFEGUARD
db SCREECH
db REFLECT
db -1
db -1 ; end
MarillEggMoves:
db LIGHT_SCREEN
@ -571,11 +570,11 @@ MarillEggMoves:
db PERISH_SONG
db SUPERSONIC
db FORESIGHT
db -1
db -1 ; end
SudowoodoEggMoves:
db SELFDESTRUCT
db -1
db -1 ; end
HoppipEggMoves:
db CONFUSION
@ -585,7 +584,7 @@ HoppipEggMoves:
db REFLECT
db AMNESIA
db PAY_DAY
db -1
db -1 ; end
AipomEggMoves:
db COUNTER
@ -596,19 +595,19 @@ AipomEggMoves:
db SLAM
db DOUBLESLAP
db BEAT_UP
db -1
db -1 ; end
YanmaEggMoves:
db WHIRLWIND
db REVERSAL
db LEECH_LIFE
db -1
db -1 ; end
WooperEggMoves:
db BODY_SLAM
db ANCIENTPOWER
db SAFEGUARD
db -1
db -1 ; end
MurkrowEggMoves:
db WHIRLWIND
@ -616,12 +615,12 @@ MurkrowEggMoves:
db QUICK_ATTACK
db MIRROR_MOVE
db WING_ATTACK
db -1
db -1 ; end
MisdreavusEggMoves:
db SCREECH
db DESTINY_BOND
db -1
db -1 ; end
GirafarigEggMoves:
db TAKE_DOWN
@ -629,14 +628,14 @@ GirafarigEggMoves:
db FORESIGHT
db FUTURE_SIGHT
db BEAT_UP
db -1
db -1 ; end
PinecoEggMoves:
db REFLECT
db PIN_MISSILE
db FLAIL
db SWIFT
db -1
db -1 ; end
DunsparceEggMoves:
db BIDE
@ -644,14 +643,14 @@ DunsparceEggMoves:
db ROCK_SLIDE
db BITE
db RAGE
db -1
db -1 ; end
GligarEggMoves:
db METAL_CLAW
db WING_ATTACK
db RAZOR_WIND
db COUNTER
db -1
db -1 ; end
SnubbullEggMoves:
db METRONOME
@ -662,24 +661,24 @@ SnubbullEggMoves:
db HEAL_BELL
db LICK
db LEER
db -1
db -1 ; end
QwilfishEggMoves:
db FLAIL
db HAZE
db BUBBLEBEAM
db SUPERSONIC
db -1
db -1 ; end
ShuckleEggMoves:
db SWEET_SCENT
db -1
db -1 ; end
HeracrossEggMoves:
db HARDEN
db BIDE
db FLAIL
db -1
db -1 ; end
SneaselEggMoves:
db COUNTER
@ -687,7 +686,7 @@ SneaselEggMoves:
db FORESIGHT
db REFLECT
db BITE
db -1
db -1 ; end
TeddiursaEggMoves:
db CRUNCH
@ -695,11 +694,11 @@ TeddiursaEggMoves:
db SEISMIC_TOSS
db FOCUS_ENERGY
db COUNTER
db -1
db -1 ; end
SlugmaEggMoves:
db ACID_ARMOR
db -1
db -1 ; end
SwinubEggMoves:
db TAKE_DOWN
@ -707,7 +706,7 @@ SwinubEggMoves:
db BODY_SLAM
db ROCK_SLIDE
db ANCIENTPOWER
db -1
db -1 ; end
CorsolaEggMoves:
db ROCK_SLIDE
@ -715,7 +714,7 @@ CorsolaEggMoves:
db SCREECH
db MIST
db AMNESIA
db -1
db -1 ; end
RemoraidEggMoves:
db AURORA_BEAM
@ -723,7 +722,7 @@ RemoraidEggMoves:
db SUPERSONIC
db HAZE
db SCREECH
db -1
db -1 ; end
DelibirdEggMoves:
db AURORA_BEAM
@ -731,20 +730,20 @@ DelibirdEggMoves:
db FUTURE_SIGHT
db SPLASH
db RAPID_SPIN
db -1
db -1 ; end
MantineEggMoves:
db TWISTER
db HYDRO_PUMP
db HAZE
db SLAM
db -1
db -1 ; end
SkarmoryEggMoves:
db DRILL_PECK
db PURSUIT
db WHIRLWIND
db -1
db -1 ; end
HoundourEggMoves:
db FIRE_SPIN
@ -754,13 +753,13 @@ HoundourEggMoves:
db SPITE
db REVERSAL
db BEAT_UP
db -1
db -1 ; end
PhanpyEggMoves:
db FOCUS_ENERGY
db BODY_SLAM
db ANCIENTPOWER
db -1
db -1 ; end
StantlerEggMoves:
db REFLECT
@ -768,39 +767,39 @@ StantlerEggMoves:
db DISABLE
db LIGHT_SCREEN
db BITE
db -1
db -1 ; end
TyrogueEggMoves:
db RAPID_SPIN
db HI_JUMP_KICK
db MACH_PUNCH
db MIND_READER
db -1
db -1 ; end
SmoochumEggMoves:
db LOVELY_KISS
db MEDITATE
db -1
db -1 ; end
ElekidEggMoves:
db KARATE_CHOP
db BARRIER
db ROLLING_KICK
db MEDITATE
db -1
db -1 ; end
MagbyEggMoves:
db KARATE_CHOP
db MEGA_PUNCH
db BARRIER
db SCREECH
db -1
db -1 ; end
MiltankEggMoves:
db PRESENT
db REVERSAL
db SEISMIC_TOSS
db -1
db -1 ; end
LarvitarEggMoves:
db PURSUIT
@ -808,7 +807,7 @@ LarvitarEggMoves:
db OUTRAGE
db FOCUS_ENERGY
db ANCIENTPOWER
db -1
db -1 ; end
NoEggMoves:
db -1
db -1 ; end

View File

@ -3,10 +3,6 @@ INCLUDE "constants.asm"
SECTION "Evolutions and Attacks", ROMX
INCLUDE "data/pokemon/evos_attacks_pointers.asm"
EvosAttacks::
; Evos+attacks data structure:
; - Evolution methods:
; * db EVOLVE_LEVEL, level, species
@ -19,6 +15,8 @@ EvosAttacks::
; * db level, move
; - db 0 ; no more level-up moves
INCLUDE "data/pokemon/evos_attacks_pointers.asm"
BulbasaurEvosAttacks:
db EVOLVE_LEVEL, 16, IVYSAUR
db 0 ; no more evolutions
@ -838,7 +836,7 @@ AbraEvosAttacks:
db 0 ; no more level-up moves
KadabraEvosAttacks:
db EVOLVE_TRADE, $ff, ALAKAZAM
db EVOLVE_TRADE, -1, ALAKAZAM
db 0 ; no more evolutions
db 1, TELEPORT
db 1, KINESIS
@ -882,7 +880,7 @@ MachopEvosAttacks:
db 0 ; no more level-up moves
MachokeEvosAttacks:
db EVOLVE_TRADE, $ff, MACHAMP
db EVOLVE_TRADE, -1, MACHAMP
db 0 ; no more evolutions
db 1, LOW_KICK
db 1, LEER
@ -996,7 +994,7 @@ GeodudeEvosAttacks:
db 0 ; no more level-up moves
GravelerEvosAttacks:
db EVOLVE_TRADE, $ff, GOLEM
db EVOLVE_TRADE, -1, GOLEM
db 0 ; no more evolutions
db 1, TACKLE
db 1, DEFENSE_CURL
@ -1199,6 +1197,7 @@ GrimerEvosAttacks:
MukEvosAttacks:
db 0 ; no more evolutions
; moves are not sorted by level
db 1, POISON_GAS
db 1, POUND
db 1, HARDEN
@ -1248,7 +1247,7 @@ GastlyEvosAttacks:
db 0 ; no more level-up moves
HaunterEvosAttacks:
db EVOLVE_TRADE, $ff, GENGAR
db EVOLVE_TRADE, -1, GENGAR
db 0 ; no more evolutions
db 1, HYPNOSIS
db 1, LICK

View File

@ -1,8 +1,6 @@
; Pointer table for evolutions and attacks.
; Evolutions and attacks are grouped together since they're both checked at level-up.
; These are grouped together since they're both checked at level-up.
EvosAttacksPointers:: ; 0x425b1
EvosAttacksPointers::
dw BulbasaurEvosAttacks
dw IvysaurEvosAttacks
dw VenusaurEvosAttacks

View File

@ -1,8 +1,17 @@
PokemonPalettes:
; entries correspond to Pokémon species, two apiece
; Each front.gbcpal is generated from the corresponding .png, and
; only the middle two colors are included, not black or white.
; Shiny palettes are defined directly, not generated.
; 000
RGB 30, 22, 17
RGB 16, 14, 19
; 000 shiny
RGB 30, 22, 17
RGB 16, 14, 19
BulbasaurPalette: INCLUDE "gfx/pokemon/bulbasaur/normal.pal"
BulbasaurShinyPalette: INCLUDE "gfx/pokemon/bulbasaur/shiny.pal"
IvysaurPalette: INCLUDE "gfx/pokemon/ivysaur/normal.pal"
@ -505,19 +514,31 @@ Ho_ohPalette: INCLUDE "gfx/pokemon/ho_oh/normal.pal"
Ho_ohShinyPalette: INCLUDE "gfx/pokemon/ho_oh/shiny.pal"
CelebiPalette: INCLUDE "gfx/pokemon/celebi/normal.pal"
CelebiShinyPalette: INCLUDE "gfx/pokemon/celebi/shiny.pal"
; 252
RGB 30, 26, 11
RGB 23, 16, 0
RGB 23, 16, 00
; 252 shiny
RGB 30, 26, 11
RGB 23, 16, 0
RGB 23, 16, 00
; egg
RGB 30, 26, 11
RGB 23, 16, 0
RGB 23, 16, 00
; egg shiny
RGB 30, 26, 11
RGB 23, 16, 0
RGB 23, 16, 00
; 254
RGB 30, 26, 11
RGB 23, 16, 0
RGB 23, 16, 00
; 254 shiny
RGB 30, 26, 11
RGB 23, 16, 0
RGB 23, 16, 00
; 255
RGB 23, 23, 23
RGB 17, 17, 17
; 255 shiny
RGB 23, 23, 23
RGB 17, 17, 17

View File

@ -1,4 +1,7 @@
; Pics are defined in gfx/pics_gold.asm and gfx/pics_silver.asm
PokemonPicPointers::
; entries correspond to Pokémon species, two apiece
dba_pic BulbasaurFrontpic
dba_pic BulbasaurBackpic
dba_pic IvysaurFrontpic

View File

@ -1,12 +1,11 @@
TrainerPalettes:
; entries correspond to trainer classes
PlayerPalette:
; The player's palette
; RGB 25, 18, 12
; RGB 22, 09, 05
INCLUDE "gfx/trainers/cal.pal"
; Each .gbcpal is generated from the corresponding .png, and
; only the middle two colors are included, not black or white.
PlayerPalette: ; Chris uses the same colors as Cal
INCLUDE "gfx/trainers/cal.pal"
FalknerPalette: INCLUDE "gfx/trainers/falkner.pal"
WhitneyPalette: INCLUDE "gfx/trainers/whitney.pal"
BugsyPalette: INCLUDE "gfx/trainers/bugsy.pal"

View File

@ -692,7 +692,6 @@ AI_Switch:
ld a, [wLinkMode]
cp LINK_COLOSSEUM
ret z
scf
ret

View File

@ -1,5 +1,6 @@
AIScoring: ; used only for BANK(AIScoring)
AI_Basic:
; Don't do anything redundant:
; -Using status-only moves if the player can't be statused
@ -458,15 +459,15 @@ AI_Smart_LockOn:
.asm_38826
ld a, [wPlayerEvaLevel]
cp $a
cp BASE_STAT_LEVEL + 3
jr nc, .asm_3886c
cp $8
cp BASE_STAT_LEVEL + 1
jr nc, .asm_38867
ld a, [wEnemyAccLevel]
cp $5
cp BASE_STAT_LEVEL - 2
jr c, .asm_3886c
cp $7
cp BASE_STAT_LEVEL
jr c, .asm_38867
ld hl, wEnemyMonMoves
@ -559,7 +560,7 @@ AI_Smart_Selfdestruct:
; If enemy's HP is between 25% and 50%,
; over 90% chance to greatly discourage this move.
call Random
cp 9 percent - 2
cp 8 percent
ret c
.asm_388a7
@ -583,7 +584,7 @@ AI_Smart_DreamEater:
AI_Smart_EvasionUp:
; Dismiss this move if enemy's evasion can't raise anymore.
ld a, [wEnemyEvaLevel]
cp $d
cp MAX_STAT_LEVEL
jp nc, AIDiscourageMove
; If enemy's HP is full...
@ -694,12 +695,12 @@ AI_Smart_AlwaysHit:
; ...enemy's accuracy level has been lowered three or more stages
ld a, [wEnemyAccLevel]
cp $5
cp BASE_STAT_LEVEL - 2
jr c, .asm_38935
; ...or player's evasion level has been raised three or more stages.
ld a, [wPlayerEvaLevel]
cp $a
cp BASE_STAT_LEVEL + 3
ret c
.asm_38935
@ -859,12 +860,12 @@ AI_Smart_ResetStats:
; 85% chance to encourage this move if any of enemy's stat levels is lower than -2.
push hl
ld hl, wEnemyAtkLevel
ld c, $8
ld c, NUM_LEVEL_STATS
.asm_389dc
dec c
jr z, .asm_389e6
ld a, [hli]
cp $5
cp BASE_STAT_LEVEL - 2
jr c, .asm_389f3
jr .asm_389dc
@ -876,7 +877,7 @@ AI_Smart_ResetStats:
dec c
jr z, .asm_389fc
ld a, [hli]
cp $a
cp BASE_STAT_LEVEL + 3
jr c, .asm_389eb
.asm_389f3
@ -1032,7 +1033,7 @@ AI_Smart_Unused2B:
.asm_38a8b
push hl
ld hl, wPlayerUsedMoves
ld c, 4
ld c, NUM_MOVES
.asm_38a91
ld a, [hli]
@ -1095,12 +1096,12 @@ AI_Smart_SpDefenseUp2:
; Discourage this move if enemy's special defense level is higher than +3.
ld a, [wEnemySDefLevel]
cp $b
cp BASE_STAT_LEVEL + 4
jr nc, .asm_38af1
; 80% chance to greatly encourage this move if
; enemy's Special Defense level is lower than +2, and the player is of a special type.
cp $9
cp BASE_STAT_LEVEL + 2
ret nc
ld a, [wBattleMonType1]
@ -1239,11 +1240,11 @@ AI_Smart_Rage:
; Encourage this move based on Rage's counter.
.asm_38b6d
ld a, [wEnemyRageCounter]
cp $2
cp 2
ret c
dec [hl]
ld a, [wEnemyRageCounter]
cp $3
cp 3
ret c
dec [hl]
ret
@ -1315,7 +1316,7 @@ AI_Smart_Mimic:
AI_Smart_Counter:
push hl
ld hl, wPlayerUsedMoves
ld c, 4
ld c, NUM_MOVES
ld b, 0
.asm_38bda
@ -1454,8 +1455,8 @@ AI_Smart_SleepTalk:
; Greatly discourage this move otherwise.
ld a, [wEnemyMonStatus]
and $7
cp $1
and SLP
cp 1
jr z, .asm_38ca8
dec [hl]
@ -1497,7 +1498,7 @@ AI_Smart_Spite:
.asm_38cc8
push hl
ld b, a
ld c, 4
ld c, NUM_MOVES
ld hl, wBattleMonMoves
ld de, wBattleMonPP
@ -1516,9 +1517,9 @@ AI_Smart_Spite:
.asm_38cdc
pop hl
ld a, [de]
cp $6
cp 6
jr c, .asm_38cee
cp $f
cp 15
jr nc, .asm_38cec
call Random
@ -1815,9 +1816,9 @@ AI_Smart_Curse:
jr nc, .asm_38e72
ld a, [wEnemyAtkLevel]
cp $b
cp BASE_STAT_LEVEL + 4
jr nc, .asm_38e72
cp $9
cp BASE_STAT_LEVEL + 2
ret nc
ld a, [wBattleMonType1]
@ -1915,10 +1916,10 @@ AI_Smart_Protect:
AI_Smart_Foresight:
ld a, [wEnemyAccLevel]
cp $5
cp BASE_STAT_LEVEL - 2
jr c, .asm_38f02
ld a, [wPlayerEvaLevel]
cp $a
cp BASE_STAT_LEVEL + 3
jr nc, .asm_38f02
ld a, [wBattleMonType1]
@ -2107,10 +2108,10 @@ AI_Smart_Rollout:
jr nc, .asm_38fe1
ld a, [wEnemyAccLevel]
cp 7
cp BASE_STAT_LEVEL
jr c, .asm_38fe1
ld a, [wPlayerEvaLevel]
cp 8
cp BASE_STAT_LEVEL + 1
jr nc, .asm_38fe1
; Otherwise, 80% chance to greatly encourage this move.
@ -2378,7 +2379,7 @@ AI_Smart_BellyDrum:
; Else, discourage this move if enemy's HP is not full.
ld a, [wEnemyAtkLevel]
cp $a
cp BASE_STAT_LEVEL + 3
jr nc, .asm_3910e
call AICheckEnemyMaxHP
@ -2433,15 +2434,15 @@ AI_Smart_PsychUp:
; This block will always ret, since the comparisons to wPlayerEvaLevel capture every possible value
ld a, [wPlayerAccLevel]
cp $6
cp BASE_STAT_LEVEL - 1
ret c
ld a, [wPlayerEvaLevel]
cp $9
cp BASE_STAT_LEVEL + 2
ret c
ld a, [wPlayerEvaLevel]
cp $8
cp BASE_STAT_LEVEL + 1
ret nc
; unused
@ -2458,8 +2459,8 @@ AI_Smart_PsychUp:
AI_Smart_MirrorCoat:
push hl
ld hl, wPlayerUsedMoves
ld c, $4
ld b, $0
ld c, NUM_MOVES
ld b, 0
.asm_39159
ld a, [hli]

View File

@ -140,11 +140,13 @@ StepHappiness::
ret
DayCareStep::
; Raise the experience of Day-Care Pokémon every step cycle.
ld a, [wDayCareMan]
bit DAYCAREMAN_HAS_MON_F, a
jr z, .day_care_lady
ld a, [wBreedMon1Level]
ld a, [wBreedMon1Level] ; level
cp MAX_LEVEL
jr nc, .day_care_lady
ld hl, wBreedMon1Exp + 2 ; exp
@ -196,7 +198,7 @@ DayCareStep::
callfar CheckBreedmonCompatibility
ld a, [wBreedingCompatibility]
cp 230
ld b, 32 percent - 1
ld b, 31 percent + 1
jr nc, .okay
ld a, [wBreedingCompatibility]
cp 170

View File

@ -26,8 +26,8 @@ GivePokerusAndConvertBerries:
and a
ret nz
ldh a, [hRandomSub]
cp $3
ret nc ; 3/65536 chance (00 00, 00 01 or 00 02)
cp 3
ret nc ; 3/65536 chance (00 00, 00 01 or 00 02)
ld a, [wPartyCount]
ld b, a
.randomMonSelectLoop
@ -36,11 +36,11 @@ GivePokerusAndConvertBerries:
cp b
jr nc, .randomMonSelectLoop
ld hl, wPartyMon1PokerusStatus
call GetPartyLocation ; get pokerus byte of random mon
call GetPartyLocation ; get pokerus byte of random mon
ld a, [hl]
and $f0
ret nz ; if it already has pokerus, do nothing
.randomPokerusLoop ; Simultaneously sample the strain and duration
ret nz ; if it already has pokerus, do nothing
.randomPokerusLoop ; Simultaneously sample the strain and duration
call Random
and a
jr z, .randomPokerusLoop
@ -62,20 +62,20 @@ GivePokerusAndConvertBerries:
.TrySpreadPokerus:
call Random
cp 33 percent + 1
ret nc ; 1/3 chance
ret nc ; 1/3 chance
ld a, [wPartyCount]
cp 1
ret z ; only one mon, nothing to do
ret z ; only one mon, nothing to do
ld c, [hl]
ld a, b
cp 2
jr c, .checkPreviousMonsLoop ; no more mons after this one, go backwards
jr c, .checkPreviousMonsLoop ; no more mons after this one, go backwards
call Random
cp 50 percent + 1
jr c, .checkPreviousMonsLoop ; 1/2 chance, go backwards
jr c, .checkPreviousMonsLoop ; 1/2 chance, go backwards
.checkFollowingMonsLoop
add hl, de
ld a, [hl]
@ -83,8 +83,8 @@ GivePokerusAndConvertBerries:
jr z, .infectMon
ld c, a
and $3
ret z ; if mon has cured pokerus, stop searching
dec b ; go on to next mon
ret z ; if mon has cured pokerus, stop searching
dec b ; go on to next mon
ld a, b
cp 1
jr nz, .checkFollowingMonsLoop ; no more mons left
@ -93,7 +93,7 @@ GivePokerusAndConvertBerries:
.checkPreviousMonsLoop
ld a, [wPartyCount]
cp b
ret z ; no more mons
ret z ; no more mons
ld a, l
sub e
ld l, a
@ -105,8 +105,8 @@ GivePokerusAndConvertBerries:
jr z, .infectMon
ld c, a
and $3
ret z ; if mon has cured pokerus, stop searching
inc b ; go on to next mon
ret z ; if mon has cured pokerus, stop searching
inc b ; go on to next mon
jr .checkPreviousMonsLoop
.infectMon
@ -128,7 +128,7 @@ ConvertBerriesToBerryJuice:
bit STATUSFLAGS2_REACHED_GOLDENROD_F, [hl]
ret z
call Random
cp 6 percent + 1 ; 1/16 chance
cp 1 out_of 16 ; 6.25% chance
ret nc
ld hl, wPartyMons
ld a, [wPartyCount]

View File

@ -2,7 +2,7 @@ MANIA_OT_ID EQU 00518
GiveShuckle:
; Adding to the party.
xor a
xor a ; PARTYMON
ld [wMonType], a
; Level 15 Shuckle.
@ -63,6 +63,7 @@ GiveShuckle:
SpecialShuckleOT:
db "MANIA@"
SpecialShuckleNick:
db "SHUCKIE@"

View File

@ -458,3 +458,6 @@ TrainerHouse:
ld a, [sMysteryGiftTrainerHouseFlag]
ld [wScriptVar], a
jp CloseSRAM
; unused
nop

View File

@ -61,11 +61,7 @@ GetWhiteoutSpawn:
ld d, a
ld a, [wLastSpawnMapNumber]
ld e, a
ld a, $05
ld hl, $5465
rst $08
farcall IsSpawnPoint
ld a, c
jr c, .yes
xor a ; SPAWN_HOME

View File

@ -1,6 +1,3 @@
DummyPredef1:
ret
WriteOAMDMACodeToHRAM::
ld c, LOW(hTransferVirtualOAM)
ld b, .PushOAMEnd - .PushOAM

View File

@ -872,7 +872,7 @@ MoonBallMultiplier:
pop bc
push bc
ld a, BANK(EvosAttacksPointers)
ld a, BANK("Evolutions and Attacks")
call GetFarByte
cp EVOLVE_ITEM
pop bc
@ -886,7 +886,7 @@ MoonBallMultiplier:
; No Pokémon evolve with Burn Heal,
; so Moon Balls always have a catch rate of 1×.
push bc
ld a, BANK(EvosAttacksPointers)
ld a, BANK("Evolutions and Attacks")
call GetFarByte
cp MOON_STONE_RED ; BURN_HEAL
pop bc

View File

@ -1,107 +1,46 @@
CanLearnTMHMMove: ; 11a25 (4:5a25)
CanLearnTMHMMove:
ld a, [wCurPartySpecies]
ld [wCurSpecies], a
call GetBaseData
ld hl, wd138
ld hl, wBaseTMHM
push hl
ld a, [wPutativeTMHMMove]
ld b, a
ld c, $0
ld c, 0
ld hl, TMHMMoves
.asm_11a3b
.loop
ld a, [hli]
and a
jr z, .asm_11a52
jr z, .end
cp b
jr z, .asm_11a45
inc c
jr .asm_11a3b
jr .loop
.asm_11a45
pop hl
ld b, CHECK_FLAG
push de
ld d, $0
ld d, 0
predef SmallFarFlagAction
pop de
ret
.asm_11a52
.end
pop hl
ld c, $0
ld c, 0
ret
GetTMHMMove: ; 11a56 (4:5a56)
ld a, [wd151]
GetTMHMMove:
ld a, [wTempTMHM]
dec a
ld hl, TMHMMoves
ld b, $0
ld b, 0
ld c, a
add hl, bc
ld a, [hl]
ld [wd151], a
ld [wTempTMHM], a
ret
TMHMMoves:
db DYNAMICPUNCH
db HEADBUTT
db CURSE
db ROLLOUT
db ROAR
db TOXIC
db ZAP_CANNON
db ROCK_SMASH
db PSYCH_UP
db HIDDEN_POWER
db SUNNY_DAY
db SWEET_SCENT
db SNORE
db BLIZZARD
db HYPER_BEAM
db ICY_WIND
db PROTECT
db RAIN_DANCE
db GIGA_DRAIN
db ENDURE
db FRUSTRATION
db SOLARBEAM
db IRON_TAIL
db DRAGONBREATH
db THUNDER
db EARTHQUAKE
db RETURN
db DIG
db PSYCHIC_M
db SHADOW_BALL
db MUD_SLAP
db DOUBLE_TEAM
db ICE_PUNCH
db SWAGGER
db SLEEP_TALK
db SLUDGE_BOMB
db SANDSTORM
db FIRE_BLAST
db SWIFT
db DEFENSE_CURL
db THUNDERPUNCH
db DREAM_EATER
db DETECT
db REST
db ATTRACT
db THIEF
db STEEL_WING
db FIRE_PUNCH
db FURY_CUTTER
db NIGHTMARE
db CUT
db FLY
db SURF
db STRENGTH
db FLASH
db WHIRLPOOL
db WATERFALL
db 0
db 0
db 0
db 0
INCLUDE "data/moves/tmhm_moves.asm"

View File

@ -22,3 +22,6 @@ PlaceWaitingText::
.Waiting:
db "Waiting...!@"
DummyPredef1:
ret

View File

@ -1,11 +1,10 @@
_Multiply:: ; 67bd
_Multiply::
; hMultiplier is one byte.
ld a, 8
ld b, a
xor a
ldh [hProduct], a
ldh [hMultiplicand - 1], a
ldh [hMathBuffer + 1], a
ldh [hMathBuffer + 2], a
ldh [hMathBuffer + 3], a
@ -37,7 +36,7 @@ _Multiply:: ; 67bd
ldh a, [hMathBuffer + 1]
ld c, a
ldh a, [hProduct]
ldh a, [hMultiplicand - 1]
adc c
ldh [hMathBuffer + 1], a
@ -59,9 +58,9 @@ _Multiply:: ; 67bd
rla
ldh [hMultiplicand + 0], a
ldh a, [hProduct]
ldh a, [hMultiplicand - 1]
rla
ldh [hProduct], a
ldh [hMultiplicand - 1], a
jr .loop
@ -80,7 +79,7 @@ _Multiply:: ; 67bd
ret
_Divide:: ; 681d
_Divide::
xor a
ldh [hMathBuffer + 0], a
ldh [hMathBuffer + 1], a
@ -173,18 +172,18 @@ _Divide:: ; 681d
.done
ldh a, [hDividend + 1]
ldh [hDivisor], a
ldh [hRemainder], a
ldh a, [hMathBuffer + 4]
ldh [hDividend + 3], a
ldh [hQuotient + 3], a
ldh a, [hMathBuffer + 3]
ldh [hDividend + 2], a
ldh [hQuotient + 2], a
ldh a, [hMathBuffer + 2]
ldh [hDividend + 1], a
ldh [hQuotient + 1], a
ldh a, [hMathBuffer + 1]
ldh [hDividend + 0], a
ldh [hQuotient + 0], a
ret

View File

@ -1,40 +1,7 @@
_Sine:: ; 8ac9 (2:4ac9)
_Sine::
; a = d * sin(e * pi/256)
ld a, e
and $3f
cp $20
jr nc, .negative
call .GetSine
ld a, h
ret
.negative
and $1f
call .GetSine
ld a, h
xor $ff
inc a
ret
.GetSine: ; 8adf (2:4adf)
ld e, a
ld a, d
ld d, $0
ld hl, .SineWave
add hl, de
add hl, de
ld e, [hl]
inc hl
ld d, [hl]
ld hl, $0
.loop
srl a
jr nc, .no_add
add hl, de
.no_add
sla e
rl d
and a
jr nz, .loop
ret
calc_sine_wave .SineWave
.SineWave:
sine_table $100

View File

@ -72,7 +72,7 @@ TitleScreen:
; Let LCD Stat know we're messing around with SCX
ld a, LOW(rSCX)
ldh [hLCDCPointer], a
ld b, SCGB_0C
ld b, SCGB_GS_TITLE_SCREEN
call GetSGBLayout
call Function6341
ld de, MUSIC_TITLE

View File

@ -274,7 +274,7 @@ WillObjectBumpIntoSomeoneElse:
ld e, [hl]
jr IsNPCAtCoord
Function70f4:
Unreferenced_Function70f4:
ldh a, [hMapObjectIndexBuffer]
call GetObjectStruct
call .CheckWillBeFacingNPC
@ -473,7 +473,7 @@ IsObjectMovingOffEdgeOfScreen:
scf
ret
Function71f2:
Unreferenced_Function71f2:
ld a, [wPlayerStandingMapX]
ld d, a
ld a, [wPlayerStandingMapY]

View File

@ -577,11 +577,14 @@ DoPlayerMovement::
; Standing
jr .update
.d_down add hl, de
.d_up add hl, de
.d_left add hl, de
.d_right add hl, de
.d_down
add hl, de
.d_up
add hl, de
.d_left
add hl, de
.d_right
add hl, de
.update
ld a, [hli]
ld [wWalkingDirection], a

View File

@ -107,8 +107,9 @@ RefreshPlayerCoords:
ld hl, wPlayerLastMapY
ld [hl], e
ld e, a
; the next three lines are useless
ld a, [wObjectFollow_Leader]
cp $0
cp PLAYER
ret nz
ret
@ -509,7 +510,7 @@ CopyTempObjectToObjectStruct:
ld [hl], a
ret
TrainerWalkToPlayer::
TrainerWalkToPlayer:
ldh a, [hLastTalked]
call InitMovementBuffer
ld a, movement_step_sleep

View File

@ -92,8 +92,8 @@ CheckDailyResetTimer::
ret nc
xor a
ld hl, wDailyFlags1
ld [hli], a
ld [hl], a
ld [hli], a ; wDailyFlags1
ld [hl], a ; wDailyFlags2
jr RestartDailyResetTimer
StartBugContestTimer:

View File

@ -462,18 +462,18 @@ GetEggMove:
ld a, BANK(EvosAttacksPointers)
call GetFarHalfword
.loop3
ld a, BANK(EvosAttacksPointers)
ld a, BANK("Evolutions and Attacks")
call GetFarByte
inc hl
and a
jr nz, .loop3
.loop4
ld a, BANK(EvosAttacksPointers)
ld a, BANK("Evolutions and Attacks")
call GetFarByte
and a
jr z, .inherit_tmhm
inc hl
ld a, BANK(EvosAttacksPointers)
ld a, BANK("Evolutions and Attacks")
call GetFarByte
ld b, a
ld a, [de]

View File

@ -1,32 +1,52 @@
CorrectNickErrors::
; error-check monster nick before use
; must be a peace offering to gamesharkers
; input: de = nick location
push bc
push de
ld b, MON_NAME_LENGTH
.checkchar
; end of nick?
ld a, [de]
cp "@"
jr z, .done
cp "@" ; terminator
jr z, .end
; check if this char is a text command
ld hl, .textcommands
dec hl
.loop
; next entry
inc hl
; reached end of commands table?
ld a, [hl]
cp $ff
jr z, .next
cp -1
jr z, .done
; is the current char between this value (inclusive)...
ld a, [de]
cp [hl]
inc hl
jr c, .loop
; ...and this one?
cp [hl]
jr nc, .loop
; replace it with a "?"
ld a, "?"
ld [de], a
jr .loop
.next
.done
; next char
inc de
; reached end of nick without finding a terminator?
dec b
jr nz, .checkchar
; change nick to "?@"
pop de
push de
ld a, "?"
@ -34,7 +54,8 @@ CorrectNickErrors::
inc de
ld a, "@"
ld [de], a
.done
.end
; if the nick has any errors at this point it's out of our hands
pop de
pop bc
ret

View File

@ -1456,7 +1456,7 @@ CalcMonStatC:
add hl, bc
.sqrt_loop
xor a
ldh [hMultiplicand], a
ldh [hMultiplicand + 0], a
ldh [hMultiplicand + 1], a
inc b
ld a, b

View File

@ -1,6 +1,3 @@
Functionc660:
nop
SmallFarFlagAction:
; Perform action b on bit c in flag array hl.
; If checking a flag, check flag array d:hl unless d is 0.

View File

@ -1,6 +1,6 @@
_SwapTextboxPalettes::
hlcoord 0, 0
ld de, wAttrmap
decoord 0, 0, wAttrmap
ld b, SCREEN_HEIGHT
.loop
ld c, SCREEN_WIDTH

View File

@ -1,4 +1,13 @@
tilepal: MACRO
; pals
rept _NARG / 2
dn PAL_BG_\2, PAL_BG_\1
shift
shift
endr
endm
INCLUDE "gfx/tilesets/palette_maps.asm"
Unknown85d7:
ds 26, PAL_BG_ROOF
ds 26, $06 ; unused

View File

@ -12,20 +12,15 @@ INCLUDE "macros/scripts/events.asm"
INCLUDE "macros/scripts/text.asm"
INCLUDE "macros/scripts/movement.asm"
INCLUDE "macros/scripts/battle_commands.asm"
INCLUDE "macros/scripts/battle_anims.asm"
INCLUDE "macros/scripts/trade_anims.asm"
INCLUDE "macros/move_anim.asm"
INCLUDE "macros/pic.asm"
INCLUDE "macros/pals.asm"
INCLUDE "macros/legacy.asm"
dr: macro
IF DEF(_GOLD)
INCBIN "baserom-gold.gbc", \1, \2 - \1
ELSE
IF DEF(_SILVER)
ELIF DEF(_SILVER)
INCBIN "baserom-silver.gbc", \1, \2 - \1
ENDC
ENDC
ENDM

View File

@ -1,7 +1,30 @@
; Value macros
; Many arbitrary percentages are simple base-10 or base-16 values:
; - 10 = 4 percent
; - 15 = 6 percent
; - $10 = 6 percent + 1 = 7 percent - 1
; - 20 = 8 percent
; - 25 = 10 percent
; - 30 = 12 percent
; - 40 = 16 percent
; - 50 = 20 percent - 1
; - 60 = 24 percent - 1
; - 70 = 28 percent - 1
; - 80 = 31 percent + 1 = 32 percent - 1
; - 85 = 33 percent + 1 = 34 percent - 1
; - 100 = 39 percent + 1 = 40 percent - 2
; - 120 = 47 percent + 1
; - 123 = 49 percent - 1
; - 160 = 63 percent
; - 180 = 71 percent - 1 = 70 percent + 2
; - 200 = 79 percent - 1
; - 230 = 90 percent + 1
percent EQUS "* $ff / 100"
; e.g. 1 out_of 2 == 50 percent + 1 == $80
out_of EQUS "* $100 /"
; Constant data (db, dw, dl) macros
dwb: MACRO

View File

@ -1,293 +0,0 @@
anim_wait: macro
if \1 >= $d0
flip out
endc
db \1
endm
enum_start $d0
enum anim_obj_command ; d0
anim_obj: macro
db anim_obj_command
db \1 ; object
db \2 ; x
db \3 ; y
db \4 ; param
endm
enum anim_1gfx_command ; d1
anim_1gfx: macro
db anim_1gfx_command
db \1 ; gfx1
endm
enum anim_2gfx_command ; d2
anim_2gfx: macro
db anim_2gfx_command
db \1 ; gfx1
db \2 ; gfx2
endm
enum anim_3gfx_command ; d3
anim_3gfx: macro
db anim_3gfx_command
db \1 ; gfx1
db \2 ; gfx2
db \3 ; gfx3
endm
enum anim_4gfx_command ; d4
anim_4gfx: macro
db anim_4gfx_command
db \1 ; gfx1
db \2 ; gfx2
db \3 ; gfx3
db \4 ; gfx4
endm
enum anim_5gfx_command ; d5
anim_5gfx: macro
db anim_5gfx_command
db \1 ; gfx1
db \2 ; gfx2
db \3 ; gfx3
db \4 ; gfx4
db \5 ; gfx5
endm
enum anim_incobj_command ; d6
anim_incobj: macro
db anim_incobj_command
db \1 ; id
endm
enum anim_setobj_command ; d7
anim_setobj: macro
db anim_setobj_command
db \1 ; id
db \2 ; obj
endm
enum anim_incbgeffect_command ; d8
anim_incbgeffect: macro
db anim_incbgeffect_command
db \1 ; effect
endm
enum anim_battlergfx_2row_command ; d9
anim_battlergfx_2row: macro
db anim_battlergfx_2row_command
endm
enum anim_battlergfx_1row_command ; da
anim_battlergfx_1row: macro
db anim_battlergfx_1row_command
endm
enum anim_checkpokeball_command ; db
anim_checkpokeball: macro
db anim_checkpokeball_command
endm
enum anim_transform_command ; dc
anim_transform: macro
db anim_transform_command
endm
enum anim_raisesub_command ; dd
anim_raisesub: macro
db anim_raisesub_command
endm
enum anim_dropsub_command ; de
anim_dropsub: macro
db anim_dropsub_command
endm
enum anim_resetobp0_command ; df
anim_resetobp0: macro
db anim_resetobp0_command
endm
enum anim_sound_command ; e0
anim_sound: macro
db anim_sound_command
db (\1 << 2) | \2 ; duration, tracks
db \3 ; id
endm
enum anim_cry_command ; e1
anim_cry: macro
db anim_cry_command
db \1 ; pitch
endm
enum anim_minimizeopp_command ; e2
anim_minimizeopp: macro
db anim_minimizeopp_command
endm
enum anim_oamon_command ; e3
anim_oamon: macro
db anim_oamon_command
endm
enum anim_oamoff_command ; e4
anim_oamoff: macro
db anim_oamoff_command
endm
enum anim_clearobjs_command ; e5
anim_clearobjs: macro
db anim_clearobjs_command
endm
enum anim_beatup_command ; e6
anim_beatup: macro
db anim_beatup_command
endm
enum anim_0xe7_command ; e7
anim_0xe7: macro
db anim_0xe7_command
endm
enum anim_updateactorpic_command ; e8
anim_updateactorpic: macro
db anim_updateactorpic_command
endm
enum anim_minimize_command ; e9
anim_minimize: macro
db anim_minimize_command
endm
enum anim_0xea_command ; ea
anim_0xea: macro
db anim_0xea_command
endm
enum anim_0xeb_command ; eb
anim_0xeb: macro
db anim_0xeb_command
endm
enum anim_0xec_command ; ec
anim_0xec: macro
db anim_0xec_command
endm
enum anim_0xed_command ; ed
anim_0xed: macro
db anim_0xed_command
endm
enum anim_if_param_and_command ; ee
anim_if_param_and: macro
db anim_if_param_and_command
db \1 ; value
dw \2 ; address
endm
enum anim_jumpuntil_command ; ef
anim_jumpuntil: macro
db anim_jumpuntil_command
dw \1 ; address
endm
enum anim_bgeffect_command ; f0
anim_bgeffect: macro
db anim_bgeffect_command
db \1 ; effect
db \2 ; unknown
db \3 ; unknown
db \4 ; unknown
endm
enum anim_bgp_command ; f1
anim_bgp: macro
db anim_bgp_command
db \1 ; colors
endm
enum anim_obp0_command ; f2
anim_obp0: macro
db anim_obp0_command
db \1 ; colors
endm
enum anim_obp1_command ; f3
anim_obp1: macro
db anim_obp1_command
db \1 ; colors
endm
enum anim_keepsprites_command ; f4
anim_keepsprites: macro
db anim_keepsprites_command
endm
enum anim_0xf5_command ; f5
anim_0xf5: macro
db anim_0xf5_command
endm
enum anim_0xf6_command ; f6
anim_0xf6: macro
db anim_0xf6_command
endm
enum anim_0xf7_command ; f7
anim_0xf7: macro
db anim_0xf7_command
endm
enum anim_if_param_equal_command ; f8
anim_if_param_equal: macro
db anim_if_param_equal_command
db \1 ; value
dw \2 ; address
endm
enum anim_setvar_command ; f9
anim_setvar: macro
db anim_setvar_command
db \1 ; value
endm
enum anim_incvar_command ; fa
anim_incvar: macro
db anim_incvar_command
endm
enum anim_if_var_equal_command ; fb
anim_if_var_equal: macro
db anim_if_var_equal_command
db \1 ; value
dw \2 ; address
endm
enum anim_jump_command ; fc
anim_jump: macro
db anim_jump_command
dw \1 ; address
endm
enum anim_loop_command ; fd
anim_loop: macro
db anim_loop_command
db \1 ; count
dw \2 ; address
endm
enum anim_call_command ; fe
anim_call: macro
db anim_call_command
dw \1 ; address
endm
enum anim_ret_command ; ff
anim_ret: macro
db anim_ret_command
endm

View File

@ -1,8 +0,0 @@
tilepal: MACRO
; pals
rept _NARG / 2
dn PAL_BG_\2, PAL_BG_\1
shift
shift
endr
endm

View File

@ -1,4 +0,0 @@
add_pic: MACRO
db BANK(\1) - $36
dw \1
ENDM

View File

@ -0,0 +1,302 @@
anim_wait: MACRO
if \1 >= $d0
fail "anim_wait argument must be less than $d0."
endc
db \1
ENDM
; BattleAnimCommands indexes (see engine/battle_anims/anim_commands.asm)
enum_start $d0
enum anim_obj_command ; $d0
anim_obj: MACRO
db anim_obj_command
if _NARG <= 4
db \1 ; object
db \2 ; x
db \3 ; y
db \4 ; param
else
; LEGACY: Support the tile+offset format
db \1 ; object
db (\2) * 8 + (\3) ; x_tile, x
db (\4) * 8 + (\5) ; y_tile, y
db \6 ; param
endc
ENDM
enum anim_1gfx_command ; $d1
anim_1gfx: MACRO
db anim_1gfx_command
db \1 ; gfx1
ENDM
enum anim_2gfx_command ; $d2
anim_2gfx: MACRO
db anim_2gfx_command
db \1 ; gfx1
db \2 ; gfx2
ENDM
enum anim_3gfx_command ; $d3
anim_3gfx: MACRO
db anim_3gfx_command
db \1 ; gfx1
db \2 ; gfx2
db \3 ; gfx3
ENDM
enum anim_4gfx_command ; $d4
anim_4gfx: MACRO
db anim_4gfx_command
db \1 ; gfx1
db \2 ; gfx2
db \3 ; gfx3
db \4 ; gfx4
ENDM
enum anim_5gfx_command ; $d5
anim_5gfx: MACRO
db anim_5gfx_command
db \1 ; gfx1
db \2 ; gfx2
db \3 ; gfx3
db \4 ; gfx4
db \5 ; gfx5
ENDM
enum anim_incobj_command ; $d6
anim_incobj: MACRO
db anim_incobj_command
db \1 ; object_id
ENDM
enum anim_setobj_command ; $d7
anim_setobj: MACRO
db anim_setobj_command
db \1 ; object_id
db \2 ; value
ENDM
enum anim_incbgeffect_command ; $d8
anim_incbgeffect: MACRO
db anim_incbgeffect_command
db \1 ; effect
ENDM
enum anim_battlergfx_2row_command ; $d9
anim_battlergfx_2row: MACRO
db anim_battlergfx_2row_command
ENDM
enum anim_battlergfx_1row_command ; $da
anim_battlergfx_1row: MACRO
db anim_battlergfx_1row_command
ENDM
enum anim_checkpokeball_command ; $db
anim_checkpokeball: MACRO
db anim_checkpokeball_command
ENDM
enum anim_transform_command ; $dc
anim_transform: MACRO
db anim_transform_command
ENDM
enum anim_raisesub_command ; $dd
anim_raisesub: MACRO
db anim_raisesub_command
ENDM
enum anim_dropsub_command ; $de
anim_dropsub: MACRO
db anim_dropsub_command
ENDM
enum anim_resetobp0_command ; $df
anim_resetobp0: MACRO
db anim_resetobp0_command
ENDM
enum anim_sound_command ; $e0
anim_sound: MACRO
db anim_sound_command
db (\1 << 2) | \2 ; duration, tracks
db \3 ; sound_id
ENDM
enum anim_cry_command ; $e1
anim_cry: MACRO
db anim_cry_command
db \1 ; pitch
ENDM
enum anim_minimizeopp_command ; $e2
anim_minimizeopp: MACRO
db anim_minimizeopp_command
ENDM
enum anim_oamon_command ; $e3
anim_oamon: MACRO
db anim_oamon_command
ENDM
enum anim_oamoff_command ; $e4
anim_oamoff: MACRO
db anim_oamoff_command
ENDM
enum anim_clearobjs_command ; $e5
anim_clearobjs: MACRO
db anim_clearobjs_command
ENDM
enum anim_beatup_command ; $e6
anim_beatup: MACRO
db anim_beatup_command
ENDM
enum anim_0xe7_command ; $e7
anim_0xe7: MACRO
db anim_0xe7_command
ENDM
enum anim_updateactorpic_command ; $e8
anim_updateactorpic: MACRO
db anim_updateactorpic_command
ENDM
enum anim_minimize_command ; $e9
anim_minimize: MACRO
db anim_minimize_command
ENDM
enum anim_0xea_command ; $ea
anim_0xea: MACRO
db anim_0xea_command
ENDM
enum anim_0xeb_command ; $eb
anim_0xeb: MACRO
db anim_0xeb_command
ENDM
enum anim_0xec_command ; $ec
anim_0xec: MACRO
db anim_0xec_command
ENDM
enum anim_0xed_command ; $ed
anim_0xed: MACRO
db anim_0xed_command
ENDM
enum anim_if_param_and_command ; $ee
anim_if_param_and: MACRO
db anim_if_param_and_command
db \1 ; value
dw \2 ; address
ENDM
enum anim_jumpuntil_command ; $ef
anim_jumpuntil: MACRO
db anim_jumpuntil_command
dw \1 ; address
ENDM
enum anim_bgeffect_command ; $f0
anim_bgeffect: MACRO
db anim_bgeffect_command
db \1 ; effect
db \2 ; jumptable index
db \3 ; battle turn
db \4 ; unknown
ENDM
enum anim_bgp_command ; $f1
anim_bgp: MACRO
db anim_bgp_command
db \1 ; colors
ENDM
enum anim_obp0_command ; $f2
anim_obp0: MACRO
db anim_obp0_command
db \1 ; colors
ENDM
enum anim_obp1_command ; $f3
anim_obp1: MACRO
db anim_obp1_command
db \1 ; colors
ENDM
enum anim_keepsprites_command ; $f4
anim_keepsprites: MACRO
db anim_keepsprites_command
ENDM
enum anim_0xf5_command ; $f5
anim_0xf5: MACRO
db anim_0xf5_command
ENDM
enum anim_0xf6_command ; $f6
anim_0xf6: MACRO
db anim_0xf6_command
ENDM
enum anim_0xf7_command ; $f7
anim_0xf7: MACRO
db anim_0xf7_command
ENDM
enum anim_if_param_equal_command ; $f8
anim_if_param_equal: MACRO
db anim_if_param_equal_command
db \1 ; value
dw \2 ; address
ENDM
enum anim_setvar_command ; $f9
anim_setvar: MACRO
db anim_setvar_command
db \1 ; value
ENDM
enum anim_incvar_command ; $fa
anim_incvar: MACRO
db anim_incvar_command
ENDM
enum anim_if_var_equal_command ; $fb
anim_if_var_equal: MACRO
db anim_if_var_equal_command
db \1 ; value
dw \2 ; address
ENDM
enum anim_jump_command ; $fc
anim_jump: MACRO
db anim_jump_command
dw \1 ; address
ENDM
enum anim_loop_command ; $fd
anim_loop: MACRO
db anim_loop_command
db \1 ; count
dw \2 ; address
ENDM
enum anim_call_command ; $fe
anim_call: MACRO
db anim_call_command
dw \1 ; address
ENDM
enum anim_ret_command ; $ff
anim_ret: MACRO
db anim_ret_command
ENDM

View File

@ -1828,7 +1828,7 @@ wBaseUnusedFrontpic:: dw ; d132
wBaseUnusedBackpic:: dw ; d134
wBaseGrowthRate:: db ; d136
wBaseEggGroups:: db ; d137
wd138:: ds 1 ; d138
wBaseTMHM:: ds 1 ; d138
wd139:: ds 1 ; d139
wd13a:: ds 1 ; d13a
wd13b:: ds 1 ; d13b