Merge pull request #501 from mid-kid/reorg

Organize the engine/ directory
This commit is contained in:
yenatch 2018-04-04 21:04:14 -04:00 committed by GitHub
commit fe4377ce53
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
268 changed files with 342 additions and 343 deletions

View File

@ -21,8 +21,8 @@ data/maps/map_data.o \
data/pokemon/dex_entries.o \
data/pokemon/egg_moves.o \
data/pokemon/evos_attacks.o \
engine/credits.o \
engine/events.o \
engine/movie/credits.o \
engine/overworld/events.o \
gfx/pics.o \
gfx/sprites.o \
lib/mobile/main.o

2
constants/audio_constants.asm Executable file → Normal file
View File

@ -17,7 +17,7 @@
const CC ; d (used for pitchoffset)
; channel
; ChannelPointers indexes (see engine/audio.asm)
; ChannelPointers indexes (see audio/engine.asm)
const_def
const CHAN1 ; 0
const CHAN2 ; 1

0
constants/battle_tower_constants.asm Executable file → Normal file
View File

0
constants/cry_constants.asm Executable file → Normal file
View File

View File

@ -35,7 +35,7 @@ const_value = 1
const YELLOW_CARPET
const GREEN_CARPET
; DoDecorationAction2.DecoActions indexes (see engine/decorations.asm)
; DoDecorationAction2.DecoActions indexes (see engine/overworld/decorations.asm)
const_value = 1
const SET_UP_BED
const PUT_AWAY_BED
@ -64,41 +64,41 @@ ENDM
; - DecorationIDs (see data/decorations/decorations.asm)
const_value = 1
__enum__ = 0
; FindOwnedBeds.beds values (see engine/decorations.asm)
; FindOwnedBeds.beds values (see engine/overworld/decorations.asm)
const BEDS
deco FEATHERY_BED
deco PINK_BED
deco POLKADOT_BED
deco PIKACHU_BED
; FindOwnedCarpets.carpets values (see engine/decorations.asm)
; FindOwnedCarpets.carpets values (see engine/overworld/decorations.asm)
const CARPETS
deco RED_CARPET
deco BLUE_CARPET
deco YELLOW_CARPET
deco GREEN_CARPET
; FindOwnedPlants.plants values (see engine/decorations.asm)
; FindOwnedPlants.plants values (see engine/overworld/decorations.asm)
const PLANTS
deco MAGNAPLANT
deco TROPICPLANT
deco JUMBOPLANT
; FindOwnedPosters.posters values (see engine/decorations.asm)
; FindOwnedPosters.posters values (see engine/overworld/decorations.asm)
const POSTERS
deco TOWN_MAP
deco PIKACHU_POSTER
deco CLEFAIRY_POSTER
deco JIGGLYPUFF_POSTER
; FindOwnedConsoles.consoles values (see engine/decorations.asm)
; FindOwnedConsoles.consoles values (see engine/overworld/decorations.asm)
const CONSOLES
deco FAMICOM
deco SNES
deco N64
deco VIRTUAL_BOY
; FindOwnedBigDolls.big_dolls values (see engine/decorations.asm)
; FindOwnedBigDolls.big_dolls values (see engine/overworld/decorations.asm)
const BIG_DOLLS
deco BIG_SNORLAX_DOLL
deco BIG_ONIX_DOLL
deco BIG_LAPRAS_DOLL
; FindOwnedOrnaments.ornaments values (see engine/decorations.asm)
; FindOwnedOrnaments.ornaments values (see engine/overworld/decorations.asm)
const DOLLS
deco PIKACHU_DOLL
deco SURF_PIKACHU_DOLL

View File

@ -1,4 +1,4 @@
; EngineFlags indexes (see engine/engine_flasg.asm)
; EngineFlags indexes (see engine/engine_flags.asm)
const_def
; wPokegearFlags
const ENGINE_RADIO_CARD

View File

@ -41,7 +41,7 @@ SPRITEOAMSTRUCT_LENGTH EQU const_value
NUM_SPRITE_OAM_STRUCTS EQU 40 ; see wVirtualOAM
; PokeAnims indexes (see engine/pic_animation.asm)
; PokeAnims indexes (see engine/gfx/pic_animation.asm)
const_def
const ANIM_MON_SLOW
const ANIM_MON_NORMAL

View File

@ -3,7 +3,7 @@
; - ItemNames (see data/items/names.asm)
; - ItemDescriptions (see data/items/descriptions.asm)
; - ItemAttributes (see data/items/attributes.asm)
; - ItemEffects (see engine/item_effects.asm)
; - ItemEffects (see engine/items/item_effects.asm)
const_def
const NO_ITEM ; 00
const MASTER_BALL ; 01

View File

