mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-09-30 13:31:06 -05:00
Misc. renaming (#563)
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
#ifndef POKEPLATINUM_OV16_0223DF00_H
|
||||
#define POKEPLATINUM_OV16_0223DF00_H
|
||||
|
||||
#include "constants/time.h"
|
||||
#include "constants/rtc.h"
|
||||
|
||||
#include "struct_decls/battle_system.h"
|
||||
#include "struct_decls/pc_boxes_decl.h"
|
||||
@@ -151,7 +151,7 @@ PCBoxes *ov16_0223E228(BattleSystem *battleSys);
|
||||
* @return The battle's terrain.
|
||||
*/
|
||||
enum BattleTerrain BattleSystem_Terrain(BattleSystem *battleSys);
|
||||
int ov16_0223E240(BattleSystem *battleSys);
|
||||
enum BattleBackground BattleSystem_Background(BattleSystem *battleSys);
|
||||
int BattleSystem_MapHeader(BattleSystem *battleSys);
|
||||
int BattleSystem_Partner(BattleSystem *battleSys, int param1);
|
||||
|
||||
@@ -188,7 +188,7 @@ u32 BattleSystem_BattleStatus(BattleSystem *battleSys);
|
||||
* @param battleSys
|
||||
* @return The time of day (e.g., morning, day, night)
|
||||
*/
|
||||
enum Time BattleSystem_Time(BattleSystem *battleSys);
|
||||
enum TimeOfDay BattleSystem_Time(BattleSystem *battleSys);
|
||||
int ov16_0223EC04(BattleSystem *battleSys);
|
||||
u8 ov16_0223EC58(BattleSystem *battleSys, int param1, u8 param2);
|
||||
u16 Battle_FindEvolvingPartyMember(FieldBattleDTO *param0, int *param1, int *param2);
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
#ifndef POKEPLATINUM_CONSTANTS_TIME_H
|
||||
#define POKEPLATINUM_CONSTANTS_TIME_H
|
||||
|
||||
enum Time {
|
||||
TIME_MORNING = 0,
|
||||
TIME_DAY,
|
||||
TIME_DUSK,
|
||||
TIME_NIGHT,
|
||||
TIME_MIDNIGHT,
|
||||
};
|
||||
|
||||
#endif // POKEPLATINUM_CONSTANTS_TIME_H
|
||||
@@ -2,6 +2,7 @@
|
||||
#define POKEPLATINUM_FIELD_BATTLE_DATA_TRANSFER_H
|
||||
|
||||
#include "constants/battle.h"
|
||||
#include "generated/evolution_methods.h"
|
||||
#include "generated/map_headers.h"
|
||||
|
||||
#include "struct_decls/pc_boxes_decl.h"
|
||||
@@ -49,13 +50,13 @@ typedef struct FieldBattleDTO {
|
||||
BattleRecords battleRecords;
|
||||
GameRecords *records;
|
||||
JournalEntry *journalEntry;
|
||||
PalPad *unk_124;
|
||||
int background;
|
||||
PalPad *palPad;
|
||||
enum BattleBackground background;
|
||||
enum BattleTerrain terrain;
|
||||
int mapLabelTextID;
|
||||
int mapHeaderID;
|
||||
enum TimeOfDay timeOfDay;
|
||||
int mapEvolutionMethod;
|
||||
enum EvolutionMethod mapEvolutionMethod;
|
||||
BOOL visitedContestHall;
|
||||
BOOL metBebe;
|
||||
int caughtBattlerIdx;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef POKEPLATINUM_MAP_HEADER_H
|
||||
#define POKEPLATINUM_MAP_HEADER_H
|
||||
|
||||
#include "generated/battle_backgrounds.h"
|
||||
#include "generated/evolution_methods.h"
|
||||
|
||||
typedef struct {
|
||||
@@ -42,7 +43,7 @@ u32 MapHeader_GetMapLabelTextID(u32 headerID);
|
||||
u8 MapHeader_GetMapLabelWindowID(u32 headerID);
|
||||
u32 MapHeader_GetWeatherType(u32 headerID);
|
||||
u32 MapHeader_GetCameraType(u32 headerID);
|
||||
u32 MapHeader_GetBattleBG(u32 headerID);
|
||||
enum BattleBackground MapHeader_GetBattleBG(u32 headerID);
|
||||
BOOL MapHeader_IsEscapeRopeAllowed(u32 headerID);
|
||||
BOOL MapHeader_IsFlyAllowed(u32 headerID);
|
||||
BOOL MapHeader_IsBikeAllowed(u32 headerID);
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include <nnsys.h>
|
||||
|
||||
#include "constants/battle.h"
|
||||
#include "constants/time.h"
|
||||
#include "constants/rtc.h"
|
||||
|
||||
#include "struct_decls/pc_boxes_decl.h"
|
||||
#include "struct_decls/pokedexdata_decl.h"
|
||||
@@ -79,7 +79,7 @@ struct BattleSystem {
|
||||
UnkStruct_0200C440 *unk_1A8;
|
||||
void *unk_1AC;
|
||||
Options *options;
|
||||
PalPad *unk_1B4;
|
||||
PalPad *palPad;
|
||||
WaitDial *waitDial;
|
||||
u8 *unk_1BC;
|
||||
UnkStruct_ov10_0221F800 *unk_1C0;
|
||||
@@ -111,17 +111,17 @@ struct BattleSystem {
|
||||
u8 unk_23FB_3 : 2;
|
||||
u8 unk_23FB_5 : 3;
|
||||
enum BattleTerrain terrain;
|
||||
int unk_2400;
|
||||
enum BattleBackground background;
|
||||
int mapHeader;
|
||||
u32 battleStatusMask;
|
||||
enum Time time;
|
||||
enum TimeOfDay time;
|
||||
int safariBalls;
|
||||
u8 unk_2414[4];
|
||||
u32 unk_2418;
|
||||
u8 resultMask;
|
||||
u8 unk_241D;
|
||||
u16 unk_241E;
|
||||
int unk_2420;
|
||||
enum EvolutionMethod mapEvolutionMethod;
|
||||
int unk_2424;
|
||||
int fieldWeather;
|
||||
int unk_242C;
|
||||
|
||||
@@ -5050,7 +5050,7 @@ static void ov16_02263014(SysTask *param0, void *param1)
|
||||
v1 = BattleSystem_BGL(v0->unk_00);
|
||||
v2 = BattleSystem_PaletteSys(v0->unk_00);
|
||||
v3 = BattleSystem_Terrain(v0->unk_00);
|
||||
v4 = Unk_ov16_0226F1D0[ov16_0223E240(v0->unk_00)];
|
||||
v4 = Unk_ov16_0226F1D0[BattleSystem_Background(v0->unk_00)];
|
||||
|
||||
v0->unk_15++;
|
||||
|
||||
@@ -6124,8 +6124,8 @@ static void ov16_02264408(BattleSystem *battleSys, BattlerData *param1, UnkStruc
|
||||
v0.unk_70 = ov16_0223F1E8(battleSys);
|
||||
v0.unk_74 = ov16_0223F1F0(battleSys);
|
||||
v0.unk_54.unk_00 = 7;
|
||||
v0.unk_54.unk_04 = 3 + ov16_0223E240(battleSys);
|
||||
v0.unk_54.unk_08 = 172 + ov16_0223E240(battleSys) * 3 + ov16_0223EC04(battleSys);
|
||||
v0.unk_54.unk_04 = 3 + BattleSystem_Background(battleSys);
|
||||
v0.unk_54.unk_08 = 172 + BattleSystem_Background(battleSys) * 3 + ov16_0223EC04(battleSys);
|
||||
v0.unk_54.unk_0C = 2;
|
||||
v0.unk_54.unk_10 = 0;
|
||||
v0.unk_54.unk_14 = 8;
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
#include "constants/items.h"
|
||||
#include "constants/narc.h"
|
||||
#include "constants/pokemon.h"
|
||||
#include "constants/rtc.h"
|
||||
#include "constants/species.h"
|
||||
#include "constants/trainer.h"
|
||||
#include "generated/abilities.h"
|
||||
@@ -11190,8 +11191,8 @@ static int BattleScript_CalcCatchShakes(BattleSystem *battleSys, BattleContext *
|
||||
break;
|
||||
|
||||
case ITEM_DUSK_BALL:
|
||||
if (BattleSystem_Time(battleSys) == TIME_NIGHT
|
||||
|| BattleSystem_Time(battleSys) == TIME_MIDNIGHT
|
||||
if (BattleSystem_Time(battleSys) == TIMEOFDAY_NIGHT
|
||||
|| BattleSystem_Time(battleSys) == TIMEOFDAY_LATE_NIGHT
|
||||
|| BattleSystem_Terrain(battleSys) == TERRAIN_CAVE) {
|
||||
ballMod = 35;
|
||||
}
|
||||
|
||||
@@ -444,8 +444,8 @@ void ov16_0223B578(BattleSystem *battleSys)
|
||||
v1 = ov16_0223EDE0(battleSys);
|
||||
|
||||
ReplaceTransparentTiles(battleSys->unk_04, 1, 1, 10, v1, 5);
|
||||
Graphics_LoadTilesToBgLayer(7, 3 + battleSys->unk_2400, battleSys->unk_04, 3, 0, 0, 1, HEAP_ID_BATTLE);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 7, 172 + (battleSys->unk_2400 * 3) + ov16_0223EC04(battleSys), 5, 0, 0, 0);
|
||||
Graphics_LoadTilesToBgLayer(7, 3 + battleSys->background, battleSys->unk_04, 3, 0, 0, 1, HEAP_ID_BATTLE);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 7, 172 + (battleSys->background * 3) + ov16_0223EC04(battleSys), 5, 0, 0, 0);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 38, GetMessageBoxPaletteNARCMember(v1), 5, 0, 0x20, 10 * 0x10);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 14, 7, 5, 0, 0x20, 0xb * 0x10);
|
||||
Graphics_LoadTilemapToBgLayer(7, 2, battleSys->unk_04, 3, 0, 0, 1, HEAP_ID_BATTLE);
|
||||
@@ -488,31 +488,33 @@ void BattleSystem_LoadFightOverlay(BattleSystem *battleSys, int flags)
|
||||
}
|
||||
}
|
||||
|
||||
// clang-format off
|
||||
static const int Unk_ov16_0226E44C[][3] = {
|
||||
{ 0x7b51, GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
{ 0x7b51, GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
{ 0x7b51, GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
{ GX_RGB(11, 21, 5), GX_RGB(11, 21, 5), GX_RGB(11, 21, 5) },
|
||||
{ 0x7b51, GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
{ GX_RGB(31, 26, 31), GX_RGB(31, 26, 22), GX_RGB(24, 22, 22) },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ GX_RGB(5, 5, 7), GX_RGB(5, 5, 7), GX_RGB(5, 5, 7) },
|
||||
{ GX_RGB(5, 5, 7), GX_RGB(5, 5, 7), GX_RGB(5, 5, 7) },
|
||||
{ GX_RGB(5, 5, 7), GX_RGB(5, 5, 7), GX_RGB(5, 5, 7) },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
{ 0x7fff, 0x7fff, 0x7fff },
|
||||
[BACKGROUND_PLAIN] = { GX_RGB(17, 26, 30), GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
[BACKGROUND_WATER] = { GX_RGB(17, 26, 30), GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
[BACKGROUND_CITY] = { GX_RGB(17, 26, 30), GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
[BACKGROUND_FOREST] = { GX_RGB(11, 21, 5), GX_RGB(11, 21, 5), GX_RGB(11, 21, 5) },
|
||||
[BACKGROUND_MOUNTAIN] = { GX_RGB(17, 26, 30), GX_RGB(30, 17, 0), GX_RGB(0, 16, 23) },
|
||||
[BACKGROUND_SNOW] = { GX_RGB(31, 26, 31), GX_RGB(31, 26, 22), GX_RGB(24, 22, 22) },
|
||||
[BACKGROUND_INDOORS_1] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_INDOORS_2] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_INDOORS_3] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_CAVE_1] = { GX_RGB(5, 5, 7), GX_RGB(5, 5, 7), GX_RGB(5, 5, 7) },
|
||||
[BACKGROUND_CAVE_2] = { GX_RGB(5, 5, 7), GX_RGB(5, 5, 7), GX_RGB(5, 5, 7) },
|
||||
[BACKGROUND_CAVE_3] = { GX_RGB(5, 5, 7), GX_RGB(5, 5, 7), GX_RGB(5, 5, 7) },
|
||||
[BACKGROUND_AARON] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_BERTHA] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_FLINT] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_LUCIAN] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_CYNTHIA] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_DISTORTION_WORLD] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_BATTLE_TOWER] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_BATTLE_FACTORY] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_BATTLE_ARCADE] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_BATTLE_CASTLE] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
[BACKGROUND_BATTLE_HALL] = { GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB(31, 31, 31) },
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
static void ov16_0223B790(ApplicationManager *appMan)
|
||||
{
|
||||
@@ -624,9 +626,9 @@ static void ov16_0223B790(ApplicationManager *appMan)
|
||||
int v10;
|
||||
v10 = ov16_0223EC04(battleSys);
|
||||
|
||||
PaletteData_FillBufferRange(battleSys->paletteSys, 0, 2, Unk_ov16_0226E44C[battleSys->unk_2400][v10], 0, 112);
|
||||
PaletteData_FillBufferRange(battleSys->paletteSys, 0, 2, Unk_ov16_0226E44C[battleSys->unk_2400][v10], 0xc * 16, 0xc * 16 + 4 * 16);
|
||||
PaletteData_FillBufferRange(battleSys->paletteSys, 2, 2, Unk_ov16_0226E44C[battleSys->unk_2400][v10], 0, ((16 - 2) * 16) - 1);
|
||||
PaletteData_FillBufferRange(battleSys->paletteSys, 0, 2, Unk_ov16_0226E44C[battleSys->background][v10], 0, 112);
|
||||
PaletteData_FillBufferRange(battleSys->paletteSys, 0, 2, Unk_ov16_0226E44C[battleSys->background][v10], 0xc * 16, 0xc * 16 + 4 * 16);
|
||||
PaletteData_FillBufferRange(battleSys->paletteSys, 2, 2, Unk_ov16_0226E44C[battleSys->background][v10], 0, ((16 - 2) * 16) - 1);
|
||||
}
|
||||
|
||||
PaletteData_FillBufferRange(battleSys->paletteSys, 0, 0, 0x0, 0xa * 16, 0xa * 16 + 2 * 16);
|
||||
@@ -928,8 +930,8 @@ static void ov16_0223C004(BattleSystem *battleSys, BgConfig *param1)
|
||||
v3 = ov16_0223EDE0(battleSys);
|
||||
|
||||
ReplaceTransparentTiles(param1, 1, 1, 10, v3, 5);
|
||||
Graphics_LoadTilesToBgLayer(7, 3 + battleSys->unk_2400, param1, 3, 0, 0, 1, HEAP_ID_BATTLE);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 7, 172 + (battleSys->unk_2400 * 3) + ov16_0223EC04(battleSys), 5, 0, 0, 0);
|
||||
Graphics_LoadTilesToBgLayer(7, 3 + battleSys->background, param1, 3, 0, 0, 1, HEAP_ID_BATTLE);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 7, 172 + (battleSys->background * 3) + ov16_0223EC04(battleSys), 5, 0, 0, 0);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 38, GetMessageBoxPaletteNARCMember(v3), 5, 0, 0x20, 10 * 0x10);
|
||||
PaletteData_LoadBufferFromFileStart(battleSys->paletteSys, 14, 7, 5, 0, 0x20, 0xb * 0x10);
|
||||
Graphics_LoadTilemapToBgLayer(7, 2, param1, 3, 0, 0, 1, HEAP_ID_BATTLE);
|
||||
@@ -1053,75 +1055,75 @@ static const u8 Unk_ov16_0226E28C[][4] = {
|
||||
},
|
||||
};
|
||||
|
||||
static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *dto)
|
||||
{
|
||||
int v0, v1;
|
||||
int i, v1;
|
||||
UnkStruct_ov16_0223C2C0 v2;
|
||||
Pokemon *v3;
|
||||
Pokemon *v4;
|
||||
|
||||
battleSys->battleType = param1->battleType;
|
||||
battleSys->battleType = dto->battleType;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
battleSys->trainerInfo[v0] = TrainerInfo_New(5);
|
||||
TrainerInfo_Copy(param1->trainerInfo[v0], battleSys->trainerInfo[v0]);
|
||||
battleSys->unk_78[v0] = param1->chatotCries[v0];
|
||||
for (i = 0; i < 4; i++) {
|
||||
battleSys->trainerInfo[i] = TrainerInfo_New(5);
|
||||
TrainerInfo_Copy(dto->trainerInfo[i], battleSys->trainerInfo[i]);
|
||||
battleSys->unk_78[i] = dto->chatotCries[i];
|
||||
}
|
||||
|
||||
battleSys->unk_2442 = param1->networkID;
|
||||
battleSys->unk_2442 = dto->networkID;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
battleSys->unk_2464[v0] = param1->unk_178[v0];
|
||||
for (i = 0; i < 4; i++) {
|
||||
battleSys->unk_2464[i] = dto->unk_178[i];
|
||||
}
|
||||
|
||||
battleSys->unk_2430 = LCRNG_GetSeed();
|
||||
battleSys->unk_2444 = param1->seed;
|
||||
battleSys->unk_2448 = param1->seed;
|
||||
battleSys->battleStatusMask = param1->battleStatusMask;
|
||||
battleSys->unk_2444 = dto->seed;
|
||||
battleSys->unk_2448 = dto->seed;
|
||||
battleSys->battleStatusMask = dto->battleStatusMask;
|
||||
battleSys->bag = Bag_New(HEAP_ID_BATTLE);
|
||||
|
||||
Bag_Copy(param1->bag, battleSys->bag);
|
||||
Bag_Copy(dto->bag, battleSys->bag);
|
||||
battleSys->pokedex = Pokedex_New(HEAP_ID_BATTLE);
|
||||
Pokedex_Copy(param1->pokedex, battleSys->pokedex);
|
||||
Pokedex_Copy(dto->pokedex, battleSys->pokedex);
|
||||
|
||||
battleSys->pcBoxes = param1->pcBoxes;
|
||||
battleSys->options = param1->options;
|
||||
battleSys->unk_1B4 = param1->unk_124;
|
||||
battleSys->bagCursor = param1->bagCursor;
|
||||
battleSys->unk_1BC = param1->subscreenCursorOn;
|
||||
battleSys->poketch = param1->poketch;
|
||||
battleSys->unk_2420 = param1->mapEvolutionMethod;
|
||||
battleSys->unk_9C = param1->unk_10C;
|
||||
battleSys->safariBalls = param1->countSafariBalls;
|
||||
battleSys->terrain = param1->terrain;
|
||||
battleSys->unk_2400 = param1->background;
|
||||
battleSys->mapHeader = param1->mapLabelTextID;
|
||||
battleSys->time = param1->timeOfDay;
|
||||
battleSys->unk_2418 = param1->rulesetMask;
|
||||
battleSys->unk_2424 = param1->visitedContestHall;
|
||||
battleSys->unk_242C = param1->metBebe;
|
||||
battleSys->fieldWeather = param1->fieldWeather;
|
||||
battleSys->records = param1->records;
|
||||
battleSys->pcBoxes = dto->pcBoxes;
|
||||
battleSys->options = dto->options;
|
||||
battleSys->palPad = dto->palPad;
|
||||
battleSys->bagCursor = dto->bagCursor;
|
||||
battleSys->unk_1BC = dto->subscreenCursorOn;
|
||||
battleSys->poketch = dto->poketch;
|
||||
battleSys->mapEvolutionMethod = dto->mapEvolutionMethod;
|
||||
battleSys->unk_9C = dto->unk_10C;
|
||||
battleSys->safariBalls = dto->countSafariBalls;
|
||||
battleSys->terrain = dto->terrain;
|
||||
battleSys->background = dto->background;
|
||||
battleSys->mapHeader = dto->mapLabelTextID;
|
||||
battleSys->time = dto->timeOfDay;
|
||||
battleSys->unk_2418 = dto->rulesetMask;
|
||||
battleSys->unk_2424 = dto->visitedContestHall;
|
||||
battleSys->unk_242C = dto->metBebe;
|
||||
battleSys->fieldWeather = dto->fieldWeather;
|
||||
battleSys->records = dto->records;
|
||||
|
||||
GF_ASSERT(param1->records != NULL);
|
||||
GF_ASSERT(dto->records != NULL);
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
battleSys->trainerIDs[v0] = param1->trainerIDs[v0];
|
||||
battleSys->trainers[v0] = param1->trainer[v0];
|
||||
for (i = 0; i < 4; i++) {
|
||||
battleSys->trainerIDs[i] = dto->trainerIDs[i];
|
||||
battleSys->trainers[i] = dto->trainer[i];
|
||||
}
|
||||
|
||||
battleSys->battleCtx = BattleContext_New(battleSys);
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
battleSys->parties[v0] = Party_New(HEAP_ID_BATTLE);
|
||||
for (i = 0; i < 4; i++) {
|
||||
battleSys->parties[i] = Party_New(HEAP_ID_BATTLE);
|
||||
}
|
||||
|
||||
{
|
||||
int v5;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(param1->parties[v0]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(param1->parties[v0], v1);
|
||||
for (i = 0; i < 4; i++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(dto->parties[i]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(dto->parties[i], v1);
|
||||
v5 = Pokemon_GetGender(v3);
|
||||
Pokemon_SetValue(v3, MON_DATA_GENDER, &v5);
|
||||
}
|
||||
@@ -1134,82 +1136,82 @@ static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
u8 v6 = ov16_0223F6E4(battleSys);
|
||||
int v7;
|
||||
|
||||
ov16_0223DD90(battleSys, param1);
|
||||
ov16_0223DD90(battleSys, dto);
|
||||
|
||||
if (battleSys->battleType & BATTLE_TYPE_FRONTIER) {
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E560[v0];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
for (i = 0; i < 4; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E560[i];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < battleSys->maxBattlers; v0++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[v0]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[v0], v1);
|
||||
for (i = 0; i < battleSys->maxBattlers; i++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[i]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[i], v1);
|
||||
|
||||
if ((Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
}
|
||||
|
||||
BattleSystem_InitPartyOrder(battleSys, battleSys->battleCtx);
|
||||
} else if (battleSys->battleType & BATTLE_TYPE_2vs2) {
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E28C[ov16_0223F6F0(battleSys, v6)][ov16_0223F6F0(battleSys, v0)];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
for (i = 0; i < 4; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E28C[ov16_0223F6F0(battleSys, v6)][ov16_0223F6F0(battleSys, i)];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < battleSys->maxBattlers; v0++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[v0]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[v0], v1);
|
||||
for (i = 0; i < battleSys->maxBattlers; i++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[i]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[i], v1);
|
||||
|
||||
if ((Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
}
|
||||
|
||||
BattleSystem_InitPartyOrder(battleSys, battleSys->battleCtx);
|
||||
} else if (battleSys->battleType & BATTLE_TYPE_DOUBLES) {
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E264[v6][v0];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E264[v6][i];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < battleSys->maxBattlers; v0++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[v0 & 1]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[v0 & 1], v1);
|
||||
for (i = 0; i < battleSys->maxBattlers; i++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[i & 1]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[i & 1], v1);
|
||||
|
||||
if (v0 > 1) {
|
||||
if ((BattleContext_Get(battleSys, battleSys->battleCtx, 2, v0 & 1) != v1) && (Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
if (i > 1) {
|
||||
if ((BattleContext_Get(battleSys, battleSys->battleCtx, 2, i & 1) != v1) && (Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
@@ -1219,30 +1221,30 @@ static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
}
|
||||
} else {
|
||||
for (v0 = 0; v0 < 2; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E260[v6][v0];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
for (i = 0; i < 2; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E260[v6][i];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[v0]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[v0], v1);
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[i]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[i], v1);
|
||||
|
||||
if ((Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1251,24 +1253,24 @@ static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
{
|
||||
int v8;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E560[v0];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E560[i];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < battleSys->maxBattlers; v0++) {
|
||||
for (v1 = 0; v1 < BattleSystem_PartyCount(battleSys, v0); v1++) {
|
||||
v3 = BattleSystem_PartyPokemon(battleSys, v0, v1);
|
||||
for (i = 0; i < battleSys->maxBattlers; i++) {
|
||||
for (v1 = 0; v1 < BattleSystem_PartyCount(battleSys, i); v1++) {
|
||||
v3 = BattleSystem_PartyPokemon(battleSys, i, v1);
|
||||
|
||||
if (v0 == 2) {
|
||||
if (i == 2) {
|
||||
if ((Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL)) && (v8 != v1)) {
|
||||
break;
|
||||
}
|
||||
@@ -1279,9 +1281,9 @@ static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
|
||||
if (v0 == 0) {
|
||||
if (i == 0) {
|
||||
v8 = v1;
|
||||
}
|
||||
}
|
||||
@@ -1289,53 +1291,53 @@ static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
BattleSystem_InitPartyOrder(battleSys, battleSys->battleCtx);
|
||||
battleSys->unk_23F8 = 1;
|
||||
} else if (battleSys->battleType & BATTLE_TYPE_2vs2) {
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E560[v0];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E560[i];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < battleSys->maxBattlers; v0++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[v0]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[v0], v1);
|
||||
for (i = 0; i < battleSys->maxBattlers; i++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[i]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[i], v1);
|
||||
|
||||
if ((Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
}
|
||||
|
||||
BattleSystem_InitPartyOrder(battleSys, battleSys->battleCtx);
|
||||
battleSys->unk_23F8 = 1;
|
||||
} else if (battleSys->battleType & BATTLE_TYPE_DOUBLES) {
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E560[v0];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E560[i];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < battleSys->maxBattlers; v0++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[v0 & 1]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[v0 & 1], v1);
|
||||
for (i = 0; i < battleSys->maxBattlers; i++) {
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[i & 1]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[i & 1], v1);
|
||||
|
||||
if (v0 > 1) {
|
||||
if ((BattleContext_Get(battleSys, battleSys->battleCtx, 2, v0 & 1) != v1) && (Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
if (i > 1) {
|
||||
if ((BattleContext_Get(battleSys, battleSys->battleCtx, 2, i & 1) != v1) && (Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
@@ -1345,33 +1347,33 @@ static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
}
|
||||
|
||||
BattleSystem_InitPartyOrder(battleSys, battleSys->battleCtx);
|
||||
battleSys->unk_23F8 = 1;
|
||||
} else {
|
||||
for (v0 = 0; v0 < 2; v0++) {
|
||||
v2.unk_00 = v0;
|
||||
v2.unk_01 = Unk_ov16_0226E25C[v0];
|
||||
battleSys->battlers[v0] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[v0]);
|
||||
for (i = 0; i < 2; i++) {
|
||||
v2.unk_00 = i;
|
||||
v2.unk_01 = Unk_ov16_0226E25C[i];
|
||||
battleSys->battlers[i] = ov16_0225BFFC(battleSys, &v2);
|
||||
ov16_02263730(battleSys, battleSys->battlers[i]);
|
||||
}
|
||||
|
||||
battleSys->maxBattlers = v0;
|
||||
battleSys->maxBattlers = i;
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
Party_Copy(param1->parties[v0], battleSys->parties[v0]);
|
||||
for (i = 0; i < 4; i++) {
|
||||
Party_Copy(dto->parties[i], battleSys->parties[i]);
|
||||
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[v0]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[v0], v1);
|
||||
for (v1 = 0; v1 < Party_GetCurrentCount(battleSys->parties[i]); v1++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[i], v1);
|
||||
|
||||
if ((Pokemon_GetValue(v3, MON_DATA_SPECIES, NULL)) && (Pokemon_GetValue(v3, MON_DATA_IS_EGG, NULL) == 0) && (Pokemon_GetValue(v3, MON_DATA_CURRENT_HP, NULL))) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, v0, v1);
|
||||
BattleContext_Set(battleSys, battleSys->battleCtx, 2, i, v1);
|
||||
}
|
||||
|
||||
BattleSystem_InitPartyOrder(battleSys, battleSys->battleCtx);
|
||||
@@ -1385,13 +1387,13 @@ static void ov16_0223C2C0(BattleSystem *battleSys, FieldBattleDTO *param1)
|
||||
|
||||
if (battleSys->battleType & BATTLE_TYPE_TRAINER) {
|
||||
if ((ov16_0223CD3C(battleSys->trainers[1].header.trainerType) == 1) || (ov16_0223CD3C(battleSys->trainers[3].header.trainerType) == 1)) {
|
||||
for (v0 = 0; v0 < Party_GetCurrentCount(battleSys->parties[0]); v0++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[0], v0);
|
||||
for (i = 0; i < Party_GetCurrentCount(battleSys->parties[0]); i++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[0], i);
|
||||
Pokemon_UpdateFriendship(v3, 3, battleSys->mapHeader);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < Party_GetCurrentCount(battleSys->parties[2]); v0++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[2], v0);
|
||||
for (i = 0; i < Party_GetCurrentCount(battleSys->parties[2]); i++) {
|
||||
v3 = Party_GetPokemonBySlotIndex(battleSys->parties[2], i);
|
||||
Pokemon_UpdateFriendship(v3, 3, battleSys->mapHeader);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,8 @@
|
||||
#include "constants/game_options.h"
|
||||
#include "constants/heap.h"
|
||||
#include "constants/items.h"
|
||||
#include "constants/rtc.h"
|
||||
#include "generated/battle_backgrounds.h"
|
||||
#include "generated/species.h"
|
||||
#include "generated/trainer_score_events.h"
|
||||
|
||||
@@ -112,13 +114,12 @@ u8 Battler_Side(BattleSystem *battleSystem, int param1);
|
||||
void *ov16_0223E220(BattleSystem *battleSystem);
|
||||
PCBoxes *ov16_0223E228(BattleSystem *battleSystem);
|
||||
enum BattleTerrain BattleSystem_Terrain(BattleSystem *battleSys);
|
||||
int ov16_0223E240(BattleSystem *battleSystem);
|
||||
int BattleSystem_MapHeader(BattleSystem *battleSystem);
|
||||
int BattleSystem_Partner(BattleSystem *battleSys, int battler);
|
||||
int BattleSystem_EnemyInSlot(BattleSystem *battleSys, int attacker, int slot);
|
||||
BOOL BattleSystem_UseBagItem(BattleSystem *battleSys, int battler, int partySlot, int moveSlot, int item);
|
||||
u32 ov16_0223EBEC(BattleSystem *battleSystem);
|
||||
enum Time BattleSystem_Time(BattleSystem *battleSys);
|
||||
enum TimeOfDay BattleSystem_Time(BattleSystem *battleSys);
|
||||
int ov16_0223EC04(BattleSystem *battleSystem);
|
||||
u8 ov16_0223EC58(BattleSystem *battleSystem, int param1, u8 param2);
|
||||
u16 Battle_FindEvolvingPartyMember(FieldBattleDTO *param0, int *param1, int *param2);
|
||||
@@ -509,9 +510,9 @@ enum BattleTerrain BattleSystem_Terrain(BattleSystem *battleSys)
|
||||
return battleSys->terrain;
|
||||
}
|
||||
|
||||
int ov16_0223E240(BattleSystem *battleSystem)
|
||||
enum BattleBackground BattleSystem_Background(BattleSystem *battleSystem)
|
||||
{
|
||||
return battleSystem->unk_2400;
|
||||
return battleSystem->background;
|
||||
}
|
||||
|
||||
int BattleSystem_MapHeader(BattleSystem *battleSystem)
|
||||
@@ -890,7 +891,7 @@ u32 BattleSystem_BattleStatus(BattleSystem *battleSys)
|
||||
return battleSys->battleStatusMask;
|
||||
}
|
||||
|
||||
enum Time BattleSystem_Time(BattleSystem *battleSys)
|
||||
enum TimeOfDay BattleSystem_Time(BattleSystem *battleSys)
|
||||
{
|
||||
return battleSys->time;
|
||||
}
|
||||
@@ -899,23 +900,23 @@ int ov16_0223EC04(BattleSystem *battleSystem)
|
||||
{
|
||||
int v0;
|
||||
|
||||
switch (battleSystem->unk_2400) {
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
case 5:
|
||||
switch (battleSystem->background) {
|
||||
case BACKGROUND_PLAIN:
|
||||
case BACKGROUND_WATER:
|
||||
case BACKGROUND_CITY:
|
||||
case BACKGROUND_FOREST:
|
||||
case BACKGROUND_MOUNTAIN:
|
||||
case BACKGROUND_SNOW:
|
||||
switch (battleSystem->time) {
|
||||
case 0:
|
||||
case 1:
|
||||
case TIMEOFDAY_MORNING:
|
||||
case TIMEOFDAY_DAY:
|
||||
v0 = 0;
|
||||
break;
|
||||
case 2:
|
||||
case TIMEOFDAY_TWILIGHT:
|
||||
v0 = 1;
|
||||
break;
|
||||
case 3:
|
||||
case 4:
|
||||
case TIMEOFDAY_NIGHT:
|
||||
case TIMEOFDAY_LATE_NIGHT:
|
||||
v0 = 2;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1063,7 +1063,7 @@ void *ov16_022687C8(NARC *param0, NARC *param1, BattleSystem *battleSys, int par
|
||||
}
|
||||
|
||||
v1 = BattleSystem_PaletteSys(battleSys);
|
||||
v2 = ov16_0223E240(battleSys);
|
||||
v2 = BattleSystem_Background(battleSys);
|
||||
|
||||
if (v2 >= NELEMS(Unk_ov16_022704E4)) {
|
||||
v2 = 0;
|
||||
|
||||
@@ -275,7 +275,7 @@ void FieldBattleDTO_InitFromGameState(FieldBattleDTO *dto, const FieldSystem *fi
|
||||
dto->wiFiHistory = SaveData_WiFiHistory(saveData);
|
||||
dto->records = SaveData_GetGameRecords(saveData);
|
||||
dto->journalEntry = journalEntry;
|
||||
dto->unk_124 = SaveData_GetPalPad(saveData);
|
||||
dto->palPad = SaveData_GetPalPad(saveData);
|
||||
dto->mapHeaderID = mapHeaderID;
|
||||
dto->saveData = saveData;
|
||||
}
|
||||
@@ -330,7 +330,7 @@ void FieldBattleDTO_InitWithNormalizedMonLevels(FieldBattleDTO *dto, const Field
|
||||
dto->wiFiHistory = SaveData_WiFiHistory(fieldSystem->saveData);
|
||||
dto->records = SaveData_GetGameRecords(fieldSystem->saveData);
|
||||
dto->journalEntry = fieldSystem->journalEntry;
|
||||
dto->unk_124 = SaveData_GetPalPad(fieldSystem->saveData);
|
||||
dto->palPad = SaveData_GetPalPad(fieldSystem->saveData);
|
||||
dto->mapHeaderID = fieldSystem->location->mapId;
|
||||
dto->saveData = fieldSystem->saveData;
|
||||
|
||||
@@ -396,7 +396,7 @@ void FieldBattleDTO_InitWithPartyOrder(FieldBattleDTO *dto, const FieldSystem *f
|
||||
dto->records = SaveData_GetGameRecords(fieldSystem->saveData);
|
||||
dto->journalEntry = fieldSystem->journalEntry;
|
||||
dto->mapHeaderID = fieldSystem->location->mapId;
|
||||
dto->unk_124 = SaveData_GetPalPad(fieldSystem->saveData);
|
||||
dto->palPad = SaveData_GetPalPad(fieldSystem->saveData);
|
||||
dto->saveData = fieldSystem->saveData;
|
||||
|
||||
if (sub_020326C4(sub_0203895C())) {
|
||||
|
||||
@@ -110,7 +110,7 @@ u32 MapHeader_GetCameraType(u32 headerID)
|
||||
return sMapHeaders[headerID].cameraType;
|
||||
}
|
||||
|
||||
u32 MapHeader_GetBattleBG(u32 headerID)
|
||||
enum BattleBackground MapHeader_GetBattleBG(u32 headerID)
|
||||
{
|
||||
headerID = MapHeader_IDBoundsCheck(headerID);
|
||||
return sMapHeaders[headerID].battleBG;
|
||||
|
||||
@@ -534,49 +534,49 @@ BOOL sub_0202FAC0(void)
|
||||
return 1;
|
||||
}
|
||||
|
||||
void sub_0202FAFC(FieldBattleDTO *param0, SaveData *saveData)
|
||||
void sub_0202FAFC(FieldBattleDTO *dto, SaveData *saveData)
|
||||
{
|
||||
int v0;
|
||||
int i;
|
||||
UnkStruct_0202F298 *v1 = &Unk_021C07A4->unk_E8;
|
||||
|
||||
param0->battleType = v1->unk_00.unk_00;
|
||||
param0->background = v1->unk_00.unk_E8;
|
||||
param0->terrain = v1->unk_00.unk_EC;
|
||||
param0->mapLabelTextID = v1->unk_00.unk_F0;
|
||||
param0->mapHeaderID = v1->unk_00.unk_F4;
|
||||
param0->timeOfDay = v1->unk_00.unk_F8;
|
||||
param0->mapEvolutionMethod = v1->unk_00.unk_FC;
|
||||
param0->visitedContestHall = v1->unk_00.unk_100;
|
||||
param0->metBebe = v1->unk_00.unk_104;
|
||||
param0->caughtBattlerIdx = v1->unk_00.unk_108;
|
||||
param0->fieldWeather = v1->unk_00.unk_10C;
|
||||
param0->battleStatusMask = v1->unk_00.unk_124 | BATTLE_STATUS_RECORDING;
|
||||
param0->countSafariBalls = v1->unk_00.unk_128;
|
||||
param0->rulesetMask = v1->unk_00.unk_12C;
|
||||
param0->seed = v1->unk_00.unk_130;
|
||||
param0->networkID = v1->unk_00.unk_144;
|
||||
param0->resultMask = BATTLE_IN_PROGRESS;
|
||||
param0->leveledUpMonsMask = 0;
|
||||
dto->battleType = v1->unk_00.unk_00;
|
||||
dto->background = v1->unk_00.unk_E8;
|
||||
dto->terrain = v1->unk_00.unk_EC;
|
||||
dto->mapLabelTextID = v1->unk_00.unk_F0;
|
||||
dto->mapHeaderID = v1->unk_00.unk_F4;
|
||||
dto->timeOfDay = v1->unk_00.unk_F8;
|
||||
dto->mapEvolutionMethod = v1->unk_00.unk_FC;
|
||||
dto->visitedContestHall = v1->unk_00.unk_100;
|
||||
dto->metBebe = v1->unk_00.unk_104;
|
||||
dto->caughtBattlerIdx = v1->unk_00.unk_108;
|
||||
dto->fieldWeather = v1->unk_00.unk_10C;
|
||||
dto->battleStatusMask = v1->unk_00.unk_124 | BATTLE_STATUS_RECORDING;
|
||||
dto->countSafariBalls = v1->unk_00.unk_128;
|
||||
dto->rulesetMask = v1->unk_00.unk_12C;
|
||||
dto->seed = v1->unk_00.unk_130;
|
||||
dto->networkID = v1->unk_00.unk_144;
|
||||
dto->resultMask = BATTLE_IN_PROGRESS;
|
||||
dto->leveledUpMonsMask = 0;
|
||||
|
||||
Pokedex_Copy(SaveData_GetPokedex(saveData), param0->pokedex);
|
||||
Pokedex_Copy(SaveData_GetPokedex(saveData), dto->pokedex);
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
param0->trainerIDs[v0] = v1->unk_00.unk_08[v0];
|
||||
param0->trainer[v0] = v1->unk_00.unk_18[v0];
|
||||
param0->systemVersion[v0] = v1->unk_00.unk_114[v0];
|
||||
param0->unk_178[v0] = v1->unk_00.unk_134[v0];
|
||||
for (i = 0; i < 4; i++) {
|
||||
dto->trainerIDs[i] = v1->unk_00.unk_08[i];
|
||||
dto->trainer[i] = v1->unk_00.unk_18[i];
|
||||
dto->systemVersion[i] = v1->unk_00.unk_114[i];
|
||||
dto->unk_178[i] = v1->unk_00.unk_134[i];
|
||||
|
||||
sub_0202FD30(&v1->unk_1150[v0], param0->parties[v0]);
|
||||
TrainerInfo_Copy(&v1->unk_1B68[v0], param0->trainerInfo[v0]);
|
||||
sub_0202FD30(&v1->unk_1150[i], dto->parties[i]);
|
||||
TrainerInfo_Copy(&v1->unk_1B68[i], dto->trainerInfo[i]);
|
||||
|
||||
param0->unk_194[v0] = v1->unk_00.unk_14C[v0];
|
||||
dto->unk_194[i] = v1->unk_00.unk_14C[i];
|
||||
}
|
||||
|
||||
Options_Copy(SaveData_GetOptions(saveData), param0->options);
|
||||
param0->options->frame = v1->unk_1BE8.frame;
|
||||
Options_Copy(SaveData_GetOptions(saveData), dto->options);
|
||||
dto->options->frame = v1->unk_1BE8.frame;
|
||||
|
||||
if (param0->options->frame >= 20) {
|
||||
param0->options->frame = 0;
|
||||
if (dto->options->frame >= 20) {
|
||||
dto->options->frame = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -455,7 +455,7 @@ BOOL sub_0207AAFC(UnkStruct_0207A778 *param0)
|
||||
v1 = param0->unk_00->trainerInfo[CommSys_CurNetId()];
|
||||
}
|
||||
|
||||
sub_0207ADD4(v1, param0->unk_00->unk_124, (PalPad *)param0->unk_20);
|
||||
sub_0207ADD4(v1, param0->unk_00->palPad, (PalPad *)param0->unk_20);
|
||||
|
||||
{
|
||||
int v2;
|
||||
@@ -675,7 +675,7 @@ void sub_0207AE34(int param0, int param1, void *param2, void *param3)
|
||||
UnkStruct_0207A778 *v0 = (UnkStruct_0207A778 *)param3;
|
||||
|
||||
if (CommSys_CurNetId() != param0) {
|
||||
sub_02027FEC(v0->unk_00->unk_124, (PalPad *)param2, 1, HEAP_ID_BATTLE);
|
||||
sub_02027FEC(v0->unk_00->palPad, (PalPad *)param2, 1, HEAP_ID_BATTLE);
|
||||
}
|
||||
|
||||
v0->unk_1020++;
|
||||
|
||||
Reference in New Issue
Block a user