Commit Graph

38 Commits

Author SHA1 Message Date
Rangi
96bcf72d96 Document the BattleAnimCmd_ClearObjs bug 2019-02-16 13:31:23 -05:00
mid-kid
80ece33e3e Document wBattleAnimFlags
`anim_clearsprites` was misnamed, so I renamed it to `anim_keepsprites`,
and documented it in docs/battle_anim_commands.md
2019-02-16 12:55:40 +01:00
mid-kid
7e93916c8a Add more constants for battle anim structs
Any access of the wram arrays for battle anim objects and background
effects use appropriate macros and constants, now.
2019-02-16 01:43:12 +01:00
mid-kid
4154f191e0 Anotate more of the battle anim subsystem
The X and Y flip flags can be applied through the stack consisting of:
- Object attributes
- Animation frame attributes
- OAM Data
Each of these negate eachother.

Confused yet? The same stack is traversed to obtain the final tile ID,
with an added layer on top for the base GFX offset and the offset for
the dynamically loaded GFX requested by the object!

wBattleAnimDelay is populated with the values passed to `anim_wait`.
2019-02-15 03:01:59 +01:00
mid-kid
bfedd89308 BATTLEANIMSTRUCT_0B -> BATTLEANIMSTRUCT_PARAM
This structure member is used for storing the parameter passed to
`anim_obj`.
2019-02-06 08:12:52 +01:00
mid-kid
930d285fab Fix comments around BANK() statements
Found a couple BANK()s that reference multiple labels.
2018-12-26 21:58:13 +01:00
mid-kid
c4979d9770 Rename "feet and head follow" commands
The lot of these were rather misnamed, since they're used to replace
part of the player or enemy with objects for several background effects.
https://github.com/pret/pokecrystal/pull/578#issuecomment-440996244
2018-11-25 23:57:38 +01:00
mid-kid
41f39211ca Identified another user of wBattleAnimTemp
QueueBattleAnimation loads an object using these wram addresses. Usually
populated by the anim_obj command, but in a couple of cases also
manually.
2018-11-22 12:32:24 +01:00
mid-kid
2746288030 Define ANIM_GFX for PLAYER and ENEMY
These are used where the head or the feet of the player/enemy have to be
moved in an animation, and shouldn't overlap. These aren't actual GFX
and should be loaded with the proper commands, and they're always loaded
at the end of the VRAM area.

