Commit Graph

40 Commits

Author SHA1 Message Date
mid-kid c5a4c0bd2e Create some battle tower SRAM labels 2019-04-12 13:58:49 +02:00
Rangi 7c42452748 Standardize on $ff ^ X for bitwise negating 8-bit values 2019-02-16 13:52:19 -05:00
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