summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-11-24 23:41:08 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2018-11-24 23:41:08 -0500
commitb09bbc65bed4716bc944306f64b89301dcaaffe6 (patch)
tree13c75c21f1cad3be0322a1a88f491bab331cd87f
parent8f9ec933264a3ecfe204b653c508feacde3c976d (diff)
through sub_812D174
-rw-r--r--asm/fame_checker.s121
-rw-r--r--src/fame_checker.c43
2 files changed, 43 insertions, 121 deletions
diff --git a/asm/fame_checker.s b/asm/fame_checker.s
index a99054d8b..49226ae15 100644
--- a/asm/fame_checker.s
+++ b/asm/fame_checker.s
@@ -5,127 +5,6 @@
.text
- thumb_func_start sub_812D0C0
-sub_812D0C0: @ 812D0C0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0xAF
- lsls r0, 1
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812D0EA
- cmp r4, 0x9
- bne _0812D0DE
- movs r0, 0xF
- b _0812D0EC
-_0812D0DE:
- cmp r4, 0x9
- bls _0812D0EA
- subs r0, r4, 0x1
- lsls r0, 24
- lsrs r0, 24
- b _0812D0EC
-_0812D0EA:
- adds r0, r4, 0
-_0812D0EC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_812D0C0
-
- thumb_func_start sub_812D0F4
-sub_812D0F4: @ 812D0F4
- push {r4,r5,lr}
- sub sp, 0x14
- lsls r0, 24
- lsrs r0, 24
- ldr r5, _0812D164 @ =gUnknown_841E5A4
- cmp r0, 0
- beq _0812D10A
- ldr r5, _0812D168 @ =gUnknown_841E5D2
- cmp r0, 0x1
- bne _0812D10A
- ldr r5, _0812D16C @ =gUnknown_841E5B9
-_0812D10A:
- movs r0, 0
- adds r1, r5, 0
- movs r2, 0
- bl GetStringWidth
- adds r4, r0, 0
- movs r0, 0xC0
- str r0, [sp]
- movs r0, 0x10
- str r0, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillWindowPixelRect
- movs r0, 0x44
- negs r0, r0
- adds r2, r0, 0
- subs r2, r4
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- ldr r0, _0812D170 @ =gUnknown_845F5E0
- str r0, [sp, 0x8]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0xC]
- str r5, [sp, 0x10]
- movs r0, 0x1
- movs r1, 0
- movs r3, 0
- bl AddTextPrinterParametrized2
- movs r0, 0x1
- bl sub_812CEE0
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D164: .4byte gUnknown_841E5A4
-_0812D168: .4byte gUnknown_841E5D2
-_0812D16C: .4byte gUnknown_841E5B9
-_0812D170: .4byte gUnknown_845F5E0
- thumb_func_end sub_812D0F4
-
- thumb_func_start sub_812D174
-sub_812D174: @ 812D174
- push {r4,lr}
- movs r4, 0
-_0812D178:
- ldr r0, _0812D1A0 @ =gUnknown_203B0FC
- ldr r0, [r0]
- adds r0, 0x1D
- adds r0, r4
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0812D1A4 @ =gSprites
- adds r0, r1
- bl DestroySprite
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _0812D178
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D1A0: .4byte gUnknown_203B0FC
-_0812D1A4: .4byte gSprites
- thumb_func_end sub_812D174
-
thumb_func_start sub_812D1A8
sub_812D1A8: @ 812D1A8
push {r4-r7,lr}
diff --git a/src/fame_checker.c b/src/fame_checker.c
index bb2fe29b5..ed7544d98 100644
--- a/src/fame_checker.c
+++ b/src/fame_checker.c
@@ -3,6 +3,8 @@
#include "sprite.h"
#include "bg.h"
#include "graphics.h"
+#include "battle_setup.h"
+#include "menu.h"
#include "new_menu_helpers.h"
#include "item_menu.h"
#include "list_menu.h"
@@ -98,9 +100,13 @@ void sub_812E178(u8 a0, s16 a1);
void sub_812E4A4(u8 a0);
extern const u8 gUnknown_84181E4[];
+extern const u8 gUnknown_841E5A4[];
+extern const u8 gUnknown_841E5B9[];
+extern const u8 gUnknown_841E5D2[];
extern const u16 gUnknown_845C600[];
extern const u8 *const gUnknown_845F63C[];
+extern const struct TextColor gUnknown_845F5E0;
extern const u8 *const gUnknown_845F6BC[];
extern const struct BgTemplate gUnknown_845FBF4[4];
extern const struct SpriteSheet gUnknown_845FB9C[];
@@ -558,3 +564,40 @@ void sub_812D094(u8 windowId)
CopyWindowToVram(windowId, 2);
RemoveWindow(windowId);
}
+
+u8 sub_812D0C0(u8 a0)
+{
+ if (HasTrainerAlreadyBeenFought(0x15e) == TRUE)
+ {
+ if (a0 == 9)
+ return 15;
+ if (a0 > 9)
+ return a0 - 1;
+ }
+ return a0;
+}
+
+void sub_812D0F4(u8 a0)
+{
+ const u8 * r5 = gUnknown_841E5A4;
+ s32 width;
+ if (a0 != 0)
+ {
+ r5 = gUnknown_841E5D2;
+ if (a0 == 1)
+ r5 = gUnknown_841E5B9;
+ }
+ width = GetStringWidth(0, r5, 0);
+ FillWindowPixelRect(1, 0x00, 0, 0, 0xc0, 0x10);
+ AddTextPrinterParametrized2(1, 0, 188 - width, 0, 0, 2, &gUnknown_845F5E0, -1, r5);
+ sub_812CEE0(1);
+}
+
+void sub_812D174(void)
+{
+ u8 r4;
+ for (r4 = 0; r4 < 6; r4++)
+ {
+ DestroySprite(&gSprites[gUnknown_203B0FC->unk_1D[r4]]);
+ }
+}