fix some code and formatting anomalies

This commit is contained in:
camthesaxman 2018-01-06 12:27:27 -06:00
parent 818dfa314e
commit b3551bc2f3
13 changed files with 4484 additions and 4118 deletions

0
de_after.sh Normal file → Executable file
View File

3
de_before.sh Normal file → Executable file
View File

@ -1,4 +1,3 @@
cp override-de.mk
rsync -avhI asm-de/ asm/
cp override-de.mk override.mk
rsync -avhI data-de/ data/
rsync -avhI graphics-de/ graphics/

View File

@ -368,16 +368,6 @@ struct Struct2017100
u32 arr[4];
};
struct Struct2019348
{
u16 unk0;
u16 unk2;
u8 unk4;
u32 unk8;
u32 unkC;
u32 unk10;
};
struct Struct2017800
{
u8 invisible:1;

View File

@ -87,4 +87,171 @@ bool8 Contest_SaveWinner(u8);
u8 sub_80B2C4C(u8, u8);
void Contest_ResetWinners(void);
// Contest Shared EWRAM
struct Shared18000
{
/*0x18000*/ u8 unk18000;
/*0x18001*/ u8 filler18001[3];
/*0x18004*/ u16 unk18004[16][16];
/*0x18204*/ u16 unk18204[0x200];
/*0x18604*/ u16 unk18604[0x200];
/*0x18A04*/ u8 unk18A04[0x800];
};
struct Contest
{
/*0x19204*/ u8 playerMoveChoice;
/*0x19205*/ u8 turnNumber;
/*0x19206*/ u8 unk19206[4]; // seems to only be used by an unref function
/*0x1920A*/ u16 unk1920A_0:1; // Task active flags?
u16 unk1920A_1:1;
u16 unk1920A_2:1;
u16 unk1920A_3:1;
u16 unk1920A_4:1;
u16 unk1920A_5:1;
u16 unk1920A_6:1;
u16 unk1920A_7:1;
/*0x1920B*/ u16 unk1920B_0:1;
u16 unk1920B_1:1;
u16 unk1920B_2:1;
/*0x1920C*/ u8 mainTaskId;
/*0x1920D*/ u8 unk1920D[4];
/*0x19211*/ u8 unk19211;
/*0x19212*/ u8 unk19212;
/*0x19213*/ u8 filler19213;
/*0x19214*/ u8 unk19214;
/*0x19215*/ u8 unk19215;
/*0x19216*/ u8 unk19216; // sprite ID
/*0x19217*/ s8 applauseLevel;
/*0x19218*/ u8 unk19218[4];
/*0x1921C*/ u32 unk1921C; // saved RNG value?
u16 unk19220[5][4]; // move history?
u8 unk19248[5][4]; // excitement history
u8 applauseMeterSpriteId; // sprite ID
/*0x1925D*/ u8 unk1925D;
/*0x1925E*/ u8 unk1925E;
};
struct ContestantStatus
{
s16 appeal1; // move appeal?
s16 appeal2; // final appeal after end of turn, maybe?
s16 unk4;
u16 currMove;
u16 prevMove;
u8 moveCategory;
u8 unkB_0:2;
u8 unkB_2:2;
u8 moveRepeatCount:3;
u8 unkB_7:1; // used a one-time move?
u8 unkC_0:1;
u8 unkC_1:2;
s8 unkD;
u8 unkE;
u8 unkF;
u8 unk10_0:1;
u8 unk10_1:1;
u8 unk10_2:1;
u8 unk10_3:1;
u8 unk10_4:2;
u8 unk10_6:2;
u8 unk11_0:2;
u8 unk11_2:1;
u8 unk11_3:1;
u8 unk11_4:1;
u8 unk11_5:1;
u8 unk12;
u8 unk13; // status action?
u8 unk14;
u8 disappointedRepeat:1;
u8 unk15_1:1;
u8 unk15_2:1;
u8 unk15_3:1;
u8 unk15_4:1;
u8 unk15_5:1;
u8 unk15_6:1;
u8 unk16;
u8 unk17;
u8 unk18;
u8 unk19; // turn position
u8 attentionLevel; // How much the Pokemon "stood out"
u8 unk1B;
};
struct UnknownContestStruct3
{
u8 unk0;
u8 unk1;
//u8 unk2_0:1;
//u8 unk2_1:1;
u8 unk2; // maybe a bitfield
u8 filler3;
};
// possibly the same as UnknownContestStruct3?
struct UnknownContestStruct4
{
u8 unk0; // sprite ID
u8 unk1; // sprite ID
u8 unk2_0:1;
u8 unk2_1:1;
u8 unk2_2:1;
u8 filler3;
};
struct UnknownContestStruct5
{
s8 bits_0; // current move excitement?
u8 bits_8:1;
u8 bits_9:3;
u8 bits_C:4;
s8 unk2;
u8 filler3;
};
struct UnknownContestStruct7
{
u8 unk0[4];
u16 unk4;
u16 unk6;
u8 filler8[0xD-8];
u8 unkD[4];
u8 unk11;
u8 filler12[2];
};
struct UnknownContestStruct8
{
u16 unk0;
u16 unk2;
u8 unk4_0:1;
u8 unk5;
u8 filler6[2];
u32 unk8;
u32 unkC;
u32 unk10;
};
struct UnknownContestStruct6
{
s32 unk0;
s32 unk4;
s32 unk8;
s32 unkC;
};
#define shared15800 (gSharedMem + 0x15800)
#define shared15DE0 (*(struct ContestWinner *)(gSharedMem + 0x15DE0))
#define shared16800 (gSharedMem + 0x16800)
#define shared18000 (*(struct Shared18000 *)(gSharedMem + 0x18000))
#define shared18004 ((u16 *)(gSharedMem + 0x18004))
#define sContest (*(struct Contest *)(gSharedMem + 0x19204))
#define sContestantStatus ((struct ContestantStatus *)(gSharedMem + 0x19260))
#define shared192D0 (*(struct UnknownContestStruct7 *)(gSharedMem + 0x192D0))
#define shared192E4 (gSharedMem + 0x192E4)
#define shared19328 (*(struct UnknownContestStruct5 *)(gSharedMem + 0x19328))
#define shared19338 ((struct UnknownContestStruct4 *)(gSharedMem + 0x19338))
#define shared19348 (*(struct UnknownContestStruct8 *)(gSharedMem + 0x19348))
#endif // GUARD_CONTEST_H

View File

@ -215,7 +215,6 @@ extern u8 gSharedMem[];
#define ewram19000 (&gSharedMem[0x19000])
#define ePokedexView3 (struct PokedexView *)(gSharedMem + 0x19000)
#define EWRAM_19348 (*(u16 *)(gSharedMem + 0x19348))
#define ewram19348 (*(struct Struct2019348 *)(gSharedMem + 0x19348))
#define ewram19800 (&gSharedMem[0x19800])
#define ePokedexView4 (struct PokedexView *)(gSharedMem + 0x19800)
#define ewram1A000 (&gSharedMem[0x1A000])

View File

@ -3,6 +3,7 @@
#include "battle_anim.h"
#include "battle_interface.h"
#include "blend_palette.h"
#include "contest.h"
#include "data2.h"
#include "decompress.h"
#include "main.h"
@ -629,9 +630,9 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
if (IsContest())
{
r10 = 0;
species = ewram19348.unk2;
personalityValue = ewram19348.unk8;
otId = ewram19348.unkC;
species = shared19348.unk2;
personalityValue = shared19348.unk8;
otId = shared19348.unkC;
HandleLoadSpecialPokePic(
&gMonBackPicTable[species],
gMonBackPicCoords[species].coords,
@ -639,7 +640,7 @@ void sub_8031FC4(u8 a, u8 b, bool8 c)
eVoidSharedArr2,
gUnknown_081FAF4C[0],
species,
ewram19348.unk10);
shared19348.unk10);
}
else
{

View File

@ -3,52 +3,33 @@
#if GERMAN
void de_sub_80C9274(bool32 arg0) {
if (deUnkValue2 != 1)
{
return;
}
if (arg0)
{
deUnkValue2 = 3;
}
else
{
deUnkValue2 = 2;
}
}
void de_sub_80C9294(bool32 arg0) {
void de_sub_80C9274(bool32 arg0)
{
if (deUnkValue2 == 1)
{
if (arg0)
{
deUnkValue2 = 3;
}
else
{
deUnkValue2 = 2;
}
return;
}
}
if (deUnkValue2 == 2)
void de_sub_80C9294(bool32 arg0)
{
if (deUnkValue2 == 1)
{
if (arg0)
deUnkValue2 = 3;
else
deUnkValue2 = 2;
}
else if (deUnkValue2 == 2)
{
SendBlock(0, sBlockRequestLookupTable[deUnkValue1].address, sBlockRequestLookupTable[deUnkValue1].size);
if (arg0)
{
deUnkValue2 = 0;
}
else
{
deUnkValue2 = 1;
}
return;
}
}

View File

@ -39,171 +39,6 @@ extern void sub_80C8C80(u8);
extern void sub_81288F4();
extern u8 sub_8128944(void);
struct Shared18000
{
/*0x18000*/ u8 unk18000;
/*0x18001*/ u8 filler18001[3];
/*0x18004*/ u16 unk18004[16][16];
/*0x18204*/ u16 unk18204[0x200];
/*0x18604*/ u16 unk18604[0x200];
/*0x18A04*/ u8 unk18A04[0x800];
};
struct Contest
{
/*0x19204*/ u8 playerMoveChoice;
/*0x19205*/ u8 turnNumber;
/*0x19206*/ u8 unk19206[4]; // seems to only be used by an unref function
/*0x1920A*/ u16 unk1920A_0:1; // Task active flags?
u16 unk1920A_1:1;
u16 unk1920A_2:1;
u16 unk1920A_3:1;
u16 unk1920A_4:1;
u16 unk1920A_5:1;
u16 unk1920A_6:1;
u16 unk1920A_7:1;
/*0x1920B*/ u16 unk1920B_0:1;
u16 unk1920B_1:1;
u16 unk1920B_2:1;
/*0x1920C*/ u8 mainTaskId;
/*0x1920D*/ u8 unk1920D[4];
/*0x19211*/ u8 unk19211;
/*0x19212*/ u8 unk19212;
/*0x19213*/ u8 filler19213;
/*0x19214*/ u8 unk19214;
/*0x19215*/ u8 unk19215;
/*0x19216*/ u8 unk19216; // sprite ID
/*0x19217*/ s8 applauseLevel;
/*0x19218*/ u8 unk19218[4];
/*0x1921C*/ u32 unk1921C; // saved RNG value?
u16 unk19220[5][4]; // move history?
u8 unk19248[5][4]; // excitement history
u8 applauseMeterSpriteId; // sprite ID
/*0x1925D*/ u8 unk1925D;
/*0x1925E*/ u8 unk1925E;
};
struct ContestantStatus
{
s16 appeal1; // move appeal?
s16 appeal2; // final appeal after end of turn, maybe?
s16 unk4;
u16 currMove;
u16 prevMove;
u8 moveCategory;
u8 unkB_0:2;
u8 unkB_2:2;
u8 moveRepeatCount:3;
u8 unkB_7:1; // used a one-time move?
u8 unkC_0:1;
u8 unkC_1:2;
s8 unkD;
u8 unkE;
u8 unkF;
u8 unk10_0:1;
u8 unk10_1:1;
u8 unk10_2:1;
u8 unk10_3:1;
u8 unk10_4:2;
u8 unk10_6:2;
u8 unk11_0:2;
u8 unk11_2:1;
u8 unk11_3:1;
u8 unk11_4:1;
u8 unk11_5:1;
u8 unk12;
u8 unk13; // status action?
u8 unk14;
u8 disappointedRepeat:1;
u8 unk15_1:1;
u8 unk15_2:1;
u8 unk15_3:1;
u8 unk15_4:1;
u8 unk15_5:1;
u8 unk15_6:1;
u8 unk16;
u8 unk17;
u8 unk18;
u8 unk19; // turn position
u8 attentionLevel; // How much the Pokemon "stood out"
u8 unk1B;
};
struct UnknownContestStruct3
{
u8 unk0;
u8 unk1;
//u8 unk2_0:1;
//u8 unk2_1:1;
u8 unk2; // maybe a bitfield
u8 filler3;
};
// possibly the same as UnknownContestStruct3?
struct UnknownContestStruct4
{
u8 unk0; // sprite ID
u8 unk1; // sprite ID
u8 unk2_0:1;
u8 unk2_1:1;
u8 unk2_2:1;
u8 filler3;
};
struct UnknownContestStruct5
{
s8 bits_0; // current move excitement?
u8 bits_8:1;
u8 bits_9:3;
u8 bits_C:4;
s8 unk2;
u8 filler3;
};
struct UnknownContestStruct7
{
u8 unk0[4];
u16 unk4;
u16 unk6;
u8 filler8[0xD-8];
u8 unkD[4];
u8 unk11;
u8 filler12[2];
};
struct UnknownContestStruct8
{
u16 unk0;
u16 unk2;
u8 unk4_0:1;
u8 unk5;
u8 filler6[2];
u32 unk8;
u32 unkC;
u32 unk10;
};
struct UnknownContestStruct6
{
s32 unk0;
s32 unk4;
s32 unk8;
s32 unkC;
};
#define shared15800 (gSharedMem + 0x15800)
#define shared15DE0 (*(struct ContestWinner *)(gSharedMem + 0x15DE0))
#define shared16800 (gSharedMem + 0x16800)
#define shared18000 (*(struct Shared18000 *)(gSharedMem + 0x18000))
#define shared18004 ((u16 *)(gSharedMem + 0x18004))
#define sContest (*(struct Contest *)(gSharedMem + 0x19204))
#define sContestantStatus ((struct ContestantStatus *)(gSharedMem + 0x19260))
#define shared192D0_ (*(struct UnknownContestStruct7 *)(gSharedMem + 0x192D0))
#define shared192E4 (gSharedMem + 0x192E4)
#define shared19328 (*(struct UnknownContestStruct5 *)(gSharedMem + 0x19328))
#define shared19338 ((struct UnknownContestStruct4 *)(gSharedMem + 0x19338))
#define shared19348_ (*(struct UnknownContestStruct8 *)(gSharedMem + 0x19348))
extern struct MusicPlayerInfo gMPlay_SE1;
extern u16 gSpecialVar_ContestCategory;
extern u16 gSpecialVar_ContestRank;
@ -555,7 +390,7 @@ void ClearContestVars(void)
sContestantStatus[i].unk14 = 0xFF;
}
memset(&shared192D0_, 0, sizeof(shared192D0_));
memset(&shared192D0, 0, sizeof(shared192D0));
memset(shared192E4, 0, 0x44 * sizeof(*shared192E4));
memset(&shared19328, 0, sizeof(shared19328));
memset(shared19338, 0, 4 * sizeof(*shared19338));
@ -1063,7 +898,7 @@ void sub_80AC2CC(u8 taskId)
{
case 0:
sub_80B0D7C();
for (i = 0; sContest.unk19214 != shared192D0_.unk0[i]; i++)
for (i = 0; sContest.unk19214 != shared192D0.unk0[i]; i++)
;
sContest.unk19215 = i;
r7 = sContest.unk19215;
@ -1106,7 +941,7 @@ void sub_80AC2CC(u8 taskId)
case 3:
for (i = 0; i < 4; i++)
gBattleMonForms[i] = 0;
memset(&shared19348_, 0, sizeof(shared19348_));
memset(&shared19348, 0, sizeof(shared19348));
sub_80B28F0(sContest.unk19215);
spriteId = sub_80AE9FC(
gContestMons[sContest.unk19215].species,
@ -4528,13 +4363,13 @@ void sub_80B114C(u8 contestant)
}
sContestantStatus[contestant].appeal1 = gContestEffects[effect].appeal;
sContestantStatus[contestant].appeal2 = gContestEffects[effect].appeal;
shared192D0_.unk4 = gContestEffects[effect].jam;
shared192D0_.unk6 = gContestEffects[effect].jam;
shared192D0_.unk11 = contestant;
shared192D0.unk4 = gContestEffects[effect].jam;
shared192D0.unk6 = gContestEffects[effect].jam;
shared192D0.unk11 = contestant;
for (i = 0; i < 4; i++)
{
sContestantStatus[i].unkE = 0;
shared192D0_.unkD[i] = 0;
shared192D0.unkD[i] = 0;
}
if (sContestantStatus[contestant].unk15_4 && AreMovesContestCombo(sContestantStatus[contestant].prevMove, sContestantStatus[contestant].currMove) == 0)
sContestantStatus[contestant].unk15_4 = 0;
@ -4637,13 +4472,13 @@ void sub_80B146C(u8 a, u8 b)
{
StringCopy(gStringVar1, gContestMons[a].nickname);
StringCopy(gStringVar2, gMoveNames[sContestantStatus[a].currMove]);
if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_COOL)
if (gContestMoves[sContestantStatus[shared192D0.unk11].currMove].contestCategory == CONTEST_CATEGORY_COOL)
StringCopy(gStringVar3, gText_Contest_Shyness);
else if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_BEAUTY)
else if (gContestMoves[sContestantStatus[shared192D0.unk11].currMove].contestCategory == CONTEST_CATEGORY_BEAUTY)
StringCopy(gStringVar3, gText_Contest_Anxiety);
else if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_CUTE)
else if (gContestMoves[sContestantStatus[shared192D0.unk11].currMove].contestCategory == CONTEST_CATEGORY_CUTE)
StringCopy(gStringVar3, gText_Contest_Laziness);
else if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_SMART)
else if (gContestMoves[sContestantStatus[shared192D0.unk11].currMove].contestCategory == CONTEST_CATEGORY_SMART)
StringCopy(gStringVar3, gText_Contest_Hesitancy);
else
StringCopy(gStringVar3, gText_Contest_Fear);
@ -4708,7 +4543,7 @@ void sub_80B159C(void)
for (i = 0; i < 4; i++)
{
shared192D0_.unk0[i] = sp0[i];
shared192D0.unk0[i] = sp0[i];
sContestantStatus[i].unk19 = 0xFF;
sContestantStatus[i].unk10_6 = 0;
gUnknown_02038696[i] = sp0[i];
@ -5083,7 +4918,7 @@ void sub_80B20C4(void)
for (i = 0; i < 4; i++)
{
if (shared192D0_.unkD[i] != 0 && !Contest_IsMonsTurnDisabled(i))
if (shared192D0.unkD[i] != 0 && !Contest_IsMonsTurnDisabled(i))
{
u8 r4 = gUnknown_02038696[i] * 5 + 2;
u16 r0 = sub_80AEFE8(i, 3);
@ -5339,7 +5174,7 @@ void sub_80B2790(u8 a)
u16 species = SanitizeSpecies(gContestMons[a].species);
u8 r5_2;
memset(&shared19348_, 0, sizeof(shared19348_));
memset(&shared19348, 0, sizeof(shared19348));
ClearBattleAnimationVars();
for (i = 0; i < 4; i++)
gBattleMonForms[i] = 0;
@ -5354,9 +5189,9 @@ void sub_80B2790(u8 a)
case MOVE_TRANSFORM:
case MOVE_ROLE_PLAY:
r5_2 = sContestantStatus[a].unk1B;
shared19348_.unk2 = SanitizeSpecies(gContestMons[r5_2].species);
shared19348_.unk10 = gContestMons[r5_2].personality;
shared19348_.unk4_0 = 1;
shared19348.unk2 = SanitizeSpecies(gContestMons[r5_2].species);
shared19348.unk10 = gContestMons[r5_2].personality;
shared19348.unk4_0 = 1;
break;
case MOVE_RETURN:
gAnimFriendship = 0xFF;
@ -5384,17 +5219,17 @@ void sub_80B2790(u8 a)
void sub_80B28CC(int unused)
{
memset(&shared19348_, 0, sizeof(shared19348_));
memset(&shared19348, 0, sizeof(shared19348));
if (sContest.unk1925E != 0)
sContest.unk1925E--;
}
void sub_80B28F0(u8 a)
{
shared19348_.unk5 = a;
shared19348_.unk0 = SanitizeSpecies(gContestMons[a].species);
shared19348_.unk8 = gContestMons[a].personality;
shared19348_.unkC = gContestMons[a].otId;
shared19348.unk5 = a;
shared19348.unk0 = SanitizeSpecies(gContestMons[a].species);
shared19348.unk8 = gContestMons[a].personality;
shared19348.unkC = gContestMons[a].otId;
}
void sub_80B292C(void)

View File

@ -2,54 +2,33 @@
#include "battle.h"
#include "battle_tower.h"
#include "ewram.h"
#include "trainer.h"
#if GERMAN
enum {
TRAINER_CLASS_NAME_LEADER = 25,
TRAINER_CLASS_NAME_SCHOOL_KID = 26,
TRAINER_CLASS_NAME_EXPERT = 30,
TRAINER_CLASS_NAME_POKEMON_TRAINER_3 = 46,
};
enum {
TRAINER_CLASS_LEADER_F = 26,
TRAINER_CLASS_ELITE_FOUR_F = 25,
TRAINER_CLASS_SCHOOL_KID_F = 30,
TRAINER_CLASS_BIRD_KEEPER = 46,
TRAINER_CLASS_MAY_1 = 61,
TRAINER_CLASS_MAY_2 = 62,
TRAINER_CLASS_MAY_3 = 63,
};
extern u8 gTrainerClassNames[][13];
extern struct Trainer gTrainers[];
u8 *de_sub_8040FE0(u8 gender) {
u8 *de_sub_8040FE0(u8 gender)
{
if (gender)
{
gender++;
}
gender = TRAINER_CLASS_NAME_SCHOOL_KID;
return gTrainerClassNames[gender];
}
u8 *de_sub_8040FF4(u8 gender) {
if (gender) {
u8 *de_sub_8040FF4(u8 gender)
{
if (gender)
gender++;
}
gender = TRAINER_CLASS_NAME_POKEMON_TRAINER_3;
return gTrainerClassNames[gender];
}
u8 *de_sub_804100C(u8 gender) {
if (gender) {
u8 *de_sub_804100C(u8 gender)
{
if (gender)
gender++;
}
gender = TRAINER_CLASS_NAME_LEADER;
return gTrainerClassNames[gender];
}
@ -60,7 +39,8 @@ u8 de_sub_81364AC(void);
u8 get_trainer_class_name_index(void);
u8 de_sub_81364F8(void);
u8 *de_sub_8041024(s32 arg0, u32 arg1) {
u8 *de_sub_8041024(s32 arg0, u32 arg1)
{
u8 nameIndex, trainerClass, gender;
struct Trainer *trainer;
u8 local2;
@ -71,68 +51,39 @@ u8 *de_sub_8041024(s32 arg0, u32 arg1) {
nameIndex = GetSecretBaseTrainerNameIndex();
gender = eSecretBaseRecord.gender;
if (nameIndex == TRAINER_CLASS_NAME_SCHOOL_KID)
{
return de_sub_8040FE0(gender);
}
return gTrainerClassNames[nameIndex];
case 0x100:
trainerClass = de_sub_81364AC();
nameIndex = get_trainer_class_name_index();
if (trainerClass == TRAINER_CLASS_SCHOOL_KID_F)
{
return de_sub_8040FE0(FEMALE);
}
if (trainerClass == TRAINER_CLASS_MAY_1 || trainerClass == TRAINER_CLASS_MAY_2 || trainerClass == TRAINER_CLASS_MAY_3)
{
return de_sub_8040FF4(FEMALE);
}
return gTrainerClassNames[nameIndex];
case 0x800:
trainerClass = de_sub_81364F8();
nameIndex = GetEReaderTrainerClassNameIndex();
if (trainerClass == TRAINER_CLASS_SCHOOL_KID_F)
{
return de_sub_8040FE0(FEMALE);
}
if (trainerClass == TRAINER_CLASS_MAY_1 || trainerClass == TRAINER_CLASS_MAY_2 || trainerClass == TRAINER_CLASS_MAY_3)
{
return de_sub_8040FF4(FEMALE);
}
return gTrainerClassNames[nameIndex];
default:
trainer = &gTrainers[arg1];
trainerClass = trainer->trainerClass;
local2 = sub_803FC58(arg1);
if (trainerClass == TRAINER_CLASS_LEADER_F)
{
return de_sub_8040FE0(local2);
}
if (trainerClass == TRAINER_CLASS_BIRD_KEEPER && local2 == FEMALE)
{
return de_sub_8040FF4(FEMALE);
}
if (trainerClass == TRAINER_CLASS_ELITE_FOUR_F)
{
if (gTrainers[arg1].doubleBattle == TRUE)
{
return de_sub_804100C(FEMALE);
}
else
{
return de_sub_804100C(MALE);
}
}
return gTrainerClassNames[trainerClass];
}
}
@ -264,7 +215,8 @@ _08041108: .4byte gTrainerClassNames\n\
}
#endif
u32 de_sub_804110C(u32 arg0, u32 arg1) {
u32 de_sub_804110C(u32 arg0, u32 arg1)
{
return arg1;
}

View File

@ -91,19 +91,19 @@ const struct EasyChatPrompt gUnknown_083DB6F4[] =
const u8 gUnknown_083DB7C0[][2] =
{
{ 0, 6},
{ 1, 7},
{ 1, 8},
{ 1, 9},
{ 2, 10},
{16, 13},
{ 4, 12},
{ 3, 13},
{ 3, 13},
{ 5, 14},
{ 3, 13},
{ 3, 13},
{ 3, 13},
{ 0, 6},
{ 1, 7},
{ 1, 8},
{ 1, 9},
{ 2, 10},
{16, 13},
{ 4, 12},
{ 3, 13},
{ 3, 13},
{ 5, 14},
{ 3, 13},
{ 3, 13},
{ 3, 13},
{15, 13},
};

View File

@ -6,16 +6,10 @@
#include "de_rom_8040FE0.h"
#include "string_util.h"
void sub_80F700C(u8 *arg0, u16 arg1) {
struct Trainer *trainer;
u8 *ptr;
#if ENGLISH
trainer = (struct Trainer *) &gTrainers[gUnknown_083DFEC4->unkCEE8[arg1].unk0];
#elif GERMAN
const u16 trainerIndex = gUnknown_083DFEC4->unkCEE8[arg1].unk0;
trainer = (struct Trainer *) &gTrainers[trainerIndex];
#endif
void sub_80F700C(u8 *arg0, u16 arg1)
{
const struct Trainer *trainer = &gTrainers[gUnknown_083DFEC4->unkCEE8[arg1].unk0];
u8 *ptr = arg0;
ptr = arg0;
if (arg1 < gUnknown_083DFEC4->unkD158)
@ -23,7 +17,7 @@ void sub_80F700C(u8 *arg0, u16 arg1) {
#if ENGLISH
ptr = StringCopy(ptr, gTrainerClassNames[trainer->trainerClass]);
#elif GERMAN
ptr = StringCopy(ptr, de_sub_8041024(0, trainerIndex));
ptr = StringCopy(ptr, de_sub_8041024(0, gUnknown_083DFEC4->unkCEE8[arg1].unk0));
#endif
ptr[0] = 0xFC;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff