1
0
mirror of https://github.com/blawar/ooot.git synced 2024-07-07 12:32:37 +00:00

object_anubice OK (#696)

* xml

Signed-off-by: Anghelo <angheloalf95@gmail.com>

* add all the object to xml

Signed-off-by: Angie <angheloalf95@gmail.com>

* add object to srccode

Signed-off-by: Angie <angheloalf95@gmail.com>

* A bit of naming

Signed-off-by: angie <angheloalf95@gmail.com>

* final rename

Signed-off-by: angie <angheloalf95@gmail.com>

* add unused particle

Signed-off-by: angie <angheloalf95@gmail.com>

* rename unused particle dls

Signed-off-by: angie <angheloalf95@gmail.com>

* delete gitkeep

Signed-off-by: angie <angheloalf95@gmail.com>

* run format.sh

Signed-off-by: angie <angheloalf95@gmail.com>
This commit is contained in:
Anghelo Carvajal 2021-03-17 17:22:06 -03:00 committed by GitHub
parent 7f55e088e5
commit 7b68e8b771
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 38 additions and 36 deletions

View File

@ -0,0 +1,20 @@
<Root>
<File Name="object_anubice" Segment="6">
<Skeleton Name="gAnubiceSkel" Type="Normal" LimbType="Standard" Offset="0x3990"/>
<Animation Name="gAnubiceFallDownAnim" Offset="0x348"/>
<Animation Name="gAnubiceAttackingAnim" Offset="0x78C"/>
<Animation Name="gAnubiceIdleAnim" Offset="0xF74"/>
<DList Name="gAnubiceEyesDL" Offset="0x3468"/>
<DList Name="gAnubiceFireAttackDL" Offset="0x3510"/>
<!-- The following are unused -->
<Animation Name="gAnubiceLaughingAnim" Offset="0x144"/>
<Animation Name="gAnubiceStandUpAnim" Offset="0x930"/>
<DList Name="gAnubiceUnusedParticleTextureDL" Offset="0x3610"/>
<DList Name="gAnubiceUnusedParticleGeometryDL" Offset="0x3688"/>
<!-- I think those might be for taking damage or something -->
<Animation Name="gAnubiceAnim_000A48" Offset="0xA48"/>
<Animation Name="gAnubiceAnim_000BAC" Offset="0xBAC"/>
</File>
</Root>

3
spec
View File

@ -4688,7 +4688,8 @@ endseg
beginseg
name "object_anubice"
romalign 0x1000
include "build/baserom/object_anubice.o"
include "build/assets/objects/object_anubice/object_anubice.o"
number 6
endseg
beginseg

View File

@ -5,6 +5,7 @@
*/
#include "z_en_anubice.h"
#include "objects/object_anubice/object_anubice.h"
#include "overlays/actors/ovl_En_Anubice_Tag/z_en_anubice_tag.h"
#include "overlays/actors/ovl_Bg_Hidan_Curtain/z_bg_hidan_curtain.h"
#include "vt.h"
@ -26,12 +27,6 @@ void EnAnubis_SetupShootFireball(EnAnubice* this, GlobalContext* globalCtx);
void EnAnubis_ShootFireball(EnAnubice* this, GlobalContext* globalCtx);
void EnAnubice_Die(EnAnubice* this, GlobalContext* globalCtx);
extern AnimationHeader D_06000348;
extern AnimationHeader D_0600078C;
extern AnimationHeader D_06000F74;
extern Gfx D_06003468[];
extern SkeletonHeader D_06003990;
const ActorInit En_Anubice_InitVars = {
ACTOR_EN_ANUBICE,
ACTORCAT_ENEMY,
@ -99,10 +94,6 @@ static DamageTable sDamageTable[] = {
/* Unknown 2 */ DMG_ENTRY(0, 0x0),
};
Vec3f D_809B231C = { 0.0f, 0.0f, 0.0f };
Vec3f D_809B2328 = { 0.0f, 0.0f, 0.0f };
Vec3f D_809B2334 = { 0.0f, 0.0f, 0.0f };
void EnAnubice_Hover(EnAnubice* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
@ -133,7 +124,8 @@ void EnAnubice_Init(Actor* thisx, GlobalContext* globalCtx) {
EnAnubice* this = THIS;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 20.0f);
SkelAnime_Init(globalCtx, &this->skelAnime, &D_06003990, &D_06000F74, this->jointTable, this->morphTable, 16);
SkelAnime_Init(globalCtx, &this->skelAnime, &gAnubiceSkel, &gAnubiceIdleAnim, this->jointTable, this->morphTable,
16);
osSyncPrintf("\n\n");
// ☆☆☆☆☆ Anubis occurence ☆☆☆☆☆
@ -203,9 +195,9 @@ void EnAnubice_FindFlameCircles(EnAnubice* this, GlobalContext* globalCtx) {
}
void EnAnubice_SetupIdle(EnAnubice* this, GlobalContext* globalCtx) {
f32 lastFrame = Animation_GetLastFrame(&D_06000F74);
f32 lastFrame = Animation_GetLastFrame(&gAnubiceIdleAnim);
Animation_Change(&this->skelAnime, &D_06000F74, 1.0f, 0.0f, (s16)lastFrame, 0, -10.0f);
Animation_Change(&this->skelAnime, &gAnubiceIdleAnim, 1.0f, 0.0f, (s16)lastFrame, 0, -10.0f);
this->actionFunc = EnAnubice_Idle;
this->actor.velocity.x = this->actor.velocity.z = this->actor.gravity = 0.0f;
@ -267,10 +259,10 @@ void EnAnubice_GoToHome(EnAnubice* this, GlobalContext* globalCtx) {
}
void EnAnubis_SetupShootFireball(EnAnubice* this, GlobalContext* globalCtx) {
f32 lastFrame = Animation_GetLastFrame(&D_0600078C);
f32 lastFrame = Animation_GetLastFrame(&gAnubiceAttackingAnim);
this->animLastFrame = lastFrame;
Animation_Change(&this->skelAnime, &D_0600078C, 1.0f, 0.0f, lastFrame, 2, -10.0f);
Animation_Change(&this->skelAnime, &gAnubiceAttackingAnim, 1.0f, 0.0f, lastFrame, 2, -10.0f);
this->actionFunc = EnAnubis_ShootFireball;
this->actor.velocity.x = this->actor.velocity.z = 0.0f;
}
@ -297,10 +289,10 @@ void EnAnubis_ShootFireball(EnAnubice* this, GlobalContext* globalCtx) {
}
void EnAnubice_SetupDie(EnAnubice* this, GlobalContext* globalCtx) {
f32 lastFrame = Animation_GetLastFrame(&D_06000348);
f32 lastFrame = Animation_GetLastFrame(&gAnubiceFallDownAnim);
this->animLastFrame = lastFrame;
Animation_Change(&this->skelAnime, &D_06000348, 1.0f, 0.0f, lastFrame, 2, -20.0f);
Animation_Change(&this->skelAnime, &gAnubiceFallDownAnim, 1.0f, 0.0f, lastFrame, 2, -20.0f);
this->unk_256 = false;
this->unk_258 = 0;
@ -319,8 +311,8 @@ void EnAnubice_SetupDie(EnAnubice* this, GlobalContext* globalCtx) {
void EnAnubice_Die(EnAnubice* this, GlobalContext* globalCtx) {
f32 curFrame;
f32 phi_f2;
Vec3f sp4C = D_809B231C;
Vec3f fireEffectPos = D_809B2328;
Vec3f sp4C = { 0.0f, 0.0f, 0.0f };
Vec3f fireEffectPos = { 0.0f, 0.0f, 0.0f };
s32 pad;
SkelAnime_Update(&this->skelAnime);
@ -477,15 +469,15 @@ s32 EnAnubis_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dLi
void EnAnubis_PostLimbDraw(struct GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx) {
EnAnubice* this = THIS;
Vec3f sp38 = D_809B2334;
Vec3f pos = { 0.0f, 0.0f, 0.0f };
if (limbIndex == 13) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_anubice.c", 853);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_anubice.c", 856),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06003468);
Matrix_MultVec3f(&sp38, &this->fireballPos);
gSPDisplayList(POLY_XLU_DISP++, gAnubiceEyesDL);
Matrix_MultVec3f(&pos, &this->fireballPos);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_anubice.c", 868);
}

View File

@ -6,6 +6,7 @@
#include "z_en_anubice_fire.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_anubice/object_anubice.h"
#define FLAGS 0x00000010
@ -20,8 +21,6 @@ void func_809B26EC(EnAnubiceFire* this, GlobalContext* globalCtx);
void func_809B27D8(EnAnubiceFire* this, GlobalContext* globalCtx);
void func_809B2B48(EnAnubiceFire* this, GlobalContext* globalCtx);
extern Gfx D_06003510[];
const ActorInit En_Anubice_Fire_InitVars = {
ACTOR_EN_ANUBICE_FIRE,
ACTORCAT_ENEMY,
@ -245,7 +244,7 @@ void EnAnubiceFire_Draw(Actor* thisx, GlobalContext* globalCtx) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_anubice_fire.c", 546),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06003510);
gSPDisplayList(POLY_XLU_DISP++, gAnubiceFireAttackDL);
}
if (this->scale < 0.1f) {

View File

@ -2017,16 +2017,6 @@ D_0600033C = 0x0600033C;
D_06005948 = 0x06005948;
D_06005B3C = 0x06005B3C;
// z_en_anubice
D_06000348 = 0x06000348;
D_0600078C = 0x0600078C;
D_06000F74 = 0x06000F74;
D_06003468 = 0x06003468;
D_06003990 = 0x06003990;
// z_en_anubice_fire
D_06003510 = 0x06003510;
// z_en_ba
D_06000890 = 0x06000890;
D_06001D80 = 0x06001D80;