@ -17,8 +17,8 @@ ITEMATTR_STRUCT_LENGTH EQU const_value
const TM_HM ; 4
; item menu types
; UseItem.dw indexes (see engine/pack.asm)
; UseRegisteredItem.SwitchTo indexes (see engine/select_menu.asm)
; UseItem.dw indexes (see engine/items/pack.asm)
; UseRegisteredItem.SwitchTo indexes (see engine/overworld/select_menu.asm)
ITEMMENU_NOUSE EQU 0
ITEMMENU_CURRENT EQU 4
ITEMMENU_PARTY EQU 5
@ -130,7 +130,7 @@ MAIL_STRUCT_LENGTH EQU $2f ; mailmsg struct
const HELD_FOCUS_BAND
; mart types (see engine/mart.asm)
; mart types (see engine/items/mart.asm)
const_def
const MARTTYPE_STANDARD
const MARTTYPE_BITTER

View File

@ -103,6 +103,6 @@ const_value = -1
NUM_SPAWNS EQU const_value
; outdoor sprite limits (see engine/overworld.asm)
; outdoor sprite limits (see engine/overworld/overworld.asm)
MAX_OUTDOOR_SPRITES EQU 23
SPRITE_GFX_LIST_CAPACITY EQU $20

View File

@ -121,7 +121,7 @@ MAPOBJECT_SCREEN_WIDTH EQU 12
NUM_SPRITEMOVEDATA EQU const_value
SPRITEMOVEDATA_FIELDS EQU 6
; MapObjectMovementPattern.Pointers indexes (see engine/map_objects.asm)
; MapObjectMovementPattern.Pointers indexes (see engine/overworld/map_objects.asm)
const_def
const SPRITEMOVEFN_00 ; 00
const SPRITEMOVEFN_RANDOM_WALK_Y ; 01
@ -152,7 +152,7 @@ SPRITEMOVEDATA_FIELDS EQU 6
const SPRITEMOVEFN_BOULDERDUST ; 1a
const SPRITEMOVEFN_GRASS ; 1b
; StepTypesJumptable indexes (see engine/map_objects.asm)
; StepTypesJumptable indexes (see engine/overworld/map_objects.asm)
const_def
const STEP_TYPE_00 ; 00
const STEP_TYPE_SLEEP ; 01
@ -181,7 +181,7 @@ SPRITEMOVEDATA_FIELDS EQU 6
const STEP_TYPE_18 ; 18
const STEP_TYPE_SKYFALL_TOP ; 19
; ObjectActionPairPointers indexes (see engine/map_object_action.asm)
; ObjectActionPairPointers indexes (see engine/overworld/map_object_action.asm)
const_def
const OBJECT_ACTION_00 ; 00
const OBJECT_ACTION_STAND ; 01
@ -237,7 +237,7 @@ SPRITEMOVEDATA_FIELDS EQU 6
const FACING_GRASS_2 ; 1f
; DoPlayerMovement.DoStep arguments (see engine/player_movement.asm)
; DoPlayerMovement.DoStep arguments (see engine/overworld/player_movement.asm)
const_def
const STEP_SLOW ; 0
const STEP_WALK ; 1

View File

@ -14,7 +14,7 @@
const MAPSETUP_BADWARP ; fb
const MAPSETUP_FLY ; fc
; MapSetupCommands indexes (see engine/map_setup.asm)
; MapSetupCommands indexes (see engine/overworld/map_setup.asm)
; Names taken from Condensation water's scripting compendium
; https://hax.iimarck.us/files/scriptingcodes_eng.htm
const_def

View File

@ -34,7 +34,7 @@
; MonMenuOptions indexes (see data/mon_menu.asm)
; used by PokemonActionSubmenu (see engine/start_menu.asm)
; used by PokemonActionSubmenu (see engine/menus/start_menu.asm)
const_def 1
; moves
const MONMENUITEM_CUT ; 1
@ -83,7 +83,7 @@ HMENURETURN_ASM EQU %11111111
const PARTYMENUACTION_GIVE_MON_FEMALE ; unused
const PARTYMENUACTION_GIVE_ITEM
const PARTYMENUACTION_MOBILE ; mobile
; PrintPartyMenuActionText arguments (see engine/party_menu.asm)
; PrintPartyMenuActionText arguments (see engine/pokemon/party_menu.asm)
const_def $f0
const PARTYMENUTEXT_HEAL_PSN
const PARTYMENUTEXT_HEAL_BRN

0
constants/printer_constants.asm Executable file → Normal file
View File

View File

@ -1,8 +1,8 @@
; radio channel ids
; indexes for:
; - RadioChannelSongs (see data/radio/channel_music.asm)
; - PlayRadioShow/RadioJumptable (see engine/radio.asm)
; - RadioChannels (see engine/radio.asm)
; - PlayRadioShow/RadioJumptable (see engine/pokegear/radio.asm)
; - RadioChannels (see engine/pokegear/radio.asm)
const_def
const OAKS_POKEMON_TALK ; 00
const POKEDEX_SHOW ; 01
@ -94,7 +94,7 @@
const POKEDEX_SHOW_7 ; 56
const POKEDEX_SHOW_8 ; 57
; PlayRadio.StationPointers indexes (see engine/pokegear.asm)
; PlayRadio.StationPointers indexes (see engine/pokegear/pokegear.asm)
const_def
const MAPRADIO_POKEMON_CHANNEL
const MAPRADIO_OAKS_POKEMON_TALK
@ -106,7 +106,7 @@
const MAPRADIO_LETS_ALL_SING
const MAPRADIO_ROCKET
; These tables in engine/radio.asm are all sized to a power of 2
; These tables in engine/pokegear/radio.asm are all sized to a power of 2
; so there's no need for a rejection sampling loop
NUM_OAKS_POKEMON_TALK_ADVERBS EQU 16 ; OaksPKMNTalk8.Adverbs
NUM_OAKS_POKEMON_TALK_ADJECTIVES EQU 16 ; OaksPKMNTalk9.Adjectives
@ -117,7 +117,7 @@ NUM_PNP_PLACES_ADJECTIVES EQU 16 ; PeoplePlaces7.Adjectives
NUM_PASSWORD_CATEGORIES EQU 11
NUM_PASSWORDS_PER_CATEGORY EQU 3
; GetBuenasPassword.StringFunctionJumpTable indexes (see engine/radio.asm)
; GetBuenasPassword.StringFunctionJumpTable indexes (see engine/pokegear/radio.asm)
const_def
const BUENA_MON
const BUENA_ITEM

4
constants/scgb_constants.asm Executable file → Normal file
View File

@ -1,4 +1,4 @@
; GetSGBLayout arguments (see engine/cgb_layouts.asm and engine/sgb_layouts.asm)
; GetSGBLayout arguments (see engine/gfx/cgb_layouts.asm and engine/gfx/sgb_layouts.asm)
const_def
const SCGB_BATTLE_GRAYSCALE
const SCGB_BATTLE_COLORS
@ -36,7 +36,7 @@ SCGB_PARTY_MENU_HP_PALS EQU -4
SCGB_RAM EQU -1
; PredefPals indexes (see gfx/sgb/predef.pal)
; GetPredefPal arguments (see engine/color.asm)
; GetPredefPal arguments (see engine/gfx/color.asm)
const_def
const PREDEFPAL_00
const PREDEFPAL_PALLET

View File

@ -38,7 +38,7 @@ NUM_MEM_BUFFERS EQU const_value
; writecode/checkcode arguments
; _GetVarAction.VarActionTable indexes (see engine/variables.asm)
; _GetVarAction.VarActionTable indexes (see engine/overworld/variables.asm)
const_def
const VAR_STRINGBUFFER2 ; 00
const VAR_PARTYCOUNT ; 01
@ -75,7 +75,7 @@ RETVAR_ADDR_DE EQU (1 << 6)
RETVAR_EXECUTE EQU (2 << 6)
; PlayerEventScriptPointers indexes (see engine/events.asm)
; PlayerEventScriptPointers indexes (see engine/overworld/events.asm)
const_def -1
const PLAYEREVENT_MAPSCRIPT
const PLAYEREVENT_NONE
@ -92,7 +92,7 @@ NUM_PLAYER_EVENTS EQU const_value
; bg_event types
; TryBGEvent arguments (see engine/events.asm)
; TryBGEvent arguments (see engine/overworld/events.asm)
const_def
const BGEVENT_READ
const BGEVENT_UP
@ -105,7 +105,7 @@ NUM_PLAYER_EVENTS EQU const_value
const BGEVENT_COPY
; object_event types
; TryObjectEvent arguments (see engine/events.asm)
; TryObjectEvent arguments (see engine/overworld/events.asm)
const_def
const OBJECTTYPE_SCRIPT
const OBJECTTYPE_ITEMBALL
@ -203,7 +203,7 @@ EMOTE_MEM EQU -1
NUM_FRUIT_TREES EQU const_value + -1
; describedecoration arguments
; DescribeDecoration.JumpTable indexes (see engine/decorations.asm)
; DescribeDecoration.JumpTable indexes (see engine/overworld/decorations.asm)
const_def
const DECODESC_POSTER ; 0
const DECODESC_LEFT_DOLL ; 1
@ -259,7 +259,7 @@ NUM_FRUIT_TREES EQU const_value + -1
const HEALMACHINE_HALL_OF_FAME ; 2
; UnownPuzzle writebyte arguments
; LoadUnownPuzzlePiecesGFX.LZPointers indexes (see engine/unown_puzzle.asm)
; LoadUnownPuzzlePiecesGFX.LZPointers indexes (see engine/games/unown_puzzle.asm)
const_def
const UNOWNPUZZLE_KABUTO ; 0
const UNOWNPUZZLE_OMANYTE ; 1

