summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-05-03 18:05:07 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2018-05-03 18:05:07 -0400
commit8aa462cd747ab3c3127401aa8905d0bdd5e2a1f4 (patch)
tree32640a8e96f7b1a021f8dc6d3125d9a5d458c3fc /src
parent876e1eb7cccb729a801cfb2005f7b190955f9129 (diff)
through sub_8121178
Diffstat (limited to 'src')
-rw-r--r--src/mauville_old_man.c55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/mauville_old_man.c b/src/mauville_old_man.c
index 04af0e066..4f85d4577 100644
--- a/src/mauville_old_man.c
+++ b/src/mauville_old_man.c
@@ -19,6 +19,7 @@
#include "sound.h"
#include "strings.h"
#include "overworld.h"
+#include "field_message_box.h"
#define CHAR_SONG_WORD_SEPARATOR 0x37
@@ -33,6 +34,8 @@ void sub_8120E50(void);
void sub_81339F8(void); // TraderSetup
void sub_8133A60(void);
+IWRAM_DATA u8 gUnknown_03001178;
+
struct BardSong gUnknown_03006130;
EWRAM_DATA u16 gUnknown_0203A128 = 0;
@@ -1085,3 +1088,55 @@ void sub_8121064(u8 * arr, s32 count) // ScrambleStatList
arr[b] = temp;
}
}
+
+struct UnknownStruct_0859F288
+{
+ u32 length;
+ u32 unused2;
+};
+
+const struct UnknownStruct_0859F288 gUnknown_0859F288 = {
+ 36,
+ 8
+};
+
+bool8 sub_81210B8(void) // StorytellerInitializeRandomStat
+{
+ u8 arr[gUnknown_0859F288.length];
+ s32 i;
+ s32 j;
+
+ sub_8121064(arr, 36);
+ for (i = 0; i < 36; i++)
+ {
+ u8 stat = gUnknown_0859F048[arr[i]].stat;
+ u8 minVal = gUnknown_0859F048[arr[i]].minVal;
+
+ for (j = 0; j < 4; j++)
+ {
+ if (gUnknown_0203A12C->gameStatIDs[j] == stat)
+ break;
+ }
+ if (j == 4 && sub_8120E74(stat) >= minVal)
+ {
+ gUnknown_0203A12C->alreadyRecorded = TRUE;
+ if (sub_8120ED8() == 4)
+ sub_8120FDC(gUnknown_03001178, stat);
+ else
+ sub_8120FDC(sub_8120ED8(), stat);
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+void sub_8121178(u32 player) // StorytellerDisplayStory
+{
+ u8 stat = gUnknown_0203A12C->gameStatIDs[player];
+
+ ConvertIntToDecimalStringN(gStringVar1, sub_8120F08(player), 0, 10);
+ StringCopy(gStringVar2, sub_8120ECC(stat));
+ sub_8120F7C(player, gStringVar3);
+ ConvertInternationalString(gStringVar3, gUnknown_0203A12C->unk34[player]);
+ ShowFieldMessage(sub_8120EC0(stat));
+}