Commit Graph

2195 Commits

Author SHA1 Message Date
yenatch
b9110b015d Condense cry headers to one line.
Keep the unused labels for readability (and maybe some symfile magic).
2014-07-18 17:03:52 -07:00
yenatch
3110fd28e2 Badge and move constants in Strength and Surf field effects. 2014-07-18 10:31:53 -07:00
yenatch
2b1cc7f270 Use WOOPER in Oak speech. 2014-07-18 10:31:52 -07:00
yenatch
68ee99818a Move cry functions out of home.asm. 2014-07-18 10:31:52 -07:00
yenatch
928cdcfc23 Name cry functions in home.asm. 2014-07-18 10:31:52 -07:00
yenatch
251517812f Rename the internal PlayCry function to _PlayCryHeader. 2014-07-18 10:31:52 -07:00
yenatch
ab018a5094 Cry "echo" is actually the upper byte of pitch (now a word). 2014-07-18 10:31:51 -07:00
yenatch
2f99608526 Use macros for spawns and flypoints.
This firmly ties spawn constant definition to data allocation,
preventing usage earlier in main.asm or in other objects.

A potential solution is to abuse ifdefs and include it in
both main.asm and constants.asm.
2014-07-18 10:31:51 -07:00
yenatch
0c7ef5e2d8 Use macros for both types of map headers.
This should make map headers much easier to edit than before.

Rather than occasionally being able to reuse blockdata semantically,
create a label for each map and attach it to some blockdata include.
This improves readability and reduces overhead when adding new maps.

The macro argument length bug doesn't seem to crop up here...
It looks like it only happens when an argument is over 16 characters
long and references a symbol that exists before the macro is invoked.
2014-07-18 10:31:51 -07:00
yenatch
091e55bfa6 Add labels for maps that reuse blockdata. 2014-07-18 10:31:50 -07:00
yenatch
2955e28a42 Add address labels used by Decompress. 2014-07-18 10:31:50 -07:00
yenatch
b6793b65df Use a macro for Odd Egg probabilities. 2014-07-18 10:31:39 -07:00
yenatch
e2ec8a1d13 Recomment type names.
This is mostly just whitespace reduction.
2014-07-09 12:50:33 -07:00
yenatch
43fb5732a2 Don't use Olivine maps to define the length of a map header.
The first and second map header labels have no semantic meaning with regard to length.
In fact, none of the labels are used at all.
2014-06-24 10:19:27 -07:00
yenatch
49ef0121dc Remove excessive whitespace in map headers.
Use the "map" macro instead of using GROUP_* and MAP_* constants.
Also remove redundant "(bank then label)" comments.
2014-06-24 09:01:29 -07:00
yenatch
d6fbdfb8de More comments and constants in move effect command code.
Also add SUBSTATUS_IN_LOOP for multi-hit moves.
2014-06-23 12:47:52 -07:00
yenatch
32a5f21cc7 More PartyMon labels for relative addressing. 2014-06-23 12:45:30 -07:00
yenatch
6fee80528a More object struct labels and constants. 2014-06-19 17:23:53 -07:00
yenatch
044d0f7f04 Merge remote-tracking branch 'kanzure/master' 2014-06-18 01:05:52 -07:00
yenatch
bc3a21193d Residual damage, battle text labels, pic predefs. 2014-06-18 00:55:44 -07:00
yenatch
dbe4c7ab67 Fix some misnamed substatus constants.
SUBSTATUS_ROLLOUT was actually SUBSTATUS_RAMPAGE.
SUBSTATUS_ENCORED was actually SUBSTATUS_ROLLOUT.
Substatus 5 bit 4 was actually SUBSTATUS_ENCORED.

Also use some more (sub)status constants where needed.
2014-06-17 12:52:32 -07:00
yenatch
c2dba43188 Contest battle type and comment the battle menu. 2014-06-17 11:58:11 -07:00
IIMarckus
1fbe471b74 Use better constants/comments in DST near-midnight checks. 2014-06-17 04:53:58 -06:00
yenatch
541a9c7347 Name the UpdateEnemyHUD predef.
Also start using hp palette constants.
2014-06-16 22:53:56 -07:00
yenatch
8639fcd29b Use a predef macro that takes labels instead of juggling constants.
Besides making predefs convenient, naming a predef no longer requires
adding or renaming a predef constant. This also lets predefs be rearranged at will.
2014-06-16 11:20:01 -07:00
yenatch
0b7dfeb9b2 Name and comment some move learning functions. 2014-06-16 10:32:39 -07:00
yenatch
f244e4483e Makefile: Use lower-case variables and graphics conversion queues.
This is mostly to make it more like pokered.