View File

@ -67,7 +67,7 @@ NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
const SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY ; 2b
const SPRITE_ANIM_INDEX_CELEBI ; 2c
; DoAnimFrame.Jumptable indexes (see engine/sprite_anims.asm)
; DoAnimFrame.Jumptable indexes (see engine/gfx/sprite_anims.asm)
const_def
const SPRITE_ANIM_SEQ_NULL ; 00
const SPRITE_ANIM_SEQ_PARTY_MON ; 01

View File

@ -144,7 +144,7 @@ SPRITE_POKEMON EQU const_value
const SPRITE_LUGIA ; a1
const SPRITE_HO_OH ; a2
; special GetMonSprite values (see engine/overworld.asm)
; special GetMonSprite values (see engine/overworld/overworld.asm)
const_def $e0
const SPRITE_DAY_CARE_MON_1 ; e0
const SPRITE_DAY_CARE_MON_2 ; e1

View File

@ -36,7 +36,7 @@ TEXTBOX_INNERY EQU TEXTBOX_Y + 2
const PRINTNUM_RIGHTALIGN_F ; 6
const PRINTNUM_LEADINGZEROS_F ; 7
; PrintNum arguments (see engine/printnum.asm)
; PrintNum arguments (see engine/math/print_num.asm)
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
PRINTNUM_RIGHTALIGN EQU 1 << PRINTNUM_RIGHTALIGN_F
PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F

0
data/battle_anims/framesets.asm Executable file → Normal file
View File

0
data/battle_anims/oam.asm Executable file → Normal file
View File

0
data/battle_anims/object_gfx.asm Executable file → Normal file
View File

0
data/battle_anims/objects.asm Executable file → Normal file
View File

0
data/battle_tower/unknown.asm Executable file → Normal file
View File

0
data/sprite_anims/framesets.asm Executable file → Normal file
View File

0
data/sprites/map_objects.asm Executable file → Normal file
View File

0
data/trainers/class_names.asm Executable file → Normal file
View File

0
data/unused_53d84.asm Executable file → Normal file
View File

View File

@ -88,7 +88,7 @@ Temporarily creates sprites from the top row of the player backpic, so that the
## `$DB`: `anim_checkpokeball`
Sets `BattleAnimVar` to the result of [GetPokeBallWobble](/engine/battle_anims/getpokeballwobble.asm).
Sets `BattleAnimVar` to the result of [GetPokeBallWobble](/engine/battle_anims/pokeball_wobble.asm).
## `$DC`: `anim_transform`

View File

