Commit Graph

113 Commits

Author SHA1 Message Date
Rangi 96bcf72d96 Document the BattleAnimCmd_ClearObjs bug 2019-02-16 13:31:23 -05:00
Rangi 771d2efd65
Merge pull request #601 from mid-kid/master
Exciting adventures down battle animation street!
2019-02-16 13:23:17 -05:00
mid-kid 7d6befa181 Fix issues in review 2019-02-16 19:08:34 +01:00
Rangi af29f1f97c Eliminate some $xxxx values 2019-02-16 13:04:08 -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 ee86b36766 wNumActiveBattleAnims → wLastAnimObjectIndex
This variable never decrements, it only increments to give each battle
animation a different, and incremental "index".
2019-02-15 17:21:51 +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 ffeae953ea Document all possible values for ReinitBattleAnimFrameset
This is useful to know where a certain frameset is used, through `grep`
2019-02-06 10:16:40 +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 3241c9cfaa Use 0/1/2/3 for palettes, and rgbds opt feature for battle transition graphic 2018-09-09 18:15:54 -04:00
Rangi a71901020b These are signed offsets, not addresses (thanks, PikalaxALT) 2018-08-25 14:43:02 -04:00
Rangi 7aa1c1f388 Remove HRAM label address comments 2018-08-25 14:39:24 -04:00
Rangi 1c0fff7668 hLabel - $ff00 -> LOW(hLabel) 2018-08-25 14:34:25 -04: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 5693cc49cf Single newline at the end of files 2018-06-25 12:07:35 -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
mid-kid d3cc861d33 Fix snake_case filenames
Renamed a bunch of files, most of them one-off functions, to better fit
the general snake_case naming scheme. Also renamed some awfully long filenames.
2018-04-04 22:26:07 +02:00
mid-kid 81fff9bb80 Fix file permissions
I have no idea why this was a thing (do people store this repo on FAT32
flash drives or something?), but quite a bit of files had a permission
of 755. This isn't really a problem, but it's inconsistent and weird.
2018-04-01 17:05:10 +02:00
Rangi 73ea7c6326 Macro factors out sine code, just like sine data, since it's used 5 times 2018-02-03 21:11:55 -05:00
Rangi 271aa20b73 Keep documentation in sync with new WRAM labels 2018-02-03 20:40:21 -05: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
Rangi 45373ec601 sine_wave macro parameterizes table size, not frequency ("amplitude" was an incorrect comment) 2018-02-02 22:45:42 -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 3c7ba37de7 Fix wVirtualOAM labels, part 1. 2018-01-30 14:47:14 -05:00
Rangi 87514598be More battle data in data/battle/ 2018-01-25 21:34:42 -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 960783cdf4 Label more ANIM_OBJ_* constants 2018-01-12 13:47:04 -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
Remy Oukaour 11556196ba Consistent sine wave code formatting 2018-01-09 16:39:36 -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
Adelaide Walter 0caea0f820 Use BANK for all hardcoded banks with BANK in comments. 2018-01-02 16:46:40 -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 6e12a51503 Use more palette(s) constants 2018-01-01 20:09:53 +01:00
xCrystal ee5bf71640 Consistently name unknown fields in macros/wram as Fieldxx 2017-12-29 16:19:51 +01:00
xCrystal def3b60493 Clean up .Jumptable: spaces 2017-12-29 13:52:42 +01:00
xCrystal 50fc9c3389 endm -> ENDM 2017-12-28 22:31:16 +01:00
xCrystal 333524f0be Lowercase v for VRAM addresses 2017-12-28 13:32:33 +01:00
Remy Oukaour 9bc680bd6d Battle animation data is like sprite animation data 2017-12-26 19:27:56 -05:00
Remy Oukaour 35a3a19fda Use "battle_anims" and "sprite_anims" for clarity, not just "anims" 2017-12-26 18:45:04 -05:00