more labeling and fix German build

This commit is contained in:
camthesaxman 2017-08-24 15:33:07 -05:00
parent 1ae38be0a4
commit 4a583141ba
4 changed files with 48 additions and 53 deletions

View File

@ -4771,16 +4771,7 @@ BattleTower_Lobby_EventScript_1AE30F:: @ 81AE30F
.include "data/scripts/gabby_and_ty.inc"
.include "data/scripts/bard.inc"
.include "data/scripts/hipster.inc"
.include "data/text/trader.inc"
.include "data/scripts/trader.inc"
.include "data/text/storyteller.inc"
.include "data/scripts/storyteller.inc"
.include "data/text/giddy.inc"
.include "data/scripts/giddy.inc"
.include "data/text/bard.inc"
.include "data/text/hipster.inc"
.include "data/scripts/mauville_man.inc"
.include "data/field_move_scripts.inc"
.include "data/item_ball_scripts.inc"

View File

@ -1,20 +1,20 @@
UnknownString_81B0A83: @ 81B0A83
gTextBard_BardTesting: @ 81B0A83
.string "BARDEN Test.$"
MauvilleCity_PokemonCenter_1F_Text_1B0A91:: @ 81B0A91
gTextBard_HiImTheBard:: @ 81B0A91
.string "Hallo, ich bin der BARDE.\n"
.string "Möchtest du meinem Lied lauschen?$"
MauvilleCity_PokemonCenter_1F_Text_1B0AC3:: @ 81B0AC3
gTextBard_OhYouveLeftMe:: @ 81B0AC3
.string "Oh...\n"
.string "Du überlässt mich meinem Blues?$"
MauvilleCity_PokemonCenter_1F_Text_1B0AED:: @ 81B0AED
gTextBard_OhWhatAMovingSong:: @ 81B0AED
.string "Hach, was für ein bewegendes Lied...\n"
.string "Ich wünschte, ich könnte es für\l"
.string "andere spielen...$"
MauvilleCity_PokemonCenter_1F_Text_1B0B2C:: @ 81B0B2C
gTextBard_SoHowDoYouLikeMySong:: @ 81B0B2C
.string "So?\n"
.string "Wie fandest du mein Lied?\p"
.string "Ich bin noch nicht ganz zufrieden mit\n"
@ -22,17 +22,17 @@ MauvilleCity_PokemonCenter_1F_Text_1B0B2C:: @ 81B0B2C
.string "Hast du nicht Lust, den Text für mich\n"
.string "neu zu schreiben?$"
MauvilleCity_PokemonCenter_1F_Text_1B0BA6:: @ 81B0BA6
gTextBard_OhYouveLeftMe2:: @ 81B0BA6
.string "Oh... Und wieder werde ich meinem\n"
.string "Blues überlassen.$"
MauvilleCity_PokemonCenter_1F_Text_1B0BD0:: @ 81B0BD0
gTextBard_ThankYouKindly:: @ 81B0BD0
.string "Vielen herzlichen Dank!\n"
.string "Ich möchte für dich singen.$"
MauvilleCity_PokemonCenter_1F_Text_1B0BFA:: @ 81B0BFA
gTextBard_WasThatHowYouWanted:: @ 81B0BFA
.string "Hast du dir dein Lied so vorgestellt?$"
MauvilleCity_PokemonCenter_1F_Text_1B0C23:: @ 81B0C23
gTextBard_OkayThatsIt:: @ 81B0C23
.string "Okay! Das ist es! Dieses Lied werde\n"
.string "ich nun für eine Weile singen.$"

View File

@ -460,7 +460,7 @@ struct MauvilleManBard
/*0x00*/ u8 id;
/*0x01*/ u8 unk_2D95;
/*0x02*/ u16 songLyrics[6];
/*0x0E*/ u16 mauvilleOldMan_ecArray2[6];
/*0x0E*/ u16 temporaryLyrics[6];
/*0x1A*/ u8 playerName[8];
/*0x22*/ u8 filler_2DB6[0x3];
/*0x25*/ u8 playerTrainerId[4];

View File