@ -490,7 +490,7 @@ This is a bug with `LongAnim_UpdateVariables` in [engine/battle/anim_hp_bar.asm]
([Video](https://www.youtube.com/watch?v=9KyNVIZxJvI))
This is a bug with `ShortHPBar_CalcPixelFrame` in [engine/anim_hp_bar.asm](/engine/anim_hp_bar.asm):
This is a bug with `ShortHPBar_CalcPixelFrame` in [engine/battle/anim_hp_bar.asm](/engine/battle/anim_hp_bar.asm):
```asm
ld b, 0
@ -519,7 +519,7 @@ This is a bug with `ShortHPBar_CalcPixelFrame` in [engine/anim_hp_bar.asm](/engi
This can bring Pokémon straight from level 1 to 100 by gaining just a few experience points.
This is a bug with `CalcExpAtLevel` in [engine/experience.asm](/engine/experience.asm):
This is a bug with `CalcExpAtLevel` in [engine/pokemon/experience.asm](/engine/pokemon/experience.asm):
```asm
CalcExpAtLevel: ; 50e47
@ -589,7 +589,7 @@ Text_StringBuffer2ExpPoints::
## BRN/PSN/PAR do not affect catch rate
This is a bug with `PokeBallEffect` in [engine/item_effects.asm](/engine/item_effects.asm):
This is a bug with `PokeBallEffect` in [engine/items/item_effects.asm](/engine/items/item_effects.asm):
```asm
; This routine is buggy. It was intended that SLP and FRZ provide a higher
@ -713,7 +713,7 @@ This is a bug with `ItemAttributes` in [data/items/attributes.asm](/data/items/a
## Daisy's grooming doesn't always increase happiness
This is a bug with `HaircutOrGrooming` in [engine/events/specials_2.asm](/engine/events/specials_2.asm):
This is a bug with `HaircutOrGrooming` in [engine/events/haircut.asm](/engine/events/haircut.asm):
```asm
; Bug: Subtracting $ff from $ff fails to set c.
@ -923,7 +923,7 @@ This is a bug with `_HallOfFamePC.DisplayMonAndStrings` in [engine/events/hallof
([Video](https://www.youtube.com/watch?v=ojq3xqfRF6I))
This is a bug with `Slots_PayoutAnim` in [engine/slot_machine.asm](/engine/slot_machine.asm):
This is a bug with `Slots_PayoutAnim` in [engine/games/slot_machine.asm](/engine/games/slot_machine.asm):
```asm
.okay
@ -973,7 +973,7 @@ This is a bug with `PlayBattleMusic` in [engine/battle/start_battle.asm](/engine
## No bump noise if standing on tile `$3E`
This is a bug with `DoPlayerMovement.CheckWarp` in [engine/player_movement.asm](/engine/player_movement.asm):
This is a bug with `DoPlayerMovement.CheckWarp` in [engine/overworld/player_movement.asm](/engine/overworld/player_movement.asm):
```asm
; Bug: Since no case is made for STANDING here, it will check
@ -1108,7 +1108,7 @@ In [home/map.asm](/home/map.asm):
This bug is why the Lapras in [maps/UnionCaveB2F.asm](/maps/UnionCaveB2F.asm), which uses `SPRITEMOVEDATA_SWIM_WANDER`, is not restricted by its `1, 1` movement radius.
In [engine/npc_movement.asm](/engine/npc_movement.asm):
In [engine/overworld/npc_movement.asm](/engine/overworld/npc_movement.asm):
```asm
ld hl, OBJECT_FLAGS1
@ -1126,7 +1126,7 @@ In [engine/npc_movement.asm](/engine/npc_movement.asm):
This bug can allow you to talk to Eusine in Celadon City and encounter Ho-Oh with only traded legendary beasts.
In [engine/search.asm](/engine/search.asm):
In [engine/pokemon/search.asm](/engine/pokemon/search.asm):
```asm
; check OT
@ -1157,7 +1157,7 @@ endr
This bug can affect Mew or Pokémon other than Ditto that used Transform via Mirror Move or Sketch.
This is a bug with `PokeBallEffect` in [engine/item_effects.asm](/engine/item_effects.asm):
This is a bug with `PokeBallEffect` in [engine/items/item_effects.asm](/engine/items/item_effects.asm):
```asm
ld hl, wEnemySubStatus5
@ -1229,7 +1229,7 @@ This is a bug with `PokeBallEffect` in [engine/item_effects.asm](/engine/item_ef
([Video](https://www.youtube.com/watch?v=v1ErZdLCIyU))
This is a bug with `PokeBallEffect` in [engine/item_effects.asm](/engine/item_effects.asm):
This is a bug with `PokeBallEffect` in [engine/items/item_effects.asm](/engine/items/item_effects.asm):
```asm
.room_in_party
@ -1254,7 +1254,7 @@ This is a bug with `PokeBallEffect` in [engine/item_effects.asm](/engine/item_ef
## `HELD_CATCH_CHANCE` has no effect
This is a bug with `PokeBallEffect` in [engine/item_effects.asm](/engine/item_effects.asm):
This is a bug with `PokeBallEffect` in [engine/items/item_effects.asm](/engine/items/item_effects.asm):
```asm
; BUG: farcall overwrites a, and GetItemHeldEffect takes b anyway.
@ -1281,7 +1281,7 @@ This is a bug with `PokeBallEffect` in [engine/item_effects.asm](/engine/item_ef
## Only the first three `EvosAttacks` evolution entries can have Stone compatibility reported correctly
This is a bug with `PlacePartyMonEvoStoneCompatibility.DetermineCompatibility` in [engine/party_menu.asm](/engine/party_menu.asm):
This is a bug with `PlacePartyMonEvoStoneCompatibility.DetermineCompatibility` in [engine/pokemon/party_menu.asm](/engine/pokemon/party_menu.asm):
```asm
.DetermineCompatibility: ; 50268
@ -1304,7 +1304,7 @@ This is a bug with `PlacePartyMonEvoStoneCompatibility.DetermineCompatibility` i
## `EVOLVE_STAT` can break Stone compatibility reporting
This is a bug with `PlacePartyMonEvoStoneCompatibility.DetermineCompatibility` in [engine/party_menu.asm](/engine/party_menu.asm):
This is a bug with `PlacePartyMonEvoStoneCompatibility.DetermineCompatibility` in [engine/pokemon/party_menu.asm](/engine/pokemon/party_menu.asm):
```asm
.loop2
@ -1337,7 +1337,7 @@ This is a bug with `PlacePartyMonEvoStoneCompatibility.DetermineCompatibility` i
## `ScriptCall` can overflow `wScriptStack` and crash
In [engine/scripting.asm](/engine/scripting.asm):
In [engine/overworld/scripting.asm](/engine/overworld/scripting.asm):
```asm
ScriptCall:
@ -1377,7 +1377,7 @@ ScriptCall:
## `LoadSpriteGFX` does not limit the capacity of `UsedSprites`
In [engine/overworld.asm](/engine/overworld.asm):
In [engine/overworld/overworld.asm](/engine/overworld/overworld.asm):
```asm
LoadSpriteGFX: ; 14306
@ -1414,7 +1414,7 @@ LoadSpriteGFX: ; 14306
## `ChooseWildEncounter` doesn't really validate the wild Pokémon species
In [engine/wildmons.asm](/engine/wildmons.asm):
In [engine/overworld/wildmons.asm](/engine/overworld/wildmons.asm):
```asm
ChooseWildEncounter: ; 2a14f
@ -1452,7 +1452,7 @@ ValidateTempWildMonSpecies: ; 2a4a0
## `TryObjectEvent` arbitrary code execution
In [engine/events.asm](/engine/events.asm):
In [engine/overworld/events.asm](/engine/overworld/events.asm):
```asm
; Bug: If IsInArray returns nc, data at bc will be executed as code.

View File

@ -25,7 +25,7 @@ dba_pic: MACRO ; dbw bank, address
ENDM
```
The offset is translated into a correct bank by `FixPicBank` in [engine/load_pics.asm](/engine/load_pics.asm):
The offset is translated into a correct bank by `FixPicBank` in [engine/gfx/load_pics.asm](/engine/gfx/load_pics.asm):
```asm
FixPicBank: ; 511c5
@ -107,7 +107,7 @@ ROMX $49
"Pics 2"
```
Two routines in [engine/load_pics.asm](/engine/load_pics.asm) make this assumption; `GetFrontpicPointer`:
Two routines in [engine/gfx/load_pics.asm](/engine/gfx/load_pics.asm) make this assumption; `GetFrontpicPointer`:
```asm
ld a, [wCurPartySpecies]
@ -295,7 +295,7 @@ Modify `Pokedex_LoadAnyFootprint`:
NUM_TMS = const_value - TM01 - 2 ; discount ITEM_C3 and ITEM_DC
```
`GetTMHMNumber` and `GetNumberedTMHM` in [engine/items.asm](/engine/items.asm) have to compensate for this:
`GetTMHMNumber` and `GetNumberedTMHM` in [engine/items/items.asm](/engine/items/items.asm) have to compensate for this:
```asm
GetTMHMNumber:: ; d407
@ -338,7 +338,7 @@ GetNumberedTMHM: ; d417
Move `ITEM_C3` and `ITEM_DC` above all the TMs in every table of item data.
Modify engine/items.asm:
Modify engine/items/items.asm:
```asm
GetTMHMNumber:: ; d407
@ -399,7 +399,7 @@ GetDexEntryPointer: ; 44333
db BANK(PokedexEntries4)
```
`GetPokedexEntryBank` in [engine/item_effects.asm](/engine/item_effects.asm):
`GetPokedexEntryBank` in [engine/items/item_effects.asm](/engine/items/item_effects.asm):
```asm
GetPokedexEntryBank:
@ -425,7 +425,7 @@ GetPokedexEntryBank:
db BANK(PokedexEntries4)
```
And `PokedexShow_GetDexEntryBank` in [engine/radio.asm](/engine/radio.asm):
And `PokedexShow_GetDexEntryBank` in [engine/pokegear/radio.asm](/engine/pokegear/radio.asm):
```asm
PokedexShow_GetDexEntryBank:
@ -457,7 +457,7 @@ PokedexShow_GetDexEntryBank:
## Identical sine wave code and data is repeated five times
`_Sine` in [engine/routines/sine.asm](/engine/routines/sine.asm):
`_Sine` in [engine/math/sine.asm](/engine/math/sine.asm):
```asm
_Sine:: ; 84d9
@ -466,7 +466,7 @@ _Sine:: ; 84d9
calc_sine_wave
```
`Sprites_Cosine` and `Sprites_Sine` in [engine/sprites.asm](/engine/sprites.asm):
`Sprites_Cosine` and `Sprites_Sine` in [engine/gfx/sprites.asm](/engine/gfx/sprites.asm):
```asm
Sprites_Cosine: ; 8e72a
@ -583,7 +583,7 @@ ENDM
## `GetForestTreeFrame` works, but it's still bad
In [engine/tileset_anims.asm](/engine/tileset_anims.asm):
In [engine/tilesets/tileset_anims.asm](/engine/tilesets/tileset_anims.asm):
```asm
GetForestTreeFrame: ; fc54c

View File

@ -1,6 +1,6 @@
# Event Commands
Defined in [macros/scripts/events.asm](/macros/scripts/events.asm) and [engine/scripting.asm:ScriptCommandTable](/engine/scripting.asm).
Defined in [macros/scripts/events.asm](/macros/scripts/events.asm) and [engine/overworld/scripting.asm:ScriptCommandTable](/engine/overworld/scripting.asm).
Until this document is filled out, the [G/S Scripting Compendium](https://hax.iimarckus.org/files/scriptingcodes_eng.htm) has descriptions for most of these commands. It was written for G/S binary hacking and not Crystal assembly hacking, so it's not 100% accurate for pokecrystal.

View File

@ -1,6 +1,6 @@
# Movement Commands
Defined in [macros/scripts/movement.asm](/macros/scripts/movement.asm) and [engine/movement.asm:MovementPointers](/engine/movement.asm).
Defined in [macros/scripts/movement.asm](/macros/scripts/movement.asm) and [engine/overworld/movement.asm:MovementPointers](/engine/overworld/movement.asm).
## `$00``$03`: <code>turn_head <i>direction</i></code>

0
engine/battle/ai/move.asm Executable file → Normal file
View File

0
engine/battle/ai/redundant.asm Executable file → Normal file
View File

0
engine/battle/ai/switch.asm Executable file → Normal file
View File

0
engine/battle/anim_hp_bar.asm Executable file → Normal file
View File

0
engine/battle/link_result.asm Executable file → Normal file
View File

0
engine/battle/menu.asm Executable file → Normal file
View File

0
engine/battle/move_effects/attract.asm Executable file → Normal file
View File

0
engine/battle/move_effects/present.asm Executable file → Normal file
View File

0
engine/battle/move_effects/transform.asm Executable file → Normal file
View File

0
engine/battle/read_trainer_party.asm Executable file → Normal file
View File

0
engine/battle/sliding_intro.asm Executable file → Normal file
View File

0
engine/battle/trainer_huds.asm Executable file → Normal file
View File

0
engine/battle/used_move_text.asm Executable file → Normal file
View File

0
engine/battle_anims/core.asm Executable file → Normal file
View File

0
engine/battle_anims/functions.asm Executable file → Normal file
View File

0
engine/battle_anims/helpers.asm Executable file → Normal file
View File

0
engine/events/basement_key.asm Executable file → Normal file
View File

0
engine/events/battle_tower/battle_tower.asm Executable file → Normal file
View File

0
engine/events/battle_tower/trainer_text.asm Executable file → Normal file
View File

0
engine/events/bug_contest/contest_2.asm Executable file → Normal file
View File

0
engine/events/bug_contest/judging.asm Executable file → Normal file
View File

0
engine/events/card_key.asm Executable file → Normal file
View File

0
engine/events/celebi.asm Executable file → Normal file
View File

0
engine/events/daycare.asm Executable file → Normal file
View File

0
engine/events/elevator.asm Executable file → Normal file
View File

0
engine/events/field_moves.asm Executable file → Normal file
View File

0
engine/events/forced_movement.asm Executable file → Normal file
View File

82
engine/events/haircut.asm Normal file
View File

@ -0,0 +1,82 @@
BillsGrandfather: ; 73f7
farcall SelectMonFromParty
jr c, .cancel
ld a, [wCurPartySpecies]
ld [wScriptVar], a
ld [wNamedObjectIndexBuffer], a
call GetPokemonName
jp CopyPokemonName_Buffer1_Buffer3
.cancel
xor a
ld [wScriptVar], a
ret
YoungerHaircutBrother: ; 7413
ld hl, HappinessData_YoungerHaircutBrother
jr HaircutOrGrooming
OlderHaircutBrother: ; 7418
ld hl, HappinessData_OlderHaircutBrother
jr HaircutOrGrooming
DaisysGrooming: ; 741d
ld hl, HappinessData_DaisysGrooming
; fallthrough
HaircutOrGrooming: ; 7420
push hl
farcall SelectMonFromParty
pop hl
jr c, .nope
ld a, [wCurPartySpecies]
cp EGG
jr z, .egg
push hl
call GetCurNick
call CopyPokemonName_Buffer1_Buffer3
pop hl
call Random
; Bug: Subtracting $ff from $ff fails to set c.
; This can result in overflow into the next data array.
; In the case of getting a grooming from Daisy, we bleed
; into CopyPokemonName_Buffer1_Buffer3, which passes
; $d0 to ChangeHappiness and returns $73 to the script.
; The end result is that there is a 0.4% chance your
; Pokemon's happiness will not change at all.
.loop
sub [hl]
jr c, .ok
inc hl
inc hl
inc hl
jr .loop
.ok
inc hl
ld a, [hli]
ld [wScriptVar], a
ld c, [hl]
call ChangeHappiness
ret
.nope
xor a
ld [wScriptVar], a
ret
.egg
ld a, 1
ld [wScriptVar], a
ret
INCLUDE "data/events/happiness_probabilities.asm"
CopyPokemonName_Buffer1_Buffer3: ; 746e
ld hl, wStringBuffer1
ld de, wStringBuffer3
ld bc, MON_NAME_LENGTH
jp CopyBytes
DummyPredef1: ; 747a
ret

0
engine/events/halloffame.asm Executable file → Normal file
View File

0
engine/events/happiness_egg.asm Executable file → Normal file
View File

0
engine/events/heal_machine_anim.asm Executable file → Normal file
View File

0
engine/events/itemfinder.asm Executable file → Normal file
View File

0
engine/events/magnet_train.asm Executable file → Normal file
View File

0
engine/events/misc_scripts.asm Executable file → Normal file
View File

0
engine/events/mom_phone.asm Executable file → Normal file
View File

0
engine/money.asm → engine/events/money.asm Executable file → Normal file
View File

0
engine/events/npc_trade.asm Executable file → Normal file
View File

0
engine/events/overworld.asm Executable file → Normal file
View File

0
engine/events/poisonstep.asm Executable file → Normal file
View File

0
engine/events/pokecenter_pc.asm Executable file → Normal file
View File

0
engine/events/pokepic.asm Executable file → Normal file
View File

0
engine/events/print_photo.asm Executable file → Normal file
View File

0
engine/events/prof_oaks_pc.asm Executable file → Normal file
View File

0
engine/events/sacred_ash.asm Executable file → Normal file
View File

View File

@ -140,86 +140,3 @@ ReturnShuckle: ; 737e
ld a, SHUCKIE_FAINTED
ld [wScriptVar], a
ret
BillsGrandfather: ; 73f7
farcall SelectMonFromParty
jr c, .cancel
ld a, [wCurPartySpecies]
ld [wScriptVar], a
ld [wNamedObjectIndexBuffer], a
call GetPokemonName
jp CopyPokemonName_Buffer1_Buffer3
.cancel
xor a
ld [wScriptVar], a
ret
YoungerHaircutBrother: ; 7413
ld hl, HappinessData_YoungerHaircutBrother
jr HaircutOrGrooming
OlderHaircutBrother: ; 7418
ld hl, HappinessData_OlderHaircutBrother
jr HaircutOrGrooming
DaisysGrooming: ; 741d
ld hl, HappinessData_DaisysGrooming
; fallthrough
HaircutOrGrooming: ; 7420
push hl
farcall SelectMonFromParty
pop hl
jr c, .nope
ld a, [wCurPartySpecies]
cp EGG
jr z, .egg
push hl
call GetCurNick
call CopyPokemonName_Buffer1_Buffer3
pop hl
call Random
; Bug: Subtracting $ff from $ff fails to set c.
; This can result in overflow into the next data array.
; In the case of getting a grooming from Daisy, we bleed
; into CopyPokemonName_Buffer1_Buffer3, which passes
; $d0 to ChangeHappiness and returns $73 to the script.
; The end result is that there is a 0.4% chance your
; Pokemon's happiness will not change at all.
.loop
sub [hl]
jr c, .ok
inc hl
inc hl
inc hl
jr .loop
.ok
inc hl
ld a, [hli]
ld [wScriptVar], a
ld c, [hl]
call ChangeHappiness
ret
.nope
xor a
ld [wScriptVar], a
ret
.egg
ld a, 1
ld [wScriptVar], a
ret
INCLUDE "data/events/happiness_probabilities.asm"
CopyPokemonName_Buffer1_Buffer3: ; 746e
ld hl, wStringBuffer1
ld de, wStringBuffer3
ld bc, MON_NAME_LENGTH
jp CopyBytes
DummyPredef1: ; 747a
ret

0
engine/events/squirtbottle.asm Executable file → Normal file
View File

0
engine/events/sweet_scent.asm Executable file → Normal file
View File

0
engine/events/treemons.asm Executable file → Normal file
View File

0
engine/events/whiteout.asm Executable file → Normal file
View File

0
engine/card_flip.asm → engine/games/card_flip.asm Executable file → Normal file
View File

0
engine/dummy_game.asm → engine/games/dummy_game.asm Executable file → Normal file
View File

View File

View File

View File

@ -1,4 +1,4 @@
INCLUDE "engine/sgb_layouts.asm"
INCLUDE "engine/gfx/sgb_layouts.asm"
SHINY_ATK_BIT EQU 5
SHINY_DEF_VAL EQU 10
@ -445,7 +445,7 @@ LoadMailPalettes:
.MailPals:
INCLUDE "gfx/mail/mail.pal"
INCLUDE "engine/cgb_layouts.asm"
INCLUDE "engine/gfx/cgb_layouts.asm"
Unreferenced_Function95f0:
ld hl, .Palette

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