Decompile w16 func_ptr_80170014; change type (#1128)

This is the last of the weapons using func_ptr_80170014. It needs a
non-void return type in order to match, so we also had to change the
type for all the other instances so we don't get issues with declaration
mismatches.
This commit is contained in:
bismurphy 2024-05-14 15:48:06 -04:00 committed by GitHub
parent 20a1fb6998
commit 4049f17528
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
62 changed files with 254 additions and 62 deletions

View File

@ -18,7 +18,7 @@ void func_ptr_80170004(Entity* self);
void func_ptr_80170008(Entity* self);
void func_ptr_8017000C(Entity* self);
void func_ptr_80170010(Entity* self);
void func_ptr_80170014(Entity* self);
s32 func_ptr_80170014(Entity* self);
int GetWeaponId(void);
void LoadWeaponPalette(s32 clutIndex);
void EntityWeaponShieldSpell(Entity* self);

View File

@ -654,7 +654,7 @@ void func_ptr_80170004(Entity* self) { NOT_IMPLEMENTED; }
void func_ptr_80170008(Entity* self) { NOT_IMPLEMENTED; }
void func_ptr_8017000C(Entity* self) { NOT_IMPLEMENTED; }
void func_ptr_80170010(Entity* self) { NOT_IMPLEMENTED; }
void func_ptr_80170014(Entity* self) { NOT_IMPLEMENTED; }
s32 func_ptr_80170014(Entity* self) { NOT_IMPLEMENTED; }
int GetWeaponId(void) {
NOT_IMPLEMENTED;
return 0;

View File

@ -248,7 +248,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 0; }

View File

@ -60,7 +60,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 1; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 2; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 3; }

View File

@ -65,7 +65,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 4; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 5; }

View File

@ -15,7 +15,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 6; }

View File

@ -15,7 +15,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 7; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 8; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 9; }

View File

@ -35,7 +35,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 10; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 11; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 12; }

View File

@ -38,7 +38,7 @@ INCLUDE_ASM("weapon/nonmatchings/w_013", func_ptr_8017000C);
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 13; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 14; }

View File

