blob: 80fde68be5825dcaa02acf279b3fb9d7d71e2fbd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
#include "global.h"
#include "bard_music.h"
#include "easy_chat.h"
#include "data/bard_music/word_pitch.h"
#include "data/bard_music/length_table.h"
#include "data/bard_music/bard_sounds.h"
s16 CalcWordPitch(int arg0, int songPos)
{
return gBardSoundPitchTables[arg0][songPos];
}
#if ENGLISH
const struct BardSound *GetWordSounds(u16 group, u16 word)
{
const struct BardSound (*sounds)[6] = gBardSoundsTable[group];
return sounds[word];
}
#elif GERMAN
const struct BardSound *GetWordSounds(u16 group, u16 word)
{
const struct BardSound (*sounds)[6] = gBardSoundsTable[group];
u32 index = de_sub_80EB748(group, word);
return sounds[index];
}
#endif
s32 GetWordPhonemes(struct BardSong *song, const struct BardSound *src, u16 word)
{
s32 i;
s32 j;
s32 thirty;
for (i = 0; i < 6; i++)
{
song->phonemes[i].sound = src[i].var00;
if (src[i].var00 != 0xFF)
{
s32 length = src[i].var01 + gBardSoundLengthTable[src[i].var00];
song->phonemes[i].length = length;
song->phonemes[i].volume = src[i].volume;
song->var04 += length;
}
}
for (j = 0, thirty = 30; j < i; j++)
song->phonemes[j].pitch = CalcWordPitch(thirty + word, j);
song->currWord++;
song->currPhoneme = 0;
song->phonemeTimer = 0;
song->state = 0;
song->voiceInflection = 0;
//warning: no return statement in function returning non-void
}
|