mirror of https://github.com/zeldaret/tmc.git
				
				
				
			Match sub_0806A26C
This commit is contained in:
		
							parent
							
								
									688508b1af
								
							
						
					
					
						commit
						9cb81ae723
					
				| 
						 | 
				
			
			@ -1,43 +0,0 @@
 | 
			
		|||
	.include "asm/macros.inc"
 | 
			
		||||
 | 
			
		||||
	.include "constants/constants.inc"
 | 
			
		||||
 | 
			
		||||
	.syntax unified
 | 
			
		||||
 | 
			
		||||
	.text
 | 
			
		||||
 | 
			
		||||
	push {r4, r5, lr}
 | 
			
		||||
	adds r5, r0, #0
 | 
			
		||||
	movs r0, #0xf
 | 
			
		||||
	movs r1, #0x2f
 | 
			
		||||
	movs r2, #0
 | 
			
		||||
	bl CreateObject
 | 
			
		||||
	adds r4, r0, #0
 | 
			
		||||
	cmp r4, #0
 | 
			
		||||
	beq _0806A2AE
 | 
			
		||||
	adds r0, r5, #0
 | 
			
		||||
	adds r1, r4, #0
 | 
			
		||||
	bl PositionEntityOnTop
 | 
			
		||||
	bl Random
 | 
			
		||||
	adds r5, r0, #0
 | 
			
		||||
	ldr r2, _0806A2B0 @ =gUnk_081121DC
 | 
			
		||||
	movs r1, #7
 | 
			
		||||
	ands r0, r1
 | 
			
		||||
	adds r0, r0, r2
 | 
			
		||||
	ldrb r0, [r0]
 | 
			
		||||
	adds r3, r4, #0
 | 
			
		||||
	adds r3, #0x62
 | 
			
		||||
	strb r0, [r3]
 | 
			
		||||
	lsrs r0, r5, #8
 | 
			
		||||
	ands r0, r1
 | 
			
		||||
	adds r0, r0, r2
 | 
			
		||||
	ldrb r0, [r0]
 | 
			
		||||
	subs r0, #8
 | 
			
		||||
	adds r1, r4, #0
 | 
			
		||||
	adds r1, #0x63
 | 
			
		||||
	strb r0, [r1]
 | 
			
		||||
_0806A2AE:
 | 
			
		||||
	pop {r4, r5, pc}
 | 
			
		||||
	.align 2, 0
 | 
			
		||||
_0806A2B0: .4byte gUnk_081121DC
 | 
			
		||||
    .syntax divided
 | 
			
		||||
| 
						 | 
				
			
			@ -41,20 +41,21 @@ void sub_0806A234(Entity* this) {
 | 
			
		|||
 | 
			
		||||
extern u8 gUnk_081121DC[];
 | 
			
		||||
 | 
			
		||||
NONMATCH("asm/non_matching/syrup/sub_0806A26C.inc", void sub_0806A26C(Entity* this)) {
 | 
			
		||||
void sub_0806A26C(Entity* this) {
 | 
			
		||||
    u8 unk;
 | 
			
		||||
    u32 uVar2;
 | 
			
		||||
    u8* ptr;
 | 
			
		||||
    u32 uVar2, uVar1;
 | 
			
		||||
    Entity* pEVar1;
 | 
			
		||||
    pEVar1 = CreateObject(SPECIAL_FX, 0x2f, 0);
 | 
			
		||||
    if (pEVar1 != NULL) {
 | 
			
		||||
        PositionEntityOnTop(this, pEVar1);
 | 
			
		||||
        if (uVar2 = Random(), uVar2) {
 | 
			
		||||
            unk = -unk; // wtf?!
 | 
			
		||||
        }
 | 
			
		||||
        pEVar1->spriteOffsetX = (u8)gUnk_081121DC[uVar2 & 7];
 | 
			
		||||
        pEVar1->spriteOffsetY = (u8)gUnk_081121DC[(uVar2 / 256) & 7] - 8;
 | 
			
		||||
        uVar2 = uVar1 = Random();
 | 
			
		||||
        ptr = gUnk_081121DC;
 | 
			
		||||
        pEVar1->spriteOffsetX = (u8)ptr[uVar2 & 7];
 | 
			
		||||
        uVar1 /= 256;
 | 
			
		||||
        uVar1 &= 7;
 | 
			
		||||
        pEVar1->spriteOffsetY = (u8)ptr[uVar1] - 8;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
END_NONMATCH
 | 
			
		||||
 | 
			
		||||
ASM_FUNC("asm/non_matching/syrup/Syrup_Head.inc", void Syrup_Head(Entity* this))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue