mirror of
https://github.com/zeldaret/ss
synced 2026-07-11 22:50:06 -04:00
d_a_obj_utajima_island OK (#73)
* d_a_obj_utajima_island OK * Name one field * mAngle constants
This commit is contained in:
@@ -206,7 +206,7 @@ public:
|
||||
/* 8002d600 */ void FUN_8002d600();
|
||||
/* 8002d630 */ void FUN_8002d630();
|
||||
/* 8002d6d0 */ void FUN_8002d6d0();
|
||||
/* 8002d710 */ void playSoundEffect1();
|
||||
/* 8002d710 */ void playSoundEffect1(u16 effect);
|
||||
/* 8002d740 */ void FUN_8002d740();
|
||||
/* 8002d770 */ void FUN_8002d770();
|
||||
/* 8002d7a0 */ void FUN_8002d7a0();
|
||||
|
||||
@@ -1,7 +1,14 @@
|
||||
#ifndef D_A_OBJ_UTAJIMA_ISLAND_H
|
||||
#define D_A_OBJ_UTAJIMA_ISLAND_H
|
||||
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/a/obj/d_a_obj_utajima_main_mecha.h"
|
||||
#include "d/col/bg/d_bg_w.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "m/m_angle.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "nw4r/g3d/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
@@ -10,10 +17,42 @@ public:
|
||||
dAcOutajimaIsland_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOutajimaIsland_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int actorCreate() override;
|
||||
virtual int actorPostCreate() override;
|
||||
virtual int actorExecute() override;
|
||||
|
||||
virtual int doDelete() override;
|
||||
virtual int draw() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOutajimaIsland_c, Wait);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOutajimaIsland_c);
|
||||
static const f32 floats[5];
|
||||
static bool sPlatformsSettled;
|
||||
void movePlatforms();
|
||||
|
||||
s32 getParm2() {
|
||||
return ((params >> 4) & 0xF);
|
||||
}
|
||||
|
||||
s32 getRingLayer() {
|
||||
return params & 0xF;
|
||||
}
|
||||
|
||||
/* 0x330 */ m3d::smdl_c mMdl;
|
||||
/* 0x34C */ nw4r::g3d::ResFile mRes;
|
||||
/* 0x350 */ dBgW mBgW;
|
||||
/* 0x560 */ STATE_MGR_DECLARE(dAcOutajimaIsland_c);
|
||||
/* 0x59C */ dAcRef_c<dAcOutajimaMainMecha_c> mMainMechaRef;
|
||||
/* 0x5A8 */ mVec3_c mInitialPos;
|
||||
/* 0x5B4 */ mAng3_c mInitialRot;
|
||||
/* 0x5BA */ u8 mRingLayer;
|
||||
/* 0x5BB */ u8 mParam2;
|
||||
/* 0x5BC */ mAng field_0x5BC;
|
||||
/* 0x5BE */ mAng3_c field_0x5BE;
|
||||
/* 0x5C4 */ bool mIsMoving;
|
||||
/* 0x5C5 */ bool mPlaySound;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -37,6 +37,20 @@ struct mAng {
|
||||
}
|
||||
|
||||
s16 mVal;
|
||||
|
||||
static mAng fromDeg(f32 deg) {
|
||||
return deg * sDegToAng;
|
||||
}
|
||||
|
||||
private:
|
||||
static const f32 sHalfCircleDeg;
|
||||
static const f32 sAngToDeg;
|
||||
static const f32 sAngToRad;
|
||||
static const f32 NotSure;
|
||||
static const f32 sDegToRad;
|
||||
static const f32 sDegToAng;
|
||||
static const f32 sRadToAng;
|
||||
static const f32 sRadToDeg;
|
||||
};
|
||||
|
||||
class mAng3_c {
|
||||
|
||||
@@ -12,6 +12,7 @@ BOOL chase(short *value, short target, short stepSize);
|
||||
BOOL chase(int *value, int target, int stepSize);
|
||||
BOOL chase(float *value, float target, float stepSize);
|
||||
BOOL chaseAngle(short *value, short target, short stepSize);
|
||||
BOOL chaseAngle2(short *value, short target, short stepSize);
|
||||
|
||||
// Inofficial names
|
||||
float extrapolate(float start, float end, float scale);
|
||||
|
||||
Reference in New Issue
Block a user