@ -38,7 +38,7 @@ INCLUDE_ASM("weapon/nonmatchings/w_015", func_ptr_80170010);
extern SpriteParts D_6D000_8017A2B0[];
extern AnimationFrame D_6D000_8017A770[];
void func_ptr_80170014(Entity* self) {
s32 func_ptr_80170014(Entity* self) {
s16 angle;
if (self->step == 0) {

View File

@ -37,7 +37,199 @@ INCLUDE_ASM("weapon/nonmatchings/w_016", func_ptr_8017000C);
INCLUDE_ASM("weapon/nonmatchings/w_016", func_ptr_80170010);
INCLUDE_ASM("weapon/nonmatchings/w_016", func_ptr_80170014);
extern SpriteParts D_74000_8017A040;
s32 func_ptr_80170014(Entity* self) {
Collider collider;
s16 collX;
s16 collY;
u16 tempEffects;
s16 xShift;
s16 yShift;
switch (self->step) {
case 0:
SetSpriteBank1(&D_74000_8017A040);
self->animSet = ANIMSET_OVL(0x10);
self->unk5A = 100;
self->palette = 0x11D;
if (g_HandId != 0) {
self->palette = 0x135;
self->unk5A += 2;
self->animSet += 2;
}
self->animCurFrame = 17;
self->facingLeft = PLAYER.facingLeft;
self->zPriority = PLAYER.zPriority - 2;
self->flags = FLAG_UNK_08000000;
self->velocityY = FIX(-2.25) - (rand() & 0x7FFF); // -2.5 +- 0.25
SetSpeedX((rand() & 0x7FFF) + FIX(1.25)); // 1.5 +- 0.25
self->posY.i.hi = PLAYER.posY.i.hi + PLAYER.hitboxOffY;
SetWeaponProperties(self, 0);
DestroyEntityWeapon(true);
self->hitboxHeight = self->hitboxWidth = 8;
g_api.PlaySfx(0x6EE);
self->ext.weapon.unk7E = 0x40;
g_Player.D_80072F00[10] = 4;
self->step++;
return;
case 1:
self->posX.val += self->velocityX;
self->posY.val += self->velocityY;
if (self->velocityY < FIX(7)) {
self->velocityY += FIX(0.125);
}
if (self->velocityX < 0) {
xShift = -5;
} else {
xShift = 5;
}
collX = xShift + self->posX.i.hi;
collY = self->posY.i.hi;
g_api.CheckCollision(collX, collY, &collider, 0);
if (collider.effects & EFFECT_UNK_0002) {
g_api.PlaySfx(0x655);
g_api.func_80102CD8(4);
if (xShift < 0) {
self->posX.i.hi += collider.unkC;
} else {
self->posX.i.hi += collider.unk4;
}
self->velocityX /= -2;
self->facingLeft = (self->facingLeft + 1) & 1;
}
collX = self->posX.i.hi;
collY = self->posY.i.hi - 6;
g_api.CheckCollision(collX, collY, &collider, 0);
if (collider.effects & EFFECT_SOLID) {
g_api.PlaySfx(0x655);
g_api.func_80102CD8(4);
self->posY.i.hi += collider.unk20 + 1;
self->velocityX /= 2;
self->velocityY = FIX(1);
}
collX = self->posX.i.hi;
collY = self->posY.i.hi + 7;
g_api.CheckCollision(collX, collY, &collider, 0);
if (collider.effects & EFFECT_SOLID) {
g_api.PlaySfx(0x655);
g_api.func_80102CD8(4);
self->posY.i.hi += collider.unk18;
if (self->ext.weapon.lifetime != 0) {
self->step++;
}
self->velocityY = FIX(-1.125);
self->velocityX /= 2;
self->ext.weapon.lifetime++;
// Create factory with blueprint 31. Blueprint 31 has child entity
// 2, which is func_8011B5A4.
g_api.CreateEntFactoryFromEntity(self, FACTORY(0x900, 31), 0);
}
return;
case 2:
if (self->velocityX == 0) {
if (--self->ext.weapon.unk7E == 0) {
self->step = 3;
self->ext.weapon.unk7E = 0x20;
self->drawFlags = FLAG_DRAW_UNK80;
}
}
collX = self->posX.i.hi;
collY = self->posY.i.hi + 11;
g_api.CheckCollision(collX, collY, &collider, 0);
tempEffects = collider.effects;
if (tempEffects & 1) {
yShift = collider.unk18 + 4;
collY = collY + yShift - 5;
g_api.CheckCollision(collX, collY, &collider, 0);
if (!(collider.effects & EFFECT_SOLID)) {
self->posY.i.hi = yShift + self->posY.i.hi;
} else if (!(collider.effects & EFFECT_UNK_8000)) {
self->step = 1;
self->velocityY = 0;
self->hitboxWidth = 8;
return;
} else {
self->posY.i.hi += 3 + (yShift + collider.unk18);
tempEffects = collider.effects;
}
tempEffects &= 0xF000; // mask off just a couple effects
if (tempEffects == EFFECT_UNK_8000 + EFFECT_UNK_4000) {
self->facingLeft = 0;
self->velocityX += 0x400;
}
if (tempEffects ==
EFFECT_UNK_8000 + EFFECT_UNK_4000 + EFFECT_UNK_1000) {
self->facingLeft = 0;
self->velocityX += 0x300;
}
if (tempEffects ==
EFFECT_UNK_8000 + EFFECT_UNK_4000 + EFFECT_UNK_2000) {
self->facingLeft = 0;
self->velocityX += 0x200;
}
if (tempEffects == EFFECT_UNK_8000) {
self->facingLeft = 1;
self->velocityX -= 0x400;
}
if (tempEffects == EFFECT_UNK_8000 + EFFECT_UNK_1000) {
self->facingLeft = 1;
self->velocityX -= 0x300;
}
if (tempEffects == EFFECT_UNK_8000 + EFFECT_UNK_2000) {
self->facingLeft = 1;
self->velocityX -= 0x200;
}
if (self->velocityX > FIX(1)) {
self->velocityX = FIX(1);
}
if (self->velocityX < FIX(-1)) {
self->velocityX = FIX(-1);
}
if (!(tempEffects & EFFECT_UNK_8000)) {
if (self->velocityX < 0) {
xShift = -5;
} else {
xShift = 5;
}
collX = xShift + self->posX.i.hi;
collY = self->posY.i.hi;
g_api.CheckCollision(collX, collY, &collider, 0);
if (collider.effects & EFFECT_UNK_0002) {
if (self->velocityX != 0) {
g_api.PlaySfx(0x655);
g_api.func_80102CD8(1);
}
if (xShift < 0) {
self->posX.i.hi += collider.unkC;
} else {
self->posX.i.hi += collider.unk4;
}
}
DecelerateX(FIX(1.0 / 128));
}
} else {
self->step = 1;
self->velocityY = 0;
self->hitboxWidth = 4;
}
self->posX.val += self->velocityX;
if (ABS(self->velocityX) >= FIX(0.5)) {
self->hitboxWidth = 8;
return;
}
self->hitboxWidth = 0;
return;
case 3:
if (--self->ext.weapon.unk7E == 0) {
DestroyEntity(self);
}
break;
case 4:
break;
}
}
int GetWeaponId(void) { return 16; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 17; }

View File

@ -36,7 +36,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 18; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 19; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 20; }

View File

@ -22,7 +22,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 21; }

View File

@ -54,7 +54,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 22; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 23; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 24; }

