Merge pull request #476 from Rangi42/master

Resolve some issues; rename some maps; move more tables into data/; warp_def → warp_event (ready to merge)
This commit is contained in:
yenatch 2018-02-25 22:39:51 -05:00 committed by GitHub
commit 725148443f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1353 changed files with 25120 additions and 32593 deletions

8
FAQ.md
View File

@ -31,17 +31,17 @@ If you are using 64-bit Windows, download [**64-bit Cygwin**][cygwin] and [**64-
If you have not changed any of the asm, make sure you have the latest version of pokecrystal and the correct version of rgbds (see [INSTALL.md](INSTALL.md)).
If you added or changed any code, it has to fit in the **memory banks**. The 2MB ROM is divided into 128 banks of 4KB each, numbered $00 to $7F. The linkerscript **pokecrystal.link** lists which **`SECTION`**s go in which banks. Try moving some code into a new section.
If you added or changed any code, it has to fit in the **memory banks**. The 2MB ROM is divided into 128 banks of 4KB each, numbered $00 to $7F. The linkerscript **pokecrystal.link** lists which `SECTION`s go in which banks. Try moving some code into a new section.
## How do I edit maps?
For `asm` scripts, read [docs/map_scripts.md](docs/map_scripts.md). For `blk` layouts, try [crowdmap][crowdmap] or [Polished Map][polished-map].
For `asm` scripts, read [docs/map_event_scripts.md](docs/map_event_scripts.md). For `blk` layouts, try [crowdmap][crowdmap] or [Polished Map][polished-map].
## How do I write new features?
There are a number of special-purpose scripting languages used for different purposes, as described in [docs](docs/). For more general features, you'll need to code directly in assembly language. See [docs/assembly_programming.md](docs/assembly_programming.md).
There are a number of special-purpose scripting languages, as described in [docs](docs/). For more general features, you'll need to code directly in assembly language. See [docs/assembly_programming.md](docs/assembly_programming.md).
## I need more help!
@ -51,4 +51,4 @@ Try asking on IRC or Discord (see [README.md](README.md)).
[cygwin]: https://cygwin.com/install.html
[rgbds]: https://github.com/rednex/rgbds/releases
[crowdmap]: https://github.com/yenatch/crowdmap/
[polished-map]: https://github.com/roukaour/polished-map
[polished-map]: https://github.com/Rangi42/polished-map

View File

@ -9,20 +9,15 @@ RGBFIX := rgbfix
RGBGFX := rgbgfx
RGBLINK := rgblink
.SUFFIXES:
.PHONY: all clean tools compare crystal crystal11
.SECONDEXPANSION:
.PRECIOUS:
.SECONDARY:
roms := pokecrystal.gbc pokecrystal11.gbc
crystal_obj := \
audio.o \
home.o \
main.o \
wram.o \
data/common_text/common_text.o \
data/maps/maps.o \
data/text/common.o \
data/maps/map_data.o \
data/pokemon/dex_entries.o \
data/pokemon/egg_moves.o \
data/pokemon/evos_attacks.o \
@ -35,7 +30,13 @@ lib/mobile/main.o
crystal11_obj := $(crystal_obj:.o=11.o)
roms := pokecrystal.gbc pokecrystal11.gbc
### Build targets
.SUFFIXES:
.PHONY: all crystal crystal11 clean compare tools
.SECONDEXPANSION:
.PRECIOUS:
.SECONDARY:
all: crystal
crystal: pokecrystal.gbc
@ -75,16 +76,16 @@ $(foreach obj, $(crystal_obj), $(eval $(call DEP,$(obj),$(obj:.o=.asm))))
endif
pokecrystal11.gbc: $(crystal11_obj) pokecrystal.link
$(RGBLINK) -n pokecrystal11.sym -m pokecrystal11.map -l pokecrystal.link -o $@ $(crystal11_obj)
$(RGBFIX) -Cjv -i BYTE -k 01 -l 0x33 -m 0x10 -n 1 -p 0 -r 3 -t PM_CRYSTAL $@
tools/sort_symfile.sh pokecrystal11.sym
pokecrystal.gbc: $(crystal_obj) pokecrystal.link
$(RGBLINK) -n pokecrystal.sym -m pokecrystal.map -l pokecrystal.link -o $@ $(crystal_obj)
$(RGBFIX) -Cjv -i BYTE -k 01 -l 0x33 -m 0x10 -p 0 -r 3 -t PM_CRYSTAL $@
tools/sort_symfile.sh pokecrystal.sym
pokecrystal11.gbc: $(crystal11_obj) pokecrystal.link
$(RGBLINK) -n pokecrystal11.sym -m pokecrystal11.map -l pokecrystal.link -o $@ $(crystal11_obj)
$(RGBFIX) -Cjv -i BYTE -k 01 -l 0x33 -m 0x10 -n 1 -p 0 -r 3 -t PM_CRYSTAL $@
tools/sort_symfile.sh pokecrystal11.sym
# For files that the compressor can't match, there will be a .lz file suffixed with the md5 hash of the correct uncompressed file.
# If the hash of the uncompressed file matches, use this .lz instead.
@ -222,6 +223,8 @@ gfx/mobile/pichu_animated.2bpp: tools/gfx += --trim-whitespace
gfx/unknown/unknown_egg.2bpp: rgbgfx += -h
### Catch-all graphics rules
%.bin: ;
%.blk: ;

View File

@ -2,27 +2,31 @@
This is a disassembly of Pokémon Crystal.
It builds the following roms:
It builds the following ROMs:
* Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc `sha1: f4cd194bdee0d04ca4eac29e09b8e4e9d818c133`
* Pokemon - Crystal Version (UE) (V1.1) [C][!].gbc `sha1: f2f52230b536214ef7c9924f483392993e226cfb`
- Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc `sha1: f4cd194bdee0d04ca4eac29e09b8e4e9d818c133`
- Pokemon - Crystal Version (UE) (V1.1) [C][!].gbc `sha1: f2f52230b536214ef7c9924f483392993e226cfb`
To set up the repository, see [INSTALL.md](INSTALL.md).
## See also
* [FAQ](FAQ.md)
* [Documentation](docs/)
* Disassembly of [**Pokémon Red/Blue**][pokered]
* Disassembly of [**Pokémon Yellow**][pokeyellow]
* Disassembly of [**Pokémon Gold**][pokegold]
* Disassembly of [**Pokémon Pinball**][pokepinball]
* Disassembly of [**Pokémon TCG**][poketcg]
* Disassembly of [**Pokémon Ruby**][pokeruby]
* Disassembly of [**Pokémon Fire Red**][pokefirered]
* Disassembly of [**Pokémon Emerald**][pokeemerald]
* Discord: [**pret**][Discord]
* irc: [freenode#pret][irc]
- [**FAQ**](FAQ.md)
- [**Documentation**](docs/)
- [**Wiki**][wiki] (includes [tutorials][tutorials])
- **Discord:** [pret][discord]
- **IRC:** [freenode#pret][irc]
Other disassembly projects:
- [**Pokémon Red/Blue**][pokered]
- [**Pokémon Yellow**][pokeyellow]
- [**Pokémon Gold**][pokegold]
- [**Pokémon Pinball**][pokepinball]
- [**Pokémon TCG**][poketcg]
- [**Pokémon Ruby**][pokeruby]
- [**Pokémon Fire Red**][pokefirered]
- [**Pokémon Emerald**][pokeemerald]
[pokered]: https://github.com/pret/pokered
[pokeyellow]: https://github.com/pret/pokeyellow
@ -32,7 +36,9 @@ To set up the repository, see [INSTALL.md](INSTALL.md).
[pokeruby]: https://github.com/pret/pokeruby
[pokefirered]: https://github.com/pret/pokefirered
[pokeemerald]: https://github.com/pret/pokeemerald
[Discord]: https://discord.gg/cJxDDVP
[wiki]: https://github.com/pret/pokecrystal/wiki
[tutorials]: https://github.com/pret/pokecrystal/wiki/Tutorials
[discord]: https://discord.gg/cJxDDVP
[irc]: https://kiwiirc.com/client/irc.freenode.net/?#pret
[travis]: https://travis-ci.org/pret/pokecrystal
[travis-badge]: https://travis-ci.org/pret/pokecrystal.svg?branch=master

View File

@ -1320,7 +1320,7 @@ GetNoiseSample: ; e86c5
; load ptr to sample header in wNoiseSampleAddress
; are we on the last channel?
ld a, [wCurChannel]
and NUM_MUSIC_CHANS +- 1
and NUM_MUSIC_CHANS + -1
cp CHAN4
; ret if not
ret nz
@ -2102,7 +2102,7 @@ Music_Volume: ; e89d2
; e89e1
Music_TempoRelative: ; e89e1
; set global tempo to current channel tempo +- param
; set global tempo to current channel tempo +/- param
; params: 1 signed
call GetMusicByte
ld e, a

View File

@ -1,6 +1,6 @@
WaveSamples: ; e8db2
; these are streams of 32 4-bit values used as wavepatterns
; nothing interesting here!
; These are streams of 32 nybbles (4-bit values) used as wave patterns.
; Plot them as a line chart to see the wave's shape.
dn 0, 2, 4, 6, 8, 10, 12, 14, 15, 15, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5, 4, 4, 3, 3, 2, 2, 1, 1
dn 0, 2, 4, 6, 8, 10, 12, 14, 14, 15, 15, 15, 15, 14, 14, 14, 13, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 2, 1, 1
dn 1, 3, 6, 9, 11, 13, 14, 14, 14, 14, 15, 15, 15, 15, 14, 13, 13, 14, 15, 15, 15, 15, 14, 14, 14, 14, 13, 11, 9, 6, 3, 1

View File

@ -86,7 +86,7 @@
charmap "▲", $61 ; gfx/font/up_arrow.png
charmap "☎", $62 ; gfx/font/phone_icon.2bpp
; needed for Special_MagikarpHouseSign (see engine/events/magikarp.asm)
; needed for MagikarpHouseSign (see engine/events/magikarp.asm)
charmap "", $6e ; gfx/font/feet_inches.png
charmap "″", $6f ; gfx/font/feet_inches.png

View File

@ -5,48 +5,50 @@ INCLUDE "macros.asm"
INCLUDE "hram.asm"
INCLUDE "constants/hardware_constants.asm"
INCLUDE "constants/deco_constants.asm"
INCLUDE "constants/wram_constants.asm"
INCLUDE "constants/pokemon_constants.asm"
INCLUDE "constants/type_constants.asm"
INCLUDE "constants/move_constants.asm"
INCLUDE "constants/move_effect_constants.asm"
INCLUDE "constants/battle_constants.asm"
INCLUDE "constants/misc_constants.asm"
INCLUDE "constants/input_constants.asm"
INCLUDE "constants/gfx_constants.asm"
INCLUDE "constants/text_constants.asm"
INCLUDE "constants/audio_constants.asm"
INCLUDE "constants/battle_anim_constants.asm"
INCLUDE "constants/map_constants.asm"
INCLUDE "constants/map_data_constants.asm"
INCLUDE "constants/map_setup_constants.asm"
INCLUDE "constants/landmark_constants.asm"
INCLUDE "constants/battle_constants.asm"
INCLUDE "constants/battle_tower_constants.asm"
INCLUDE "constants/collision_constants.asm"
INCLUDE "constants/credits_constants.asm"
INCLUDE "constants/cry_constants.asm"
INCLUDE "constants/engine_flags.asm"
INCLUDE "constants/event_flags.asm"
INCLUDE "constants/icon_constants.asm"
INCLUDE "constants/item_constants.asm"
INCLUDE "constants/item_data_constants.asm"
INCLUDE "constants/trainer_constants.asm"
INCLUDE "constants/trainer_data_constants.asm"
INCLUDE "constants/script_constants.asm"
INCLUDE "constants/event_flags.asm"
INCLUDE "constants/engine_flags.asm"
INCLUDE "constants/music_constants.asm"
INCLUDE "constants/sfx_constants.asm"
INCLUDE "constants/phone_constants.asm"
INCLUDE "constants/credits_constants.asm"
INCLUDE "constants/gfx_constants.asm"
INCLUDE "constants/input_constants.asm"
INCLUDE "constants/pokemon_data_constants.asm"
INCLUDE "constants/icon_constants.asm"
INCLUDE "constants/serial_constants.asm"
INCLUDE "constants/landmark_constants.asm"
INCLUDE "constants/map_constants.asm"
INCLUDE "constants/map_data_constants.asm"
INCLUDE "constants/map_object_constants.asm"
INCLUDE "constants/map_setup_constants.asm"
INCLUDE "constants/menu_constants.asm"
INCLUDE "constants/mobile_constants.asm"
INCLUDE "constants/text_constants.asm"
INCLUDE "constants/misc_constants.asm"
INCLUDE "constants/std_constants.asm"
INCLUDE "constants/deco_constants.asm"
INCLUDE "constants/move_constants.asm"
INCLUDE "constants/move_effect_constants.asm"
INCLUDE "constants/music_constants.asm"
INCLUDE "constants/npc_trade_constants.asm"
INCLUDE "constants/phone_constants.asm"
INCLUDE "constants/pokemon_constants.asm"
INCLUDE "constants/pokemon_data_constants.asm"
INCLUDE "constants/printer_constants.asm"
INCLUDE "constants/radio_constants.asm"
INCLUDE "constants/npctrade_constants.asm"
INCLUDE "constants/scgb_constants.asm"
INCLUDE "constants/scene_constants.asm"
INCLUDE "constants/script_constants.asm"
INCLUDE "constants/serial_constants.asm"
INCLUDE "constants/sfx_constants.asm"
INCLUDE "constants/sprite_anim_constants.asm"
INCLUDE "constants/sprite_constants.asm"
INCLUDE "constants/sprite_data_constants.asm"
INCLUDE "constants/sprite_anim_constants.asm"
INCLUDE "constants/std_constants.asm"
INCLUDE "constants/tileset_constants.asm"
INCLUDE "constants/collision_constants.asm"
INCLUDE "constants/scgb_constants.asm"
INCLUDE "constants/battle_tower_constants.asm"
INCLUDE "constants/cry_constants.asm"
INCLUDE "constants/audio_constants.asm"
INCLUDE "constants/printer_constants.asm"
INCLUDE "constants/menu_constants.asm"
INCLUDE "constants/trainer_constants.asm"
INCLUDE "constants/trainer_data_constants.asm"
INCLUDE "constants/type_constants.asm"

View File

@ -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
@ -764,7 +764,7 @@ const_value set 1
const ANIM_BG_35
; 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

@ -55,7 +55,7 @@ MOVE_LENGTH EQU const_value
; indexes for:
; - wPlayerStats and wEnemyStats (see wram.asm)
; - party_struct and battle_struct members (see macros/wram.asm)
const_value set 1
const_def 1
const STAT_HP
const STAT_ATK
const STAT_DEF
@ -76,7 +76,7 @@ ATKDEFDV_SHINY EQU $EA
SPDSPCDV_SHINY EQU $AA
; battle classes (wBattleMode values)
const_value set 1
const_def 1
const WILD_BATTLE
const TRAINER_BATTLE
@ -96,7 +96,7 @@ const_value set 1
const BATTLETYPE_CELEBI
const BATTLETYPE_SUICUNE
; GetBattleVar and GetBattleVarAddr arguments (see home/battle.asm)
; BattleVarPairs indexes (see home/battle.asm)
const_def
const BATTLE_VARS_SUBSTATUS1
const BATTLE_VARS_SUBSTATUS2
@ -120,7 +120,7 @@ const_value set 1
const BATTLE_VARS_LAST_MOVE
const BATTLE_VARS_LAST_MOVE_OPP
; GetBattleVar and GetBattleVarAddr internal indexes (see home/battle.asm)
; BattleVarLocations indexes (see home/battle.asm)
const_def
const PLAYER_SUBSTATUS_1
const ENEMY_SUBSTATUS_1
@ -151,7 +151,7 @@ const_value set 1
; status condition bit flags
SLP EQU %111 ; 0-7 turns
const_value set 3
const_def 3
const PSN
const BRN
const FRZ

View File

@ -47,7 +47,7 @@ BATTLE_TOWER_STRUCT_LENGTH EQU $e0 ; NAME_LENGTH + BATTLETOWER_PARTY_LENGTH * (P
MOBILE_EVENT_OBJECT_GS_BALL EQU $b
; BattleTowerText arguments (see engine/events/battle_tower/trainer_text.asm)
const_value set 1
const_def 1
const BATTLETOWERTEXT_INTRO
const BATTLETOWERTEXT_WIN_TEXT
const BATTLETOWERTEXT_LOSS_TEXT

View File

@ -105,7 +105,7 @@
const PAAD_TESTING
; CreditsScript indexes (see data/credits_script.asm)
const_value set -7
const_def -7
const CREDITS_THEEND
const CREDITS_WAIT2
const CREDITS_MUSIC

View File

@ -121,8 +121,7 @@ __enum__ = 0
deco GEODUDE_DOLL
deco MACHOP_DOLL
deco TENTACOOL_DOLL
NUM_NON_TROPHY_DECOS = __enum__
deco GOLD_TROPHY_DOLL
deco SILVER_TROPHY_DOLL
NUM_DECOS = __enum__
NUM_NON_TROPHY_DECOS = NUM_DECOS +- 2

View File

@ -13,23 +13,23 @@
const ENGINE_DAY_CARE_LADY_HAS_MON
; wMomSavingMoney
const ENGINE_MOM_SAVING_MONEY
const ENGINE_DST
const ENGINE_MOM_ACTIVE
; wUnusedTwoDayTimerOn
const ENGINE_0A
; wStatusFlags
const ENGINE_POKEDEX
const ENGINE_UNOWN_DEX
const ENGINE_POKERUS
const ENGINE_CAUGHT_POKERUS
const ENGINE_ROCKET_SIGNAL_ON_CH20
const ENGINE_CREDITS_SKIP
const ENGINE_BUG_CONTEST_ON ; 10
const ENGINE_MAIN_MENU_MOBILE_CHOICES ; 10
; wStatusFlags2
const ENGINE_BUG_CONTEST_TIMER
const ENGINE_SAFARI_ZONE
const ENGINE_ROCKETS_IN_RADIO_TOWER
const ENGINE_BIKE_SHOP_CALL_ENABLED
const ENGINE_GIVE_POKERUS
const ENGINE_FLORIA
const ENGINE_15
const ENGINE_REACHED_GOLDENROD
const ENGINE_ROCKETS_IN_MAHOGANY
; wBikeFlags
const ENGINE_STRENGTH_ACTIVE
@ -54,16 +54,16 @@
const ENGINE_VOLCANOBADGE
const ENGINE_EARTHBADGE
; wUnlockedUnowns
const ENGINE_UNLOCKED_UNOWNS_1
const ENGINE_UNLOCKED_UNOWNS_2
const ENGINE_UNLOCKED_UNOWNS_3
const ENGINE_UNLOCKED_UNOWNS_4
const ENGINE_UNLOCKED_UNOWNS_5
const ENGINE_UNLOCKED_UNOWNS_6 ; 30
const ENGINE_UNLOCKED_UNOWNS_7
const ENGINE_UNLOCKED_UNOWNS_8
const ENGINE_UNLOCKED_UNOWNS_A_TO_K
const ENGINE_UNLOCKED_UNOWNS_L_TO_R
const ENGINE_UNLOCKED_UNOWNS_S_TO_W
const ENGINE_UNLOCKED_UNOWNS_X_TO_Z
const ENGINE_UNLOCKED_UNOWNS_UNUSED_4
const ENGINE_UNLOCKED_UNOWNS_UNUSED_5 ; 30
const ENGINE_UNLOCKED_UNOWNS_UNUSED_6
const ENGINE_UNLOCKED_UNOWNS_UNUSED_7
; wVisitedSpawns
const ENGINE_FLYPOINT_KRISS_HOUSE
const ENGINE_FLYPOINT_PLAYERS_HOUSE
const ENGINE_FLYPOINT_VIRIDIAN_POKECENTER
const ENGINE_FLYPOINT_PALLET
const ENGINE_FLYPOINT_VIRIDIAN
@ -97,18 +97,18 @@
; wDailyFlags
const ENGINE_KURT_MAKING_BALLS ; 50
const ENGINE_DAILY_BUG_CONTEST
const ENGINE_SPECIAL_WILDDATA
const ENGINE_FISH_SWARM
const ENGINE_TIME_CAPSULE
const ENGINE_ALL_FRUIT_TREES
const ENGINE_SHUCKLE_GIVEN
const ENGINE_GOT_SHUCKIE_TODAY
const ENGINE_GOLDENROD_UNDERGROUND_MERCHANT_CLOSED
const ENGINE_FOUGHT_IN_TRAINER_HALL_TODAY
; wWeeklyFlags
const ENGINE_MT_MOON_SQUARE_CLEFAIRY
const ENGINE_UNION_CAVE_LAPRAS
const ENGINE_GOLDENROD_UNDERGROUND_GOT_HAIRCUT
const ENGINE_GOLDENROD_MALL_5F_HAPPINESS_EVENT
const ENGINE_TEA_IN_BLUES_HOUSE
const ENGINE_GOLDENROD_DEPT_STORE_TM27_RETURN
const ENGINE_DAISYS_GROOMING
const ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
const ENGINE_DAILY_MOVE_TUTOR
const ENGINE_BUENAS_PASSWORD
@ -120,7 +120,7 @@
; wPlayerGender
const ENGINE_PLAYER_IS_FEMALE
; wCelebiEvent
const ENGINE_HAVE_EXAMINED_GS_BALL
const ENGINE_FOREST_IS_RESTLESS
; wDailyRematchFlags
const ENGINE_JACK
const ENGINE_HUEY

View File

@ -1,14 +1,14 @@
; wEventFlags bit flags
const_def
; The first eight flags are reset upon reloading the map
const EVENT_GAVE_KURT_APRICORNS ; 000
const EVENT_RECEIVED_BALLS_FROM_KURT
const EVENT_DRAGON_SHRINE_QUESTION_2
const EVENT_DRAGON_SHRINE_QUESTION_3
const EVENT_DRAGON_SHRINE_QUESTION_4
const EVENT_DRAGON_SHRINE_QUESTION_5
const EVENT_JUST_RECEIVED_DRATINI
const EVENT_IN_YOUR_ROOM
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1 ; 000
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_3
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_4
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_5
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_6
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_7
const EVENT_TEMPORARY_UNTIL_MAP_RELOAD_8
; Johto Gym Leader TM gifts
const EVENT_GOT_TM31_MUD_SLAP
const EVENT_GOT_TM49_FURY_CUTTER
@ -730,7 +730,7 @@
const EVENT_DECO_GEODUDE_DOLL
const EVENT_DECO_MACHOP_DOLL
const EVENT_DECO_TENTACOOL_DOLL
const EVENT_KRISS_ROOM_POSTER
const EVENT_PLAYERS_ROOM_POSTER
const EVENT_DECO_GOLD_TROPHY
const EVENT_DECO_SILVER_TROPHY
const EVENT_DECO_BIG_SNORLAX_DOLL
@ -1806,8 +1806,8 @@
const EVENT_RIVAL_SPROUT_TOWER
const EVENT_RIVAL_BURNED_TOWER
const EVENT_RIVAL_DRAGONS_DEN
const EVENT_KRISS_HOUSE_MOM_1
const EVENT_KRISS_HOUSE_MOM_2
const EVENT_PLAYERS_HOUSE_MOM_1
const EVENT_PLAYERS_HOUSE_MOM_2
const EVENT_MR_POKEMONS_HOUSE_OAK
const EVENT_VIOLET_CITY_EARL
const EVENT_EARLS_ACADEMY_EARL
@ -1928,10 +1928,10 @@
const EVENT_KURTS_HOUSE_KURT_1
const EVENT_KURTS_HOUSE_KURT_2
const EVENT_SLOWPOKE_WELL_KURT ; 740
const EVENT_KRISS_HOUSE_2F_CONSOLE
const EVENT_KRISS_HOUSE_2F_DOLL_1
const EVENT_KRISS_HOUSE_2F_DOLL_2
const EVENT_KRISS_HOUSE_2F_BIG_DOLL
const EVENT_PLAYERS_HOUSE_2F_CONSOLE
const EVENT_PLAYERS_HOUSE_2F_DOLL_1
const EVENT_PLAYERS_HOUSE_2F_DOLL_2
const EVENT_PLAYERS_HOUSE_2F_BIG_DOLL
const EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
const EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_NOT_CONTEST_DAY
const EVENT_ROUTE_36_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
@ -2012,8 +2012,8 @@
const EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_YOUNGSTERS
const EVENT_DRAGON_SHRINE_CLAIR ; 790
const EVENT_BATTLE_TOWER_BATTLE_ROOM_YOUNGSTER
const EVENT_KRISS_HOUSE_1F_NEIGHBOR
const EVENT_KRISS_NEIGHBORS_HOUSE_NEIGHBOR
const EVENT_PLAYERS_HOUSE_1F_NEIGHBOR
const EVENT_PLAYERS_NEIGHBORS_HOUSE_NEIGHBOR
const EVENT_PICKED_UP_GOLD_BERRY_FROM_HO_OH_ITEM_ROOM
const EVENT_PICKED_UP_MYSTERYBERRY_FROM_HO_OH_ITEM_ROOM
const EVENT_PICKED_UP_REVIVAL_HERB_FROM_HO_OH_ITEM_ROOM
@ -2043,7 +2043,7 @@
const EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
const EVENT_SAW_SUICUNE_ON_ROUTE_42
const EVENT_SAW_SUICUNE_ON_ROUTE_36 ; 7b0
const EVENT_ECRUTEAK_HOUSE_WANDERING_SAGE
const EVENT_ECRUTEAK_TIN_TOWER_ENTRANCE_WANDERING_SAGE
const EVENT_TIN_TOWER_1F_SUICUNE
const EVENT_TIN_TOWER_1F_ENTEI
const EVENT_TIN_TOWER_1F_RAIKOU

View File

@ -3,9 +3,12 @@ LEN_1BPP_TILE EQU 1 * TILE_WIDTH ; bytes
LEN_2BPP_TILE EQU 2 * TILE_WIDTH ; bytes
NUM_PAL_COLORS EQU 4
PAL_COLOR_SIZE EQU 2
PALETTE_SIZE EQU NUM_PAL_COLORS * PAL_COLOR_SIZE
PALRGB_WHITE EQUS "palred 31 + palgreen 31 + palblue 31" ; $7fff
SCREEN_WIDTH EQU 20 ; tiles
SCREEN_HEIGHT EQU 18 ; tiles
SCREEN_WIDTH_PX EQU SCREEN_WIDTH * TILE_WIDTH ; pixels
@ -16,11 +19,18 @@ BG_MAP_HEIGHT EQU 32 ; tiles
WMISC_WIDTH EQU 6 * 4
WMISC_HEIGHT EQU 5 * 4
HP_BAR_LENGTH EQU 6 ; tiles
EXP_BAR_LENGTH EQU 8 ; tiles
HP_BAR_LENGTH_PX EQU HP_BAR_LENGTH * TILE_WIDTH ; pixels
EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * TILE_WIDTH ; pixels
; GetHPPal return values (see home.asm)
HP_GREEN EQU 0
HP_YELLOW EQU 1
HP_RED EQU 2
; sprite_oam_struct members (see macros/wram.asm)
const_def
const SPRITEOAMSTRUCT_YCOORD ; 0
@ -29,3 +39,16 @@ EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * TILE_WIDTH ; pixels
const SPRITEOAMSTRUCT_ATTRIBUTES ; 3
SPRITEOAMSTRUCT_LENGTH EQU const_value
NUM_SPRITE_OAM_STRUCTS EQU 40 ; see wVirtualOAM
; PokeAnims indexes (see engine/pic_animation.asm)
const_def
const ANIM_MON_SLOW
const ANIM_MON_NORMAL
const ANIM_MON_MENU
const ANIM_MON_TRADE
const ANIM_MON_EVOLVE
const ANIM_MON_HATCH
const ANIM_MON_UNUSED
const ANIM_MON_EGG1
const ANIM_MON_EGG2

View File

@ -288,7 +288,7 @@ NUM_HMS = const_value - HM01
add_mt FLAMETHROWER
add_mt THUNDERBOLT
add_mt ICE_BEAM
NUM_TM_HM_TUTOR = __enum__ +- 1
NUM_TM_HM_TUTOR = __enum__ + -1
USE_SCRIPT_VAR EQU $00
ITEM_FROM_MEM EQU $ff

View File

@ -10,7 +10,7 @@
ITEMATTR_STRUCT_LENGTH EQU const_value
; item types
const_value set 1
const_def 1
const ITEM ; 1
const KEY_ITEM ; 2
const BALL ; 3
@ -18,14 +18,18 @@ const_value set 1
; item menu types
; UseItem.dw indexes (see engine/pack.asm)
; UseRegisteredItem.SwitchTo indexes (see engine/select_menu.asm)
ITEMMENU_NOUSE EQU 0
ITEMMENU_CURRENT EQU 4
ITEMMENU_PARTY EQU 5
ITEMMENU_CLOSE EQU 6
; item actions
CANT_SELECT EQU 1 << 6
CANT_TOSS EQU 1 << 7
CANT_SELECT_F EQU 6
CANT_TOSS_F EQU 7
CANT_SELECT EQU 1 << CANT_SELECT_F
CANT_TOSS EQU 1 << CANT_TOSS_F
; pack pockets
@ -34,7 +38,7 @@ CANT_TOSS EQU 1 << 7
const BALL_POCKET ; 1
const KEY_ITEM_POCKET ; 2
const TM_HM_POCKET ; 3
NUM_POCKETS EQU const_value +- 1
NUM_POCKETS EQU const_value
MAX_ITEMS EQU 20
MAX_BALLS EQU 12
@ -61,7 +65,7 @@ MAIL_STRUCT_LENGTH EQU $2f ; mailmsg struct
const HELD_7
const HELD_CLEANSE_TAG
const_value set 10
const_def 10
const HELD_HEAL_POISON
const HELD_HEAL_FREEZE
const HELD_HEAL_BURN
@ -70,7 +74,7 @@ const_value set 10
const HELD_HEAL_STATUS
const HELD_HEAL_CONFUSION
const_value set 20
const_def 20
const HELD_PREVENT_POISON
const HELD_PREVENT_BURN
const HELD_PREVENT_FREEZE
@ -78,7 +82,7 @@ const_value set 20
const HELD_PREVENT_PARALYZE
const HELD_PREVENT_CONFUSE
const_value set 30
const_def 30
const HELD_30
const HELD_ATTACK_UP
const HELD_DEFENSE_UP
@ -89,12 +93,12 @@ const_value set 30
const HELD_EVASION_UP
const HELD_38
const_value set 40
const_def 40
const HELD_40
const HELD_41
const HELD_METAL_POWDER
const_value set 50
const_def 50
const HELD_NORMAL_BOOST
const HELD_FIGHTING_BOOST
const HELD_FLYING_BOOST
@ -113,7 +117,7 @@ const_value set 50
const HELD_DARK_BOOST
const HELD_STEEL_BOOST
const_value set 70
const_def 70
const HELD_CATCH_CHANCE
const HELD_71
const HELD_ESCAPE
@ -170,29 +174,3 @@ const_value set 70
const MART_MT_MOON
const MART_INDIGO_PLATEAU
const MART_UNDERGROUND
; PartyMenuQualityPointers indexes (see data/party_menu_qualities.asm)
const_def
const PARTYMENUACTION_CHOOSE_POKEMON
const PARTYMENUACTION_HEALING_ITEM
const PARTYMENUACTION_SWITCH
const PARTYMENUACTION_TEACH_TMHM
const PARTYMENUACTION_MOVE
const PARTYMENUACTION_EVO_STONE
const PARTYMENUACTION_GIVE_MON
const PARTYMENUACTION_GIVE_MON_FEMALE ; unused
const PARTYMENUACTION_GIVE_ITEM
const PARTYMENUACTION_MOBILE ; mobile
; PrintPartyMenuActionText arguments (see engine/party_menu.asm)
const_value set $f0
const PARTYMENUTEXT_HEAL_PSN
const PARTYMENUTEXT_HEAL_BRN
const PARTYMENUTEXT_HEAL_FRZ
const PARTYMENUTEXT_HEAL_SLP
const PARTYMENUTEXT_HEAL_PAR
const PARTYMENUTEXT_HEAL_HP
const PARTYMENUTEXT_HEAL_ALL
const PARTYMENUTEXT_REVIVE
const PARTYMENUTEXT_LEVEL_UP
const PARTYMENUTEXT_HEAL_CONFUSION

View File

@ -145,7 +145,7 @@ ENDM
newgroup ; 4
map_const ECRUTEAK_HOUSE, 10, 9 ; 1
map_const ECRUTEAK_TIN_TOWER_ENTRANCE, 10, 9 ; 1
map_const WISE_TRIOS_ROOM, 4, 4 ; 2
map_const ECRUTEAK_POKECENTER_1F, 5, 4 ; 3
map_const ECRUTEAK_LUGIA_SPEECH_HOUSE, 4, 4 ; 4
@ -245,7 +245,7 @@ ENDM
map_const GOLDENROD_GYM, 10, 9 ; 3
map_const GOLDENROD_BIKE_SHOP, 4, 4 ; 4
map_const GOLDENROD_HAPPINESS_RATER, 4, 4 ; 5
map_const GOLDENROD_BILLS_HOUSE, 4, 4 ; 6
map_const BILLS_FAMILYS_HOUSE, 4, 4 ; 6
map_const GOLDENROD_MAGNET_TRAIN_STATION, 10, 9 ; 7
map_const GOLDENROD_FLOWER_SHOP, 4, 4 ; 8
map_const GOLDENROD_PP_SPEECH_HOUSE, 4, 4 ; 9
@ -260,7 +260,7 @@ ENDM
map_const GOLDENROD_DEPT_STORE_ROOF, 8, 4 ; 18
map_const GOLDENROD_GAME_CORNER, 10, 7 ; 19
map_const GOLDENROD_POKECENTER_1F, 5, 4 ; 20
map_const GOLDENROD_POKECOM_CENTER_2F_MOBILE, 16, 16 ; 21
map_const POKECOM_CENTER_ADMIN_OFFICE_MOBILE, 16, 16 ; 21
map_const ILEX_FOREST_AZALEA_GATE, 5, 4 ; 22
map_const ROUTE_34_ILEX_FOREST_GATE, 5, 4 ; 23
map_const DAY_CARE, 5, 4 ; 24
@ -270,13 +270,13 @@ ENDM
map_const ROUTE_6, 10, 9 ; 1
map_const ROUTE_11, 20, 9 ; 2
map_const VERMILION_CITY, 20, 18 ; 3
map_const VERMILION_HOUSE_FISHING_SPEECH_HOUSE, 4, 4 ; 4
map_const VERMILION_FISHING_SPEECH_HOUSE, 4, 4 ; 4
map_const VERMILION_POKECENTER_1F, 5, 4 ; 5
map_const VERMILION_POKECENTER_2F_BETA, 8, 4 ; 6
map_const POKEMON_FAN_CLUB, 5, 4 ; 7
map_const VERMILION_MAGNET_TRAIN_SPEECH_HOUSE, 4, 4 ; 8
map_const VERMILION_MART, 6, 4 ; 9
map_const VERMILION_HOUSE_DIGLETTS_CAVE_SPEECH_HOUSE, 4, 4 ; 10
map_const VERMILION_DIGLETTS_CAVE_SPEECH_HOUSE, 4, 4 ; 10
map_const VERMILION_GYM, 5, 9 ; 11
map_const ROUTE_6_SAFFRON_GATE, 5, 4 ; 12
map_const ROUTE_6_UNDERGROUND_PATH_ENTRANCE, 4, 4 ; 13
@ -337,7 +337,7 @@ ENDM
map_const FUCHSIA_MART, 6, 4 ; 6
map_const SAFARI_ZONE_MAIN_OFFICE, 4, 4 ; 7
map_const FUCHSIA_GYM, 5, 9 ; 8
map_const FUCHSIA_BILL_SPEECH_HOUSE, 4, 4 ; 9
map_const BILLS_BROTHERS_HOUSE, 4, 4 ; 9
map_const FUCHSIA_POKECENTER_1F, 5, 4 ; 10
map_const FUCHSIA_POKECENTER_2F_BETA, 8, 4 ; 11
map_const SAFARI_ZONE_WARDENS_HOME, 5, 4 ; 12
@ -365,7 +365,7 @@ ENDM
map_const ROUTE_28, 20, 9 ; 1
map_const SILVER_CAVE_OUTSIDE, 20, 18 ; 2
map_const SILVER_CAVE_POKECENTER_1F, 5, 4 ; 3
map_const ROUTE_28_FAMOUS_SPEECH_HOUSE, 4, 4 ; 4
map_const ROUTE_28_STEEL_WING_HOUSE, 4, 4 ; 4
newgroup ; 20
@ -373,7 +373,7 @@ ENDM
map_const TRADE_CENTER, 5, 4 ; 2
map_const COLOSSEUM, 5, 4 ; 3
map_const TIME_CAPSULE, 5, 4 ; 4
map_const MOBILE_TRADE_ROOM_MOBILE, 5, 4 ; 5
map_const MOBILE_TRADE_ROOM, 5, 4 ; 5
map_const MOBILE_BATTLE_ROOM, 5, 4 ; 6
newgroup ; 21
@ -436,7 +436,7 @@ ENDM
map_const VIRIDIAN_MART, 6, 4 ; 8
map_const VIRIDIAN_POKECENTER_1F, 5, 4 ; 9
map_const VIRIDIAN_POKECENTER_2F_BETA, 8, 4 ; 10
map_const ROUTE_2_NUGGET_SPEECH_HOUSE, 4, 4 ; 11
map_const ROUTE_2_NUGGET_HOUSE, 4, 4 ; 11
map_const ROUTE_2_GATE, 5, 4 ; 12
map_const VICTORY_ROAD_GATE, 10, 9 ; 13
@ -447,12 +447,12 @@ ENDM
map_const ROUTE_29, 30, 9 ; 3
map_const NEW_BARK_TOWN, 10, 9 ; 4
map_const ELMS_LAB, 5, 6 ; 5
map_const KRISS_HOUSE_1F, 5, 4 ; 6
map_const KRISS_HOUSE_2F, 4, 3 ; 7
map_const KRISS_NEIGHBORS_HOUSE, 4, 4 ; 8
map_const PLAYERS_HOUSE_1F, 5, 4 ; 6
map_const PLAYERS_HOUSE_2F, 4, 3 ; 7
map_const PLAYERS_NEIGHBORS_HOUSE, 4, 4 ; 8
map_const ELMS_HOUSE, 4, 4 ; 9
map_const ROUTE_26_HEAL_SPEECH_HOUSE, 4, 4 ; 10
map_const ROUTE_26_DAY_OF_WEEK_SIBLINGS_HOUSE, 4, 4 ; 11
map_const ROUTE_26_HEAL_HOUSE, 4, 4 ; 10
map_const DAY_OF_WEEK_SIBLINGS_HOUSE, 4, 4 ; 11
map_const ROUTE_27_SANDSTORM_HOUSE, 4, 4 ; 12
map_const ROUTE_29_ROUTE_46_GATE, 5, 4 ; 13
@ -472,7 +472,7 @@ ENDM
map_const COPYCATS_HOUSE_2F, 5, 3 ; 12
map_const ROUTE_5_UNDERGROUND_PATH_ENTRANCE, 4, 4 ; 13
map_const ROUTE_5_SAFFRON_GATE, 5, 4 ; 14
map_const ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE, 4, 4 ; 15
map_const ROUTE_5_CLEANSE_TAG_HOUSE, 4, 4 ; 15
newgroup ; 26
@ -484,6 +484,6 @@ ENDM
map_const CHERRYGROVE_GYM_SPEECH_HOUSE, 4, 4 ; 6
map_const GUIDE_GENTS_HOUSE, 4, 4 ; 7
map_const CHERRYGROVE_EVOLUTION_SPEECH_HOUSE, 4, 4 ; 8
map_const ROUTE_30_BERRY_SPEECH_HOUSE, 4, 4 ; 9
map_const ROUTE_30_BERRY_HOUSE, 4, 4 ; 9
map_const MR_POKEMONS_HOUSE, 4, 4 ; 10
map_const ROUTE_31_VIOLET_GATE, 5, 4 ; 11

View File

@ -4,21 +4,20 @@ GROUP_NONE EQU 0
MAP_NONE EQU 0
; map header struct members (see data/maps/definitions.asm)
; map struct members (see data/maps/maps.asm)
const_def
const MAPDEF_MAPDATA_BANK ; 0
const MAPDEF_TILESET ; 1
const MAPDEF_ENVIRONMENT ; 2
const MAPDEF_MAPDATA ; 3
const MAPDEF_MAPDATA_HI ; 4
const MAPDEF_LOCATION ; 5
const MAPDEF_MUSIC ; 6
const MAPDEF_PALETTE ; 7
const MAPDEF_FISHGROUP ; 8
NUM_MAPDEF_ATTRIBUTES EQU const_value
const MAP_MAPATTRIBUTES_BANK ; 0
const MAP_TILESET ; 1
const MAP_ENVIRONMENT ; 2
const MAP_MAPATTRIBUTES ; 3
const MAP_MAPATTRIBUTES_HI ; 4
const MAP_LOCATION ; 5
const MAP_MUSIC ; 6
const MAP_PALETTE ; 7
const MAP_FISHGROUP ; 8
; map environments (wEnvironment)
const_value set 1
const_def 1
const TOWN
const ROUTE
const INDOOR
@ -35,7 +34,7 @@ const_value set 1
const PALETTE_MORN
const PALETTE_DARK
; fish groups
; FishGroups indexes (see data/wild/fish.asm)
const_def
const FISHGROUP_NONE
const FISHGROUP_SHORE
@ -97,7 +96,7 @@ const_value = -1
const SPAWN_OLIVINE
const SPAWN_ECRUTEAK
const SPAWN_MAHOGANY
const SPAWN_LAKE
const SPAWN_LAKE_OF_RAGE
const SPAWN_BLACKTHORN
const SPAWN_MT_SILVER
const SPAWN_FAST_SHIP
@ -107,79 +106,3 @@ NUM_SPAWNS EQU const_value
; outdoor sprite limits (see engine/overworld.asm)
MAX_OUTDOOR_SPRITES EQU 23
SPRITE_GFX_LIST_CAPACITY EQU $20
; map_object struct members (see macros/wram.asm)
const_def
const MAPOBJECT_OBJECT_STRUCT_ID ; 0
const MAPOBJECT_SPRITE ; 1
const MAPOBJECT_Y_COORD ; 2
const MAPOBJECT_X_COORD ; 3
const MAPOBJECT_MOVEMENT ; 4
const MAPOBJECT_RADIUS ; 5
const MAPOBJECT_HOUR ; 6
const MAPOBJECT_TIMEOFDAY ; 7
const MAPOBJECT_COLOR ; 8
const MAPOBJECT_RANGE ; 9
const MAPOBJECT_SCRIPT_POINTER ; a
const MAPOBJECT_POINTER_HI ; b
const MAPOBJECT_EVENT_FLAG ; c
const MAPOBJECT_FLAG_HI ; d
const MAPOBJECT_E ; unused
const MAPOBJECT_F ; unused
OBJECT_LENGTH EQU const_value
MAPOBJECT_SCREEN_HEIGHT EQU 11
MAPOBJECT_SCREEN_WIDTH EQU 12
; object_struct members (see macros/wram.asm)
const_def
const OBJECT_SPRITE ; 00
const OBJECT_MAP_OBJECT_INDEX ; 01
const OBJECT_SPRITE_TILE ; 02
const OBJECT_MOVEMENTTYPE ; 03
const OBJECT_FLAGS1 ; 04
const OBJECT_FLAGS2 ; 05
const OBJECT_PALETTE ; 06
const OBJECT_DIRECTION_WALKING ; 07
const OBJECT_FACING ; 08
const OBJECT_STEP_TYPE ; 09
const OBJECT_STEP_DURATION ; 0a
const OBJECT_ACTION ; 0b
const OBJECT_STEP_FRAME ; 0c
const OBJECT_FACING_STEP ; 0d
const OBJECT_NEXT_TILE ; 0e
const OBJECT_STANDING_TILE ; 0f
const OBJECT_NEXT_MAP_X ; 10
const OBJECT_NEXT_MAP_Y ; 11
const OBJECT_MAP_X ; 12
const OBJECT_MAP_Y ; 13
const OBJECT_INIT_X ; 14
const OBJECT_INIT_Y ; 15
const OBJECT_RADIUS ; 16
const OBJECT_SPRITE_X ; 17
const OBJECT_SPRITE_Y ; 18
const OBJECT_SPRITE_X_OFFSET ; 19
const OBJECT_SPRITE_Y_OFFSET ; 1a
const OBJECT_MOVEMENT_BYTE_INDEX ; 1b
const OBJECT_1C ; 1c
const OBJECT_1D ; 1d
const OBJECT_1E ; 1e
const OBJECT_1F ; 1f
const OBJECT_RANGE ; 20
; 21-27 are not used
OBJECT_STRUCT_LENGTH EQU 40
NUM_OBJECT_STRUCTS EQU 13 ; see wObjectStructs
; object_struct OBJECT_FACING values
OW_DOWN EQU DOWN << 2
OW_UP EQU UP << 2
OW_LEFT EQU LEFT << 2
OW_RIGHT EQU RIGHT << 2
; object_struct OBJECT_FLAGS1 bit flags
INVISIBLE EQU 0
FIXED_FACING EQU 2
SLIDING EQU 3
EMOTE_OBJECT EQU 7

View File

@ -0,0 +1,249 @@
; object_struct members (see macros/wram.asm)
const_def
const OBJECT_SPRITE ; 00
const OBJECT_MAP_OBJECT_INDEX ; 01
const OBJECT_SPRITE_TILE ; 02
const OBJECT_MOVEMENTTYPE ; 03
const OBJECT_FLAGS1 ; 04
const OBJECT_FLAGS2 ; 05
const OBJECT_PALETTE ; 06
const OBJECT_DIRECTION_WALKING ; 07
const OBJECT_FACING ; 08
const OBJECT_STEP_TYPE ; 09
const OBJECT_STEP_DURATION ; 0a
const OBJECT_ACTION ; 0b
const OBJECT_STEP_FRAME ; 0c
const OBJECT_FACING_STEP ; 0d
const OBJECT_NEXT_TILE ; 0e
const OBJECT_STANDING_TILE ; 0f
const OBJECT_NEXT_MAP_X ; 10
const OBJECT_NEXT_MAP_Y ; 11
const OBJECT_MAP_X ; 12
const OBJECT_MAP_Y ; 13
const OBJECT_INIT_X ; 14
const OBJECT_INIT_Y ; 15
const OBJECT_RADIUS ; 16
const OBJECT_SPRITE_X ; 17
const OBJECT_SPRITE_Y ; 18
const OBJECT_SPRITE_X_OFFSET ; 19
const OBJECT_SPRITE_Y_OFFSET ; 1a
const OBJECT_MOVEMENT_BYTE_INDEX ; 1b
const OBJECT_1C ; 1c
const OBJECT_1D ; 1d
const OBJECT_1E ; 1e
const OBJECT_1F ; 1f
const OBJECT_RANGE ; 20
; 21-27 are not used
OBJECT_STRUCT_LENGTH EQU 40
NUM_OBJECT_STRUCTS EQU 13 ; see wObjectStructs
; object_struct OBJECT_FACING values
OW_DOWN EQU DOWN << 2
OW_UP EQU UP << 2
OW_LEFT EQU LEFT << 2
OW_RIGHT EQU RIGHT << 2
; object_struct OBJECT_FLAGS1 bit flags
INVISIBLE EQU 0
FIXED_FACING EQU 2
SLIDING EQU 3
EMOTE_OBJECT EQU 7
; object_struct OBJECT_FLAGS2 bit flags
LOW_PRIORITY EQU 0
HIGH_PRIORITY EQU 1
OVERHEAD EQU 3
; map_object struct members (see macros/wram.asm)
const_def
const MAPOBJECT_OBJECT_STRUCT_ID ; 0
const MAPOBJECT_SPRITE ; 1
const MAPOBJECT_Y_COORD ; 2
const MAPOBJECT_X_COORD ; 3
const MAPOBJECT_MOVEMENT ; 4
const MAPOBJECT_RADIUS ; 5
const MAPOBJECT_HOUR ; 6
const MAPOBJECT_TIMEOFDAY ; 7
const MAPOBJECT_COLOR ; 8
const MAPOBJECT_RANGE ; 9
const MAPOBJECT_SCRIPT_POINTER ; a
const MAPOBJECT_POINTER_HI ; b
const MAPOBJECT_EVENT_FLAG ; c
const MAPOBJECT_FLAG_HI ; d
const MAPOBJECT_E ; unused
const MAPOBJECT_F ; unused
OBJECT_LENGTH EQU const_value
MAPOBJECT_SCREEN_HEIGHT EQU 11
MAPOBJECT_SCREEN_WIDTH EQU 12
; SpriteMovementData indexes (see data/sprites/map_objects.asm)
const_def
const SPRITEMOVEDATA_00 ; 00
const SPRITEMOVEDATA_STILL ; 01
const SPRITEMOVEDATA_WANDER ; 02
const SPRITEMOVEDATA_SPINRANDOM_SLOW ; 03
const SPRITEMOVEDATA_WALK_UP_DOWN ; 04
const SPRITEMOVEDATA_WALK_LEFT_RIGHT ; 05
const SPRITEMOVEDATA_STANDING_DOWN ; 06
const SPRITEMOVEDATA_STANDING_UP ; 07
const SPRITEMOVEDATA_STANDING_LEFT ; 08
const SPRITEMOVEDATA_STANDING_RIGHT ; 09
const SPRITEMOVEDATA_SPINRANDOM_FAST ; 0a
const SPRITEMOVEDATA_PLAYER ; 0b
const SPRITEMOVEDATA_0C ; 0c
const SPRITEMOVEDATA_0D ; 0d
const SPRITEMOVEDATA_0E ; 0e
const SPRITEMOVEDATA_0F ; 0f
const SPRITEMOVEDATA_10 ; 10
const SPRITEMOVEDATA_11 ; 11
const SPRITEMOVEDATA_12 ; 12
const SPRITEMOVEDATA_FOLLOWING ; 13
const SPRITEMOVEDATA_SCRIPTED ; 14
const SPRITEMOVEDATA_BIGDOLLSYM ; 15
const SPRITEMOVEDATA_POKEMON ; 16
const SPRITEMOVEDATA_SUDOWOODO ; 17
const SPRITEMOVEDATA_SMASHABLE_ROCK ; 18
const SPRITEMOVEDATA_STRENGTH_BOULDER ; 19
const SPRITEMOVEDATA_FOLLOWNOTEXACT ; 1a
const SPRITEMOVEDATA_SHADOW ; 1b
const SPRITEMOVEDATA_EMOTE ; 1c
const SPRITEMOVEDATA_SCREENSHAKE ; 1d
const SPRITEMOVEDATA_SPINCOUNTERCLOCKWISE ; 1e
const SPRITEMOVEDATA_SPINCLOCKWISE ; 1f
const SPRITEMOVEDATA_BIGDOLLASYM ; 20
const SPRITEMOVEDATA_BIGDOLL ; 21
const SPRITEMOVEDATA_BOULDERDUST ; 22
const SPRITEMOVEDATA_GRASS ; 23
const SPRITEMOVEDATA_SWIM_WANDER ; 24
NUM_SPRITEMOVEDATA EQU const_value
SPRITEMOVEDATA_FIELDS EQU 6
; MapObjectMovementPattern.Pointers indexes (see engine/map_objects.asm)
const_def
const SPRITEMOVEFN_00 ; 00
const SPRITEMOVEFN_RANDOM_WALK_Y ; 01
const SPRITEMOVEFN_RANDOM_WALK_X ; 02
const SPRITEMOVEFN_RANDOM_WALK_XY ; 03
const SPRITEMOVEFN_SLOW_RANDOM_SPIN ; 04
const SPRITEMOVEFN_FAST_RANDOM_SPIN ; 05
const SPRITEMOVEFN_STANDING ; 06
const SPRITEMOVEFN_OBEY_DPAD ; 07
const SPRITEMOVEFN_08 ; 08
const SPRITEMOVEFN_09 ; 09
const SPRITEMOVEFN_0A ; 0a
const SPRITEMOVEFN_0B ; 0b
const SPRITEMOVEFN_0C ; 0c
const SPRITEMOVEFN_0D ; 0d
const SPRITEMOVEFN_0E ; 0e
const SPRITEMOVEFN_FOLLOW ; 0f
const SPRITEMOVEFN_SCRIPTED ; 10
const SPRITEMOVEFN_STRENGTH ; 11
const SPRITEMOVEFN_FOLLOWNOTEXACT ; 12
const SPRITEMOVEFN_SHADOW ; 13
const SPRITEMOVEFN_EMOTE ; 14
const SPRITEMOVEFN_BIG_SNORLAX ; 15
const SPRITEMOVEFN_BOUNCE ; 16
const SPRITEMOVEFN_SCREENSHAKE ; 17
const SPRITEMOVEFN_SPIN_CLOCKWISE ; 18
const SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE ; 19
const SPRITEMOVEFN_BOULDERDUST ; 1a
const SPRITEMOVEFN_GRASS ; 1b
; StepTypesJumptable indexes (see engine/map_objects.asm)
const_def
const STEP_TYPE_00 ; 00
const STEP_TYPE_SLEEP ; 01
const STEP_TYPE_NPC_WALK ; 02
const STEP_TYPE_03 ; 03
const STEP_TYPE_04 ; 04
const STEP_TYPE_05 ; 05
const STEP_TYPE_PLAYER_WALK ; 06
const STEP_TYPE_07 ; 07
const STEP_TYPE_NPC_JUMP ; 08
const STEP_TYPE_PLAYER_JUMP ; 09
const STEP_TYPE_HALF_STEP ; 0a
const STEP_TYPE_BUMP ; 0b
const STEP_TYPE_TELEPORT_FROM ; 0c
const STEP_TYPE_TELEPORT_TO ; 0d
const STEP_TYPE_SKYFALL ; 0e
const STEP_TYPE_0F ; 0f
const STEP_TYPE_GOT_BITE ; 10
const STEP_TYPE_ROCK_SMASH ; 11
const STEP_TYPE_RETURN_DIG ; 12
const STEP_TYPE_TRACKING_OBJECT ; 13
const STEP_TYPE_14 ; 14
const STEP_TYPE_15 ; 15
const STEP_TYPE_16 ; 16
const STEP_TYPE_17 ; 17
const STEP_TYPE_18 ; 18
const STEP_TYPE_SKYFALL_TOP ; 19
; ObjectActionPairPointers indexes (see engine/map_object_action.asm)
const_def
const OBJECT_ACTION_00 ; 00
const OBJECT_ACTION_STAND ; 01
const OBJECT_ACTION_STEP ; 02
const OBJECT_ACTION_BUMP ; 03
const OBJECT_ACTION_SPIN ; 04
const OBJECT_ACTION_SPIN_FLICKER ; 05
const OBJECT_ACTION_FISHING ; 06
const OBJECT_ACTION_SHADOW ; 07
const OBJECT_ACTION_EMOTE ; 08
const OBJECT_ACTION_BIG_DOLL_SYM ; 09
const OBJECT_ACTION_BOUNCE ; 0a
const OBJECT_ACTION_WEIRD_TREE ; 0b
const OBJECT_ACTION_BIG_DOLL_ASYM ; 0c
const OBJECT_ACTION_BIG_DOLL ; 0d
const OBJECT_ACTION_BOULDER_DUST ; 0e
const OBJECT_ACTION_GRASS_SHAKE ; 0f
const OBJECT_ACTION_SKYFALL ; 10
; Facings indexes (see data/sprites/facings.asm)
const_def
const FACING_STEP_DOWN_0 ; 00
const FACING_STEP_DOWN_1 ; 01
const FACING_STEP_DOWN_2 ; 02
const FACING_STEP_DOWN_3 ; 03
const FACING_STEP_UP_0 ; 04
const FACING_STEP_UP_1 ; 05
const FACING_STEP_UP_2 ; 06
const FACING_STEP_UP_3 ; 07
const FACING_STEP_LEFT_0 ; 08
const FACING_STEP_LEFT_1 ; 09
const FACING_STEP_LEFT_2 ; 0a
const FACING_STEP_LEFT_3 ; 0b
const FACING_STEP_RIGHT_0 ; 0c
const FACING_STEP_RIGHT_1 ; 0d
const FACING_STEP_RIGHT_2 ; 0e
const FACING_STEP_RIGHT_3 ; 0f
const FACING_FISH_DOWN ; 10
const FACING_FISH_UP ; 11
const FACING_FISH_LEFT ; 12
const FACING_FISH_RIGHT ; 13
const FACING_EMOTE ; 14
const FACING_SHADOW ; 15
const FACING_BIG_DOLL_ASYM ; 16
const FACING_BIG_DOLL_SYM ; 17
const FACING_WEIRD_TREE_0 ; 18
const FACING_WEIRD_TREE_1 ; 19
const FACING_WEIRD_TREE_2 ; 1a
const FACING_WEIRD_TREE_3 ; 1b
const FACING_BOULDER_DUST_1 ; 1c
const FACING_BOULDER_DUST_2 ; 1d
const FACING_GRASS_1 ; 1e
const FACING_GRASS_2 ; 1f
; DoPlayerMovement.DoStep arguments (see engine/player_movement.asm)
const_def
const STEP_SLOW ; 0
const STEP_WALK ; 1
const STEP_BIKE ; 2
const STEP_LEDGE ; 3
const STEP_ICE ; 4
const STEP_TURN ; 5
const STEP_BACK_LEDGE ; 6
const STEP_WALK_IN_PLACE ; 7

Some files were not shown because too many files have changed in this diff Show More