mirror of
https://github.com/pret/pokepinballrs.git
synced 2026-04-26 08:49:23 -05:00
sub_350F0
This commit is contained in:
parent
f15647db15
commit
0d91298c28
|
|
@ -5,101 +5,3 @@
|
|||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_350F0
|
||||
sub_350F0: @ 0x080350F0
|
||||
push {r4, r5, lr}
|
||||
ldr r5, _08035118 @ =gCurrentPinballGame
|
||||
ldr r0, [r5]
|
||||
movs r1, #0x88
|
||||
lsls r1, r1, #5
|
||||
adds r0, r0, r1
|
||||
movs r2, #0
|
||||
movs r1, #1
|
||||
strb r1, [r0]
|
||||
ldr r3, [r5]
|
||||
movs r4, #0x17
|
||||
ldrsb r4, [r3, r4]
|
||||
cmp r4, #1
|
||||
beq _08035138
|
||||
cmp r4, #1
|
||||
bgt _0803511C
|
||||
cmp r4, #0
|
||||
beq _08035122
|
||||
b _080351A0
|
||||
.align 2, 0
|
||||
_08035118: .4byte gCurrentPinballGame
|
||||
_0803511C:
|
||||
cmp r4, #2
|
||||
beq _08035164
|
||||
b _080351A0
|
||||
_08035122:
|
||||
movs r0, #0x41
|
||||
strh r0, [r3, #0x18]
|
||||
strb r1, [r3, #0x17]
|
||||
ldr r1, _08035134 @ =gMain
|
||||
ldrh r0, [r1, #0x38]
|
||||
movs r0, #0x9f
|
||||
strh r0, [r1, #0x38]
|
||||
b _080351A0
|
||||
.align 2, 0
|
||||
_08035134: .4byte gMain
|
||||
_08035138:
|
||||
ldrh r0, [r3, #0x18]
|
||||
cmp r0, #0
|
||||
beq _080351A0
|
||||
subs r0, #1
|
||||
strh r0, [r3, #0x18]
|
||||
ldr r2, _08035160 @ =gMain
|
||||
ldrh r0, [r3, #0x18]
|
||||
lsrs r0, r0, #2
|
||||
movs r1, #0x10
|
||||
subs r1, r1, r0
|
||||
ldrh r0, [r2, #0x3c]
|
||||
strh r1, [r2, #0x3c]
|
||||
ldrh r0, [r3, #0x18]
|
||||
cmp r0, #0
|
||||
bne _080351A0
|
||||
ldrb r0, [r3, #0x17]
|
||||
adds r0, #1
|
||||
strb r0, [r3, #0x17]
|
||||
b _080351A0
|
||||
.align 2, 0
|
||||
_08035160: .4byte gMain
|
||||
_08035164:
|
||||
ldrh r0, [r3, #0x18]
|
||||
cmp r0, #0x1d
|
||||
bhi _08035170
|
||||
adds r0, #1
|
||||
strh r0, [r3, #0x18]
|
||||
b _080351A0
|
||||
_08035170:
|
||||
movs r0, #0
|
||||
strh r2, [r3, #0x18]
|
||||
strb r0, [r3, #0x17]
|
||||
ldr r1, _08035194 @ =gMain
|
||||
movs r3, #0xe9
|
||||
lsls r3, r3, #3
|
||||
adds r0, r1, r3
|
||||
strh r2, [r0]
|
||||
subs r3, #0xb8
|
||||
adds r0, r1, r3
|
||||
strh r2, [r0]
|
||||
ldrb r0, [r1, #5]
|
||||
ldrb r1, [r1, #4]
|
||||
cmp r0, r1
|
||||
beq _08035198
|
||||
bl sub_357B8
|
||||
b _080351A0
|
||||
.align 2, 0
|
||||
_08035194: .4byte gMain
|
||||
_08035198:
|
||||
bl ResetSomeGraphicsRelatedStuff
|
||||
ldr r0, [r5]
|
||||
strb r4, [r0, #0x1d]
|
||||
_080351A0:
|
||||
pop {r4, r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
|
||||
.align 2, 0
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -582,7 +582,7 @@ extern void sub_34450();
|
|||
extern void sub_350F0();
|
||||
extern void sub_351A8();
|
||||
extern void sub_356A0();
|
||||
//extern ? sub_357B8();
|
||||
extern void sub_357B8(void);
|
||||
//extern ? sub_35860();
|
||||
//extern ? sub_35AA4();
|
||||
//extern ? sub_35D54();
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ struct PinballGame
|
|||
/*0x014*/ s8 unk14;
|
||||
/*0x015*/ s8 unk15;
|
||||
/*0x016*/ s8 unk16;
|
||||
/*0x017*/ u8 unk17;
|
||||
/*0x017*/ s8 unk17;
|
||||
/*0x018*/ u16 unk18;
|
||||
/*0x01A*/ s8 unk1A;
|
||||
/*0x01B*/ u8 unk1B;
|
||||
|
|
|
|||
|
|
@ -47,6 +47,50 @@ extern const u16 gUnknown_086B9AB8[][2][3];
|
|||
extern const u8 gUnknown_0845588C[][0x100];
|
||||
|
||||
|
||||
void sub_350F0(void)
|
||||
{
|
||||
gCurrentPinballGame->unk1100 = 1;
|
||||
switch (gCurrentPinballGame->unk17)
|
||||
{
|
||||
case 0:
|
||||
gCurrentPinballGame->unk18 = 65;
|
||||
gCurrentPinballGame->unk17 = 1;
|
||||
gMain.blendControl = 0x9F;
|
||||
break;
|
||||
case 1:
|
||||
if (gCurrentPinballGame->unk18)
|
||||
{
|
||||
gCurrentPinballGame->unk18--;
|
||||
gMain.blendBrightness = 16 - gCurrentPinballGame->unk18 / 4;
|
||||
if (gCurrentPinballGame->unk18 == 0)
|
||||
gCurrentPinballGame->unk17++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (gCurrentPinballGame->unk18 < 30)
|
||||
{
|
||||
gCurrentPinballGame->unk18++;
|
||||
}
|
||||
else
|
||||
{
|
||||
gCurrentPinballGame->unk18 = 0;
|
||||
gCurrentPinballGame->unk17 = 0;
|
||||
gMain.spriteGroups[6].available = 0;
|
||||
gMain.spriteGroups[5].available = 0;
|
||||
if (gMain.unk5 != gMain.selectedField)
|
||||
{
|
||||
sub_357B8();
|
||||
}
|
||||
else
|
||||
{
|
||||
ResetSomeGraphicsRelatedStuff();
|
||||
gCurrentPinballGame->unk1D = 2;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_351A8(void)
|
||||
{
|
||||
s16 i;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user