mirror of https://github.com/zeldaret/tmc.git
Merge branch 'master' of https://github.com/zeldaret/tmc
This commit is contained in:
commit
6e6e4d3180
|
@ -0,0 +1,255 @@
|
||||||
|
.include "asm/macros.inc"
|
||||||
|
|
||||||
|
.include "constants/constants.inc"
|
||||||
|
|
||||||
|
.syntax unified
|
||||||
|
|
||||||
|
.text
|
||||||
|
|
||||||
|
|
||||||
|
thumb_func_start Mask
|
||||||
|
Mask: @ 0x0809298C
|
||||||
|
push {lr}
|
||||||
|
ldr r2, _080929A0 @ =gUnk_081227A4
|
||||||
|
ldrb r1, [r0, #0xc]
|
||||||
|
lsls r1, r1, #2
|
||||||
|
adds r1, r1, r2
|
||||||
|
ldr r1, [r1]
|
||||||
|
bl _call_via_r1
|
||||||
|
pop {pc}
|
||||||
|
.align 2, 0
|
||||||
|
_080929A0: .4byte gUnk_081227A4
|
||||||
|
|
||||||
|
thumb_func_start sub_080929A4
|
||||||
|
sub_080929A4: @ 0x080929A4
|
||||||
|
push {r4, r5, r6, lr}
|
||||||
|
adds r5, r0, #0
|
||||||
|
ldrb r1, [r5, #0xb]
|
||||||
|
movs r6, #0xc0
|
||||||
|
adds r0, r6, #0
|
||||||
|
ands r0, r1
|
||||||
|
cmp r0, #0
|
||||||
|
beq _08092A08
|
||||||
|
adds r4, r5, #0
|
||||||
|
adds r4, #0x86
|
||||||
|
ldrh r0, [r4]
|
||||||
|
bl CheckFlags
|
||||||
|
cmp r0, #0
|
||||||
|
beq _08092A08
|
||||||
|
ldrb r0, [r5, #0xb]
|
||||||
|
adds r1, r6, #0
|
||||||
|
ands r1, r0
|
||||||
|
cmp r1, #0x40
|
||||||
|
beq _080929D2
|
||||||
|
cmp r1, #0x80
|
||||||
|
beq _08092A04
|
||||||
|
b _08092A08
|
||||||
|
_080929D2:
|
||||||
|
ldr r0, _080929F4 @ =gUnk_030010A0
|
||||||
|
ldrh r1, [r0, #0xa]
|
||||||
|
movs r0, #0xc1
|
||||||
|
lsls r0, r0, #1
|
||||||
|
cmp r1, r0
|
||||||
|
beq _080929EE
|
||||||
|
cmp r1, r0
|
||||||
|
blt _080929FC
|
||||||
|
ldr r0, _080929F8 @ =0x0000044F
|
||||||
|
cmp r1, r0
|
||||||
|
bgt _080929FC
|
||||||
|
subs r0, #2
|
||||||
|
cmp r1, r0
|
||||||
|
blt _080929FC
|
||||||
|
_080929EE:
|
||||||
|
bl DeleteThisEntity
|
||||||
|
b _08092A08
|
||||||
|
.align 2, 0
|
||||||
|
_080929F4: .4byte gUnk_030010A0
|
||||||
|
_080929F8: .4byte 0x0000044F
|
||||||
|
_080929FC:
|
||||||
|
ldrh r0, [r4]
|
||||||
|
bl ClearFlag
|
||||||
|
b _08092A08
|
||||||
|
_08092A04:
|
||||||
|
bl DeleteThisEntity
|
||||||
|
_08092A08:
|
||||||
|
movs r0, #1
|
||||||
|
strb r0, [r5, #0xc]
|
||||||
|
movs r0, #0xc0
|
||||||
|
lsls r0, r0, #9
|
||||||
|
str r0, [r5, #0x20]
|
||||||
|
bl Random
|
||||||
|
movs r1, #7
|
||||||
|
ands r0, r1
|
||||||
|
lsls r0, r0, #0xa
|
||||||
|
movs r2, #0x80
|
||||||
|
lsls r2, r2, #6
|
||||||
|
adds r1, r2, #0
|
||||||
|
adds r2, r5, #0
|
||||||
|
adds r2, #0x78
|
||||||
|
movs r3, #0
|
||||||
|
orrs r0, r1
|
||||||
|
strh r0, [r2]
|
||||||
|
ldrb r0, [r5, #0xe]
|
||||||
|
lsrs r0, r0, #1
|
||||||
|
strb r0, [r5, #0xf]
|
||||||
|
strb r3, [r5, #0xe]
|
||||||
|
ldrb r1, [r5, #0xb]
|
||||||
|
movs r0, #0x3f
|
||||||
|
ands r0, r1
|
||||||
|
strb r0, [r5, #0x1e]
|
||||||
|
movs r4, #0x2e
|
||||||
|
ldrsh r1, [r5, r4]
|
||||||
|
ldr r2, _08092A8C @ =gRoomControls
|
||||||
|
ldrh r0, [r2, #6]
|
||||||
|
subs r1, r1, r0
|
||||||
|
asrs r1, r1, #4
|
||||||
|
movs r3, #0x3f
|
||||||
|
ands r1, r3
|
||||||
|
movs r4, #0x32
|
||||||
|
ldrsh r0, [r5, r4]
|
||||||
|
ldrh r2, [r2, #8]
|
||||||
|
subs r0, r0, r2
|
||||||
|
asrs r0, r0, #4
|
||||||
|
ands r0, r3
|
||||||
|
lsls r0, r0, #6
|
||||||
|
orrs r1, r0
|
||||||
|
adds r4, r5, #0
|
||||||
|
adds r4, #0x7e
|
||||||
|
strh r1, [r4]
|
||||||
|
ldrh r0, [r4]
|
||||||
|
movs r1, #1
|
||||||
|
bl sub_080001DA
|
||||||
|
adds r1, r5, #0
|
||||||
|
adds r1, #0x7c
|
||||||
|
strh r0, [r1]
|
||||||
|
ldrh r0, [r4]
|
||||||
|
movs r1, #1
|
||||||
|
bl sub_080002E0
|
||||||
|
adds r1, r5, #0
|
||||||
|
adds r1, #0x7a
|
||||||
|
strh r0, [r1]
|
||||||
|
ldr r0, _08092A90 @ =0x00004022
|
||||||
|
ldrh r1, [r4]
|
||||||
|
movs r2, #1
|
||||||
|
bl SetTile
|
||||||
|
pop {r4, r5, r6, pc}
|
||||||
|
.align 2, 0
|
||||||
|
_08092A8C: .4byte gRoomControls
|
||||||
|
_08092A90: .4byte 0x00004022
|
||||||
|
|
||||||
|
thumb_func_start sub_08092A94
|
||||||
|
sub_08092A94: @ 0x08092A94
|
||||||
|
push {r4, r5, lr}
|
||||||
|
adds r4, r0, #0
|
||||||
|
ldr r2, _08092B08 @ =gLinkEntity
|
||||||
|
ldrb r0, [r2, #0xc]
|
||||||
|
cmp r0, #6
|
||||||
|
bne _08092B04
|
||||||
|
ldrb r0, [r2, #0x14]
|
||||||
|
cmp r0, #0
|
||||||
|
bne _08092B04
|
||||||
|
movs r1, #0x32
|
||||||
|
ldrsh r0, [r4, r1]
|
||||||
|
adds r0, #0x28
|
||||||
|
movs r3, #0x32
|
||||||
|
ldrsh r1, [r2, r3]
|
||||||
|
cmp r0, r1
|
||||||
|
blt _08092B04
|
||||||
|
movs r0, #0x2e
|
||||||
|
ldrsh r1, [r4, r0]
|
||||||
|
movs r3, #0x2e
|
||||||
|
ldrsh r0, [r2, r3]
|
||||||
|
subs r1, r1, r0
|
||||||
|
ldrb r0, [r4, #0xf]
|
||||||
|
cmp r1, r0
|
||||||
|
bge _08092B04
|
||||||
|
cmn r1, r0
|
||||||
|
ble _08092B04
|
||||||
|
adds r0, r4, #0
|
||||||
|
adds r0, #0x7c
|
||||||
|
ldrh r0, [r0]
|
||||||
|
adds r5, r4, #0
|
||||||
|
adds r5, #0x7e
|
||||||
|
ldrh r1, [r5]
|
||||||
|
movs r2, #1
|
||||||
|
bl SetTile
|
||||||
|
adds r0, r4, #0
|
||||||
|
adds r0, #0x7a
|
||||||
|
ldrh r0, [r0]
|
||||||
|
ldrh r1, [r5]
|
||||||
|
movs r2, #1
|
||||||
|
bl sub_08000148
|
||||||
|
movs r0, #2
|
||||||
|
strb r0, [r4, #0xc]
|
||||||
|
ldrh r0, [r4, #0x36]
|
||||||
|
subs r0, #0x20
|
||||||
|
strh r0, [r4, #0x36]
|
||||||
|
ldrh r0, [r4, #0x32]
|
||||||
|
adds r0, #0x20
|
||||||
|
strh r0, [r4, #0x32]
|
||||||
|
ldrb r1, [r4, #0x19]
|
||||||
|
movs r0, #0x3f
|
||||||
|
ands r0, r1
|
||||||
|
movs r1, #0x80
|
||||||
|
orrs r0, r1
|
||||||
|
strb r0, [r4, #0x19]
|
||||||
|
_08092B04:
|
||||||
|
pop {r4, r5, pc}
|
||||||
|
.align 2, 0
|
||||||
|
_08092B08: .4byte gLinkEntity
|
||||||
|
|
||||||
|
thumb_func_start sub_08092B0C
|
||||||
|
sub_08092B0C: @ 0x08092B0C
|
||||||
|
push {r4, lr}
|
||||||
|
adds r4, r0, #0
|
||||||
|
ldrb r0, [r4, #0xe]
|
||||||
|
cmp r0, #1
|
||||||
|
bne _08092B50
|
||||||
|
movs r0, #0
|
||||||
|
movs r1, #3
|
||||||
|
strb r1, [r4, #0xc]
|
||||||
|
strb r0, [r4, #0xe]
|
||||||
|
ldrb r0, [r4, #0xb]
|
||||||
|
movs r1, #0xc0
|
||||||
|
ands r1, r0
|
||||||
|
cmp r1, #0x40
|
||||||
|
beq _08092B32
|
||||||
|
cmp r1, #0x80
|
||||||
|
bne _08092B3C
|
||||||
|
movs r0, #0x72
|
||||||
|
bl sub_08004488
|
||||||
|
_08092B32:
|
||||||
|
adds r0, r4, #0
|
||||||
|
adds r0, #0x86
|
||||||
|
ldrh r0, [r0]
|
||||||
|
bl SetFlag
|
||||||
|
_08092B3C:
|
||||||
|
adds r0, r4, #0
|
||||||
|
movs r1, #5
|
||||||
|
movs r2, #0
|
||||||
|
bl CreateFx
|
||||||
|
adds r0, r4, #0
|
||||||
|
movs r1, #3
|
||||||
|
bl sub_0805457C
|
||||||
|
b _08092B6A
|
||||||
|
_08092B50:
|
||||||
|
adds r0, r4, #0
|
||||||
|
adds r0, #0x78
|
||||||
|
ldrh r1, [r0]
|
||||||
|
adds r0, r4, #0
|
||||||
|
bl sub_080044EC
|
||||||
|
movs r1, #0x36
|
||||||
|
ldrsh r0, [r4, r1]
|
||||||
|
cmp r0, #0
|
||||||
|
bne _08092B6A
|
||||||
|
ldrb r0, [r4, #0xe]
|
||||||
|
adds r0, #1
|
||||||
|
strb r0, [r4, #0xe]
|
||||||
|
_08092B6A:
|
||||||
|
pop {r4, pc}
|
||||||
|
|
||||||
|
thumb_func_start sub_08092B6C
|
||||||
|
sub_08092B6C: @ 0x08092B6C
|
||||||
|
push {lr}
|
||||||
|
bl DeleteThisEntity
|
||||||
|
pop {pc}
|
|
@ -1360,7 +1360,7 @@ gUnk_08122794:: @ 08122794
|
||||||
gUnk_0812279C:: @ 0812279C
|
gUnk_0812279C:: @ 0812279C
|
||||||
.incbin "baserom.gba", 0x12279C, 0x0000008
|
.incbin "baserom.gba", 0x12279C, 0x0000008
|
||||||
|
|
||||||
MaskActionFuncs:: @ 081227A4
|
gUnk_081227A4:: @ 081227A4
|
||||||
.incbin "baserom.gba", 0x1227A4, 0x0000010
|
.incbin "baserom.gba", 0x1227A4, 0x0000010
|
||||||
|
|
||||||
gUnk_081227B4:: @ 081227B4
|
gUnk_081227B4:: @ 081227B4
|
||||||
|
|
|
@ -136,7 +136,7 @@ typedef struct Entity {
|
||||||
u32* heldObjectPtr;
|
u32* heldObjectPtr;
|
||||||
u16 field_0x78;
|
u16 field_0x78;
|
||||||
u16 itemCooldown;
|
u16 itemCooldown;
|
||||||
union SplitWord field_0x7c;
|
u32 field_0x7c;
|
||||||
u16 field_0x80;
|
u16 field_0x80;
|
||||||
u16 field_0x82;
|
u16 field_0x82;
|
||||||
union SplitHWord cutsceneBeh;
|
union SplitHWord cutsceneBeh;
|
||||||
|
|
|
@ -686,7 +686,7 @@ SECTIONS {
|
||||||
asm/lavaPlatform.o(.text);
|
asm/lavaPlatform.o(.text);
|
||||||
asm/object5A.o(.text);
|
asm/object5A.o(.text);
|
||||||
asm/object5B.o(.text);
|
asm/object5B.o(.text);
|
||||||
src/mask.o(.text);
|
asm/mask.o(.text);
|
||||||
asm/houseDoorInterior.o(.text);
|
asm/houseDoorInterior.o(.text);
|
||||||
asm/whirlwind.o(.text);
|
asm/whirlwind.o(.text);
|
||||||
asm/objectBlockingStairs.o(.text);
|
asm/objectBlockingStairs.o(.text);
|
||||||
|
|
|
@ -411,4 +411,4 @@ void BladeBrothers_Fusion(Entity* this) {
|
||||||
this->frames.all &= 0xfe;
|
this->frames.all &= 0xfe;
|
||||||
sub_08068BEC(this, 0);
|
sub_08068BEC(this, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -84,4 +84,4 @@ void nullsub_143(Entity* this){}
|
||||||
void sub_0802A91C(Entity *this)
|
void sub_0802A91C(Entity *this)
|
||||||
{
|
{
|
||||||
this->currentHealth = 0;
|
this->currentHealth = 0;
|
||||||
}
|
}
|
|
@ -130,4 +130,4 @@ void ClearGlobalFlag(u32 flag) {
|
||||||
|
|
||||||
void ClearRoomFlag(u32 flag) {
|
void ClearRoomFlag(u32 flag) {
|
||||||
ClearBit(&gRoomFlags, flag);
|
ClearBit(&gRoomFlags, flag);
|
||||||
}
|
}
|
|
@ -579,4 +579,4 @@ void (*const GreatFairy_Form2Behaviors[])(Entity*) = {
|
||||||
sub_0808727C
|
sub_0808727C
|
||||||
};
|
};
|
||||||
|
|
||||||
//clang-format on
|
//clang-format on
|
|
@ -35,4 +35,4 @@ void (*const gItemFunctions[])(ItemBehavior*, u32) = {
|
||||||
JarEmpty,
|
JarEmpty,
|
||||||
JarEmpty,
|
JarEmpty,
|
||||||
JarEmpty,
|
JarEmpty,
|
||||||
};
|
};
|
|
@ -131,4 +131,4 @@ void sub_08021EF0(Entity *this)
|
||||||
this->field_0x78 = gUnk_080CB6D6[Random() & 0xf];
|
this->field_0x78 = gUnk_080CB6D6[Random() & 0xf];
|
||||||
this->itemCooldown = 0x3c;
|
this->itemCooldown = 0x3c;
|
||||||
InitializeAnimation(this, 0);
|
InitializeAnimation(this, 0);
|
||||||
}
|
}
|
142
src/mask.c
142
src/mask.c
|
@ -1,142 +0,0 @@
|
||||||
#include "global.h"
|
|
||||||
#include "entity.h"
|
|
||||||
#include "room.h"
|
|
||||||
#include "random.h"
|
|
||||||
|
|
||||||
extern Entity gLinkEntity;
|
|
||||||
extern u16 gUnk_030010A0[];
|
|
||||||
|
|
||||||
extern void (*MaskActionFuncs[])(Entity *);
|
|
||||||
|
|
||||||
extern void DeleteThisEntity();
|
|
||||||
|
|
||||||
extern bool32 CheckFlags(u16);
|
|
||||||
extern void SetFlag(u16);
|
|
||||||
extern void ClearFlag(u16);
|
|
||||||
|
|
||||||
extern void SetTile(u32, u16, u32);
|
|
||||||
|
|
||||||
extern void CreateFx(Entity *, u16, u16);
|
|
||||||
|
|
||||||
extern void sub_08000148(u16, u16, u32);
|
|
||||||
extern s16 sub_080001DA(u16, u32);
|
|
||||||
extern u16 sub_080002E0(u16, u32);
|
|
||||||
|
|
||||||
extern void sub_08004488(u32);
|
|
||||||
extern void sub_080044EC(Entity *, u16);
|
|
||||||
extern void sub_0805457C(Entity *, s32);
|
|
||||||
|
|
||||||
|
|
||||||
void Mask(Entity *this) {
|
|
||||||
MaskActionFuncs[this->action](this);
|
|
||||||
}
|
|
||||||
|
|
||||||
void sub_080929A4(Entity *this) {
|
|
||||||
if (this->entityType.parameter & 0xC0) {
|
|
||||||
if (CheckFlags(this->field_0x86)) {
|
|
||||||
s32 field_0x0a;
|
|
||||||
|
|
||||||
switch (this->entityType.parameter & 0xC0) {
|
|
||||||
case 0x40:
|
|
||||||
field_0x0a = gUnk_030010A0[0x5];
|
|
||||||
|
|
||||||
switch (field_0x0a) {
|
|
||||||
case 0x44D ... 0x44F:
|
|
||||||
case 0x182:
|
|
||||||
DeleteThisEntity();
|
|
||||||
goto switchEnd;
|
|
||||||
}
|
|
||||||
|
|
||||||
ClearFlag(this->field_0x86);
|
|
||||||
break;
|
|
||||||
case 0x80:
|
|
||||||
DeleteThisEntity();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
switchEnd:
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this->action = 1;
|
|
||||||
this->field_0x20 = 0x18000;
|
|
||||||
|
|
||||||
this->field_0x78 = ((Random() & 7) << 10) | 0x2000;
|
|
||||||
|
|
||||||
this->field_0xf = this->actionDelay >> 1;
|
|
||||||
this->actionDelay = 0;
|
|
||||||
|
|
||||||
this->frameIndex = this->entityType.parameter & 0x3f;
|
|
||||||
|
|
||||||
this->field_0x7c.HALF.HI = COORD_TO_TILE(this);
|
|
||||||
this->field_0x7c.HALF.LO = sub_080001DA(this->field_0x7c.HALF.HI, 1);
|
|
||||||
|
|
||||||
this->itemCooldown = sub_080002E0(this->field_0x7c.HALF.HI, 1);
|
|
||||||
|
|
||||||
SetTile(0x4022, this->field_0x7c.HALF.HI, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Probably related to knocking it down
|
|
||||||
void sub_08092A94(Entity *this) {
|
|
||||||
// Check for the first frame of bonking animation
|
|
||||||
if (gLinkEntity.action != 6) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (gLinkEntity.animationState != 0) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check if link is close enough to the mask
|
|
||||||
if (this->y.HALF.HI + 40 < gLinkEntity.y.HALF.HI) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this->x.HALF.HI - gLinkEntity.x.HALF.HI >= this->field_0xf || this->x.HALF.HI - gLinkEntity.x.HALF.HI <= -this->field_0xf) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Presumably, make the mask fall
|
|
||||||
SetTile((u16)this->field_0x7c.HALF.LO, this->field_0x7c.HALF.HI, 1);
|
|
||||||
|
|
||||||
sub_08000148(this->itemCooldown, this->field_0x7c.HALF.HI, 1);
|
|
||||||
|
|
||||||
this->action = 2;
|
|
||||||
|
|
||||||
this->height.HALF.HI -= 0x20;
|
|
||||||
this->y.HALF.HI += 0x20;
|
|
||||||
|
|
||||||
this->spriteOrder.b3 = 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Probably falling down
|
|
||||||
void sub_08092B0C(Entity *this) {
|
|
||||||
if (this->actionDelay == 1) {
|
|
||||||
this->action = 3;
|
|
||||||
|
|
||||||
this->actionDelay = 0;
|
|
||||||
switch (this->entityType.parameter & 0xC0)
|
|
||||||
{
|
|
||||||
case 0x80:
|
|
||||||
sub_08004488(0x72);
|
|
||||||
case 0x40:
|
|
||||||
SetFlag(this->field_0x86);
|
|
||||||
break;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
CreateFx(this, 5, 0);
|
|
||||||
|
|
||||||
sub_0805457C(this, 3);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
sub_080044EC(this, this->field_0x78);
|
|
||||||
|
|
||||||
if (this->height.HALF.HI == 0) {
|
|
||||||
this->actionDelay++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void Mask_Delete(Entity *this) {
|
|
||||||
DeleteThisEntity();
|
|
||||||
}
|
|
|
@ -135,4 +135,4 @@ void (*const gNPCFunctions[][3])(Entity* ent) = {
|
||||||
{ DeleteEntity, NULL, NULL }
|
{ DeleteEntity, NULL, NULL }
|
||||||
};
|
};
|
||||||
//clang-format on
|
//clang-format on
|
||||||
const u8 npc_unk[] = { 0x04, 0x05, 0x06, 0x06 };
|
const u8 npc_unk[] = { 0x04, 0x05, 0x06, 0x06 };
|
|
@ -198,4 +198,4 @@ void (*const gObjectFunctions[])(Entity*) = {
|
||||||
EnemyItem,
|
EnemyItem,
|
||||||
ObjectC1,
|
ObjectC1,
|
||||||
};
|
};
|
||||||
//clang-format on
|
//clang-format on
|
|
@ -53,4 +53,4 @@ void ResolveEntityOnTop(Entity *param_1,Entity *param_2)
|
||||||
void sub_0806FAD8(Entity *param_1,Entity *param_2)
|
void sub_0806FAD8(Entity *param_1,Entity *param_2)
|
||||||
{
|
{
|
||||||
param_2->ticks.b0 = gUnk_08114F80[param_1->ticks.b0];
|
param_2->ticks.b0 = gUnk_08114F80[param_1->ticks.b0];
|
||||||
}
|
}
|
|
@ -52,4 +52,4 @@ void sub_0806A3D8(Entity *this)
|
||||||
uVar1 = StartCutscene(this,&gUnk_08012F0C);
|
uVar1 = StartCutscene(this,&gUnk_08012F0C);
|
||||||
*(u32 *)&this->cutsceneBeh = (u32)uVar1;
|
*(u32 *)&this->cutsceneBeh = (u32)uVar1;
|
||||||
sub_0807DD94(this, 0);
|
sub_0807DD94(this, 0);
|
||||||
}
|
}
|
|
@ -65,4 +65,4 @@ void sub_0806C2A0(u32 *param_1,struct_0806C2A0 *param_2)
|
||||||
DoFade(0xc, 4);
|
DoFade(0xc, 4);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -74,4 +74,4 @@ void sub_0806A26C(Entity *this)
|
||||||
{
|
{
|
||||||
asm(".include \"asm/non_matching/syrup/sub_0806A26C.inc\"");
|
asm(".include \"asm/non_matching/syrup/sub_0806A26C.inc\"");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
|
@ -327,4 +327,4 @@ const s16 gCosineTable[] = {
|
||||||
Q_8_8(0.99609375), // sin(317*(π/128))
|
Q_8_8(0.99609375), // sin(317*(π/128))
|
||||||
Q_8_8(0.99609375), // sin(318*(π/128))
|
Q_8_8(0.99609375), // sin(318*(π/128))
|
||||||
Q_8_8(0.99609375), // sin(319*(π/128))
|
Q_8_8(0.99609375), // sin(319*(π/128))
|
||||||
};
|
};
|
|
@ -22,4 +22,4 @@ void WindTribeFlag(Entity *this)
|
||||||
if (this->frameDuration == 0xff) {
|
if (this->frameDuration == 0xff) {
|
||||||
this->frameDuration = (Random() & 0xf) + 0x10;
|
this->frameDuration = (Random() & 0xf) + 0x10;
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -38,4 +38,4 @@ void Windcrest_Unlock(Entity *this)
|
||||||
PlaySFX(0x72);
|
PlaySFX(0x72);
|
||||||
gUnk_02002A40.windcrests = gUnk_02002A40.windcrests | 1 << (this->entityType.parameter + 0x18);
|
gUnk_02002A40.windcrests = gUnk_02002A40.windcrests | 1 << (this->entityType.parameter + 0x18);
|
||||||
CreateFx(this, 0x46, 0);
|
CreateFx(this, 0x46, 0);
|
||||||
}
|
}
|
Loading…
Reference in New Issue