Commit Graph

590 Commits

Author SHA1 Message Date
vulcandth
ef9b9bb437
Clean up bugs commented in the source code (#912)
Co-authored-by: Rangi <remy.oukaour+rangi42@gmail.com>
2022-07-09 16:12:02 -05:00
Rangi
f159654054 spriteanimoam macro corresponds to battleanimoam 2022-07-04 01:11:42 -04:00
Rangi
a2e8f078a4 Split "gfx anims" into "pic anims" and "sprite anims"
Fixes #876
2022-07-04 01:11:42 -04:00
vulcandth
5f0597e944
Rename SLP to SLP_MASK (#918)
Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com>
2022-06-17 22:25:56 -04:00
vulcandth
3648afda16
RGBDS syntax updates (#905)
New MACRO and DEF syntax
2022-06-06 17:25:42 -04:00
Rangi
ab0f9c287a Use compound assignment operators 2021-11-23 20:18:08 -05:00
Rangi
39111486ab Fix #845: Liz gossips about a beautiful trainer, not Pokémon 2021-11-03 17:24:16 -04:00
Rangi
753ed7186c Use -1 for terminating happiness probability data 2021-10-28 17:02:13 -04:00
Rangi
f59f1bdb88 Standardize capitalization of ".Jumptable" 2021-06-19 19:52:05 -04:00
Rangi
ed0a0f7159 Move the dbbw, dbww, and dbwww macros to legacy 2021-05-30 15:51:49 -04:00
Rangi
b1dbadbdd3 Require rgbds 0.5.1
Use some new features: \<10> macro args, SECTION UNION, SIZEOF/STARTOF, and CHARLEN/CHARSUB
2021-05-09 12:26:28 -04:00
Rangi
316fa4b695 Use rgbds 0.5.0 2021-04-19 16:31:37 -04:00
Rangi
94057c7726 Verify uneven list sizes with list_start, li, and assert_list_length macros
This was discussed in #815
2021-03-22 17:17:08 -04:00
Rangi
dbe2360ecd Miscellaneous cleanup 2021-03-22 16:41:17 -04:00
Rangi
4522162d45 Consistent labels for each nickname in RAM 2021-03-17 16:38:21 -04:00
Rangi
6c8f8609cb Assert some more table widths 2021-03-17 11:38:01 -04:00
Rangi
3684296583 Revise some constant definitions 2021-03-16 18:06:18 -04:00
Rangi
dbabd8b4a9 Define MAPGROUP_* constants and verify MapGroup_* table sizes 2021-03-10 21:16:54 -05:00
Rangi
ef20126fe5 Verify wild data sizes with def_grass/water_wildmons and end_grass/water_wildmons macros 2021-03-04 17:58:30 -05:00
Rangi
40902ffe24 Verify data table sizes with table_width and assert_table_length macros
This was discussed in #706

It also uncovered some off-by-one issues with defining some constants.

A few structs now use rsreset/_RS to define their offset constants, as discussed in #739
2021-03-04 00:15:03 -05:00
Rangi
a539578006
Merge pull request #798 from CelestialAmber/master
Fix typo
2021-02-05 09:45:18 -08:00
Rangi
4264d53eb6 Identify some more labels 2021-02-05 12:44:21 -05:00
Amber Brault
b391b6cef0 Fix typo 2021-01-21 11:01:53 -05:00
Rangi
f773fd1dd8 The 'tmhm' macro adjusts to the number of TMs/HMs/tutors 2021-01-06 10:20:19 -05:00
Rangi
99e66c2557 Rename some labels
- Remove "Buffer" suffix from some byte and word quantities
- Change "Ptr" to "Pointer"

Fixes #789
2020-12-23 16:29:30 -05:00
Rangi
fff343349d Clarify signed magnitude in the growth_rate macro 2020-12-20 23:35:22 -05:00
Rangi
145e752266 Use assert to ensure correct base data size 2020-11-17 16:14:45 -05:00
Rangi
97e981985b Correct some filename comments 2020-11-17 11:12:21 -05:00
Rangi
9b3c45b14d Resolve some "???" comments 2020-11-17 11:09:02 -05:00
Rangi
62b756c46e Rename "dummy game" to "memory game" 2020-11-08 19:32:57 -05:00
Rangi
826e070f04 More syncing with pokegold 2020-11-03 10:13:06 -05:00
Rangi
6220200f0f Identify some more labels, and make some more consistent 2020-11-01 12:36:38 -05:00
Rangi
4a323cf591 UnusedSpriteAnimGFX was to sprite anims as AnimObjGFX is to battle anims 2020-10-30 17:41:03 -04:00
Rangi
fe1a58deea Identify wSpriteAnimDict key constants 2020-10-30 15:39:08 -04:00
Rangi
1237156948 Identify mobile Name Card exchange labels 2020-10-30 10:45:31 -04:00
Rangi
ba5bc304f9 Updates to more closely sync with pokegold 2020-10-29 23:23:57 -04:00
Rangi
bcc0d633e9 Identify the remaining (non-mobile) uses of another WRAM union 2020-10-29 14:51:41 -04:00
Rangi
ea426a8879 Identify more WRAM labels, and start a <X>_DummyFunction label convention 2020-10-28 14:34:38 -04:00
Rangi
6d333bed5f Replace many '; unused' with '; unreferenced' 2020-10-28 10:21:10 -04:00
Rangi
2738858985 Create data/collision/ for tile collision-related data 2020-10-27 10:00:56 -04:00
Rangi
9dcdad5e60 Comment, remove, or revise many unreferenced labels 2020-10-26 20:29:58 -04:00
Rangi
7991db972b Identify some more link.asm labels (syncing to pokegold) 2020-10-23 13:36:54 -04:00
Rangi
d8310c166d Identify some more map object labels and constants 2020-10-22 17:41:48 -04:00
Rangi
ae4fe08084 Identify some more labels (a few link-related) 2020-10-22 00:53:54 -04:00
7Soul
cf26f55985
Identify battle bg effects functions and constants (#773)
Identify battle bg effects functions and constants
2020-10-06 15:45:09 -04:00
7Soul
836da09f4e
Identify anim object constants (#772)
Identify anim object constants
2020-10-04 15:06:38 -04:00
7Soul
2ffc5f907f
Identify battle animation functions (#771)
Identify battle animation functions
2020-10-03 21:54:02 -04:00
mid-kid
353f78f493 GS_INTRO_STAR/SPARKLE -> GS_GAMEFREAK_LOGO_STAR/SPARKLE
These two sprite animations are related to the Game Freak Logo splash
screen, not the actual intro.
2020-08-27 15:13:41 +02:00
Rangi
7729dcd204 Consistent constants for radio data table sizes (could still be better) 2020-08-13 13:47:50 -04:00
Rangi
dd369f3199 Move EngineFlags and SpecialsPointers into data/engine/ 2020-07-22 20:24:53 -04:00
Rangi
11dc805de0 Revert "Factor out tables into data/overworld/"
This reverts commit b5a7e7de3e.
2020-07-22 20:21:26 -04:00
Rangi
b5a7e7de3e Factor out tables into data/overworld/
Fixes #749
2020-07-22 15:22:58 -04:00
Rangi
212846af57 Treat map setup commands like trade script commands
Fixes #736
2020-07-22 13:37:43 -04:00
Rangi
a9941e28cc Define NUM_FLYPOINTS 2020-07-21 11:48:39 -04:00
Rangi
59d9932255 SPRITE_GYM_GUY -> SPRITE_GYM_GUIDE 2020-07-17 13:01:48 -04:00
Rangi
eca33ef190 Define map setup commands as macros like other script commands 2020-07-13 20:44:16 -04:00
Rangi
6ca82e5c86 Eliminate enum: use const instead, with case-by-case parallel const implementations 2020-07-08 15:30:23 -04:00
Rangi
43a9295789 add_tm, add_hm, and add_mt define TM##_MOVE, HM##_MOVE, and MT##_MOVE constants, to avoid repeating the move names in tmhm_moves.asm 2020-07-06 16:53:05 -04:00
Rangi
26d764de5d Use STRCMP, not ==, to compare multi-character strings 2020-07-02 11:46:30 -04:00
Rangi
fce6243b43 Identify more labels, and use the jumptable macro when possible 2020-07-01 13:13:49 -04:00
Rangi
c3c18dd196 Comment more ROM labels as unreferenced
(Some unreferenced labels are above code which is still used via fallthrough!)
2020-06-21 18:33:31 -04:00
Rangi
91774f206e Replace "Unreferenced" labels with "; unreferenced" comments 2020-06-21 16:27:43 -04:00
Rangi
ac0025064f Identify some more Unknown labels 2020-06-20 18:52:26 -04:00
Rangi
f2550fc3c2 ReplaceKrisSprite -> UpdatePlayerSprite 2020-06-16 19:38:00 -04:00
Rangi
7b2515d1e4 [in progress] Harmonize more constant and data files with pokegold 2020-06-16 14:32:57 -04:00
Rangi
b9f2b93c17 Harmonize some more symbols with pokegold 2020-06-16 11:28:52 -04:00
Rangi
75035a71a5 Label some mobile addresses, and revise some comments 2020-06-13 18:48:26 -04:00
Rangi
518cee440e Resolve #723: treat std scripts like specials and predefs 2020-06-10 16:44:16 -04:00
Rangi
60f7ca4006 Group MoveDescriptions with PrintMoveDesc and rename that to PrintMoveDescription (like ItemDescriptions with PrintItemDescription) 2020-05-25 03:54:42 -04:00
Rangi
5f197c53f4 Clean up some percentage values 2020-05-07 14:21:24 -04:00
Rangi
905833ef8c Use a FIRST_UNOWN_CHAR constant for the Unown font 2020-05-06 10:34:51 -04:00
Rangi
b69526a908 Miscellaneous fixes
Addresses the haircut brothers' probability comments in #709
2020-05-05 10:17:02 -04:00
Rangi
20464d1bfb Miscellaneous updates
- `PREDEFPAL_00` -> `PREDEFPAL_ROUTES` (observed from `LoadSGBLayout.GetMapPalsIndex.route`)
- `$0` -> `PLAYER` (standard person ID)
- Fix some whitespace formatting
2020-04-30 11:27:32 -04:00
Rangi
0ef004a4db dsprite y, ypx, x, xpx, off, attr -> dbsprite x, y, xpx, ypx, off, attr 2020-04-04 16:00:30 -04:00
Andrew Cook
5d97f15f80
Assorted labels in mobile related code (#702)
Rename assorted labels in mobile-related code
2020-03-31 21:26:59 -04:00
Rangi
0345e4fb0e Add suffixes to some constants to avoid ambiguity
- `PSYCHIC` → `PSYCHIC_TYPE` (not the trainer `PSYCHIC_T` or the move `PSYCHIC_M`)
- `BLACKBELT` → `BLACKBELT_I` (not the trainer `BLACKBELT_T`)
- `CURSE_T` → `CURSE_TYPE` (not the move `CURSE`)
- `TOWN_MAP_D` → `TOWN_MAP_POSTER` (not the item `TOWN_MAP`)

This also uncovered a misidentified event: `EVENT_DECO_PLANT_4` → `EVENT_DECO_POSTER_1`. (There are three plants and four posters.)
2020-03-21 17:59:26 -04:00
Rangi
6a6ba10315 rgbds supports 'X - 1' instead of 'X + -1' 2020-03-21 14:01:05 -04:00
Rangi
5a5f5ececd Miscellaneous fixes from #694 2020-03-21 13:07:18 -04:00
Rangi
ad50e94b50 Add a LANDMARK_ prefix to landmark constants
Resolves #697
2020-03-15 19:50:39 -04:00
Rangi
65f22544e0 Refactor flypoints to separate const definition from data usage 2020-03-15 14:10:53 -04:00
Rangi
a73ced3b69 unused_dark_cave -> unused_johto (goes with the beta Johto town+city maps) 2020-02-25 19:18:24 -05:00
mid-kid
9a927c1b3e
Merge pull request #685 from mid-kid/master
Moshi moshi? minoru enhansumentsu desu
2020-02-21 21:11:36 +01:00
Rangi
88bbdb6a2f Define TileCollisionTable as a standard 'db' series 2020-02-13 19:07:19 -05:00
mid-kid
26b8bf003e Standardize on lowercase Tilemap and Attrmap
We used to have a mixture of TileMap and and Tilemap, as well as the
similar AttrMap. Standardize on one.
2020-02-13 18:31:10 +01:00
Rangi
ceadab8cd1 PnP_HiddenPlaces -> PnP_Places
The "Places & People" radio station does not avoid these maps; it only describes these maps.
2020-02-06 11:07:42 -05:00
Rangi
d482dc28f4 Identify four padding bytes in base data as beta front/back pic pointers 2020-02-04 11:07:16 -05:00
Rangi
c04b455aac Identify "branch" labels in battle animations 2020-01-05 15:42:21 -05:00
Rangi
94ebdab6d3
Merge pull request #660 from mid-kid/master
Make the map setup commands match the actual function names better
2020-01-04 20:08:43 -05:00
Rangi
ef48ae98b5 Separate tilesets.o goes with pics.o and sprites.o 2019-11-23 20:43:33 -05:00
mid-kid
739a60b33c Make the map setup commands match the actual function names better
These functions used as map setup commands are used in other places,
too, so I can't prefix them under the same. The names should match
except I won't repeat "map" in a map setup command name.
2019-11-18 18:21:57 +01:00
Rangi
89d107b426 Decimal values for Pokémon cry parameters 2019-11-03 14:39:56 -05:00
Rangi
4aeab6b879 Rename buttonsound to promptbutton 2019-11-03 12:48:54 -05:00
Rangi
01f68fcc6a Rename TILESET_BATTLE_TOWER to TILESET_BATTLE_TOWER_INSIDE 2019-11-03 12:03:37 -05:00
mid-kid
86061d37d2 More mobile SDK documentation
Labelled WRAM addresses, added constants for mobile commands, fixed some
mobile lib function names, documented most of the functions for specific
commands.
2019-10-21 00:42:36 +02:00
mid-kid
e3e0bcd653 #641 fixes and additions. (#646)
Name a lot of text labels according to our conventions
2019-10-20 18:24:17 -04:00
Ryan Tandy
abee217ce0 Fix swapped comments in data/trainers/dvs.asm
Bugsy has trainer class id 3 and his DVs are 9/8/8/8.
Whitney has trainer class id 2 and her DVs are 8/8/8/8.
2019-08-27 16:23:27 -07:00
mid-kid
b6277408a0 Misc fixes 2019-06-04 13:31:22 +02:00
mid-kid
649c8d38da Get rid of _CRYSTAL
Having this here is completely redundant and useless, and doesn't even
work since it should use `if DEF(_CRYSTAL)` instead.
2019-05-25 17:59:50 +02:00
Rangi
b24cd55f96 Correct the older+younger haircut brothers' labels and constants 2019-05-18 13:27:32 -04:00
Rangi
7890fae995 Some more GB Printer documentation 2019-05-11 13:01:59 -04:00
Rangi
689acb0e36 Try to identify more of maps/unused/Beta*.blk 2019-04-20 14:45:20 -04:00
Rangi
22cc0c25e9
Merge pull request #625 from pret/aus
Build Australian Crystal.
2019-04-14 15:30:51 -04:00
IIMarckus
9f7d30439e Build Australian Crystal. 2019-04-14 13:22:45 -06:00
Rangi
5cdf4f9ae0
Merge pull request #623 from mid-kid/patch-1
Create some battle tower SRAM labels
2019-04-13 11:50:43 -04:00
Rangi
1ada06f576
Merge pull request #622 from mid-kid/master
TextBox -> Textbox
2019-04-13 11:50:16 -04:00
mid-kid
c5a4c0bd2e Create some battle tower SRAM labels 2019-04-12 13:58:49 +02:00
mid-kid
3e78e5b2b6 TextBox -> Textbox
Homogenizing names.
2019-04-09 16:09:18 +02:00
Fontbane
a3119736fa common_1 text documentation
Should be almost everything besides some of the mobile stuff and some debug text.

Removed VS stuff

oops
2019-03-16 13:00:44 -04:00
Rangi
79dc22c769 Define constants for map event sizes 2019-03-03 14:19:16 -05:00
Rangi
dc396822d7 Identify more collision-related constants and data 2019-03-03 13:30:27 -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
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
469c51d086 dorepeat -> dowait for oam animations
Having the pic animation macros be the same as the oam animation macros
isn't really turning out so well... I wonder if we should split them up
eventually.
2019-02-15 02:54:35 +01:00
Rangi
1853e3d127 Say "BANK(Foo) ; aka BANK(Bar)" to clarify that Foo and Bar share a bank 2019-01-12 15:17:20 -05:00
Rangi
b975f3e068 Clean up some Odd Egg and Battle Tower code and data
Fixes #589
2019-01-02 19:04:50 -05:00
Rangi
afbf1b3ffc *PhoneScript1 -> *PhoneCalleeScript, and *PhoneScript2 -> *PhoneCallerScript 2018-12-31 16:32:04 -05:00
Rangi
22657f6078 Split generic phone caller+callee text into individual NPCs 2018-12-30 19:20:45 -05:00
Rangi
d3e0eda398 Distinguish "caller" and "called" phone scripts+text (NPCs call you automatically, you call them from the Pokégear) 2018-12-30 18:05:26 -05:00
Rangi
059e0df298 $56 is "<……>" 2018-12-30 17:57:56 -05:00
Rangi
e025ab9db0
Merge pull request #578 from mid-kid/master
Fixes in the animation subsystem.
2018-12-09 17:44:09 -05: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
5dfe652ff6 CalcStats -> CalcBattleStats
Confusingly ambiguous name
2018-11-23 23:03:27 +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
mid-kid
32833adef3 Use ANIM_GFX constants for battle animations 2018-11-21 22:35:36 +01:00
mid-kid
4e3ed078f9 Cosmetic fixes 2018-11-20 21:53:45 +01:00
Rangi
3202c4f3df Resolve issue #575: Rename text commands 2018-11-18 12:41:11 -05:00
mid-kid
b92b91df17 Adapt tmhm for consistency
Using an underscore before macro variables avoids cluttering up the
global namespace. While this isn't much of a problem right now, it's
good practice that'll keep us from problems in the future.
2018-11-11 00:50:53 +01:00
mid-kid
814a720e9d Adapt macro based on suggestions 2018-11-11 00:32:05 +01:00
mid-kid
375963349a Finish new connection macro
Tried simplifying things a bit, although not nearly as much as I wanted.
Ideally, we'd either have one of two situations:
- A single set of calculations based on values depending on the
direction of the connection
- A bunch of "generic" calculations done before applying simple
modifiers to them in the final `if` block

Right now it's an icky mix of both and I'm not really sure what to make
of it.
2018-11-10 14:34:49 +01:00
mid-kid
abb9454307 Make the connection macro simpler to use
It now only takes one numerical parameter, which is the offset of the
target map relative to the source map, much like in AdvancedMap. This
makes it easier to make connections and avoids having to calculate these
values by hand, and/or "mess with the values 'till it works", as many
have been doing thus far. It's just one, easy-to-understand value.

To convert from the old macro to the new macro, just take the fourth and
the fifth parameter, and calculate `<4th_param> - <5th_param>`. The
result is the value required for the new macro.
2018-11-06 21:19:07 +01:00
Rangi
0ce8dd75cd gfx/roofs/*.png filenames match ROOF_* constants 2018-10-31 17:46:18 -04:00
Rangi
cac641a5ed normal.gbcpal → front.gbcpal
Eliminate redundant Makefile rules
Keep Makefile's Pokemon-specific hack rules next to the misc file-specific graphics rules
2018-09-01 20:18:55 -04:00
Rangi
36b21b39d8 Fix #537: Palettes generated from PNGs use .gbcpal directly.
This avoids overwriting a .pal file from a .png with the same name.
It also prevents people from trying to edit generated .pal files.
2018-08-31 21:39:17 -04:00
Rangi
39faa7a9f6 Update file paths in comments 2018-08-19 13:33:35 -04:00
mid-kid
50da83cb23 CheckDestinyBond -> CheckFaint
Its main function is fainting the opponent and ending the move effect.
Updated the comment accordingly.
2018-08-17 20:16:37 +02:00
mid-kid
f5cd6341ff Consistency with order of constant comments 2018-08-07 20:53:14 +02:00
mid-kid
f98a95b8ee wWeeklyFlags -> wDailyFlags2
These are by far not always checked each week, and as such shouldn't be
called that.
Since they're almost always used through the `bit` instruction, it's
very inconvenient to just make wDailyFlags a `dw` instead.
2018-08-07 09:46:21 +02:00
Rangi
c9cb67141b Make reviewed fixes; standardize on " + " 2018-07-29 01:40:23 -04:00
Rangi
8935e6f1ca wDeciramBuffer → wBreedingCompatibility in UnknownText_0x1bd0d8 2018-07-29 00:48:03 -04:00
Rangi
9dec80b07e Add meaningful aliases for wd265
Introduce MONICON_* constants
Introduce BATTLEPLAYERACTION_* constants
2018-07-29 00:25:52 -04:00
Rangi
c2925d6406 db $0, $0 → dn 0, 0, 0, 0 ; DVs 2018-07-24 14:28:04 -04:00
mid-kid
1fc7430a2b Fix misnamed character codes
Some character codes were erroneously named after their text command
counterparts. This has caused a lot of confusion with naming their
functions and with other things.

I've also removed the `dict2` macro and expanded the `dict` macro. This
really isn't something we should be doing for macros but I can't deny it
looks a lot neater than repeated code.
2018-07-18 10:55:30 +02:00
Rangi
b23f0b2bda Fewer uses of 'Thing2 - Thing1' for sizeof(Thing) 2018-07-16 15:58:07 -04:00
Rangi
d9b44d4423 Consistently use dn for DVs 2018-07-16 15:42:45 -04:00
Rangi
33ad00f1ab Tile values agree in data/sprites/emotes.asm and data/sprites/facings.asm 2018-07-15 11:26:35 -04:00
Rangi
874bc5ebd5 SFX_UNKNOWN_7F → SFX_TOXIC 2018-07-12 12:25:17 -04:00
Rangi
48e209763f SFX_DEX_FANFARE_50_79 and SFX_LEVEL_UP use identical data, and technically the level-up text plays the former 2018-07-11 13:24:48 -04:00
Rangi
5e6837807c landmark macro includes the +8/+16 offsets for X/Y coordinates 2018-07-07 00:59:27 -04:00
Rangi
23450e6b4c Correct file path 2018-07-05 18:59:56 -04:00
Rangi
255f282a60 Use TRUE/FALSE for wSaveFileExists 2018-07-04 02:50:27 -04:00