Queues are an order of magnitude faster than invoking a new python instance for each file.
2014-06-15 16:20:40 -07:00
yenatch
db27602679 Name and comment the trainer party reader.
Reads the contents of trainers/trainers.asm.
2014-06-14 22:35:00 -07:00
yenatch
e6271ca450 Move trainer item AI into battle/ai/items.asm. 2014-06-14 15:03:23 -07:00
yenatch
c7f11f7591 Item constants in trainer ai. 2014-06-14 15:00:03 -07:00
yenatch
b83f237254 Rename _GetBattleVar -> GetBattleVarAddr.
Functions prefixed with _ imply they're private.
The real purpose of this function is to use an address,
rather than saving a few cycles on push/pop.
2014-06-14 00:41:34 -07:00
yenatch
e23f341258 Battle type constants in the wild.
Also add constants for trap and Celebi event battles.
2014-06-13 22:53:20 -07:00
yenatch
eb9fc6676c More battle code cleanup.
- Use more substatus constants.
- Reformat some code to be more atomic.
- Add constants for unused status prevention held item effects.
- Remove pointless or redundant comments.
2014-06-13 21:18:14 -07:00
yenatch
560b892b2d Reformat the channel_struct macro and use more constants in wram. 2014-06-12 19:32:58 -07:00
yenatch
023cfdbb05 Consolidate monster structs in wram and sram.
The PartyMon struct is really the box struct with volatile variables like status added.

Some other labels have been reworked.
Move structs no longer have explicit labels since their location is arbitrary and usually shared.
2014-06-12 18:32:42 -07:00
yenatch
23f9b5d21e Use constants for move struct positioning.
This eliminates the need for arbitrary move labels like Move2 and Move1 that don't have anything to do with their respective moves.
2014-06-10 23:24:25 -07:00
yenatch
86c1e0feea Consolidate NUM_MOVES usage and monster struct labels.
There turned out to be a lot of instances of NUM_MOVES.
2014-06-10 23:08:07 -07:00
yenatch
0d682e076a Fix argument handling in *coord macros. Add a "percent" shortcut.
Random returns a value from 0 to 0xff.
Instead of doing extra work, most probabilities are out of 0xff.
Convert these from percentages at build time for readability.
2014-06-10 23:03:21 -07:00
yenatch
61521f4458 Comment PrintNum. 2014-06-06 21:30:11 -07:00
yenatch
dfe221b9d1 Merge pull request #254 from yenatch/master
Better compression, macro cleanup, use MAX_LEVEL everywhere.

- move stats -> data (like pokered).
- remove FuncCoord and use {hl,bc,de}coord for all tilemap loads.
- use MAX_LEVEL where needed.
- update pokemontools for better compression, and recomment related code.
- growth rate constants
2014-06-04 17:23:57 -04:00
yenatch
55972bfb83 Bump pokemontools for better compression.
A goal is to be able to reproduce the original lz data in the repository.
In the meantime, make it smaller than before.
2014-06-04 11:32:59 -07:00
yenatch
2d1a1b9c17 Experience growth rate constants. 2014-06-04 01:41:43 -07:00
yenatch
fc16533207 Clean up the growth_rate macro. 2014-06-04 01:34:07 -07:00
yenatch
8d2b9f3fcb Remove the FuncCoord macro.
Variables can't use labels, so a macro that doesn't use variables is better suited.
2014-06-04 01:18:54 -07:00
yenatch
fd8804472d Use {hl,de,bc}coord macros wherever possible. 2014-06-04 01:10:56 -07:00
yenatch
b17553218b Add a dereferenced stats screen function.
This was probably used in the stats screen in JP versions.
It fell out of use when the stats screen layout was redon in localization.
2014-06-04 00:34:01 -07:00
yenatch
6718981fb1 Truncate MAX_LEVEL + 1 if it exceeds 8 bits.
If MAX_LEVEL was set to 255, the value could not fit into a byte.
2014-06-03 16:34:21 -07:00
yenatch
21708a2271 Recomment lz deecompression. 2014-06-03 14:08:23 -07:00
yenatch
20444d2f63 More MAX_LEVEL use. 2014-06-03 14:07:10 -07:00
yenatch
99fbe3147b Rename directory stats -> data. 2014-05-31 22:57:00 -07:00