@ -314,28 +314,29 @@ void ScrSpecial_SaveBardSongLyrics(void)
bard->playerTrainerId[i] = gSaveBlock2.playerTrainerId[i];
for (i = 0; i < 6; i++)
bard->songLyrics[i] = bard->mauvilleOldMan_ecArray2[i];
bard->songLyrics[i] = bard->temporaryLyrics[i];
bard->hasChangedSong = TRUE;
}
// prepare song?
void sub_80F7BA0(void)
{
struct MauvilleManBard *bard = &gSaveBlock1.mauvilleMan.bard;
u16 specialVar = gSpecialVar_0x8004; // It's a bit odd to use this temp variable, but it seems needed to match.
u16 *r5;
u16 *lyrics;
u16 i;
u8 *ptr;
u8 *r4;
r5 = bard->mauvilleOldMan_ecArray2;
lyrics = bard->temporaryLyrics;
if (specialVar == 0)
r5 = bard->songLyrics;
lyrics = bard->songLyrics;
ptr = gStringVar4;
r4 = ptr;
for (i = 0; i < 2; i++)
{
ptr = sub_80EB3FC(ptr, *(r5++));
ptr = sub_80EB3FC(ptr, *(lyrics++));
while (ptr != r4)
{
if (*r4 == 0)
@ -344,7 +345,7 @@ void sub_80F7BA0(void)
}
r4++;
*(ptr++) = CHAR_SPACE;
ptr = sub_80EB3FC(ptr, *(r5++));
ptr = sub_80EB3FC(ptr, *(lyrics++));
while (ptr != r4)
{
if (*r4 == 0)
@ -353,7 +354,7 @@ void sub_80F7BA0(void)
}
r4++;
*(ptr++) = CHAR_NEWLINE;
ptr = sub_80EB3FC(ptr, *(r5++));
ptr = sub_80EB3FC(ptr, *(lyrics++));
while (ptr != r4)
{
if (*r4 == 0)
@ -780,7 +781,7 @@ void BardSingWord(struct Task *task, struct UnkBard2 *b)
if (gSpecialVar_0x8004 == 0)
r2 = bard->songLyrics;
else
r2 = bard->mauvilleOldMan_ecArray2;
r2 = bard->temporaryLyrics;
for (i = 0; i < 6; i++)
b->var0C[i] = r2[i];
for (i = 0; i < 6; i++)
@ -868,12 +869,15 @@ void BardSingWord(struct Task *task, struct UnkBard2 *b)
}
}
#define tState data[0]
#define tCharIndex data[3]
void Task_BardSong(u8 taskId)
{
struct Task *task = &gTasks[taskId]; // r5
BardSingWord(task, &gUnknown_03005DA0);
switch (task->data[0])
switch (task->tState)
{
case 0:
sub_80F7BA0();
@ -881,19 +885,19 @@ void Task_BardSong(u8 taskId)
sub_8002EB0(gMenuWindowPtr, gStringVar4, 2, 4, 15);
task->data[1] = 0;
task->data[2] = 0;
task->data[3] = 0;
task->tCharIndex = 0;
task->data[4] = 0;
FadeOutBGMTemporarily(4);
task->data[0] = 1;
task->tState = 1;
break;
case 1:
if (IsBGMPausedOrStopped())
task->data[0] = 2;
task->tState = 2;
break;
case 2:
{
struct MauvilleManBard *bard = &gSaveBlock1.mauvilleMan.bard;
u8 *string = gStringVar4 + task->data[3];
u8 *string = gStringVar4 + task->tCharIndex;
u16 wordLen = 0;
// Can't get it to match without hacking
u32 temp;
@ -910,7 +914,7 @@ void Task_BardSong(u8 taskId)
if (task->data[5] == 0)
gUnknown_020388BC = MACRO1(bard->songLyrics[task->data[4]]);
else
gUnknown_020388BC = MACRO1(bard->mauvilleOldMan_ecArray2[task->data[4]]);
gUnknown_020388BC = MACRO1(bard->temporaryLyrics[task->data[4]]);
temp = gUnknown_03005DA0.var04 / wordLen;
zero = 0;
gUnknown_03005DA0.var04 = temp;
@ -918,50 +922,50 @@ void Task_BardSong(u8 taskId)
gUnknown_03005DA0.var04 = 1;
task->data[4]++;
if (task->data[2] == 0)
task->data[0] = 3;
task->tState = 3;
else
task->data[0] = 5;
task->tState = 5;
task->data[1] = zero;
}
break;
case 5:
if (task->data[2] == 0)
task->data[0] = 3;
task->tState = 3;
else
task->data[2]--;
break;
case 3:
if (gStringVar4[task->data[3]] == EOS)
if (gStringVar4[task->tCharIndex] == EOS)
{
FadeInNewBGM(BGM_POKECEN, 6);
m4aMPlayFadeOutTemporarily(&gMPlay_SE2, 2);
EnableBothScriptContexts();
DestroyTask(taskId);
}
else if (gStringVar4[task->data[3]] == CHAR_SPACE)
else if (gStringVar4[task->tCharIndex] == CHAR_SPACE)
{
sub_8003418(gMenuWindowPtr);
task->data[3]++;
task->data[0] = 2;
task->tCharIndex++;
task->tState = 2;
task->data[2] = 0;
}
else if (gStringVar4[task->data[3]] == CHAR_NEWLINE)
else if (gStringVar4[task->tCharIndex] == CHAR_NEWLINE)
{
task->data[3]++;
task->data[0] = 2;
task->tCharIndex++;
task->tState = 2;
task->data[2] = 0;
}
else if (gStringVar4[task->data[3]] == EXT_CTRL_CODE_BEGIN)
else if (gStringVar4[task->tCharIndex] == EXT_CTRL_CODE_BEGIN)
{
task->data[3] += 2; // skip over control codes
task->data[0] = 2;
task->tCharIndex += 2; // skip over control codes
task->tState = 2;
task->data[2] = 8;
}
else if (gStringVar4[task->data[3]] == 0x37) // What is 0x37 supposed to be?
else if (gStringVar4[task->tCharIndex] == 0x37) // What is 0x37 supposed to be?
{
gStringVar4[task->data[3]] = 0;
gStringVar4[task->tCharIndex] = CHAR_SPACE;
sub_8003418(gMenuWindowPtr);
task->data[3]++;
task->tCharIndex++;
task->data[2] = 0;
}
else
@ -976,10 +980,10 @@ void Task_BardSong(u8 taskId)
task->data[1]++;
break;
case 2:
task->data[3]++;
task->tCharIndex++;
task->data[1] = 0;
task->data[2] = gUnknown_03005DA0.var04;
task->data[0] = 4;
task->tState = 4;
break;
}
}
@ -987,7 +991,7 @@ void Task_BardSong(u8 taskId)
case 4:
task->data[2]--;
if (task->data[2] == 0)
task->data[0] = 3;
task->tState = 3;
break;
}
}