mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-09-30 05:18:36 -05:00
Implement moveproc, restructure move-related assets, and begin documenting the dataproc toolchain (#1176)
Some checks failed
build / build (push) Has been cancelled
Some checks failed
build / build (push) Has been cancelled
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
#include "generated/sdat.h"
|
||||
#include "constants/battle/battle_anim.h"
|
||||
#include "res/battle/particles/battle_particles.naix"
|
||||
#include "res/graphics/battle/moves/anim_ncer.naix"
|
||||
#include "res/graphics/battle/moves/anim_nanr.naix"
|
||||
#include "res/graphics/battle/moves/anim_ncgr.naix"
|
||||
#include "res/graphics/battle/moves/anim_nclr.naix"
|
||||
#include "res/graphics/battle/particles/battle_particles.naix"
|
||||
|
||||
#include "macros/btlanimfunc.inc"
|
||||
#include "data/scripts/btlanimcmd.h"
|
||||
|
||||
@@ -83,7 +83,7 @@ or Uproar is in effect.
|
||||
trigger.
|
||||
</details>
|
||||
|
||||
**Fix:** Edit [`res/battle/res/scripts/subscript_pursuit.s`](https://github.com/pret/pokeplatinum/blob/main/res/battle/scripts/subscripts/subscript_pursuit.s)
|
||||
**Fix:** Edit [`res/battle/scripts/subscripts/subscript_pursuit.s`](https://github.com/pret/pokeplatinum/blob/main/res/battle/scripts/subscripts/subscript_pursuit.s)
|
||||
|
||||
```diff
|
||||
UpdateVar OPCODE_ADD, BTLVAR_FAINTED_MON, BATTLER_ENEMY_1
|
||||
@@ -167,7 +167,7 @@ as having a score equivalent to 65 rather than 320.
|
||||
Due to the delays between scale commands being too short, they overlap with
|
||||
each other, resulting in the sprite permanently moving upward.
|
||||
|
||||
**Fix:** Increase the `Delay` values in [`res/battle/moves/facade/anim.s`](https://github.com/pret/pokeplatinum/blob/main/res/battle/moves/facade/anim.s)
|
||||
**Fix:** Increase the `Delay` values in [`res/moves/facade/anim.s`](https://github.com/pret/pokeplatinum/blob/main/res/moves/facade/anim.s)
|
||||
|
||||
```diff
|
||||
- Delay 8
|
||||
@@ -186,7 +186,7 @@ Also update the sound effect timings to sync with the new delays:
|
||||
Due to the delays between shake commands being too short, they overlap with
|
||||
each other, resulting in the sprite permanently moving left.
|
||||
|
||||
**Fix:** Increase the `Delay` value in [`res/battle/moves/dynamic_punch/anim.s`](https://github.com/pret/pokeplatinum/blob/e7c9da4c9ff9e9c70c82fd03714cf9a9674d71cc/res/battle/moves/dynamic_punch/anim.s#L18)
|
||||
**Fix:** Increase the `Delay` value in [`res/moves/dynamic_punch/anim.s`](https://github.com/pret/pokeplatinum/blob/main/res/moves/dynamic_punch/anim.s#L18)
|
||||
|
||||
```diff
|
||||
- Delay 3
|
||||
@@ -198,7 +198,7 @@ each other, resulting in the sprite permanently moving left.
|
||||
Due to the delays between shake commands being too short, they overlap with
|
||||
each other, resulting in the sprite permanently moving left.
|
||||
|
||||
**Fix:** Move the `Delay 1` command into the loop in [`res/battle/moves/helping_hand/anim.s`](https://github.com/pret/pokeplatinum/blob/e7c9da4c9ff9e9c70c82fd03714cf9a9674d71cc/res/battle/moves/helping_hand/anim.s#L19)
|
||||
**Fix:** Move the `Delay 1` command into the loop in [`res/moves/helping_hand/anim.s`](https://github.com/pret/pokeplatinum/blob/main/res/moves/helping_hand/anim.s#L19)
|
||||
|
||||
|
||||
```diff
|
||||
|
||||
215
docs/datafiles/moves.md
Normal file
215
docs/datafiles/moves.md
Normal file
@@ -0,0 +1,215 @@
|
||||
# Move Data File Format
|
||||
|
||||
This document describes the file format for move data consumed by the `moveproc`
|
||||
build tool. Each move in the ROM is represented by a subdirectory
|
||||
`res/moves/<name>`, which must contain the following files:
|
||||
|
||||
| File | Purpose |
|
||||
| ----------- | -------------------------------------------------- |
|
||||
| `data.json` | Internal metadata (stats, type, flags, text, etc.) |
|
||||
| `anim.s` | Animation script used in battles and contests |
|
||||
| `script.s` | Execution script used in battles |
|
||||
|
||||
## `data.json` - Internal Metadata
|
||||
|
||||
Each move's directory contains a single `data.json` file consumed by
|
||||
`tools/dataproc/src/moveproc.c`. The JSON fields map directly onto the
|
||||
`MoveTable` struct from `include/move_table.h` and associated text banks.
|
||||
|
||||
### Schema
|
||||
|
||||
| Field | Type | Description |
|
||||
| ---------------- | ------------------------- | -------------------------------------------------------------------------- |
|
||||
| `name` | `string` | The move's display name. |
|
||||
| `description` | `string[]` | The move's description (e.g., on the summary screen) as an array of lines. |
|
||||
| `class` | `enum MoveCategory` | The classification of the move: Physical, Special, or Status. |
|
||||
| `type` | `enum PokemonType` | The type of the move: Fire, Water, etc. |
|
||||
| `power` | `u8` | Base power of the move. Status moves typically have power 0. |
|
||||
| `accuracy` | `u8` | Chance to hit, out of 100. A value of 0 never misses. May not exceed 100. |
|
||||
| `pp` | `u8` | Base PP, before any PP Ups are applied. |
|
||||
| `effect.type` | `enum MoveBattleEffect` | The primary battle effect. Maps to an effect script. |
|
||||
| `effect.chance` | `u8` | Chance for the effect to be applied, out of 100. May not exceed 100. |
|
||||
| `range` | `enum MoveRange` | Targeting range in battle. |
|
||||
| `priority` | `s8` | Speed priority. May be negative, e.g., Roar, Trick Room. |
|
||||
| `flags` | `enum MoveFlag[]` | Array of bitmask flags for important behaviors. May be empty. |
|
||||
| `contest.effect` | `enum MoveContestEffect` | The primary contest effect. Maps to an effect script. |
|
||||
| `contest.type` | `enum PokemonContestType` | The type of the move in contests: Cool, Cute, Beauty, Smart, Tough. |
|
||||
|
||||
The value of `name` is used to construct in-game text entries for:
|
||||
|
||||
1. The move's displayed name, e.g., in the Pokémon Summary Screen,
|
||||
2. The move's displayed name in all uppercase, and
|
||||
3. The in-battle text displayed when the move is used, of which there are three
|
||||
variants:
|
||||
1. When used by the player or an allied partner trainer,
|
||||
2. When used by a wild Pokémon, and
|
||||
3. When used by an enemy trainer's Pokémon.
|
||||
|
||||
### Example
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "Ember",
|
||||
"description": [
|
||||
"The foe is attacked\n",
|
||||
"with small flames.\n",
|
||||
"The target may also\n",
|
||||
"be left with a burn.\n"
|
||||
],
|
||||
"class": "CLASS_SPECIAL",
|
||||
"type": "TYPE_FIRE",
|
||||
"power": 40,
|
||||
"accuracy": 100,
|
||||
"pp": 25,
|
||||
"effect": {
|
||||
"type": "BATTLE_EFFECT_BURN_HIT",
|
||||
"chance": 10
|
||||
},
|
||||
"range": "RANGE_SINGLE_TARGET",
|
||||
"priority": 0,
|
||||
"flags": [
|
||||
"MOVE_FLAG_CAN_PROTECT",
|
||||
"MOVE_FLAG_CAN_MIRROR_MOVE",
|
||||
"MOVE_FLAG_HIDES_HP_GAUGES"
|
||||
],
|
||||
"contest": {
|
||||
"effect": "CONTEST_EFFECT_BASIC",
|
||||
"type": "CONTEST_TYPE_BEAUTY"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## `anim.s` — Animation Script
|
||||
|
||||
This script defines the commands executed to play the move's animation when used
|
||||
in a battle or contest. Commands are defined by `asm/macros/btlanimcmd.inc`, and
|
||||
some additional functions are available via `asm/macros/btlanimfunc.inc`.
|
||||
|
||||
### Example
|
||||
|
||||
```asm
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
LoadParticleResource 0, ember_spa
|
||||
CreateEmitter 0, 0, EMITTER_CB_GENERIC
|
||||
SetExtraParams 0, 2, 2, 0, 0, 0
|
||||
Func_FadeBattlerSprite BATTLE_ANIM_DEFENDER, 0, 1, BATTLE_COLOR_RED, 10, 0
|
||||
Func_Shake 1, 0, 1, 2, BATTLE_ANIM_BATTLER_SPRITE_DEFENDER
|
||||
PlayLoopedSoundEffectR SEQ_SE_DP_W052, 3, 4
|
||||
WaitForAllEmitters
|
||||
UnloadParticleSystem 0
|
||||
End
|
||||
```
|
||||
|
||||
## `script.s` — Battle Effect Script
|
||||
|
||||
This script defines the execution flow for a move when used in a battle. For
|
||||
most moves, the following script is sufficient:
|
||||
|
||||
```asm
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
```
|
||||
|
||||
Two-turn charge moves require some additional handling to support the text
|
||||
displayed on their charge turn. For example, the following script is defined for
|
||||
Solar Beam:
|
||||
|
||||
```asm
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
// {0} absorbed light!
|
||||
BufferMessage BattleStrings_Text_PokemonAbsorbedLight_Ally, TAG_NICKNAME, BTLSCR_ATTACKER
|
||||
GoToEffectScript
|
||||
```
|
||||
|
||||
## Details for a Matching ROM
|
||||
|
||||
### Incorrect In-Battle Message for U-turn
|
||||
|
||||
The retail ROM shipped with in-battle text for the move U-turn that incorrectly
|
||||
capitalizes it as "U-Turn". This is reflected in the code of
|
||||
`tools/dataproc/src/moveproc.c`:
|
||||
|
||||
```c
|
||||
char *nameline = strfmt2("%s!", name);
|
||||
if (i == MOVE_U_TURN) { // MATCH DETAIL: The retail game uses "U-Turn" in battle instead of "U-turn"
|
||||
nameline[2] = 'T';
|
||||
}
|
||||
```
|
||||
|
||||
To correct this oversight, remove the edge-case branch:
|
||||
|
||||
```diff
|
||||
char *nameline = strfmt2("%s!", name);
|
||||
- if (i == MOVE_U_TURN) { // MATCH DETAIL: The retail game uses "U-Turn" in battle instead of "U-turn"
|
||||
- nameline[2] = 'T';
|
||||
- }
|
||||
```
|
||||
|
||||
### Bogus Moves
|
||||
|
||||
The retail ROM shipped with a set of bogus / unused move entries beyond the
|
||||
accessible bounds. The animation and execution scripts for these entries are
|
||||
provided in the `res/moves/.shared` directory, while their metadata is embedded
|
||||
directly in the `moveproc` build tool. If you are using this project as the base
|
||||
for a mod, then they can be deleted as follows:
|
||||
|
||||
#### `tools/dataproc/src/moveproc.c`
|
||||
|
||||
Delete the function definitions for `pack_extra_moves` and `prep_extra_scripts`.
|
||||
Then, clean up the following references:
|
||||
|
||||
```diff
|
||||
static void prep_scripts(const char *basename);
|
||||
-static void pack_extra_moves(void);
|
||||
-static void prep_extra_scripts(void);
|
||||
static void init_orderfiles(void);
|
||||
```
|
||||
|
||||
```diff
|
||||
- pack_extra_moves();
|
||||
- prep_extra_scripts();
|
||||
return common_done(errc, close_orderfiles);
|
||||
```
|
||||
|
||||
Additionally, remove the following line:
|
||||
|
||||
```diff
|
||||
enum_seq_t moves = common_initenum(
|
||||
filename, "Move",
|
||||
.sourcefile = __FILE__,
|
||||
.depfile = depfile_path,
|
||||
.outdir = output_dir,
|
||||
.format = DATAPROC_F_JSON,
|
||||
.enums = enums,
|
||||
.archives = archives,
|
||||
.textbanks = textbanks,
|
||||
- .extra_files = 3,
|
||||
.hook_before = init_orderfiles,
|
||||
);
|
||||
```
|
||||
|
||||
#### `res/moves/meson.build`
|
||||
|
||||
Make the following change:
|
||||
|
||||
```diff
|
||||
move_text_banks = move_data_outputs.slice(3, move_data_outputs.length())
|
||||
|
||||
-anim_script_srcs = files(
|
||||
- '.shared/anim_0468_0474.s',
|
||||
- '.shared/anim_0475_0500.s',
|
||||
-)
|
||||
-
|
||||
-move_script_srcs = files('.shared/script_0468_0500.s')
|
||||
+anim_script_srcs = []
|
||||
+move_script_srcs = []
|
||||
move_script_srcdir = meson.current_source_dir()
|
||||
```
|
||||
111
docs/datafiles/overview.md
Normal file
111
docs/datafiles/overview.md
Normal file
@@ -0,0 +1,111 @@
|
||||
# Overview of Processing Tools for Data Files
|
||||
|
||||
The build pipeline uses a suite of custom compiler tools in `tools/dataproc` to
|
||||
bridge plain-text data files into game-ready binary data. These tools leverage
|
||||
a common interface for querying any given data markup format defined by
|
||||
`lib/dataproc.c`. Additionally, this common interface provides validation
|
||||
routines for common types and rich error reporting.
|
||||
|
||||
The driver implementations of these tools (e.g., `src/speciesproc.c`) also make
|
||||
use of shared infrastructure from `src/common.c` to:
|
||||
|
||||
1. Parse C enums and preprocessor definitions from headers into lookup tables,
|
||||
2. Generate output header files using `.template` files from the `data`
|
||||
subdirectory,
|
||||
3. Create output NARC files using `libnitroarc`, and
|
||||
4. Write dependency files at runtime for correct builds.
|
||||
|
||||
## Tools
|
||||
|
||||
| Tool | Input | Output |
|
||||
| -------------- | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
|
||||
| `dexproc` | Regional Pokédex JSON | Mappings of species to their regional and national Pokédex order. |
|
||||
| `frontierproc` | `res/trainers/frontier/{data,pokemon}/*.json` | Battle Frontier Pokémon pools and trainer definitions. |
|
||||
| `itemproc` | `res/items/data/*.json` + `include/constants/items.h` | Item metadata, hidden-item script definitions, item-to-icon mappings, TM-to-move mappings. |
|
||||
| `moveproc` | `res/moves/<name>/data.json` + `include/constants/moves.h` | Move metadata, in-game battle text, and animation scripts. |
|
||||
| `npctradeproc` | `res/npc_trades/*.json` + `include/constants/npc_trades.h` | Pokémon offered by NPCs for an in-game trade. |
|
||||
| `resdatproc` | Sprite template JSON + NARC ID maps | Serialized sprite templates to be loaded from the filesystem. |
|
||||
| `speciesproc` | `res/pokemon/<species>/data.json` | Pokémon base stats, evolutions, learnsets, and sprite positions. |
|
||||
| `trainerproc` | `res/trainers/data/*.json` | Trainer metadata, including their parties, in-battle messages, and overworld messages. |
|
||||
|
||||
## Common Patterns and Conventions
|
||||
|
||||
Each tool follows a similar structure. The following static variables are first
|
||||
defined to provide a base environment:
|
||||
|
||||
1. Constants to be loaded into lookup-tables, defined in an array `enums[]`.
|
||||
These lookup tables enable referencing in-game constants from JSON files from
|
||||
their identifiers.
|
||||
2. Any archives to be created which are sized according to the input, defined in
|
||||
an array `archives[]`. For example, `moveproc` defines `move_data.narc` here,
|
||||
which is known to contain one entry for each in-game move.
|
||||
3. Any C headers to be generated, defined in an array `headers[]`. Headers are
|
||||
instantiated with a header and footer according to a corresponding
|
||||
`.template` file in `tools/dataproc/data`. For example, `itemproc` produces
|
||||
`item_tm_move_map.h`, which is constructed using
|
||||
`tools/dataproc/data/item_tm_move_map.h.template`.
|
||||
4. Any text banks to be generated, defined in an array `textbanks[]`. For
|
||||
example, `npctradeproc` produces `npc_trade_names.json`, which contains the
|
||||
nickname and trainer name applied to each in-game trade.
|
||||
|
||||
Then, the processing code executes in the main loop. The following snippet
|
||||
illustrates the processing code from `moveproc`, with additional comments
|
||||
annotating the control flow:
|
||||
|
||||
```c
|
||||
int main(int argc, char **argv) {
|
||||
int errc = EXIT_SUCCESS;
|
||||
datafile_t df = { 0 };
|
||||
|
||||
parse_args(&argc, &argv);
|
||||
|
||||
// Instantiate the processing environment. This will load the input filename
|
||||
// passed as a program argument and look for "enum Move" inside its content.
|
||||
// This enum provides the base number of files for the output archives.
|
||||
//
|
||||
// The init_orderfiles function passed to .hook_before will be executed after
|
||||
// the base library is instantiated, but before any output files are
|
||||
// initialized.
|
||||
enum_seq_t moves = common_initenum(
|
||||
filename, "Move",
|
||||
.sourcefile = __FILE__,
|
||||
.depfile = depfile_path,
|
||||
.outdir = output_dir,
|
||||
.format = DATAPROC_F_JSON,
|
||||
.enums = enums,
|
||||
.archives = archives,
|
||||
.textbanks = textbanks,
|
||||
.extra_files = 3,
|
||||
.hook_before = init_orderfiles,
|
||||
);
|
||||
|
||||
// Process individual files, using the names from the input enum as an
|
||||
// authority for subdirectories in the asset tree.
|
||||
for (size_t i = 0; i < moves.size; i++) {
|
||||
const char *stem = moves.members[i].name + lengthof("MOVE_");
|
||||
|
||||
char *basename = strlower(stem);
|
||||
char *filepath = pathjoin(base_dir, basename, "data.json");
|
||||
declare_dep(filepath);
|
||||
|
||||
if (dp_load(&df, filepath) == 0) {
|
||||
proc_move(&df);
|
||||
proc_text(&df, i, basename);
|
||||
prep_scripts(basename);
|
||||
}
|
||||
|
||||
// Report any diagnostics found during processing.
|
||||
if (dp_report(&df) == DIAG_ERROR) errc = EXIT_FAILURE;
|
||||
|
||||
free(basename);
|
||||
free(filepath);
|
||||
dp_free(&df);
|
||||
}
|
||||
|
||||
// Handle any additional processing tasks before sealing the output files
|
||||
// and exiting the program.
|
||||
pack_extra_moves();
|
||||
prep_extra_scripts();
|
||||
return common_done(errc, close_orderfiles);
|
||||
}
|
||||
```
|
||||
@@ -12,6 +12,11 @@ For more detailed information about the project as a whole, please refer to its
|
||||
|
||||
- [Fixes for Various Bugs and Glitches](bugs_and_glitches.md)
|
||||
|
||||
## Working with Files for Various Data Types
|
||||
|
||||
- [Overview of the Processing Tools](datafiles/overview.md)
|
||||
- [Moves](datafiles/moves.md)
|
||||
|
||||
## Subsystems
|
||||
|
||||
- [2D Graphics](2d_rendering.md)
|
||||
|
||||
@@ -25,7 +25,6 @@ metang_generators = {
|
||||
'battle_context_params': { 'type': 'enum', 'tag': 'BattleContextParam' },
|
||||
'battle_message_tags': { 'type': 'enum', 'tag': 'BattleMessageTag' },
|
||||
'battle_mon_params': { 'type': 'enum', 'tag': 'BattleMonParam' },
|
||||
'battle_move_effects': { 'type': 'enum', 'tag': 'BattleMoveEffect' },
|
||||
'battle_move_subscript_ptrs': { 'type': 'enum', 'tag': 'BattleMoveSubscriptPtr' },
|
||||
'battle_script_battlers': { 'type': 'enum', 'tag': 'Battler' },
|
||||
'battle_script_check_side_condition_ops': { 'type': 'enum', 'tag': 'BattleScriptCheckSideConditionOp' },
|
||||
@@ -43,7 +42,6 @@ metang_generators = {
|
||||
'bg_event_dirs': { 'type': 'enum', 'tag': 'BgEventDir' },
|
||||
'bg_event_types': { 'type': 'enum', 'tag': 'BgEventType' },
|
||||
'catching_show_points_category': { 'type': 'enum', 'tag': 'CatchingShowPointsCategory' },
|
||||
'contest_effects': { 'type': 'enum', 'tag': 'ContestEffects' },
|
||||
'comm_club_ret_codes': { 'type': 'enum', 'tag': 'CommClubRetCode' },
|
||||
'days_of_week': { 'type': 'enum', 'tag': 'DayOfWeek' },
|
||||
'distribution_events': { 'type': 'enum', 'tag': 'DistributionEvent' },
|
||||
@@ -69,7 +67,9 @@ metang_generators = {
|
||||
'map_headers': { 'type': 'enum', 'tag': 'MapHeader' },
|
||||
'maps': { 'type': 'enum', 'tag': 'MapID' },
|
||||
'move_attributes': { 'type': 'enum', 'tag': 'MoveAttribute' },
|
||||
'move_battle_effects': { 'type': 'enum', 'tag': 'MoveBattleEffect' },
|
||||
'move_classes': { 'type': 'enum', 'tag': 'MoveClass' },
|
||||
'move_contest_effects': { 'type': 'enum', 'tag': 'MoveContestEffect' },
|
||||
'move_flags': { 'type': 'mask', 'tag': 'MoveFlag' },
|
||||
'move_ranges': { 'type': 'mask', 'tag': 'MoveRange', 'extra': ['--no-auto'] },
|
||||
'movement_actions': { 'type': 'enum', 'tag': 'MovementAction' },
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
#include "generated/battle_context_params.h"
|
||||
#include "generated/battle_message_tags.h"
|
||||
#include "generated/battle_mon_params.h"
|
||||
#include "generated/battle_move_effects.h"
|
||||
#include "generated/battle_move_subscript_ptrs.h"
|
||||
#include "generated/battle_side_effect_types.h"
|
||||
#include "generated/battle_stats.h"
|
||||
#include "generated/battle_sub_animations.h"
|
||||
#include "generated/battle_terrains.h"
|
||||
#include "generated/move_battle_effects.h"
|
||||
|
||||
#define BATTLE_TYPE_SINGLES (0 << 0)
|
||||
#define BATTLE_TYPE_WILD_MON (0 << 0)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef POKEPLATINUM_UNK_02094EDC_H
|
||||
#define POKEPLATINUM_UNK_02094EDC_H
|
||||
|
||||
#include "generated/contest_effects.h"
|
||||
#include "generated/move_contest_effects.h"
|
||||
#include "generated/pokemon_contest_ranks.h"
|
||||
#include "generated/pokemon_contest_types.h"
|
||||
|
||||
@@ -19,7 +19,7 @@ void sub_02095338(Contest *contest);
|
||||
void sub_02095380(const UnkStruct_ov6_02248BE8 *param0, Pokemon *param1, enum HeapID heapID);
|
||||
PokemonSprite *sub_02095484(PokemonSpriteManager *param0, int param1, Pokemon *param2, int param3, PokemonSpriteData *pokemonSpriteData, enum HeapID heapID, int param6, int param7, int param8);
|
||||
void sub_020954F0(Contest *contest, enum HeapID heapID, int param2, enum PokemonContestType contestType, enum PokemonContestRank contestRank);
|
||||
s8 sub_02095734(enum ContestEffects contestEffect);
|
||||
s8 sub_02095734(enum MoveContestEffect contestEffect);
|
||||
void Contest_LoadTwoLineContestEffectMessages(int moveContestEffectID, u32 *lineOneEffectMessageID, u32 *lineTwoEffectMessageID);
|
||||
u32 sub_0209577C(int param0);
|
||||
void sub_02095790(int contestMoveEffect, int param1, u32 *param2, u32 *param3);
|
||||
|
||||
@@ -175,7 +175,7 @@ res/prebuilt/battle/graphic/pl_b_plist_gra.narc,/battle/graphic/pl_b_plist_gra.n
|
||||
res/prebuilt/battle/graphic/pl_batt_bg.narc,/battle/graphic/pl_batt_bg.narc
|
||||
res/graphics/battle/sprites.narc,/battle/graphic/pl_batt_obj.narc
|
||||
res/prebuilt/battle/graphic/vs_demo_gra.narc,/battle/graphic/vs_demo_gra.narc
|
||||
res/battle/moves/anim_scripts.narc,/wazaeffect/we.arc
|
||||
res/moves/anim_scripts.narc,/wazaeffect/we.arc
|
||||
res/battle/scripts/common_anims/anim_subscripts.narc,/wazaeffect/we_sub.narc
|
||||
res/battle/scripts/be_seq.narc,/battle/skill/be_seq.narc
|
||||
res/battle/scripts/sub_seq.narc,/battle/skill/sub_seq.narc
|
||||
@@ -184,7 +184,7 @@ res/graphics/battle/moves/anim_ncer.narc,/wazaeffect/effectclact/wecell.narc
|
||||
res/graphics/battle/moves/anim_nanr.narc,/wazaeffect/effectclact/wecellanm.narc
|
||||
res/graphics/battle/moves/anim_ncgr.narc,/wazaeffect/effectclact/wechar.narc
|
||||
res/graphics/battle/moves/anim_nclr.narc,/wazaeffect/effectclact/wepltt.narc
|
||||
res/battle/moves/pl_waza_tbl.narc,/poketool/waza/pl_waza_tbl.narc
|
||||
res/moves/move_data.narc,/poketool/waza/pl_waza_tbl.narc
|
||||
res/prebuilt/poketool/waza/waza_tbl.narc,/poketool/waza/waza_tbl.narc
|
||||
res/field/scripts/scr_seq.narc,/fielddata/script/scr_seq.narc
|
||||
res/prebuilt/graphic/bag_gra.narc,/graphic/bag_gra.narc
|
||||
@@ -254,8 +254,8 @@ res/prebuilt/poketool/icongra/poke_icon.narc,/poketool/icongra/poke_icon.narc
|
||||
res/pokemon/pokefoot.narc,/poketool/pokefoot/pokefoot.narc
|
||||
res/prebuilt/data/mmodel/mmodel.narc,/data/mmodel/mmodel.narc
|
||||
res/prebuilt/data/mmodel/fldeff.narc,/data/mmodel/fldeff.narc
|
||||
res/battle/particles/pokeballs/ball_particles.narc,/wazaeffect/effectdata/ball_particle.narc
|
||||
res/battle/particles/battle_particles.narc,/wazaeffect/effectdata/waza_particle.narc
|
||||
res/graphics/battle/particles/pokeballs/ball_particles.narc,/wazaeffect/effectdata/ball_particle.narc
|
||||
res/graphics/battle/particles/battle_particles.narc,/wazaeffect/effectdata/waza_particle.narc
|
||||
res/field/events/zone_event.narc,/fielddata/eventdata/zone_event.narc
|
||||
res/prebuilt/fielddata/encountdata/d_enc_data.narc,/fielddata/encountdata/d_enc_data.narc
|
||||
res/prebuilt/fielddata/encountdata/p_enc_data.narc,/fielddata/encountdata/p_enc_data.narc
|
||||
|
||||
|
@@ -174,7 +174,7 @@ c9baf056c8646bc0bc826bbc98f5cbd439643f3d *res/prebuilt/battle/graphic/batt_obj.n
|
||||
2fafdda86f7f740e2843c95382f08dfac35fa64f *res/prebuilt/battle/graphic/pl_batt_bg.narc
|
||||
db5906303178da70f6b6c852990df560fb4dfeba *res/graphics/battle/sprites.narc
|
||||
955ce80b532be2184c62c36a6cb9d6b68c4669dd *res/prebuilt/battle/graphic/vs_demo_gra.narc
|
||||
c7e601f3c145dd3c36c6f1deee1f63d526be3c37 *res/battle/moves/anim_scripts.narc
|
||||
c7e601f3c145dd3c36c6f1deee1f63d526be3c37 *res/moves/anim_scripts.narc
|
||||
30bb77e76c27874bc8ff923b33492595f1a377e2 *res/battle/scripts/common_anims/anim_subscripts.narc
|
||||
20e86a2ef9050edef59a91bfcefcc2869ab29349 *res/battle/scripts/be_seq.narc
|
||||
b646973b4c92a1d25479c5b08d28ff283274db33 *res/battle/scripts/sub_seq.narc
|
||||
@@ -183,7 +183,7 @@ abbe7036e7117af7f4fd397cd3619b83f5e1d321 *res/battle/scripts/waza_seq.narc
|
||||
82101cf2a686e2834dd45fa0a6c11407120b863d *res/graphics/battle/moves/anim_nanr.narc
|
||||
8aa94ec2f9b21eab75e33d2a21b83a61c55e67b0 *res/graphics/battle/moves/anim_ncgr.narc
|
||||
e3bb819c8dbab8a8db5e4ddccc788b234424e605 *res/graphics/battle/moves/anim_nclr.narc
|
||||
42e2b71655a74d6e5bffb9ec75a25df930b20c59 *res/battle/moves/pl_waza_tbl.narc
|
||||
42e2b71655a74d6e5bffb9ec75a25df930b20c59 *res/moves/move_data.narc
|
||||
20a2a364629e4eb897f3cf443e15e65b7f1ac957 *res/prebuilt/poketool/waza/waza_tbl.narc
|
||||
9f4d3587b7032f4f673ccc1b8971685b2199396b *res/field/scripts/scr_seq.narc
|
||||
86e4a1030a0f3939eff107e94023140dd91acf6a *res/prebuilt/graphic/bag_gra.narc
|
||||
@@ -253,8 +253,8 @@ a2eca9df316b9cad191ace16d08a90603966e892 *res/prebuilt/graphic/worldtrade.narc
|
||||
7fb44c0bcde2ac5ae042835146c21b84159f5693 *res/pokemon/pokefoot.narc
|
||||
21bd9b9e352c828de0a93979589f7ea487c846d6 *res/prebuilt/data/mmodel/mmodel.narc
|
||||
70d483c69d9f83dc52de91f2451c6cdfba6a046c *res/prebuilt/data/mmodel/fldeff.narc
|
||||
5de52d02105237dc02fb4c87c9b8378a5da93217 *res/battle/particles/pokeballs/ball_particles.narc
|
||||
bd80949f0ab84fe4b4963a41063088b2e2d6df92 *res/battle/particles/battle_particles.narc
|
||||
5de52d02105237dc02fb4c87c9b8378a5da93217 *res/graphics/battle/particles/pokeballs/ball_particles.narc
|
||||
bd80949f0ab84fe4b4963a41063088b2e2d6df92 *res/graphics/battle/particles/battle_particles.narc
|
||||
e484a4ea105e16977b9f39b965aaad014a4ec923 *res/field/events/zone_event.narc
|
||||
bda5c8e66cfa121c2d518d4388bd6f742746cda0 *res/prebuilt/fielddata/encountdata/d_enc_data.narc
|
||||
4bcbf53d522ed962160b85af588816f7257fb1c3 *res/prebuilt/fielddata/encountdata/p_enc_data.narc
|
||||
|
||||
@@ -1,35 +1 @@
|
||||
# We must walk into this directory first; all other battle-scripts need access
|
||||
# to the index for the battle particles NARC.
|
||||
subdir('particles')
|
||||
|
||||
# This generator is shared by both move-specific animations (in the `moves`
|
||||
# directory) and common animations (in the `scripts/common_anims` directory).
|
||||
battle_anim_script_bin_gen = generator(make_script_bin_sh,
|
||||
arguments: [
|
||||
'-i', relative_source_root / 'include',
|
||||
'-i', relative_source_root / 'asm',
|
||||
'-i', '.',
|
||||
'--depfile', '@DEPFILE@',
|
||||
'--enumproc', enumproc_exe.full_path(),
|
||||
'--assembler', arm_none_eabi_gcc_exe.full_path(),
|
||||
'--objcopy', arm_none_eabi_objcopy_exe.full_path(),
|
||||
'@EXTRA_ARGS@',
|
||||
'@INPUT@',
|
||||
],
|
||||
depends: [
|
||||
enumproc_exe,
|
||||
text_banks,
|
||||
c_consts_generators,
|
||||
h_headers,
|
||||
battle_particles_narc[1],
|
||||
anim_ncer_narc_files[1],
|
||||
anim_nanr_narc_files[1],
|
||||
anim_ncgr_narc_files[1],
|
||||
anim_nclr_narc_files[1],
|
||||
],
|
||||
output: '@BASENAME@',
|
||||
depfile: '@BASENAME@.d',
|
||||
)
|
||||
|
||||
subdir('moves')
|
||||
subdir('scripts')
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
{
|
||||
"name": "",
|
||||
"class": "CLASS_SPECIAL",
|
||||
"type": "TYPE_NORMAL",
|
||||
"power": 100,
|
||||
"accuracy": 100,
|
||||
"pp": 10,
|
||||
"effect": {
|
||||
"type": "BATTLE_EFFECT_HIT",
|
||||
"chance": 0
|
||||
},
|
||||
"range": "RANGE_SINGLE_TARGET",
|
||||
"priority": 0,
|
||||
"flags": [
|
||||
"MOVE_FLAG_CAN_PROTECT",
|
||||
"MOVE_FLAG_CAN_MIRROR_MOVE",
|
||||
"MOVE_FLAG_TRIGGERS_KINGS_ROCK"
|
||||
],
|
||||
"contest": {
|
||||
"effect": "CONTEST_EFFECT_LOW_VOLTAGE_ADVANTAGE",
|
||||
"type": "CONTEST_TYPE_BEAUTY"
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffectR SEQ_SE_DP_030
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,23 +0,0 @@
|
||||
{
|
||||
"name": "",
|
||||
"class": "CLASS_SPECIAL",
|
||||
"type": "TYPE_NORMAL",
|
||||
"power": 100,
|
||||
"accuracy": 100,
|
||||
"pp": 10,
|
||||
"effect": {
|
||||
"type": "BATTLE_EFFECT_HIT",
|
||||
"chance": 0
|
||||
},
|
||||
"range": "RANGE_SINGLE_TARGET",
|
||||
"priority": 0,
|
||||
"flags": [
|
||||
"MOVE_FLAG_CAN_PROTECT",
|
||||
"MOVE_FLAG_CAN_MIRROR_MOVE",
|
||||
"MOVE_FLAG_TRIGGERS_KINGS_ROCK"
|
||||
],
|
||||
"contest": {
|
||||
"effect": "CONTEST_EFFECT_FIRST_PERFORMANCE_ADVANTAGE",
|
||||
"type": "CONTEST_TYPE_CUTE"
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffectR SEQ_SE_DP_030
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,23 +0,0 @@
|
||||
{
|
||||
"name": "",
|
||||
"class": "CLASS_SPECIAL",
|
||||
"type": "TYPE_NORMAL",
|
||||
"power": 100,
|
||||
"accuracy": 100,
|
||||
"pp": 10,
|
||||
"effect": {
|
||||
"type": "BATTLE_EFFECT_HIT",
|
||||
"chance": 0
|
||||
},
|
||||
"range": "RANGE_SINGLE_TARGET",
|
||||
"priority": 0,
|
||||
"flags": [
|
||||
"MOVE_FLAG_CAN_PROTECT",
|
||||
"MOVE_FLAG_CAN_MIRROR_MOVE",
|
||||
"MOVE_FLAG_TRIGGERS_KINGS_ROCK"
|
||||
],
|
||||
"contest": {
|
||||
"effect": "CONTEST_EFFECT_FINAL_PERFORMANCE_ADVANTAGE",
|
||||
"type": "CONTEST_TYPE_SMART"
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffectR SEQ_SE_DP_030
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffectR SEQ_SE_DP_030
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffectR SEQ_SE_DP_030
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffectR SEQ_SE_DP_030
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,10 +0,0 @@
|
||||
#include "macros/btlanimcmd.inc"
|
||||
|
||||
L_0:
|
||||
Func_Nop
|
||||
Func_AnimExample
|
||||
Func_SoundExample
|
||||
Func_GenericExample
|
||||
PlaySoundEffect SEQ_SE_DP_BASI
|
||||
Delay 60
|
||||
End
|
||||
@@ -1,116 +0,0 @@
|
||||
fs = import('fs')
|
||||
|
||||
pl_waza_tbl_subdirs = [
|
||||
'0000',
|
||||
'0468',
|
||||
'0469',
|
||||
'0470',
|
||||
]
|
||||
|
||||
anim_script_subdirs = [
|
||||
'0000',
|
||||
'0468',
|
||||
'0469',
|
||||
'0470',
|
||||
'0471',
|
||||
'0472',
|
||||
'0473',
|
||||
'0474',
|
||||
'0475',
|
||||
'0476',
|
||||
'0477',
|
||||
'0478',
|
||||
'0479',
|
||||
'0480',
|
||||
'0481',
|
||||
'0482',
|
||||
'0483',
|
||||
'0484',
|
||||
'0485',
|
||||
'0486',
|
||||
'0487',
|
||||
'0488',
|
||||
'0489',
|
||||
'0490',
|
||||
'0491',
|
||||
'0492',
|
||||
'0493',
|
||||
'0494',
|
||||
'0495',
|
||||
'0496',
|
||||
'0497',
|
||||
'0498',
|
||||
'0499',
|
||||
'0500',
|
||||
]
|
||||
|
||||
move_consts = fs.read(moves_txt).splitlines()
|
||||
foreach move : move_consts
|
||||
if move.startswith('MOVE_') and move != 'MOVE_NONE'
|
||||
move_name = move.replace('MOVE_', '').to_lower()
|
||||
pl_waza_tbl_subdirs += move_name
|
||||
anim_script_subdirs += move_name
|
||||
endif
|
||||
endforeach
|
||||
|
||||
pl_waza_tbl_data_srcs = []
|
||||
foreach subdir : pl_waza_tbl_subdirs
|
||||
pl_waza_tbl_data_srcs += subdir / 'data.json'
|
||||
endforeach
|
||||
|
||||
pl_waza_tbl_narc = custom_target('pl_waza_tbl.narc',
|
||||
output: 'pl_waza_tbl.narc',
|
||||
input: pl_waza_tbl_data_srcs,
|
||||
env: jsoncnv_env,
|
||||
depends: [ py_consts_generators ],
|
||||
command: [
|
||||
movedata_py,
|
||||
'--narc', nitroarc_exe,
|
||||
'--source-dir', '@CURRENT_SOURCE_DIR@',
|
||||
'--private-dir', '@PRIVATE_DIR@',
|
||||
'--output-dir', '@OUTDIR@',
|
||||
]
|
||||
)
|
||||
|
||||
anim_script_srcs = []
|
||||
foreach subdir : anim_script_subdirs
|
||||
anim_script_srcs += subdir / 'anim.s'
|
||||
endforeach
|
||||
|
||||
relative_build_dir = fs.relative_to(meson.current_build_dir(), meson.project_build_root())
|
||||
|
||||
anim_scripts_root = meson.current_source_dir()
|
||||
|
||||
anim_scripts_basename = 'anim_scripts'
|
||||
anim_scripts_narc_name = anim_scripts_basename + '.narc'
|
||||
anim_scripts_order_name = anim_scripts_basename + '.order'
|
||||
|
||||
anim_scripts_private_dir = relative_build_dir / anim_scripts_narc_name + '.p'
|
||||
|
||||
anim_scripts_order = custom_target(anim_scripts_order_name,
|
||||
output: anim_scripts_order_name,
|
||||
input: [ moves_txt ],
|
||||
command: [ ordergen_battle_anim_scripts_py, '@INPUT@', meson.current_source_dir(), '@OUTPUT@' ],
|
||||
)
|
||||
|
||||
anim_scripts_narc = custom_target(anim_scripts_narc_name,
|
||||
output: [
|
||||
anim_scripts_narc_name,
|
||||
],
|
||||
input: battle_anim_script_bin_gen.process(
|
||||
anim_script_srcs,
|
||||
extra_args: ['--out-dir', anim_scripts_private_dir, '--parent-dir'],
|
||||
preserve_path_from: anim_scripts_root,
|
||||
),
|
||||
command: [
|
||||
nitroarc_exe,
|
||||
'--create',
|
||||
'--files-from', anim_scripts_order,
|
||||
'--exclude', '*.d',
|
||||
'--file', '@OUTPUT0@',
|
||||
'@PRIVATE_DIR@',
|
||||
],
|
||||
)
|
||||
|
||||
nitrofs_files += pl_waza_tbl_narc
|
||||
nitrofs_files += anim_scripts_narc
|
||||
@@ -1,6 +1,5 @@
|
||||
subdir('common_anims')
|
||||
subdir('effects')
|
||||
subdir('moves')
|
||||
subdir('subscripts')
|
||||
|
||||
relative_build_dir = fs.relative_to(meson.current_build_dir(), meson.project_build_root())
|
||||
@@ -52,12 +51,17 @@ sub_seq_narc = custom_target(sub_seq_narc_name,
|
||||
waza_seq_narc = custom_target(waza_seq_target_name,
|
||||
output: waza_seq_target_name,
|
||||
input: script_bin_gen.process(
|
||||
move_script_files,
|
||||
extra_args: ['--out-dir', waza_seq_private_dir]
|
||||
move_script_srcs, # comes from `res/moves`
|
||||
extra_args: [
|
||||
'--out-dir', waza_seq_private_dir,
|
||||
'--parent-dir',
|
||||
],
|
||||
preserve_path_from: move_script_srcdir,
|
||||
),
|
||||
command: [
|
||||
nitroarc_exe,
|
||||
'--create',
|
||||
'--files-from', move_scripts_order,
|
||||
'--file', '@OUTPUT0@',
|
||||
'@PRIVATE_DIR@',
|
||||
],
|
||||
|
||||
@@ -1,503 +0,0 @@
|
||||
move_script_files = files(
|
||||
'move_script_0000.s',
|
||||
'move_script_0001.s',
|
||||
'move_script_0002.s',
|
||||
'move_script_0003.s',
|
||||
'move_script_0004.s',
|
||||
'move_script_0005.s',
|
||||
'move_script_0006.s',
|
||||
'move_script_0007.s',
|
||||
'move_script_0008.s',
|
||||
'move_script_0009.s',
|
||||
'move_script_0010.s',
|
||||
'move_script_0011.s',
|
||||
'move_script_0012.s',
|
||||
'move_script_0013.s',
|
||||
'move_script_0014.s',
|
||||
'move_script_0015.s',
|
||||
'move_script_0016.s',
|
||||
'move_script_0017.s',
|
||||
'move_script_0018.s',
|
||||
'move_script_0019.s',
|
||||
'move_script_0020.s',
|
||||
'move_script_0021.s',
|
||||
'move_script_0022.s',
|
||||
'move_script_0023.s',
|
||||
'move_script_0024.s',
|
||||
'move_script_0025.s',
|
||||
'move_script_0026.s',
|
||||
'move_script_0027.s',
|
||||
'move_script_0028.s',
|
||||
'move_script_0029.s',
|
||||
'move_script_0030.s',
|
||||
'move_script_0031.s',
|
||||
'move_script_0032.s',
|
||||
'move_script_0033.s',
|
||||
'move_script_0034.s',
|
||||
'move_script_0035.s',
|
||||
'move_script_0036.s',
|
||||
'move_script_0037.s',
|
||||
'move_script_0038.s',
|
||||
'move_script_0039.s',
|
||||
'move_script_0040.s',
|
||||
'move_script_0041.s',
|
||||
'move_script_0042.s',
|
||||
'move_script_0043.s',
|
||||
'move_script_0044.s',
|
||||
'move_script_0045.s',
|
||||
'move_script_0046.s',
|
||||
'move_script_0047.s',
|
||||
'move_script_0048.s',
|
||||
'move_script_0049.s',
|
||||
'move_script_0050.s',
|
||||
'move_script_0051.s',
|
||||
'move_script_0052.s',
|
||||
'move_script_0053.s',
|
||||
'move_script_0054.s',
|
||||
'move_script_0055.s',
|
||||
'move_script_0056.s',
|
||||
'move_script_0057.s',
|
||||
'move_script_0058.s',
|
||||
'move_script_0059.s',
|
||||
'move_script_0060.s',
|
||||
'move_script_0061.s',
|
||||
'move_script_0062.s',
|
||||
'move_script_0063.s',
|
||||
'move_script_0064.s',
|
||||
'move_script_0065.s',
|
||||
'move_script_0066.s',
|
||||
'move_script_0067.s',
|
||||
'move_script_0068.s',
|
||||
'move_script_0069.s',
|
||||
'move_script_0070.s',
|
||||
'move_script_0071.s',
|
||||
'move_script_0072.s',
|
||||
'move_script_0073.s',
|
||||
'move_script_0074.s',
|
||||
'move_script_0075.s',
|
||||
'move_script_0076.s',
|
||||
'move_script_0077.s',
|
||||
'move_script_0078.s',
|
||||
'move_script_0079.s',
|
||||
'move_script_0080.s',
|
||||
'move_script_0081.s',
|
||||
'move_script_0082.s',
|
||||
'move_script_0083.s',
|
||||
'move_script_0084.s',
|
||||
'move_script_0085.s',
|
||||
'move_script_0086.s',
|
||||
'move_script_0087.s',
|
||||
'move_script_0088.s',
|
||||
'move_script_0089.s',
|
||||
'move_script_0090.s',
|
||||
'move_script_0091.s',
|
||||
'move_script_0092.s',
|
||||
'move_script_0093.s',
|
||||
'move_script_0094.s',
|
||||
'move_script_0095.s',
|
||||
'move_script_0096.s',
|
||||
'move_script_0097.s',
|
||||
'move_script_0098.s',
|
||||
'move_script_0099.s',
|
||||
'move_script_0100.s',
|
||||
'move_script_0101.s',
|
||||
'move_script_0102.s',
|
||||
'move_script_0103.s',
|
||||
'move_script_0104.s',
|
||||
'move_script_0105.s',
|
||||
'move_script_0106.s',
|
||||
'move_script_0107.s',
|
||||
'move_script_0108.s',
|
||||
'move_script_0109.s',
|
||||
'move_script_0110.s',
|
||||
'move_script_0111.s',
|
||||
'move_script_0112.s',
|
||||
'move_script_0113.s',
|
||||
'move_script_0114.s',
|
||||
'move_script_0115.s',
|
||||
'move_script_0116.s',
|
||||
'move_script_0117.s',
|
||||
'move_script_0118.s',
|
||||
'move_script_0119.s',
|
||||
'move_script_0120.s',
|
||||
'move_script_0121.s',
|
||||
'move_script_0122.s',
|
||||
'move_script_0123.s',
|
||||
'move_script_0124.s',
|
||||
'move_script_0125.s',
|
||||
'move_script_0126.s',
|
||||
'move_script_0127.s',
|
||||
'move_script_0128.s',
|
||||
'move_script_0129.s',
|
||||
'move_script_0130.s',
|
||||
'move_script_0131.s',
|
||||
'move_script_0132.s',
|
||||
'move_script_0133.s',
|
||||
'move_script_0134.s',
|
||||
'move_script_0135.s',
|
||||
'move_script_0136.s',
|
||||
'move_script_0137.s',
|
||||
'move_script_0138.s',
|
||||
'move_script_0139.s',
|
||||
'move_script_0140.s',
|
||||
'move_script_0141.s',
|
||||
'move_script_0142.s',
|
||||
'move_script_0143.s',
|
||||
'move_script_0144.s',
|
||||
'move_script_0145.s',
|
||||
'move_script_0146.s',
|
||||
'move_script_0147.s',
|
||||
'move_script_0148.s',
|
||||
'move_script_0149.s',
|
||||
'move_script_0150.s',
|
||||
'move_script_0151.s',
|
||||
'move_script_0152.s',
|
||||
'move_script_0153.s',
|
||||
'move_script_0154.s',
|
||||
'move_script_0155.s',
|
||||
'move_script_0156.s',
|
||||
'move_script_0157.s',
|
||||
'move_script_0158.s',
|
||||
'move_script_0159.s',
|
||||
'move_script_0160.s',
|
||||
'move_script_0161.s',
|
||||
'move_script_0162.s',
|
||||
'move_script_0163.s',
|
||||
'move_script_0164.s',
|
||||
'move_script_0165.s',
|
||||
'move_script_0166.s',
|
||||
'move_script_0167.s',
|
||||
'move_script_0168.s',
|
||||
'move_script_0169.s',
|
||||
'move_script_0170.s',
|
||||
'move_script_0171.s',
|
||||
'move_script_0172.s',
|
||||
'move_script_0173.s',
|
||||
'move_script_0174.s',
|
||||
'move_script_0175.s',
|
||||
'move_script_0176.s',
|
||||
'move_script_0177.s',
|
||||
'move_script_0178.s',
|
||||
'move_script_0179.s',
|
||||
'move_script_0180.s',
|
||||
'move_script_0181.s',
|
||||
'move_script_0182.s',
|
||||
'move_script_0183.s',
|
||||
'move_script_0184.s',
|
||||
'move_script_0185.s',
|
||||
'move_script_0186.s',
|
||||
'move_script_0187.s',
|
||||
'move_script_0188.s',
|
||||
'move_script_0189.s',
|
||||
'move_script_0190.s',
|
||||
'move_script_0191.s',
|
||||
'move_script_0192.s',
|
||||
'move_script_0193.s',
|
||||
'move_script_0194.s',
|
||||
'move_script_0195.s',
|
||||
'move_script_0196.s',
|
||||
'move_script_0197.s',
|
||||
'move_script_0198.s',
|
||||
'move_script_0199.s',
|
||||
'move_script_0200.s',
|
||||
'move_script_0201.s',
|
||||
'move_script_0202.s',
|
||||
'move_script_0203.s',
|
||||
'move_script_0204.s',
|
||||
'move_script_0205.s',
|
||||
'move_script_0206.s',
|
||||
'move_script_0207.s',
|
||||
'move_script_0208.s',
|
||||
'move_script_0209.s',
|
||||
'move_script_0210.s',
|
||||
'move_script_0211.s',
|
||||
'move_script_0212.s',
|
||||
'move_script_0213.s',
|
||||
'move_script_0214.s',
|
||||
'move_script_0215.s',
|
||||
'move_script_0216.s',
|
||||
'move_script_0217.s',
|
||||
'move_script_0218.s',
|
||||
'move_script_0219.s',
|
||||
'move_script_0220.s',
|
||||
'move_script_0221.s',
|
||||
'move_script_0222.s',
|
||||
'move_script_0223.s',
|
||||
'move_script_0224.s',
|
||||
'move_script_0225.s',
|
||||
'move_script_0226.s',
|
||||
'move_script_0227.s',
|
||||
'move_script_0228.s',
|
||||
'move_script_0229.s',
|
||||
'move_script_0230.s',
|
||||
'move_script_0231.s',
|
||||
'move_script_0232.s',
|
||||
'move_script_0233.s',
|
||||
'move_script_0234.s',
|
||||
'move_script_0235.s',
|
||||
'move_script_0236.s',
|
||||
'move_script_0237.s',
|
||||
'move_script_0238.s',
|
||||
'move_script_0239.s',
|
||||
'move_script_0240.s',
|
||||
'move_script_0241.s',
|
||||
'move_script_0242.s',
|
||||
'move_script_0243.s',
|
||||
'move_script_0244.s',
|
||||
'move_script_0245.s',
|
||||
'move_script_0246.s',
|
||||
'move_script_0247.s',
|
||||
'move_script_0248.s',
|
||||
'move_script_0249.s',
|
||||
'move_script_0250.s',
|
||||
'move_script_0251.s',
|
||||
'move_script_0252.s',
|
||||
'move_script_0253.s',
|
||||
'move_script_0254.s',
|
||||
'move_script_0255.s',
|
||||
'move_script_0256.s',
|
||||
'move_script_0257.s',
|
||||
'move_script_0258.s',
|
||||
'move_script_0259.s',
|
||||
'move_script_0260.s',
|
||||
'move_script_0261.s',
|
||||
'move_script_0262.s',
|
||||
'move_script_0263.s',
|
||||
'move_script_0264.s',
|
||||
'move_script_0265.s',
|
||||
'move_script_0266.s',
|
||||
'move_script_0267.s',
|
||||
'move_script_0268.s',
|
||||
'move_script_0269.s',
|
||||
'move_script_0270.s',
|
||||
'move_script_0271.s',
|
||||
'move_script_0272.s',
|
||||
'move_script_0273.s',
|
||||
'move_script_0274.s',
|
||||
'move_script_0275.s',
|
||||
'move_script_0276.s',
|
||||
'move_script_0277.s',
|
||||
'move_script_0278.s',
|
||||
'move_script_0279.s',
|
||||
'move_script_0280.s',
|
||||
'move_script_0281.s',
|
||||
'move_script_0282.s',
|
||||
'move_script_0283.s',
|
||||
'move_script_0284.s',
|
||||
'move_script_0285.s',
|
||||
'move_script_0286.s',
|
||||
'move_script_0287.s',
|
||||
'move_script_0288.s',
|
||||
'move_script_0289.s',
|
||||
'move_script_0290.s',
|
||||
'move_script_0291.s',
|
||||
'move_script_0292.s',
|
||||
'move_script_0293.s',
|
||||
'move_script_0294.s',
|
||||
'move_script_0295.s',
|
||||
'move_script_0296.s',
|
||||
'move_script_0297.s',
|
||||
'move_script_0298.s',
|
||||
'move_script_0299.s',
|
||||
'move_script_0300.s',
|
||||
'move_script_0301.s',
|
||||
'move_script_0302.s',
|
||||
'move_script_0303.s',
|
||||
'move_script_0304.s',
|
||||
'move_script_0305.s',
|
||||
'move_script_0306.s',
|
||||
'move_script_0307.s',
|
||||
'move_script_0308.s',
|
||||
'move_script_0309.s',
|
||||
'move_script_0310.s',
|
||||
'move_script_0311.s',
|
||||
'move_script_0312.s',
|
||||
'move_script_0313.s',
|
||||
'move_script_0314.s',
|
||||
'move_script_0315.s',
|
||||
'move_script_0316.s',
|
||||
'move_script_0317.s',
|
||||
'move_script_0318.s',
|
||||
'move_script_0319.s',
|
||||
'move_script_0320.s',
|
||||
'move_script_0321.s',
|
||||
'move_script_0322.s',
|
||||
'move_script_0323.s',
|
||||
'move_script_0324.s',
|
||||
'move_script_0325.s',
|
||||
'move_script_0326.s',
|
||||
'move_script_0327.s',
|
||||
'move_script_0328.s',
|
||||
'move_script_0329.s',
|
||||
'move_script_0330.s',
|
||||
'move_script_0331.s',
|
||||
'move_script_0332.s',
|
||||
'move_script_0333.s',
|
||||
'move_script_0334.s',
|
||||
'move_script_0335.s',
|
||||
'move_script_0336.s',
|
||||
'move_script_0337.s',
|
||||
'move_script_0338.s',
|
||||
'move_script_0339.s',
|
||||
'move_script_0340.s',
|
||||
'move_script_0341.s',
|
||||
'move_script_0342.s',
|
||||
'move_script_0343.s',
|
||||
'move_script_0344.s',
|
||||
'move_script_0345.s',
|
||||
'move_script_0346.s',
|
||||
'move_script_0347.s',
|
||||
'move_script_0348.s',
|
||||
'move_script_0349.s',
|
||||
'move_script_0350.s',
|
||||
'move_script_0351.s',
|
||||
'move_script_0352.s',
|
||||
'move_script_0353.s',
|
||||
'move_script_0354.s',
|
||||
'move_script_0355.s',
|
||||
'move_script_0356.s',
|
||||
'move_script_0357.s',
|
||||
'move_script_0358.s',
|
||||
'move_script_0359.s',
|
||||
'move_script_0360.s',
|
||||
'move_script_0361.s',
|
||||
'move_script_0362.s',
|
||||
'move_script_0363.s',
|
||||
'move_script_0364.s',
|
||||
'move_script_0365.s',
|
||||
'move_script_0366.s',
|
||||
'move_script_0367.s',
|
||||
'move_script_0368.s',
|
||||
'move_script_0369.s',
|
||||
'move_script_0370.s',
|
||||
'move_script_0371.s',
|
||||
'move_script_0372.s',
|
||||
'move_script_0373.s',
|
||||
'move_script_0374.s',
|
||||
'move_script_0375.s',
|
||||
'move_script_0376.s',
|
||||
'move_script_0377.s',
|
||||
'move_script_0378.s',
|
||||
'move_script_0379.s',
|
||||
'move_script_0380.s',
|
||||
'move_script_0381.s',
|
||||
'move_script_0382.s',
|
||||
'move_script_0383.s',
|
||||
'move_script_0384.s',
|
||||
'move_script_0385.s',
|
||||
'move_script_0386.s',
|
||||
'move_script_0387.s',
|
||||
'move_script_0388.s',
|
||||
'move_script_0389.s',
|
||||
'move_script_0390.s',
|
||||
'move_script_0391.s',
|
||||
'move_script_0392.s',
|
||||
'move_script_0393.s',
|
||||
'move_script_0394.s',
|
||||
'move_script_0395.s',
|
||||
'move_script_0396.s',
|
||||
'move_script_0397.s',
|
||||
'move_script_0398.s',
|
||||
'move_script_0399.s',
|
||||
'move_script_0400.s',
|
||||
'move_script_0401.s',
|
||||
'move_script_0402.s',
|
||||
'move_script_0403.s',
|
||||
'move_script_0404.s',
|
||||
'move_script_0405.s',
|
||||
'move_script_0406.s',
|
||||
'move_script_0407.s',
|
||||
'move_script_0408.s',
|
||||
'move_script_0409.s',
|
||||
'move_script_0410.s',
|
||||
'move_script_0411.s',
|
||||
'move_script_0412.s',
|
||||
'move_script_0413.s',
|
||||
'move_script_0414.s',
|
||||
'move_script_0415.s',
|
||||
'move_script_0416.s',
|
||||
'move_script_0417.s',
|
||||
'move_script_0418.s',
|
||||
'move_script_0419.s',
|
||||
'move_script_0420.s',
|
||||
'move_script_0421.s',
|
||||
'move_script_0422.s',
|
||||
'move_script_0423.s',
|
||||
'move_script_0424.s',
|
||||
'move_script_0425.s',
|
||||
'move_script_0426.s',
|
||||
'move_script_0427.s',
|
||||
'move_script_0428.s',
|
||||
'move_script_0429.s',
|
||||
'move_script_0430.s',
|
||||
'move_script_0431.s',
|
||||
'move_script_0432.s',
|
||||
'move_script_0433.s',
|
||||
'move_script_0434.s',
|
||||
'move_script_0435.s',
|
||||
'move_script_0436.s',
|
||||
'move_script_0437.s',
|
||||
'move_script_0438.s',
|
||||
'move_script_0439.s',
|
||||
'move_script_0440.s',
|
||||
'move_script_0441.s',
|
||||
'move_script_0442.s',
|
||||
'move_script_0443.s',
|
||||
'move_script_0444.s',
|
||||
'move_script_0445.s',
|
||||
'move_script_0446.s',
|
||||
'move_script_0447.s',
|
||||
'move_script_0448.s',
|
||||
'move_script_0449.s',
|
||||
'move_script_0450.s',
|
||||
'move_script_0451.s',
|
||||
'move_script_0452.s',
|
||||
'move_script_0453.s',
|
||||
'move_script_0454.s',
|
||||
'move_script_0455.s',
|
||||
'move_script_0456.s',
|
||||
'move_script_0457.s',
|
||||
'move_script_0458.s',
|
||||
'move_script_0459.s',
|
||||
'move_script_0460.s',
|
||||
'move_script_0461.s',
|
||||
'move_script_0462.s',
|
||||
'move_script_0463.s',
|
||||
'move_script_0464.s',
|
||||
'move_script_0465.s',
|
||||
'move_script_0466.s',
|
||||
'move_script_0467.s',
|
||||
'move_script_0468.s',
|
||||
'move_script_0469.s',
|
||||
'move_script_0470.s',
|
||||
'move_script_0471.s',
|
||||
'move_script_0472.s',
|
||||
'move_script_0473.s',
|
||||
'move_script_0474.s',
|
||||
'move_script_0475.s',
|
||||
'move_script_0476.s',
|
||||
'move_script_0477.s',
|
||||
'move_script_0478.s',
|
||||
'move_script_0479.s',
|
||||
'move_script_0480.s',
|
||||
'move_script_0481.s',
|
||||
'move_script_0482.s',
|
||||
'move_script_0483.s',
|
||||
'move_script_0484.s',
|
||||
'move_script_0485.s',
|
||||
'move_script_0486.s',
|
||||
'move_script_0487.s',
|
||||
'move_script_0488.s',
|
||||
'move_script_0489.s',
|
||||
'move_script_0490.s',
|
||||
'move_script_0491.s',
|
||||
'move_script_0492.s',
|
||||
'move_script_0493.s',
|
||||
'move_script_0494.s',
|
||||
'move_script_0495.s',
|
||||
'move_script_0496.s',
|
||||
'move_script_0497.s',
|
||||
'move_script_0498.s',
|
||||
'move_script_0499.s',
|
||||
'move_script_0500.s'
|
||||
)
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,5 +0,0 @@
|
||||
#include "macros/btlcmd.inc"
|
||||
|
||||
|
||||
_000:
|
||||
GoToEffectScript
|
||||
@@ -1,4 +1,5 @@
|
||||
subdir('moves')
|
||||
subdir('particles')
|
||||
|
||||
battle_sprites = []
|
||||
base_directory = meson.current_source_dir()
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user