mirror of https://github.com/zeldaret/tmc.git
Merge pull request #360 from hatal175/tingleSiblings
This commit is contained in:
commit
a6c141a78e
|
@ -1,97 +0,0 @@
|
||||||
.syntax unified
|
|
||||||
push {r4, r5, lr}
|
|
||||||
adds r4, r0, #0
|
|
||||||
ldrb r0, [r4, #0xc]
|
|
||||||
cmp r0, #1
|
|
||||||
beq _08064E1A
|
|
||||||
cmp r0, #1
|
|
||||||
bgt _08064DF8
|
|
||||||
cmp r0, #0
|
|
||||||
beq _08064DFE
|
|
||||||
b _08064E6A
|
|
||||||
_08064DF8:
|
|
||||||
cmp r0, #2
|
|
||||||
beq _08064E56
|
|
||||||
b _08064E6A
|
|
||||||
_08064DFE:
|
|
||||||
movs r2, #1
|
|
||||||
movs r0, #1
|
|
||||||
strb r0, [r4, #0xc]
|
|
||||||
ldrb r1, [r4, #0x18]
|
|
||||||
subs r0, #5
|
|
||||||
ands r0, r1
|
|
||||||
orrs r0, r2
|
|
||||||
strb r0, [r4, #0x18]
|
|
||||||
movs r0, #4
|
|
||||||
strb r0, [r4, #0x14]
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0807DD50
|
|
||||||
b _08064E6A
|
|
||||||
_08064E1A:
|
|
||||||
adds r2, r4, #0
|
|
||||||
adds r2, #0x39
|
|
||||||
movs r1, #0
|
|
||||||
ldrsb r1, [r2, r1]
|
|
||||||
cmp r1, #2
|
|
||||||
bne _08064E4C
|
|
||||||
movs r0, #0
|
|
||||||
strb r1, [r4, #0xc]
|
|
||||||
strb r0, [r2]
|
|
||||||
ldr r1, _08064E48 @ =gPlayerEntity
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl GetFacingDirection
|
|
||||||
bl sub_0806F5A4
|
|
||||||
adds r1, r0, #0
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl InitAnimationForceUpdate
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0806F118
|
|
||||||
b _08064E6A
|
|
||||||
.align 2, 0
|
|
||||||
_08064E48: .4byte gPlayerEntity
|
|
||||||
_08064E4C:
|
|
||||||
adds r0, r4, #0
|
|
||||||
movs r1, #0
|
|
||||||
bl sub_0807DD94
|
|
||||||
b _08064E6A
|
|
||||||
_08064E56:
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl UpdateFuseInteraction
|
|
||||||
cmp r0, #0
|
|
||||||
beq _08064E6A
|
|
||||||
movs r0, #1
|
|
||||||
strb r0, [r4, #0xc]
|
|
||||||
adds r0, r4, #0
|
|
||||||
bl sub_0801E99C
|
|
||||||
_08064E6A:
|
|
||||||
adds r2, r4, #0
|
|
||||||
adds r2, #0x5a
|
|
||||||
ldrb r1, [r2]
|
|
||||||
movs r5, #0xf
|
|
||||||
ands r5, r1
|
|
||||||
adds r0, r5, #0
|
|
||||||
eors r0, r1
|
|
||||||
strb r0, [r2]
|
|
||||||
cmp r5, #0
|
|
||||||
beq _08064EA0
|
|
||||||
movs r1, #0x29
|
|
||||||
cmp r5, #3
|
|
||||||
bne _08064E86
|
|
||||||
movs r1, #0x2a
|
|
||||||
_08064E86:
|
|
||||||
adds r0, r4, #0
|
|
||||||
movs r2, #0
|
|
||||||
bl CreateFx
|
|
||||||
adds r2, r0, #0
|
|
||||||
cmp r2, #0
|
|
||||||
beq _08064EA0
|
|
||||||
cmp r5, #2
|
|
||||||
bne _08064EA0
|
|
||||||
ldrb r0, [r2, #0x18]
|
|
||||||
movs r1, #0x40
|
|
||||||
orrs r0, r1
|
|
||||||
strb r0, [r2, #0x18]
|
|
||||||
_08064EA0:
|
|
||||||
pop {r4, r5, pc}
|
|
||||||
.align 2, 0
|
|
||||||
.syntax divided
|
|
|
@ -1,34 +0,0 @@
|
||||||
.syntax unified
|
|
||||||
push {r4, r5, lr}
|
|
||||||
adds r4, r0, #0
|
|
||||||
bl UpdateAnimationSingleFrame
|
|
||||||
adds r2, r4, #0
|
|
||||||
adds r2, #0x5a
|
|
||||||
ldrb r1, [r2]
|
|
||||||
movs r5, #0xf
|
|
||||||
ands r5, r1
|
|
||||||
adds r0, r5, #0
|
|
||||||
eors r0, r1
|
|
||||||
strb r0, [r2]
|
|
||||||
cmp r5, #0
|
|
||||||
beq _08064F26
|
|
||||||
movs r1, #0x2a
|
|
||||||
cmp r5, #3
|
|
||||||
beq _08064F0C
|
|
||||||
movs r1, #0x29
|
|
||||||
_08064F0C:
|
|
||||||
adds r0, r4, #0
|
|
||||||
movs r2, #0
|
|
||||||
bl CreateFx
|
|
||||||
adds r2, r0, #0
|
|
||||||
cmp r2, #0
|
|
||||||
beq _08064F26
|
|
||||||
cmp r5, #2
|
|
||||||
bne _08064F26
|
|
||||||
ldrb r0, [r2, #0x18]
|
|
||||||
movs r1, #0x40
|
|
||||||
orrs r0, r1
|
|
||||||
strb r0, [r2, #0x18]
|
|
||||||
_08064F26:
|
|
||||||
pop {r4, r5, pc}
|
|
||||||
.syntax divided
|
|
|
@ -1,121 +0,0 @@
|
||||||
.syntax unified
|
|
||||||
push {r4, r5, r6, r7, lr}
|
|
||||||
mov r7, r8
|
|
||||||
push {r7}
|
|
||||||
adds r6, r0, #0
|
|
||||||
mov r8, r1
|
|
||||||
movs r0, #0
|
|
||||||
str r0, [r1, #0x14]
|
|
||||||
ldr r1, _08064F60 @ =gUnk_0810FC50
|
|
||||||
ldrb r0, [r6, #0xa]
|
|
||||||
adds r0, r0, r1
|
|
||||||
ldrb r7, [r0]
|
|
||||||
adds r0, r7, #0
|
|
||||||
bl CheckRoomFlag
|
|
||||||
cmp r0, #0
|
|
||||||
bne _08064F84
|
|
||||||
ldr r4, _08064F64 @ =gSave
|
|
||||||
adds r0, r6, #0
|
|
||||||
bl sub_08002632
|
|
||||||
ldr r1, _08064F68 @ =0x00000141
|
|
||||||
adds r4, r4, r1
|
|
||||||
adds r0, r0, r4
|
|
||||||
ldrb r4, [r0]
|
|
||||||
cmp r4, #1
|
|
||||||
bls _08064F6C
|
|
||||||
movs r5, #3
|
|
||||||
b _08064F7E
|
|
||||||
.align 2, 0
|
|
||||||
_08064F60: .4byte gUnk_0810FC50
|
|
||||||
_08064F64: .4byte gSave
|
|
||||||
_08064F68: .4byte 0x00000141
|
|
||||||
_08064F6C:
|
|
||||||
movs r0, #0xc
|
|
||||||
bl GetInventoryValue
|
|
||||||
movs r5, #2
|
|
||||||
cmp r0, #0
|
|
||||||
bne _08064F7E
|
|
||||||
rsbs r0, r4, #0
|
|
||||||
orrs r0, r4
|
|
||||||
lsrs r5, r0, #0x1f
|
|
||||||
_08064F7E:
|
|
||||||
movs r4, #1
|
|
||||||
rsbs r4, r4, #0
|
|
||||||
b _08064FD2
|
|
||||||
_08064F84:
|
|
||||||
movs r0, #0x3a
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
bne _08064FCE
|
|
||||||
ldr r0, _08064FB0 @ =gSave
|
|
||||||
ldr r1, _08064FB4 @ =0x00000117
|
|
||||||
adds r0, r0, r1
|
|
||||||
ldrb r1, [r0]
|
|
||||||
movs r0, #0x64
|
|
||||||
subs r4, r0, r1
|
|
||||||
cmp r4, #0
|
|
||||||
bgt _08064FB8
|
|
||||||
movs r5, #8
|
|
||||||
movs r4, #0
|
|
||||||
movs r0, #0x3a
|
|
||||||
bl SetGlobalFlag
|
|
||||||
movs r0, #1
|
|
||||||
mov r1, r8
|
|
||||||
str r0, [r1, #0x14]
|
|
||||||
b _08064FD2
|
|
||||||
.align 2, 0
|
|
||||||
_08064FB0: .4byte gSave
|
|
||||||
_08064FB4: .4byte 0x00000117
|
|
||||||
_08064FB8:
|
|
||||||
movs r5, #7
|
|
||||||
cmp r4, #9
|
|
||||||
ble _08064FC0
|
|
||||||
movs r5, #6
|
|
||||||
_08064FC0:
|
|
||||||
cmp r4, #0x27
|
|
||||||
ble _08064FC6
|
|
||||||
movs r5, #5
|
|
||||||
_08064FC6:
|
|
||||||
cmp r4, #0x45
|
|
||||||
ble _08064FD2
|
|
||||||
movs r5, #4
|
|
||||||
b _08064FD2
|
|
||||||
_08064FCE:
|
|
||||||
movs r5, #8
|
|
||||||
movs r4, #0
|
|
||||||
_08064FD2:
|
|
||||||
ldr r2, _08065008 @ =gUnk_0810FC08
|
|
||||||
ldrb r1, [r6, #0xa]
|
|
||||||
lsls r0, r1, #3
|
|
||||||
adds r0, r0, r1
|
|
||||||
adds r0, r0, r5
|
|
||||||
lsls r0, r0, #1
|
|
||||||
adds r0, r0, r2
|
|
||||||
ldrh r0, [r0]
|
|
||||||
adds r1, r6, #0
|
|
||||||
bl MessageNoOverlap
|
|
||||||
cmp r4, #0
|
|
||||||
ble _08064FF4
|
|
||||||
ldr r1, _0806500C @ =gMessage
|
|
||||||
lsls r0, r4, #0x10
|
|
||||||
lsrs r0, r0, #0x10
|
|
||||||
str r0, [r1, #0x10]
|
|
||||||
_08064FF4:
|
|
||||||
adds r0, r7, #0
|
|
||||||
bl CheckRoomFlag
|
|
||||||
cmp r0, #0
|
|
||||||
bne _08065010
|
|
||||||
adds r0, r7, #0
|
|
||||||
bl SetRoomFlag
|
|
||||||
b _08065016
|
|
||||||
.align 2, 0
|
|
||||||
_08065008: .4byte gUnk_0810FC08
|
|
||||||
_0806500C: .4byte gMessage
|
|
||||||
_08065010:
|
|
||||||
adds r0, r7, #0
|
|
||||||
bl ClearRoomFlag
|
|
||||||
_08065016:
|
|
||||||
pop {r3}
|
|
||||||
mov r8, r3
|
|
||||||
pop {r4, r5, r6, r7, pc}
|
|
||||||
.syntax divided
|
|
|
@ -37104,16 +37104,6 @@
|
||||||
"size": 158,
|
"size": 158,
|
||||||
"type": "animation"
|
"type": "animation"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"path": "tingleSiblings/gUnk_0810FC08.bin",
|
|
||||||
"start": 1113096,
|
|
||||||
"size": 72
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"path": "tingleSiblings/gUnk_0810FC50.bin",
|
|
||||||
"start": 1113168,
|
|
||||||
"size": 4
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"offsets": {
|
"offsets": {
|
||||||
"EU": -2224
|
"EU": -2224
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
.include "asm/macros.inc"
|
|
||||||
.include "constants/constants.inc"
|
|
||||||
|
|
||||||
.section .rodata
|
|
||||||
.align 2
|
|
||||||
|
|
||||||
gUnk_0810FBFC:: @ 0810FBFC
|
|
||||||
.4byte sub_08064D90
|
|
||||||
.4byte sub_08064DA0
|
|
||||||
.4byte sub_08064DCC
|
|
||||||
|
|
||||||
gUnk_0810FC08:: @ 0810FC08
|
|
||||||
.incbin "tingleSiblings/gUnk_0810FC08.bin"
|
|
||||||
|
|
||||||
gUnk_0810FC50:: @ 0810FC50
|
|
||||||
.incbin "tingleSiblings/gUnk_0810FC50.bin"
|
|
|
@ -1226,7 +1226,7 @@ SECTIONS {
|
||||||
data/animations/npc/farore.o(.rodata);
|
data/animations/npc/farore.o(.rodata);
|
||||||
data/const/npc/sturgeon.o(.rodata);
|
data/const/npc/sturgeon.o(.rodata);
|
||||||
data/animations/npc/sturgeon.o(.rodata);
|
data/animations/npc/sturgeon.o(.rodata);
|
||||||
data/const/npc/tingleSiblings.o(.rodata);
|
src/npc/tingleSiblings.o(.rodata);
|
||||||
data/animations/npc/tingleSiblings.o(.rodata);
|
data/animations/npc/tingleSiblings.o(.rodata);
|
||||||
data/const/npc/stockwell.o(.rodata);
|
data/const/npc/stockwell.o(.rodata);
|
||||||
data/animations/npc/stockwell.o(.rodata);
|
data/animations/npc/stockwell.o(.rodata);
|
||||||
|
|
|
@ -2,12 +2,15 @@
|
||||||
#include "entity.h"
|
#include "entity.h"
|
||||||
#include "npc.h"
|
#include "npc.h"
|
||||||
#include "functions.h"
|
#include "functions.h"
|
||||||
|
#include "item.h"
|
||||||
|
|
||||||
extern void sub_08064DE4(Entity*);
|
extern void sub_08064DE4(Entity*);
|
||||||
extern void sub_08064D78(Entity*);
|
extern void sub_08064D78(Entity*);
|
||||||
extern void sub_08064EE8(Entity*);
|
extern void sub_08064EE8(Entity*);
|
||||||
|
|
||||||
extern void (*const gUnk_0810FBFC[])(Entity*);
|
void (*const TingleSiblings_Actions[])(Entity*);
|
||||||
|
const u8 gUnk_0810FC50[];
|
||||||
|
const u16 TingleSiblings_MessageIndices[][9];
|
||||||
|
|
||||||
void TingleSiblings(Entity* this) {
|
void TingleSiblings(Entity* this) {
|
||||||
if ((this->flags & ENT_SCRIPTED) != 0) {
|
if ((this->flags & ENT_SCRIPTED) != 0) {
|
||||||
|
@ -18,7 +21,7 @@ void TingleSiblings(Entity* this) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_08064D78(Entity* this) {
|
void sub_08064D78(Entity* this) {
|
||||||
gUnk_0810FBFC[this->action](this);
|
TingleSiblings_Actions[this->action](this);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_08064D90(Entity* this) {
|
void sub_08064D90(Entity* this) {
|
||||||
|
@ -40,25 +43,26 @@ void sub_08064DCC(Entity* this) {
|
||||||
InitAnimationForceUpdate(this, 2);
|
InitAnimationForceUpdate(this, 2);
|
||||||
this->action = 1;
|
this->action = 1;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
void sub_08064DE4(Entity* this) {
|
void sub_08064DE4(Entity* this) {
|
||||||
|
u32 bVar1;
|
||||||
|
|
||||||
switch (this->action) {
|
switch (this->action) {
|
||||||
case 0:
|
case 0:
|
||||||
this->action = 1;
|
this->action = 1;
|
||||||
this->spriteSettings = this->spriteSettings & 0xfc | 1;
|
this->spriteSettings.draw = 1;
|
||||||
this->animationState = '\x04';
|
this->animationState = 4;
|
||||||
sub_0807DD50(this);
|
sub_0807DD50(this);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (this->interactType == 2) {
|
if (this->interactType == 2) {
|
||||||
this->action = 2;
|
this->action = 2;
|
||||||
this->interactType = 0;
|
this->interactType = 0;
|
||||||
GetFacingDirection(this, &gPlayerEntity);
|
InitAnimationForceUpdate(this, sub_0806F5A4(GetFacingDirection(this, &gPlayerEntity)));
|
||||||
InitAnimationForceUpdate(this, sub_0806F5A4());
|
sub_0806F118(this);
|
||||||
sub_0806F118(this);
|
} else {
|
||||||
} else {
|
sub_0807DD94(this, 0);
|
||||||
sub_0807DD94(this, 0);
|
}
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (UpdateFuseInteraction(this)) {
|
if (UpdateFuseInteraction(this)) {
|
||||||
|
@ -67,30 +71,27 @@ void sub_08064DE4(Entity* this) {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
{
|
|
||||||
u8 bVar1 = this->frame;
|
bVar1 = this->frame & 0xf;
|
||||||
u8 bVar5 = bVar1 & 0xf;
|
this->frame ^= bVar1;
|
||||||
this->frame = bVar5 ^ bVar1;
|
if (bVar1) {
|
||||||
if (bVar1 & 0xf) {
|
Entity* fx = CreateFx(this, bVar1 == 3 ? FX_CONFETTI_LARGE : FX_CONFETTI, 0);
|
||||||
Entity* fx = CreateFx(this, bVar5 == 3 ? 0x2a : 0x29, 0);
|
if (fx && bVar1 == 2) {
|
||||||
if (fx && bVar5 == 2) {
|
fx->spriteSettings.flipX = 1;
|
||||||
fx->spriteSettings.flipX = 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}*/
|
}
|
||||||
ASM_FUNC("asm/non_matching/tingleSiblings/sub_08064DE4.inc", void sub_08064DE4(Entity* this))
|
|
||||||
|
|
||||||
void sub_08064EA4(Entity* this) {
|
void sub_08064EA4(Entity* this) {
|
||||||
this->field_0x68.HALF.LO = sub_0801E99C(this);
|
this->field_0x68.HALF.LO = sub_0801E99C(this);
|
||||||
switch (this->type) {
|
switch (this->type) {
|
||||||
case 0:
|
case 0:
|
||||||
if ((CheckKinstoneFused(0x59) != 0) && (GetInventoryValue(0xc) == 0)) {
|
if ((CheckKinstoneFused(0x59) != 0) && (GetInventoryValue(ITEM_MAGIC_BOOMERANG) == 0)) {
|
||||||
this->field_0x68.HALF.LO = 0;
|
this->field_0x68.HALF.LO = 0;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
if ((CheckKinstoneFused(0x5a) != 0) && (GetInventoryValue(0xc) == 0)) {
|
if ((CheckKinstoneFused(0x5a) != 0) && (GetInventoryValue(ITEM_MAGIC_BOOMERANG) == 0)) {
|
||||||
this->field_0x68.HALF.LO = 0;
|
this->field_0x68.HALF.LO = 0;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -100,10 +101,85 @@ void sub_08064EA4(Entity* this) {
|
||||||
sub_08078784(this, this->field_0x68.HALF.LO);
|
sub_08078784(this, this->field_0x68.HALF.LO);
|
||||||
}
|
}
|
||||||
|
|
||||||
ASM_FUNC("asm/non_matching/tingleSiblings/sub_08064EE8.inc", void sub_08064EE8(Entity* this))
|
void sub_08064EE8(Entity* this) {
|
||||||
|
u32 bVar1;
|
||||||
|
Entity* fxEnt;
|
||||||
|
u32 confettiFx;
|
||||||
|
|
||||||
ASM_FUNC("asm/non_matching/tingleSiblings/sub_08064F28.inc",
|
UpdateAnimationSingleFrame(this);
|
||||||
void sub_08064F28(Entity* this, ScriptExecutionContext* context))
|
bVar1 = this->frame & 0xf;
|
||||||
|
this->frame ^= bVar1;
|
||||||
|
if (bVar1) {
|
||||||
|
if (bVar1 != 3) {
|
||||||
|
confettiFx = FX_CONFETTI;
|
||||||
|
} else {
|
||||||
|
confettiFx = FX_CONFETTI_LARGE;
|
||||||
|
}
|
||||||
|
|
||||||
|
fxEnt = CreateFx(this, confettiFx, 0);
|
||||||
|
if (fxEnt && bVar1 == 2) {
|
||||||
|
fxEnt->spriteSettings.flipX = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void sub_08064F28(Entity* this, ScriptExecutionContext* context) {
|
||||||
|
u32 roomFlag;
|
||||||
|
u32 bVar2;
|
||||||
|
int iVar3;
|
||||||
|
int iVar4;
|
||||||
|
u32 uVar5;
|
||||||
|
|
||||||
|
context->condition = 0;
|
||||||
|
roomFlag = gUnk_0810FC50[this->type];
|
||||||
|
if (CheckRoomFlag(roomFlag) == 0) {
|
||||||
|
bVar2 = gSave.unk141[sub_08002632(this)];
|
||||||
|
if (bVar2 >= 2) {
|
||||||
|
uVar5 = 3;
|
||||||
|
} else {
|
||||||
|
iVar3 = GetInventoryValue(ITEM_MAGIC_BOOMERANG);
|
||||||
|
uVar5 = 2;
|
||||||
|
if (iVar3 == 0) {
|
||||||
|
uVar5 = (-bVar2 | bVar2) >> 0x1f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
iVar4 = 0xffffffff;
|
||||||
|
} else {
|
||||||
|
if (CheckGlobalFlag(0x3a) == 0) {
|
||||||
|
iVar4 = 100 - gSave.unk117;
|
||||||
|
if (iVar4 < 1) {
|
||||||
|
uVar5 = 8;
|
||||||
|
iVar4 = 0;
|
||||||
|
SetGlobalFlag(0x3a);
|
||||||
|
context->condition = 1;
|
||||||
|
} else {
|
||||||
|
uVar5 = 7;
|
||||||
|
if (9 < iVar4) {
|
||||||
|
uVar5 = 6;
|
||||||
|
}
|
||||||
|
if (0x27 < iVar4) {
|
||||||
|
uVar5 = 5;
|
||||||
|
}
|
||||||
|
if (0x45 < iVar4) {
|
||||||
|
uVar5 = 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
uVar5 = 8;
|
||||||
|
iVar4 = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MessageNoOverlap(TingleSiblings_MessageIndices[this->type][uVar5], this);
|
||||||
|
if (iVar4 > 0) {
|
||||||
|
gMessage.field_0x10 = (u16)iVar4;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (CheckRoomFlag(roomFlag) == 0) {
|
||||||
|
SetRoomFlag(roomFlag);
|
||||||
|
} else {
|
||||||
|
ClearRoomFlag(roomFlag);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void TingleSiblings_Fusion(Entity* this) {
|
void TingleSiblings_Fusion(Entity* this) {
|
||||||
u32 tmp;
|
u32 tmp;
|
||||||
|
@ -119,3 +195,18 @@ void TingleSiblings_Fusion(Entity* this) {
|
||||||
sub_08064EE8(this);
|
sub_08064EE8(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void (*const TingleSiblings_Actions[])(Entity*) = {
|
||||||
|
sub_08064D90,
|
||||||
|
sub_08064DA0,
|
||||||
|
sub_08064DCC,
|
||||||
|
};
|
||||||
|
|
||||||
|
const u16 TingleSiblings_MessageIndices[][9] = {
|
||||||
|
{ 0x3f01, 0x3f02, 0x3f03, 0x3f04, 0x3f1b, 0x3f1c, 0x3f1d, 0x3f1e, 0x3f1f },
|
||||||
|
{ 0x3f05, 0x3f06, 0x3f07, 0x3f07, 0x3f20, 0x3f21, 0x3f22, 0x3f23, 0x3f24 },
|
||||||
|
{ 0x3f08, 0x3f09, 0x3f09, 0x3f09, 0x3f25, 0x3f26, 0x3f27, 0x3f28, 0x3f29 },
|
||||||
|
{ 0x3f0a, 0x3f0b, 0x3f0c, 0x3f0d, 0x3f2a, 0x3f2b, 0x3f2c, 0x3f2d, 0x3f2e },
|
||||||
|
};
|
||||||
|
|
||||||
|
const u8 gUnk_0810FC50[] = { 0, 0, 0, 0 };
|
||||||
|
|
Loading…
Reference in New Issue