through sub_812D174

This commit is contained in:
PikalaxALT 2018-11-24 23:41:08 -05:00
parent 8f9ec93326
commit b09bbc65be
2 changed files with 43 additions and 121 deletions

View File

@ -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}

View File

@ -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]]);
}
}