Furthermore, I've defined BATTLEANIM_BASE_TILE, which is the tile from
which battle animation graphics may start to load. This value was picked
to make sure at least an entire pokemon pic fits in the area before it,
even though it doesn't seem very used...
2018-11-21 23:44:31 +01:00
Rangi
eb1e3636bb Use labels instead of constants for HRAM
Use explicit ldh instruction to access HRAM locations, don't rely on optimizing ld
2018-08-25 14:28:22 -04:00
mid-kid
04d0490c4c Fix anim_ret_command 2018-07-18 10:55:30 +02:00
Rangi
1caa50a647 No space between labels and bodies 2018-06-25 12:24:18 -04:00
Rangi
67d1364c7a Fix triple newlines left over from removing address comments 2018-06-24 23:22:50 -04:00
mid-kid
1d9a68dbdd Remove all address comments 2018-06-24 16:13:22 +02:00
Rangi
fbe82a7fe0 Note which labels are only needed for locating banks (relevant to issue #485) 2018-06-12 23:29:15 -04:00
mid-kid
80d437d565 Fix some uses of EFFECTIVE 2018-04-05 07:54:20 +02:00
Rangi
32ed487a47 Merge branch 'master' of https://github.com/pret/pokecrystal
# Conflicts:
#	audio/engine.asm
#	constants/gfx_constants.asm
#	constants/map_data_constants.asm
#	constants/pokemon_data_constants.asm
#	constants/sprite_constants.asm
#	constants/wram_constants.asm
#	data/maps/data.asm
#	engine/battle/ai/scoring.asm
#	engine/battle/core.asm
#	engine/battle/effect_commands.asm
#	engine/battle/misc.asm
#	engine/battle_anims/getpokeballwobble.asm
#	engine/breeding.asm
#	engine/buy_sell_toss.asm
#	engine/decorations.asm
#	engine/events/battle_tower/battle_tower.asm
#	engine/events/battle_tower/rules.asm
#	engine/events/buena.asm
#	engine/events/bug_contest/contest_2.asm
#	engine/events/daycare.asm
#	engine/events/dratini.asm
#	engine/events/halloffame.asm
#	engine/events/happiness_egg.asm
#	engine/events/kurt.asm
#	engine/events/lucky_number.asm
#	engine/events/magnet_train.asm
#	engine/events/overworld.asm
#	engine/events/pokerus/pokerus.asm
#	engine/events/print_unown.asm
#	engine/events/print_unown_2.asm
#	engine/events/unown_walls.asm
#	engine/item_effects.asm
#	engine/link.asm
#	engine/mon_menu.asm
#	engine/player_object.asm
#	engine/routines/playslowcry.asm
#	engine/scripting.asm
#	engine/search.asm
#	engine/search2.asm
#	engine/specials.asm
#	engine/start_menu.asm
#	engine/timeset.asm
#	home/battle_vars.asm
#	home/map.asm
#	maps/GoldenrodUndergroundSwitchRoomEntrances.asm
#	maps/IlexForest.asm
#	maps/KrissHouse2F.asm
#	maps/Route39Barn.asm
#	mobile/mobile_12_2.asm
#	mobile/mobile_40.asm
#	mobile/mobile_5f.asm
#	wram.asm
2018-02-03 19:42:56 -05:00
Rangi
e32e5212af use "x + -1" not "x +- 1"
(TODO: use "x - 1" once rgbds allows it)
2018-02-02 22:55:38 -05:00
luckytyphlosion
4a3384ab09 wSpritesEnd -> wVirtualOAMEnd. 2018-01-30 14:55:20 -05:00
luckytyphlosion
0b45e2e846 Fix wVirtualOAM labels, part 2. 2018-01-30 14:52:46 -05:00
luckytyphlosion
a1951cefc0 Prefix wram labels with w, part 2. 2018-01-23 17:39:09 -05:00
luckytyphlosion
f2ae74079f Prefix wram labels with w, part 1.
Handle edge cases first.
2018-01-23 16:45:34 -05:00
Remy Oukaour
6d20cf3e80 "CryHeader" → "Cry"; "Cry" → "MonCry" 2018-01-16 23:47:45 -05:00
Remy Oukaour
7b3de85a06 Avoid "+- 1" at every maskbits 2018-01-16 17:27:50 -05:00
Remy Oukaour
8048082114 Remove Predef_ prefix from routines listed in PredefPointers 2018-01-16 14:39:28 -05:00
Remy Oukaour
dfcca93b45 Merge branch 'dev' of https://github.com/TheMostCuriousThing/pokecrystal (resolve PR #460)
# Conflicts:
#	engine/battle/core.asm
#	engine/save.asm
2018-01-14 23:00:22 -05:00
Remy Oukaour
5c28d05bb4 Merge branch 'master' of https://github.com/xCrystal/pokecrystal (resolve PR #459)
# Conflicts:
#	data/items/descriptions.asm
#	data/sprite_anims/framesets.asm
#	engine/crystal_colors.asm
#	engine/events/kurt.asm
#	engine/events/special.asm
#	engine/events/std_scripts.asm
#	engine/events_3.asm
#	engine/item_effects.asm
#	engine/namingscreen.asm
#	engine/scripting.asm
#	engine/stats_screen.asm
#	engine/trade_animation.asm
#	home/audio.asm
#	main.asm
#	maps/BattleTower1F.asm
#	maps/BattleTowerBattleRoom.asm
#	maps/BurnedTowerB1F.asm
#	maps/ElmsLab.asm
#	maps/GoldenrodDeptStore5F.asm
#	maps/GoldenrodUnderground.asm
#	maps/HallOfFame.asm
#	maps/MahoganyTown.asm
#	maps/ManiasHouse.asm
#	maps/MobileBattleRoom.asm
#	maps/MobileTradeRoomMobile.asm
#	maps/RadioTower2F.asm
#	maps/Route35NationalParkGate.asm
#	maps/Route36NationalParkGate.asm
#	maps/Route39Farmhouse.asm
#	tilesets/palette_maps.asm
2018-01-14 22:56:36 -05:00
Remy Oukaour
7a09fc9f75 GFX tile sizes in decimal 2018-01-14 19:43:35 -05:00
Remy Oukaour
94d6a32721 Use maskbits some more 2018-01-11 14:27:19 -05:00
Remy Oukaour
417937cffc Resolve #461 2018-01-10 13:47:57 -05:00
Adelaide Walter
6c5cd7a963 Simplify comments per Rangi's rec. 2018-01-08 23:07:46 -05:00
Adelaide Walter
ce985a09a7 Document switches to BANK(sScratch) via xor a 2018-01-04 16:51:50 -05:00
Adelaide Walter
9d0ba6bfd3 Use BANK for hardcoded WRAM banks (except where bankswitches appear unnecessary). 2018-01-03 19:12:45 -05:00
xCrystal
b4e087167f More unreferenced labels and unused text 2018-01-02 19:38:56 +01:00
xCrystal
d7970f749a Consistent predef function names 2018-01-02 18:49:25 +01:00
xCrystal
37369d1ae0 Rename Pals labels in WRAM bank 5 2018-01-01 20:09:53 +01:00
xCrystal
333524f0be Lowercase v for VRAM addresses 2017-12-28 13:32:33 +01:00
Remy Oukaour
35a3a19fda Use "battle_anims" and "sprite_anims" for clarity, not just "anims" 2017-12-26 18:45:04 -05:00