View File

@ -22,7 +22,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 25; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 26; }

View File

@ -37,7 +37,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 27; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 28; }

View File

@ -195,7 +195,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 29; }

View File

@ -13,7 +13,7 @@ INCLUDE_ASM("weapon/nonmatchings/w_030", func_ptr_8017000C);
INCLUDE_ASM("weapon/nonmatchings/w_030", func_ptr_80170010);
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 30; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 31; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 32; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 33; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 34; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 35; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 36; }

View File

@ -19,7 +19,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 37; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 38; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 39; }

View File

@ -234,7 +234,7 @@ void func_ptr_8017000C(Entity* self) {
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 40; }

View File

@ -30,7 +30,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 41; }

View File

@ -293,7 +293,7 @@ void func_ptr_8017000C(Entity* self) {
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 42; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 43; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 44; }

View File

@ -43,7 +43,7 @@ INCLUDE_ASM("weapon/nonmatchings/w_045", func_ptr_8017000C);
INCLUDE_ASM("weapon/nonmatchings/w_045", func_ptr_80170010);
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 45; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 46; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 47; }

View File

@ -15,7 +15,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 48; }

View File

@ -18,7 +18,7 @@ INCLUDE_ASM("weapon/nonmatchings/w_049", func_ptr_80170010);
extern SpriteParts D_15B000_8017AA44[];
extern AnimationFrame D_15B000_8017B10C[];
void func_ptr_80170014(Entity* self) {
s32 func_ptr_80170014(Entity* self) {
switch (self->step) {
case 0:
SetSpriteBank2(D_15B000_8017AA44);

View File

@ -19,7 +19,7 @@ INCLUDE_ASM("weapon/nonmatchings/w_050", func_ptr_8017000C);
INCLUDE_ASM("weapon/nonmatchings/w_050", func_ptr_80170010);
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 50; }

View File

@ -561,7 +561,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 51; }

View File

@ -11,7 +11,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 52; }

View File

@ -14,7 +14,7 @@ INCLUDE_ASM("weapon/nonmatchings/w_053", func_ptr_8017000C);
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 53; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 54; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 55; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
int GetWeaponId(void) { return 56; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
s32 GetWeaponId(void) { return 0; }

View File

@ -13,7 +13,7 @@ void func_ptr_8017000C(Entity* self) {}
void func_ptr_80170010(Entity* self) {}
void func_ptr_80170014(Entity* self) {}
s32 func_ptr_80170014(Entity* self) {}
s32 GetWeaponId(void) { return 52; }

View File

@ -21,7 +21,7 @@ void func_ptr_80170004(Entity* self);
void func_ptr_80170008(Entity* self);
void func_ptr_8017000C(Entity* self);
void func_ptr_80170010(Entity* self);
void func_ptr_80170014(Entity* self);
s32 func_ptr_80170014(Entity* self);
int GetWeaponId(void);
void EntityWeaponShieldSpell(Entity* self);
void func_ptr_80170024(Entity* self);