mirror of
https://github.com/zeldaret/tmc
synced 2026-09-01 09:52:51 -04:00
Name CreateProjectile functions
This commit is contained in:
@@ -71,7 +71,7 @@ sub_0803E580: @ 0x0803E580
|
||||
adds r0, r5, #0
|
||||
movs r1, #0x19
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
cmp r0, #0
|
||||
beq _0803E5E4
|
||||
str r5, [r0, #0x50]
|
||||
|
||||
+1
-1
@@ -344,7 +344,7 @@ _0803C46C:
|
||||
lsrs r2, r2, #0x19
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xd
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _0803C49A
|
||||
|
||||
@@ -261,7 +261,7 @@ _08045D60:
|
||||
adds r0, r4, #0
|
||||
movs r1, #4
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08045DF8
|
||||
|
||||
+3
-3
@@ -1682,13 +1682,13 @@ _0804A982:
|
||||
mov sl, r5
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
|
||||
thumb_func_start sub_0804A98C
|
||||
sub_0804A98C: @ 0x0804A98C
|
||||
thumb_func_start CreateProjectileWithParent
|
||||
CreateProjectileWithParent: @ 0x0804A98C
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r0, #0
|
||||
adds r0, r1, #0
|
||||
adds r5, r2, #0
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _0804A9A8
|
||||
|
||||
+4
-4
@@ -333,7 +333,7 @@ sub_0805E5C0: @ 0x0805E5C0
|
||||
bl sub_0805E428
|
||||
bl ClearHitboxList
|
||||
bl sub_0806F0A4
|
||||
ldr r1, _0805E5F4 @ =gUnk_03005F40
|
||||
ldr r1, _0805E5F4 @ =_UpdateEntities
|
||||
movs r0, #0
|
||||
bl _call_via_r1
|
||||
bl ClearAllDeletedEntities
|
||||
@@ -341,18 +341,18 @@ sub_0805E5C0: @ 0x0805E5C0
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0805E5F0: .4byte gRoomVars
|
||||
_0805E5F4: .4byte gUnk_03005F40
|
||||
_0805E5F4: .4byte _UpdateEntities
|
||||
|
||||
thumb_func_start sub_0805E5F8
|
||||
sub_0805E5F8: @ 0x0805E5F8
|
||||
push {lr}
|
||||
ldr r1, _0805E608 @ =gUnk_03005F40
|
||||
ldr r1, _0805E608 @ =_UpdateEntities
|
||||
movs r0, #1
|
||||
bl _call_via_r1
|
||||
bl ClearAllDeletedEntities
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0805E608: .4byte gUnk_03005F40
|
||||
_0805E608: .4byte _UpdateEntities
|
||||
|
||||
thumb_func_start EraseAllEntities
|
||||
EraseAllEntities: @ 0x0805E60C
|
||||
|
||||
+2
-2
@@ -411,8 +411,8 @@ _080A7EDC:
|
||||
_080A7EDE:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A7EE0
|
||||
sub_080A7EE0: @ 0x080A7EE0
|
||||
thumb_func_start CreateProjectile
|
||||
CreateProjectile: @ 0x080A7EE0
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
bl GetEmptyEntity
|
||||
|
||||
+1
-1
@@ -262,7 +262,7 @@ sub_0803D058: @ 0x0803D058
|
||||
adds r4, r0, #0
|
||||
movs r1, #0x16
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
beq _0803D0AE
|
||||
|
||||
+1
-1
@@ -279,7 +279,7 @@ _080484BC:
|
||||
ands r0, r1
|
||||
strb r0, [r3]
|
||||
movs r0, #0x24
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _080484E6
|
||||
|
||||
+2
-2
@@ -139,7 +139,7 @@ _08049144:
|
||||
bl sub_0807B7D8
|
||||
_0804916E:
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _080491E4
|
||||
@@ -560,7 +560,7 @@ _0804948C:
|
||||
cmp r0, #0
|
||||
beq _080494B2
|
||||
movs r0, #0x23
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _080494B2
|
||||
|
||||
+3
-3
@@ -1838,7 +1838,7 @@ _0802DD74:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xa
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
str r1, [r4, #0x54]
|
||||
cmp r1, #0
|
||||
@@ -1985,7 +1985,7 @@ _0802DE7E:
|
||||
bne _0802DEC4
|
||||
adds r0, r5, #0
|
||||
movs r1, #0xa
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
str r1, [r5, #0x54]
|
||||
cmp r1, #0
|
||||
@@ -2711,7 +2711,7 @@ _0802E40C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xa
|
||||
movs r2, #3
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
_0802E422:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802E518
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ sub_0804614C: @ 0x0804614C
|
||||
cmp r0, #0x3d
|
||||
bhi _08046244
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r1, r0, #0
|
||||
movs r4, #0
|
||||
strb r4, [r1, #0xa]
|
||||
|
||||
+4
-3
@@ -659,6 +659,7 @@ UpdateEntities: @ 0x080B21B0
|
||||
ldr r8, [fp, #4]
|
||||
ldr r0, [fp, #8]
|
||||
add pc, pc, #0x60 @ =_080B2230
|
||||
@ UpdateEntities starts here
|
||||
ldr r1, _080B2274 @ =gUnk_080026A4
|
||||
add r1, r1, r0, lsl #4
|
||||
push {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
||||
@@ -682,12 +683,12 @@ _080B21FC:
|
||||
ldr r1, [sl, r1, lsl #2]
|
||||
mov r0, r4
|
||||
mov lr, pc
|
||||
bx r1
|
||||
bx r1 @ Jump to address stored in r1
|
||||
_080B2224:
|
||||
ldr r0, [fp, #8]
|
||||
cmp r0, r4
|
||||
bleq sub_080B1C54
|
||||
_080B2230:
|
||||
_080B2230: @ jumped here if ClearAndUpdateEntities
|
||||
ldr r4, [r0, #4]
|
||||
b _080B21FC
|
||||
_080B2238:
|
||||
@@ -695,7 +696,7 @@ _080B2238:
|
||||
str r0, [fp, #8]
|
||||
pop {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
||||
bx lr
|
||||
_080B2248: .4byte DeleteThisEntity
|
||||
_080B2248: .4byte DeleteThisEntity @ 0x3005fbc
|
||||
_080B224C: .4byte PlayerUpdate
|
||||
_080B2250: .4byte DeleteThisEntity
|
||||
_080B2254: .4byte EnemyUpdate
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
b _08034B9A
|
||||
_08034B58:
|
||||
movs r0, #0xe
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
beq _08034B9A
|
||||
|
||||
@@ -1,134 +0,0 @@
|
||||
.syntax unified
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, sb
|
||||
mov r6, r8
|
||||
push {r6, r7}
|
||||
adds r6, r0, #0
|
||||
ldrb r0, [r6, #0xb]
|
||||
cmp r0, #8
|
||||
bhi _080AA618
|
||||
ldr r0, _080AA5E8 @ =gUnk_08129FF8
|
||||
mov sb, r0
|
||||
movs r1, #0x2e
|
||||
ldrsh r2, [r6, r1]
|
||||
ldr r1, _080AA5EC @ =gRoomControls
|
||||
ldrh r0, [r1, #6]
|
||||
subs r2, r2, r0
|
||||
asrs r2, r2, #4
|
||||
movs r3, #0x3f
|
||||
ands r2, r3
|
||||
movs r4, #0x32
|
||||
ldrsh r0, [r6, r4]
|
||||
ldrh r1, [r1, #8]
|
||||
subs r0, r0, r1
|
||||
asrs r0, r0, #4
|
||||
ands r0, r3
|
||||
lsls r0, r0, #6
|
||||
orrs r2, r0
|
||||
ldrb r0, [r6, #0xb]
|
||||
add r0, sb
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
adds r7, r2, r0
|
||||
movs r4, #0
|
||||
movs r5, #0
|
||||
movs r0, #0x38
|
||||
adds r0, r0, r6
|
||||
mov r8, r0
|
||||
_080AA58E:
|
||||
mov r1, sb
|
||||
adds r0, r1, r4
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
subs r0, r7, r0
|
||||
lsls r0, r0, #0x10
|
||||
lsrs r0, r0, #0x10
|
||||
mov r2, r8
|
||||
ldrb r1, [r2]
|
||||
bl sub_080002C8
|
||||
cmp r0, #0x3e
|
||||
bne _080AA5AC
|
||||
adds r5, #1
|
||||
_080AA5AC:
|
||||
adds r4, #1
|
||||
cmp r4, #8
|
||||
bls _080AA58E
|
||||
cmp r5, #8
|
||||
bne _080AA5F4
|
||||
movs r4, #0
|
||||
ldr r5, _080AA5F0 @ =gUnk_08129FD0
|
||||
_080AA5BA:
|
||||
ldrh r0, [r5]
|
||||
mov r3, sb
|
||||
adds r1, r3, r4
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #0x18
|
||||
asrs r1, r1, #0x18
|
||||
subs r1, r7, r1
|
||||
mov r3, r8
|
||||
ldrb r2, [r3]
|
||||
bl sub_0807B7D8
|
||||
adds r5, #2
|
||||
adds r4, #1
|
||||
cmp r4, #8
|
||||
bls _080AA5BA
|
||||
adds r0, r6, #0
|
||||
adds r1, r7, #0
|
||||
bl sub_080AA654
|
||||
ldrh r0, [r6, #0x24]
|
||||
bl SetFlag
|
||||
b _080AA648
|
||||
.align 2, 0
|
||||
_080AA5E8: .4byte gUnk_08129FF8
|
||||
_080AA5EC: .4byte gRoomControls
|
||||
_080AA5F0: .4byte gUnk_08129FD0
|
||||
_080AA5F4:
|
||||
ldr r2, _080AA614 @ =gUnk_08129FE4
|
||||
ldrb r1, [r6, #0xb]
|
||||
lsls r0, r1, #1
|
||||
adds r0, r0, r2
|
||||
ldrh r0, [r0]
|
||||
add r1, sb
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #0x18
|
||||
asrs r1, r1, #0x18
|
||||
subs r1, r7, r1
|
||||
mov r4, r8
|
||||
ldrb r2, [r4]
|
||||
bl sub_0807B7D8
|
||||
b _080AA648
|
||||
.align 2, 0
|
||||
_080AA614: .4byte gUnk_08129FE4
|
||||
_080AA618:
|
||||
movs r1, #0x2e
|
||||
ldrsh r0, [r6, r1]
|
||||
ldr r2, _080AA650 @ =gRoomControls
|
||||
ldrh r1, [r2, #6]
|
||||
subs r0, r0, r1
|
||||
asrs r0, r0, #4
|
||||
movs r3, #0x3f
|
||||
ands r0, r3
|
||||
movs r4, #0x32
|
||||
ldrsh r1, [r6, r4]
|
||||
ldrh r2, [r2, #8]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r3
|
||||
lsls r1, r1, #6
|
||||
orrs r0, r1
|
||||
adds r1, r6, #0
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl sub_0807BA8C
|
||||
ldrh r0, [r6, #0x24]
|
||||
bl SetFlag
|
||||
_080AA648:
|
||||
pop {r3, r4}
|
||||
mov r8, r3
|
||||
mov sb, r4
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_080AA650: .4byte gRoomControls
|
||||
.syntax divided
|
||||
@@ -1,49 +0,0 @@
|
||||
.syntax unified
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r0, #0
|
||||
ldr r0, [r6, #0x50]
|
||||
movs r5, #0
|
||||
adds r4, r0, #0
|
||||
adds r4, #0x20
|
||||
_080AB640:
|
||||
ldr r1, [r4]
|
||||
cmp r1, #0
|
||||
beq _080AB684
|
||||
adds r0, r6, #0
|
||||
bl sub_080177A0
|
||||
cmp r0, #0
|
||||
beq _080AB684
|
||||
ldr r1, [r4]
|
||||
ldrb r0, [r1, #0xc]
|
||||
cmp r0, #2
|
||||
bhi _080AB67A
|
||||
movs r0, #3
|
||||
strb r0, [r1, #0xc]
|
||||
ldr r1, [r4]
|
||||
movs r0, #0x1e
|
||||
strb r0, [r1, #0xe]
|
||||
ldr r2, [r4]
|
||||
ldrb r0, [r2, #0x18]
|
||||
movs r3, #4
|
||||
rsbs r3, r3, #0
|
||||
adds r1, r3, #0
|
||||
ands r0, r1
|
||||
strb r0, [r2, #0x18]
|
||||
ldr r0, [r4]
|
||||
movs r1, #0x45
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
_080AB67A:
|
||||
adds r0, r6, #0
|
||||
bl DeleteEntity
|
||||
movs r0, #1
|
||||
b _080AB68E
|
||||
_080AB684:
|
||||
adds r4, #4
|
||||
adds r5, #1
|
||||
cmp r5, #3
|
||||
bls _080AB640
|
||||
movs r0, #0
|
||||
_080AB68E:
|
||||
pop {r4, r5, r6, pc}
|
||||
.syntax divided
|
||||
@@ -12,7 +12,7 @@
|
||||
movs r0, #0x10
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #0x21
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _080AC23C
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
movs r0, #0x11
|
||||
strb r0, [r1]
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r6, r0, #0
|
||||
ldrb r0, [r5, #0xa]
|
||||
strb r0, [r6, #0xa]
|
||||
@@ -30,7 +30,7 @@
|
||||
strb r0, [r1]
|
||||
str r6, [r5, #0x54]
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r7, r0, #0
|
||||
ldrb r0, [r5, #0xa]
|
||||
strb r0, [r7, #0xa]
|
||||
@@ -46,7 +46,7 @@
|
||||
strb r1, [r0]
|
||||
str r7, [r6, #0x54]
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
ldrb r1, [r5, #0xa]
|
||||
strb r1, [r0, #0xa]
|
||||
movs r1, #3
|
||||
@@ -79,7 +79,7 @@ _080AC678:
|
||||
movs r0, #0xf
|
||||
strb r0, [r1]
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r6, r0, #0
|
||||
ldrb r0, [r5, #0xa]
|
||||
strb r0, [r6, #0xa]
|
||||
@@ -95,7 +95,7 @@ _080AC678:
|
||||
strb r1, [r0]
|
||||
str r6, [r5, #0x54]
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r7, r0, #0
|
||||
ldrb r0, [r5, #0xa]
|
||||
strb r0, [r7, #0xa]
|
||||
@@ -112,7 +112,7 @@ _080AC678:
|
||||
str r7, [r6, #0x54]
|
||||
_080AC6C8:
|
||||
movs r0, #0x22
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r6, r0, #0
|
||||
ldrb r0, [r5, #0xa]
|
||||
strb r0, [r6, #0xa]
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@ _0809E372:
|
||||
movs r6, #0xe
|
||||
_0809E392:
|
||||
movs r0, #0x17
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
strb r6, [r0, #0xe]
|
||||
str r4, [r0, #0x50]
|
||||
adds r6, #0xc
|
||||
|
||||
+1
-1
@@ -92,7 +92,7 @@ sub_0809F1B0: @ 0x0809F1B0
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
movs r0, #0x1b
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
beq _0809F21E
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ ObjectA5: @ 0x0809F8A4
|
||||
movs r5, #0
|
||||
_0809F8B6:
|
||||
movs r0, #0x1d
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r4, r0, #0
|
||||
cmp r5, #0
|
||||
bne _0809F8C6
|
||||
|
||||
+4
-4
@@ -2256,7 +2256,7 @@ _08035F16:
|
||||
adds r0, r5, #0
|
||||
movs r1, #0xf
|
||||
movs r2, #3
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
_08035F48:
|
||||
ldr r1, _08035F78 @ =gUnk_080CF0C4
|
||||
ldrb r0, [r5, #0xd]
|
||||
@@ -2847,7 +2847,7 @@ sub_08036390: @ 0x08036390
|
||||
adds r4, r0, #0
|
||||
movs r1, #0xf
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
str r0, [r4, #0x54]
|
||||
cmp r0, #0
|
||||
beq _080363B4
|
||||
@@ -3277,7 +3277,7 @@ _080366D4:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xf
|
||||
movs r2, #2
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
str r0, [r4, #0x54]
|
||||
cmp r0, #0
|
||||
beq _08036706
|
||||
@@ -3323,7 +3323,7 @@ sub_0803670C: @ 0x0803670C
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xf
|
||||
movs r2, #3
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
_08036746:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x76
|
||||
|
||||
+1
-1
@@ -177,7 +177,7 @@ sub_08037D54: @ 0x08037D54
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _08037E0C
|
||||
|
||||
@@ -122,7 +122,7 @@ sub_08038984: @ 0x08038984
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
movs r0, #0x13
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r6, r0, #0
|
||||
cmp r6, #0
|
||||
beq _080389E6
|
||||
|
||||
+4
-4
@@ -142,7 +142,7 @@ _08039390:
|
||||
adds r0, r5, #0
|
||||
movs r1, #0x10
|
||||
movs r2, #1
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _080393DC
|
||||
@@ -258,7 +258,7 @@ sub_08039470: @ 0x08039470
|
||||
bne _08039494
|
||||
movs r1, #0x10
|
||||
movs r2, #1
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _0803949C
|
||||
@@ -1007,7 +1007,7 @@ sub_08039A20: @ 0x08039A20
|
||||
adds r4, r0, #0
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08039A44
|
||||
@@ -1107,7 +1107,7 @@ sub_08039AD4: @ 0x08039AD4
|
||||
ldrb r2, [r4, #0xb]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x10
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08039B20
|
||||
|
||||
+1
-1
@@ -1451,7 +1451,7 @@ sub_08042FD8: @ 0x08042FD8
|
||||
cmp r0, #0
|
||||
beq _08043018
|
||||
movs r0, #0x20
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _08043046
|
||||
|
||||
@@ -812,7 +812,7 @@ _0803D6C8:
|
||||
ldrb r2, [r5]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1a
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0803D6EE
|
||||
@@ -1041,7 +1041,7 @@ _0803D870:
|
||||
adds r0, r5, #0
|
||||
movs r1, #0x18
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _0803D8EE
|
||||
|
||||
@@ -906,7 +906,7 @@ _0803FE34:
|
||||
ldrb r2, [r4, #0xf]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1f
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
_0803FE46:
|
||||
ldrb r0, [r4, #0xf]
|
||||
cmp r0, #0
|
||||
@@ -1015,7 +1015,7 @@ _0803FEFC:
|
||||
ldrb r2, [r4, #0xf]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1f
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
_0803FF14:
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #5
|
||||
@@ -1033,7 +1033,7 @@ _0803FF24:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1f
|
||||
movs r2, #2
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0803FF74
|
||||
@@ -1137,7 +1137,7 @@ _0803FFE4:
|
||||
ldrb r2, [r4, #0xf]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1f
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
_0803FFFC:
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #5
|
||||
@@ -1155,7 +1155,7 @@ _0804000C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1f
|
||||
movs r2, #2
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08040062
|
||||
|
||||
+1
-1
@@ -2160,7 +2160,7 @@ sub_080422C0: @ 0x080422C0
|
||||
cmp r0, r4
|
||||
bne _08042306
|
||||
movs r0, #0x21
|
||||
bl sub_080A7EE0
|
||||
bl CreateProjectile
|
||||
cmp r0, #0
|
||||
beq _08042354
|
||||
mov r1, r8
|
||||
|
||||
+2
-2
@@ -98,7 +98,7 @@ sub_0802FBB8: @ 0x0802FBB8
|
||||
adds r0, r4, #0
|
||||
movs r1, #8
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802FBF6
|
||||
@@ -248,7 +248,7 @@ _0802FCDE:
|
||||
adds r0, r4, #0
|
||||
movs r1, #8
|
||||
movs r2, #1
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _0802FDCA
|
||||
|
||||
+2
-2
@@ -125,7 +125,7 @@ sub_0802FE90: @ 0x0802FE90
|
||||
adds r0, r4, #0
|
||||
movs r1, #9
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802FECE
|
||||
@@ -275,7 +275,7 @@ _0802FFB6:
|
||||
adds r0, r4, #0
|
||||
movs r1, #9
|
||||
movs r2, #1
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _080300A2
|
||||
|
||||
+3
-3
@@ -151,7 +151,7 @@ _0802F5B8:
|
||||
adds r0, r4, #0
|
||||
movs r1, #7
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802F5D0
|
||||
@@ -300,7 +300,7 @@ _0802F6B6:
|
||||
adds r0, r4, #0
|
||||
movs r1, #7
|
||||
movs r2, #1
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _0802F7A2
|
||||
@@ -493,7 +493,7 @@ _0802F84C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #7
|
||||
movs r2, #1
|
||||
bl sub_0804A98C
|
||||
bl CreateProjectileWithParent
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
beq _0802F884
|
||||
|
||||
+3
-3
@@ -80,7 +80,7 @@ extern u32 sub_08049FA0(Entity*);
|
||||
extern u32 sub_08049FDC(Entity*, u32);
|
||||
extern u32 sub_080041A0(Entity*, Entity*, u32, u32);
|
||||
extern u32 sub_08049EE4(Entity*);
|
||||
extern Entity* sub_0804A98C(Entity*, u8, u8);
|
||||
extern Entity* CreateProjectileWithParent(Entity*, u8, u8);
|
||||
extern u32 GetBottleContaining(u32);
|
||||
extern void sub_08077E54(ItemBehavior*);
|
||||
extern void sub_080042BA(Entity*, u32);
|
||||
@@ -206,7 +206,7 @@ extern void sub_0802F45C(Entity*);
|
||||
extern u32 sub_0800419C(Entity*, Entity*, u32, u32);
|
||||
extern void sub_08004542(Entity*);
|
||||
extern void sub_08077B20();
|
||||
extern u32 sub_080040A8(Entity*);
|
||||
extern bool32 sub_080040A8(Entity*);
|
||||
extern u32 sub_08017850(Entity*);
|
||||
extern void sub_080809D4(void);
|
||||
extern void sub_08080CB4(Entity*);
|
||||
@@ -227,7 +227,7 @@ extern u32 sub_0805F7A0(u32);
|
||||
extern u32* sub_0805F25C(u32);
|
||||
extern u32 sub_080045DA(s32, s32);
|
||||
u32 sub_0806FCB8(Entity*, u32, u32, u32);
|
||||
extern Entity* sub_080A7EE0(u32);
|
||||
extern Entity* CreateProjectile(u32);
|
||||
extern void sub_080A1D70(Entity*, u32);
|
||||
extern void sub_0806F62C(Entity*, u32, u32);
|
||||
extern void sub_080A1ED0(u32, u32, u32);
|
||||
|
||||
@@ -277,8 +277,8 @@ SECTIONS {
|
||||
. = 0x00005D90; IntrMain = .;
|
||||
. = 0x00005E60; gUnk_03005E60 = .;
|
||||
. = 0x00005E98; gUnk_03005E98 = .;
|
||||
. = 0x00005F24; _EntUpdate = .;
|
||||
. = 0x00005F40; gUnk_03005F40 = .;
|
||||
. = 0x00005F24; _ClearAndUpdateEntities = .;
|
||||
. = 0x00005F40; _UpdateEntities = .;
|
||||
. = 0x00005FBC; gUnk_03005FBC = .;
|
||||
. = 0x00005FF0; gUnk_03005FF0 = .;
|
||||
. = 0x000060F0; gUnk_030060F0 = .;
|
||||
|
||||
@@ -138,7 +138,7 @@ void sub_08028A74(Entity* this) {
|
||||
unk = 1;
|
||||
sub_080290FC(this);
|
||||
if (this->frames.all & 1) {
|
||||
Entity* ent = sub_0804A98C(this, 4, 0);
|
||||
Entity* ent = CreateProjectileWithParent(this, 4, 0);
|
||||
if (ent != NULL) {
|
||||
ent->parent = this;
|
||||
ent->direction = this->direction;
|
||||
|
||||
+5
-5
@@ -224,7 +224,7 @@ void sub_08020F48(Entity* this) {
|
||||
|
||||
this->action = 14;
|
||||
sub_08021218(this, 13, uVar2 >> 3);
|
||||
pEVar3 = sub_0804A98C(this, 0, 1);
|
||||
pEVar3 = CreateProjectileWithParent(this, 0, 1);
|
||||
if (pEVar3) {
|
||||
pEVar3->parent = this;
|
||||
this->attachedEntity = pEVar3;
|
||||
@@ -270,7 +270,7 @@ void sub_08021010(Entity* this) {
|
||||
|
||||
void sub_08021038(Entity* this) {
|
||||
if (this->attachedEntity == NULL && this->frames.all) {
|
||||
Entity* pEVar2 = (Entity*)sub_0804A98C(this, 0, 0);
|
||||
Entity* pEVar2 = (Entity*)CreateProjectileWithParent(this, 0, 0);
|
||||
if (pEVar2) {
|
||||
pEVar2->parent = this;
|
||||
this->attachedEntity = pEVar2;
|
||||
@@ -309,7 +309,7 @@ void sub_080210E4(Entity* this) {
|
||||
Entity* ent;
|
||||
|
||||
this->frames.all &= ~1;
|
||||
ent = sub_0804A98C(this, 0, 2);
|
||||
ent = CreateProjectileWithParent(this, 0, 2);
|
||||
if (ent) {
|
||||
ent->parent = this;
|
||||
this->attachedEntity = ent;
|
||||
@@ -569,7 +569,7 @@ void sub_0802159C(Entity* this) {
|
||||
|
||||
this->frames.all = 0;
|
||||
this->damageType = 0x51;
|
||||
ent = sub_0804A98C(this, 0, 3);
|
||||
ent = CreateProjectileWithParent(this, 0, 3);
|
||||
if (ent) {
|
||||
ent->parent = this;
|
||||
this->attachedEntity = ent;
|
||||
@@ -590,7 +590,7 @@ void sub_08021600(Entity* this) {
|
||||
|
||||
this->frames.all = 0;
|
||||
this->damageType = 0x51;
|
||||
ent = sub_0804A98C(this, 0, 4);
|
||||
ent = CreateProjectileWithParent(this, 0, 4);
|
||||
if (ent) {
|
||||
ent->parent = this;
|
||||
this->attachedEntity = ent;
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ void sub_0803EB44(Entity* this) {
|
||||
Entity* pEVar1;
|
||||
|
||||
sub_0804A720(this);
|
||||
pEVar1 = sub_0804A98C(this, 0x19, 0);
|
||||
pEVar1 = CreateProjectileWithParent(this, 0x19, 0);
|
||||
if (pEVar1 != NULL) {
|
||||
pEVar1->parent = this;
|
||||
this->attachedEntity = pEVar1;
|
||||
|
||||
@@ -109,7 +109,7 @@ void GyorgMale(Entity* this) {
|
||||
}
|
||||
|
||||
void sub_08046898(Entity* this) {
|
||||
Entity* tmp = sub_080A7EE0(0x22);
|
||||
Entity* tmp = CreateProjectile(0x22);
|
||||
u32 tmp2;
|
||||
if (!tmp)
|
||||
return;
|
||||
@@ -402,7 +402,7 @@ void sub_08046EF4(Entity* this) {
|
||||
if ((--this->field_0xf & 0xFF) == 0) {
|
||||
Entity* tmp;
|
||||
this->field_0xf = (Random() & 0x38) + 0x78;
|
||||
tmp = sub_080A7EE0(0x23);
|
||||
tmp = CreateProjectile(0x23);
|
||||
if (tmp) {
|
||||
tmp->collisionLayer = 2;
|
||||
tmp->parent = this;
|
||||
@@ -426,7 +426,7 @@ void sub_08046F64(Entity* this) {
|
||||
if (--this->field_0x7c.HALF.HI == 0) {
|
||||
Entity* tmp;
|
||||
this->field_0x7c.HALF.HI = 0x78;
|
||||
tmp = sub_080A7EE0(0x23);
|
||||
tmp = CreateProjectile(0x23);
|
||||
if (tmp) {
|
||||
tmp->collisionLayer = 2;
|
||||
tmp->parent = this;
|
||||
|
||||
+1
-1
@@ -232,7 +232,7 @@ void sub_08032794(Entity* this) {
|
||||
void sub_080327C8(Entity* this) {
|
||||
Entity* child;
|
||||
|
||||
child = sub_0804A98C(this, 11, 0);
|
||||
child = CreateProjectileWithParent(this, 11, 0);
|
||||
if (child != NULL) {
|
||||
child->parent = this;
|
||||
this->attachedEntity = child;
|
||||
|
||||
+2
-2
@@ -117,7 +117,7 @@ void sub_0803C86C(Entity* this) {
|
||||
}
|
||||
|
||||
void Lakitu_Initialize(Entity* this) {
|
||||
Entity* cloud = sub_0804A98C(this, 17, 0);
|
||||
Entity* cloud = CreateProjectileWithParent(this, 17, 0);
|
||||
if (cloud == NULL) {
|
||||
return;
|
||||
}
|
||||
@@ -303,7 +303,7 @@ void Lakitu_SpawnLightning(Entity* this) {
|
||||
Entity* lightning;
|
||||
const OffsetCoords* offset;
|
||||
|
||||
lightning = sub_0804A98C(this, 18, 0);
|
||||
lightning = CreateProjectileWithParent(this, 18, 0);
|
||||
|
||||
if (lightning == NULL) {
|
||||
return;
|
||||
|
||||
@@ -779,7 +779,7 @@ NONMATCH("asm/non_matching/mazaal/sub_08034B38.inc", void sub_08034B38(Entity* t
|
||||
this->action = 3;
|
||||
InitializeAnimation(this, this->type + 3);
|
||||
} else {
|
||||
target = sub_080A7EE0(0xe);
|
||||
target = CreateProjectile(0xe);
|
||||
if (target != NULL) {
|
||||
target->type -= 2;
|
||||
if (target->type == 0) {
|
||||
|
||||
+1
-1
@@ -126,7 +126,7 @@ void Octorok_Move(Entity* this) {
|
||||
void Octorok_ShootNut(Entity* this) {
|
||||
GetNextFrame(this);
|
||||
if (this->frames.all & 1) {
|
||||
Entity* ent = sub_0804A98C(this, 1, 0);
|
||||
Entity* ent = CreateProjectileWithParent(this, 1, 0);
|
||||
if (ent) {
|
||||
const s8* off;
|
||||
ent->direction = this->direction;
|
||||
|
||||
+3
-3
@@ -170,7 +170,7 @@ void sub_080240B8(Entity* this) {
|
||||
Entity* ent;
|
||||
|
||||
this->field_0x82.HALF.HI = 0;
|
||||
ent = sub_0804A98C(this, 6, this->field_0x82.HALF.HI);
|
||||
ent = CreateProjectileWithParent(this, 6, this->field_0x82.HALF.HI);
|
||||
if (ent) {
|
||||
this->attachedEntity = ent;
|
||||
ent->parent = this;
|
||||
@@ -413,7 +413,7 @@ void sub_080244E8(Entity* this) {
|
||||
this->height.HALF.HI -= 0xe;
|
||||
this->field_0x78.HWORD -= 0xe;
|
||||
|
||||
ent = sub_0804A98C(this, 6, this->field_0x82.HALF.HI);
|
||||
ent = CreateProjectileWithParent(this, 6, this->field_0x82.HALF.HI);
|
||||
if (ent) {
|
||||
ent->parent = this;
|
||||
ent->height.HALF.HI += 0xe;
|
||||
@@ -436,7 +436,7 @@ void sub_080244E8(Entity* this) {
|
||||
this->height.HALF.HI -= 0xe;
|
||||
this->field_0x78.HWORD -= 0xe;
|
||||
|
||||
ent = sub_0804A98C(this, 6, this->field_0x82.HALF.HI);
|
||||
ent = CreateProjectileWithParent(this, 6, this->field_0x82.HALF.HI);
|
||||
if (ent) {
|
||||
ent->parent = this;
|
||||
ent->height.HALF.HI += 0xe;
|
||||
|
||||
@@ -94,7 +94,7 @@ void sub_08028314(Entity* this) {
|
||||
sub_08028604(this);
|
||||
}
|
||||
|
||||
pEVar2 = sub_080A7EE0(3);
|
||||
pEVar2 = CreateProjectile(3);
|
||||
if (pEVar2 != NULL) {
|
||||
pEVar2->parent = this;
|
||||
this->attachedEntity = pEVar2;
|
||||
|
||||
@@ -185,7 +185,7 @@ void sub_08044868(Entity* this) {
|
||||
if (*(u8*)&vaati->field_0x86 > 1) {
|
||||
u8 draw = this->spriteSettings.b.draw;
|
||||
if (draw == 1 && this->cutsceneBeh.HALF.LO == 0) {
|
||||
vaati = sub_0804A98C(this, 0x18, 0);
|
||||
vaati = CreateProjectileWithParent(this, 0x18, 0);
|
||||
if (vaati) {
|
||||
vaati->type2 = 1;
|
||||
vaati->parent = this;
|
||||
@@ -275,7 +275,7 @@ void sub_080449F8(Entity* this) {
|
||||
this->field_0x74.HALF.LO++;
|
||||
draw = this->spriteSettings.b.draw;
|
||||
if (draw) {
|
||||
vaati = sub_0804A98C(this, 0x1c, 0);
|
||||
vaati = CreateProjectileWithParent(this, 0x1c, 0);
|
||||
if (vaati) {
|
||||
vaati->y.HALF.HI += 4;
|
||||
vaati->parent = this;
|
||||
|
||||
+2
-2
@@ -48,11 +48,11 @@ typedef struct {
|
||||
|
||||
extern struct_03003DD0 gUnk_03003DD0;
|
||||
extern u32 _call_via_r0(u32*);
|
||||
extern u32 _EntUpdate;
|
||||
extern u32 _ClearAndUpdateEntities;
|
||||
|
||||
void DeleteThisEntity(void) {
|
||||
DeleteEntityAny(gUnk_03003DD0.field_0x8);
|
||||
_call_via_r0((u32*)&_EntUpdate);
|
||||
_call_via_r0((u32*)&_ClearAndUpdateEntities);
|
||||
}
|
||||
|
||||
void DeleteManager(OtherEntity*);
|
||||
|
||||
+1
-1
@@ -64,7 +64,7 @@ void sub_08063D44(Entity* this) {
|
||||
sub_0806EE04(this, gUnk_0810F6BC[this->type], 0);
|
||||
switch (this->type) {
|
||||
case 0 ... 3:
|
||||
ent = sub_080A7EE0(0xc);
|
||||
ent = CreateProjectile(0xc);
|
||||
ent->parent = this;
|
||||
ent->field_0xf = 0x3c;
|
||||
break;
|
||||
|
||||
@@ -91,7 +91,8 @@ void sub_080AA534(Entity* this) {
|
||||
UpdateSpriteForCollisionLayer(this);
|
||||
}
|
||||
|
||||
NONMATCH("asm/non_matching/projectile14/sub_080AA544.inc", void sub_080AA544(Entity* this)) {
|
||||
|
||||
void sub_080AA544(Entity* this) {
|
||||
u8* pbVar1;
|
||||
s32 iVar2;
|
||||
u32 uVar3;
|
||||
@@ -125,9 +126,7 @@ NONMATCH("asm/non_matching/projectile14/sub_080AA544.inc", void sub_080AA544(Ent
|
||||
SetFlag((u16)this->speed);
|
||||
} else {
|
||||
sub_0807B7D8(gUnk_08129FE4[this->type2],
|
||||
param -
|
||||
// TODO this array access is wrong
|
||||
*((s8*)gUnk_08129FE4 + this->type2),
|
||||
param - tmp[this->type2],
|
||||
this->collisionLayer);
|
||||
}
|
||||
} else {
|
||||
@@ -135,7 +134,6 @@ NONMATCH("asm/non_matching/projectile14/sub_080AA544.inc", void sub_080AA544(Ent
|
||||
SetFlag((u16)this->speed);
|
||||
}
|
||||
}
|
||||
END_NONMATCH
|
||||
|
||||
void sub_080AA654(Entity* this, u32 param) {
|
||||
EntityData* entityData;
|
||||
|
||||
@@ -101,7 +101,7 @@ void sub_080AADBC(Entity* this) {
|
||||
this->direction = GetFacingDirection(this, &gPlayerEntity);
|
||||
this->field_0x86.HALF.LO = 0;
|
||||
this->cutsceneBeh.HWORD = 300;
|
||||
entity = sub_080A7EE0(0x18);
|
||||
entity = CreateProjectile(0x18);
|
||||
if (entity != NULL) {
|
||||
entity->type = 1;
|
||||
entity->type2 = this->type2;
|
||||
|
||||
@@ -35,7 +35,7 @@ void sub_080AB074(Entity* this) {
|
||||
|
||||
this->height.HALF.HI += (s8)parent->field_0x7c.BYTES.byte3;
|
||||
if (parent->field_0x7a.HALF.HI != 0) {
|
||||
parent = sub_080A7EE0(0x19);
|
||||
parent = CreateProjectile(0x19);
|
||||
if (parent != NULL) {
|
||||
parent->type = 4;
|
||||
CopyPositionAndSpriteOffset(this, parent);
|
||||
@@ -49,13 +49,13 @@ bool32 sub_080AB12C(Entity* this) {
|
||||
if (gEntCount > 0x44) {
|
||||
return FALSE;
|
||||
}
|
||||
entity = sub_080A7EE0(0x19);
|
||||
entity = CreateProjectile(0x19);
|
||||
entity->type = 1;
|
||||
entity->parent = this;
|
||||
entity = sub_080A7EE0(0x19);
|
||||
entity = CreateProjectile(0x19);
|
||||
entity->type = 2;
|
||||
entity->parent = this;
|
||||
entity = sub_080A7EE0(0x19);
|
||||
entity = CreateProjectile(0x19);
|
||||
entity->type = 3;
|
||||
entity->parent = this;
|
||||
return TRUE;
|
||||
|
||||
@@ -15,6 +15,8 @@ extern void sub_080043A8(Entity*);
|
||||
extern void CreateItemOnGround(Entity*);
|
||||
extern void CreateChestSpawner(Entity*);
|
||||
|
||||
extern u32 sub_080177A0(Entity*, Entity*);
|
||||
|
||||
void Projectile1B(Entity* this) {
|
||||
gUnk_0812A58C[GetNextFunction(this)](this);
|
||||
}
|
||||
@@ -63,8 +65,6 @@ void sub_080AB5C4(Entity* this) {
|
||||
}
|
||||
|
||||
bool32 sub_080AB5F4(Entity* this) {
|
||||
u32 uVar1;
|
||||
|
||||
switch (sub_080043E8(this)) {
|
||||
case 1:
|
||||
CreateItemOnGround(this);
|
||||
@@ -79,4 +79,20 @@ bool32 sub_080AB5F4(Entity* this) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
ASM_FUNC("asm/non_matching/projectile1B/sub_080AB634.inc", bool32 sub_080AB634(Entity* this))
|
||||
bool32 sub_080AB634(Entity* this) {
|
||||
Entity** entities = ((Entity**)&this->parent->field_0x20);
|
||||
u32 i;
|
||||
for (i = 0; i <= 3; ++i) {
|
||||
if(entities[i] != NULL && (sub_080177A0(this, entities[i]) != 0)) {
|
||||
if (entities[i]->action < 3) {
|
||||
entities[i]->action = 3;
|
||||
entities[i]->actionDelay = 0x1e;
|
||||
entities[i]->spriteSettings.b.draw = 0;
|
||||
CreateFx(entities[i], 0x45, 0);
|
||||
}
|
||||
DeleteEntity(this);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ ASM_FUNC("asm/non_matching/projectile1C/sub_080AB758.inc", void sub_080AB758(Ent
|
||||
void sub_080AB844(Entity* this, s32 param_1, s32 param_2) {
|
||||
Entity* entity;
|
||||
|
||||
entity = sub_080A7EE0(0x1c);
|
||||
entity = CreateProjectile(0x1c);
|
||||
if (entity != NULL) {
|
||||
entity->type = 1;
|
||||
entity->actionDelay = param_1;
|
||||
|
||||
@@ -25,7 +25,7 @@ void sub_080AB8E8(Entity* this) {
|
||||
}
|
||||
InitializeAnimation(this, 0);
|
||||
if (this->type < 4) {
|
||||
entity = sub_080A7EE0(0x1d);
|
||||
entity = CreateProjectile(0x1d);
|
||||
entity->type = this->type + 1;
|
||||
entity->parent = this->parent;
|
||||
entity->attachedEntity = this;
|
||||
|
||||
@@ -139,20 +139,20 @@ NONMATCH("asm/non_matching/projectile22/sub_080AC5E4.inc", bool32 sub_080AC5E4(E
|
||||
return 0;
|
||||
}
|
||||
this->field_0x78.HALF.HI = 0x11;
|
||||
entity = sub_080A7EE0(0x22);
|
||||
entity = CreateProjectile(0x22);
|
||||
entity->type = this->type;
|
||||
entity->type2 = 1;
|
||||
entity->parent = this->parent;
|
||||
entity->field_0x78.HALF.HI = 0x12;
|
||||
this->attachedEntity = entity;
|
||||
entity2 = sub_080A7EE0(0x22);
|
||||
entity2 = CreateProjectile(0x22);
|
||||
entity2->type = this->type;
|
||||
entity2->type2 = 2;
|
||||
entity2->parent = this->parent;
|
||||
entity2->field_0x78.HALF.HI = 0x14;
|
||||
uVar3 = entity2->field_0x78.HALF.HI;
|
||||
entity->attachedEntity = entity2;
|
||||
entity3 = sub_080A7EE0(0x22);
|
||||
entity3 = CreateProjectile(0x22);
|
||||
entity3->type = this->type;
|
||||
entity3->type2 = 3;
|
||||
entity3->parent = this->parent;
|
||||
@@ -164,14 +164,14 @@ NONMATCH("asm/non_matching/projectile22/sub_080AC5E4.inc", bool32 sub_080AC5E4(E
|
||||
return 0;
|
||||
}
|
||||
this->field_0x78.HALF.HI = 0xf;
|
||||
entity = sub_080A7EE0(0x22);
|
||||
entity = CreateProjectile(0x22);
|
||||
entity->type = this->type;
|
||||
entity->type2 = 1;
|
||||
entity->parent = this->parent;
|
||||
entity->field_0x78.HALF.HI = 0x10;
|
||||
uVar3 = entity->field_0x78.HALF.HI;
|
||||
this->attachedEntity = entity;
|
||||
entity2 = sub_080A7EE0(0x22);
|
||||
entity2 = CreateProjectile(0x22);
|
||||
entity2->type = this->type;
|
||||
entity2->type2 = 2;
|
||||
entity2->parent = this->parent;
|
||||
@@ -179,7 +179,7 @@ NONMATCH("asm/non_matching/projectile22/sub_080AC5E4.inc", bool32 sub_080AC5E4(E
|
||||
entity2->field_0x78.HALF.HI = 0x20;
|
||||
entity->attachedEntity = entity2;
|
||||
}
|
||||
entity4 = sub_080A7EE0(0x22);
|
||||
entity4 = CreateProjectile(0x22);
|
||||
entity4->type = this->type;
|
||||
entity4->type2 = 4;
|
||||
entity4->parent = this->parent;
|
||||
|
||||
@@ -31,7 +31,7 @@ void ProjectileC(Entity* this) {
|
||||
} else {
|
||||
if (sub_080644C8(this) != 0) {
|
||||
if (((this->actionDelay++) & 3) == 0) {
|
||||
entity = sub_080A7EE0(0xc);
|
||||
entity = CreateProjectile(0xc);
|
||||
if (entity != NULL) {
|
||||
entity->type = 1;
|
||||
tmp = this->parent->field_0x3e;
|
||||
|
||||
@@ -133,7 +133,7 @@ void sub_080A976C(Entity* this) {
|
||||
return;
|
||||
}
|
||||
for (index = 0; index < 3; ++index) {
|
||||
this->attachedEntity = sub_0804A98C(this, 0xf, 1);
|
||||
this->attachedEntity = CreateProjectileWithParent(this, 0xf, 1);
|
||||
if (this->attachedEntity != NULL) {
|
||||
this->attachedEntity->parent = this->parent;
|
||||
this->attachedEntity->direction = this->direction + gUnk_08129ADC[index];
|
||||
|
||||
Reference in New Issue
Block a user