summaryrefslogtreecommitdiff
path: root/include/d
diff options
context:
space:
mode:
Diffstat (limited to 'include/d')
-rw-r--r--include/d/a/e/d_a_e_ks.h61
-rw-r--r--include/d/a/e/d_a_en_base.h2
-rw-r--r--include/d/col/c/c_cc_d.h13
3 files changed, 69 insertions, 7 deletions
diff --git a/include/d/a/e/d_a_e_ks.h b/include/d/a/e/d_a_e_ks.h
index 06629604..a16652f1 100644
--- a/include/d/a/e/d_a_e_ks.h
+++ b/include/d/a/e/d_a_e_ks.h
@@ -4,7 +4,6 @@
#include "common.h"
#include "d/a/d_a_base.h"
#include "d/a/e/d_a_en_base.h"
-#include "d/a/obj/d_a_obj_base.h"
#include "d/col/bg/d_bg_s_acch.h"
#include "d/col/cc/d_cc_d.h"
#include "m/m3d/m_anmtexpat.h"
@@ -51,9 +50,38 @@ public:
f32 getLineCrossYRange(const mVec3_c &pos, f32 range);
+ /* 0 -> blink_1, 1 -> blink_2, 2 -> blink_3*/
+ void setBlink(u8 blink);
+ void setBlinkChecked(u8 blink);
+ bool isOutsideRange();
+ bool isNotWaitingNorDamage();
+ bool isTargeted();
+ bool ChkWall();
+ void ChkGnd();
+ void ChkRoof();
+ bool ChkHit();
+ void fn_155_3460();
+ void fn_155_3480();
+ bool transitionToNextState();
+ void setAnim(char *, f32, f32, f32);
+ void fn_155_3720(f32, f32);
+ void fn_155_3750(u8 state);
+ void fn_155_37A0();
+ void fn_155_37F0();
+ void fn_155_3840();
+ void fn_155_3890();
+ void on_lbl_155_bss_389();
+ /* 0: Checks states to set AC_PROP_0x1 - 1: Unset AC_PROP_0x1*/
+ void fn_155_3900(s32 p0);
+ void setPitchYawToPoint(const mVec3_c &pnt);
+ void fn_155_3BD0(const mVec3_c &);
+ void fn_155_3BE0(const mVec3_c &);
+ void fn_155_3E90();
+ void fn_155_3EC0();
+
private:
/* 0x378 */ dAcRef_c<dTgKiesuTag_c> mTgRef;
- /* 0x384 */ nw4r::g3d::ResFile mRres;
+ /* 0x384 */ nw4r::g3d::ResFile mResFile;
/* 0x388 */ d3d::AnmMdlWrapper mMdl;
/* 0x3F8 */ m3d::anmTexPat_c mAnmTexPat;
/* 0x324 */ dShadowCircle_c mShadow;
@@ -70,15 +98,32 @@ private:
/* 0xAA8 */ u8 field_0xAB0;
/* 0xAB1 */ u8 _0xAB1[0xB14 - 0xAB1];
/* 0xB14 */ mVec3_c mPnts[10];
- /* 0xB8C */ u8 _0xB8C[0xD20 - 0xB8C];
+ /* 0xB8C */ u8 _0xB8C[0xBB0 - 0xB8C];
+ /* 0xBB0 */ mVec3_c field_0xBB0;
+ /* 0xBBC */ mVec3_c field_0xBBC;
+ /* 0xBC8 */ u8 _0xBC8[0xC34 - 0xBC8];
+ /* 0xD32 */ mAng mPitch_0xC34;
+ /* 0xD32 */ mAng mYaw_0xC36;
+ /* 0xC38 */ u8 _0xC38[0xD20 - 0xC38];
/* 0xD20 */ f32 field_0xD20;
/* 0xD24 */ u8 _0xD24[0xD32 - 0xD24];
/* 0xD32 */ s16 mTimer;
- /* 0xD34 */ u8 _0xD34[0xDB1 - 0xD34];
+ /* 0xD34 */ u8 _0xD34[0xD60 - 0xD34];
+ /* 0xD60 */ s16 field_0xD60;
+ /* 0xD62 */ u8 _0xD62[0xDA6 - 0xD62];
+ /* 0xDA6 */ u8 field_0xDA6;
+ /* 0xDA7 */ u8 field_0xDA7;
+ /* 0xDA8 */ u8 field_0xDA8;
+ /* 0xDA9 */ u8 field_0xDA9;
+ /* 0xDAA */ u8 _0xDAA[0xDB1 - 0xDAA];
/* 0xDB1 */ u8 field_0xDB1;
- /* 0xDB2 */ u8 _0xDB2[0xDBC - 0xDB2];
+ /* 0xDB2 */ u8 field_0xDB2;
+ /* 0xDB3 */ u8 _0xDB3[0xDBB - 0xDB3];
+ /* 0xDBB */ u8 field_0xDBB;
/* 0xDBC */ u8 mType;
- /* 0xDBD */ u8 _0xDBD[0xDC2 - 0xDBD];
+ /* 0xDBD */ u8 _0xDBD[0xDC0 - 0xDBD];
+ /* 0xDC2 */ u8 mCurrentAnmTexPat; // blink
+ /* 0xDC1 */ u8 field_0xDC1;
/* 0xDC2 */ u8 mCurrentState;
/* 0xDC3 */ u8 mNextState;
/* 0xDC4 */ u8 _0xDC4[0xDC7 - 0xDC4];
@@ -90,6 +135,10 @@ private:
/* 0xDE0 */ mColor mColor;
/* 0xDE4 */ f32 field_0xDE4;
/* 0xDE8 */ u8 _0xDE8[0xDF0 - 0xDE8];
+
+ // Controlled by dTgKiesuTag_c
+ static bool lbl_155_bss_388;
+ static bool lbl_155_bss_389;
};
#endif
diff --git a/include/d/a/e/d_a_en_base.h b/include/d/a/e/d_a_en_base.h
index 258cc9b7..d94633c6 100644
--- a/include/d/a/e/d_a_en_base.h
+++ b/include/d/a/e/d_a_en_base.h
@@ -77,7 +77,7 @@ public:
void fn_80030400(m3d::mdl_c &, u8, bool, u8);
void fn_800306d0();
void fn_80030700();
-
+ dAcObjBase_c *attackPlayerOrScrapper(f32 biasToScrapper);
static void fn_80030980(m3d::mdl_c &, s32, bool markDirty);
void fn_80030c20(u32 flags, f32, f32, f32, f32);
diff --git a/include/d/col/c/c_cc_d.h b/include/d/col/c/c_cc_d.h
index 384d253d..7d8c49e9 100644
--- a/include/d/col/c/c_cc_d.h
+++ b/include/d/col/c/c_cc_d.h
@@ -680,6 +680,10 @@ public:
mSrc.mInfo.field_0x2 |= val;
}
+ void Set_0x50(u32 val) {
+ field_0x50 = val;
+ }
+
public:
/* 0x1C */ cCcD_SrcGObjTg mSrc;
/* 0x2C */ mVec3_c mAtHitDir;
@@ -1082,6 +1086,9 @@ public:
void OnTgInfo_0x2(u16 val) {
mTg.OnInfo_0x2(val);
}
+ void SetTg_0x50(u16 val) {
+ mTg.Set_0x50(val);
+ }
void SetTg_0x40000000() {
mTg.OnSPrm(0x40000000);
}
@@ -1108,6 +1115,12 @@ public:
void ClrCo_0x400() {
mCo.OffSPrm(0x400);
}
+ void OnCo_0x8000() {
+ mCo.OnSPrm(0x8000);
+ }
+ void ClrCo_0x8000() {
+ mCo.OffSPrm(0x8000);
+ }
void SetCo_0x400() {
mCo.OnSPrm(0x400);
}