diff options
Diffstat (limited to 'src/d/actor/d_a_obj_itamato.cpp')
| -rw-r--r-- | src/d/actor/d_a_obj_itamato.cpp | 66 |
1 files changed, 18 insertions, 48 deletions
diff --git a/src/d/actor/d_a_obj_itamato.cpp b/src/d/actor/d_a_obj_itamato.cpp index d577fda4f3..35f846698e 100644 --- a/src/d/actor/d_a_obj_itamato.cpp +++ b/src/d/actor/d_a_obj_itamato.cpp @@ -11,38 +11,6 @@ #include "JSystem/JHostIO/JORFile.h" #include <cstring> -struct daObj_ItaMato_HIOParam { - /* 0x00 */ f32 attn_offset; - /* 0x04 */ f32 gravity; - /* 0x08 */ f32 scale; - /* 0x0C */ f32 real_shadow_size; - /* 0x10 */ f32 shake_pow; -}; - -class daObj_ItaMato_Param_c { -public: - virtual ~daObj_ItaMato_Param_c() {} - - static daObj_ItaMato_HIOParam const m; -}; - -#if DEBUG -#define PARAM mHIO->mAttr -#define PARAM_CLASS daObj_ItaMato_HIO_c - -class daObj_ItaMato_HIO_c : public mDoHIO_entry_c { -public: - daObj_ItaMato_HIO_c(); - void genMessage(JORMContext* ctx); - void listenPropertyEvent(const JORPropertyEvent*); - - /* 0x8 */ daObj_ItaMato_HIOParam mAttr; -}; -#else -#define PARAM daObj_ItaMato_Param_c::m -#define PARAM_CLASS daObj_ItaMato_Param_c -#endif - daObj_ItaMato_HIOParam const daObj_ItaMato_Param_c::m = { 110.0f, -3.0f, @@ -53,7 +21,7 @@ daObj_ItaMato_HIOParam const daObj_ItaMato_Param_c::m = { #if DEBUG daObj_ItaMato_HIO_c::daObj_ItaMato_HIO_c() { - mAttr = daObj_ItaMato_Param_c::m; + m = daObj_ItaMato_Param_c::m; } void daObj_ItaMato_HIO_c::listenPropertyEvent(const JORPropertyEvent* i_event) { @@ -64,18 +32,18 @@ void daObj_ItaMato_HIO_c::listenPropertyEvent(const JORPropertyEvent* i_event) { switch ((u32)i_event->id) { case 0x40000002: - if (jorFile.open(6, "すべてのファイル(*.*)", NULL, NULL, NULL)) { + if (jorFile.open(6, "すべてのファイル(*.*)\0*.*", NULL, NULL, NULL)) { memset(buffer, 0, sizeof(buffer)); len = 0; - sprintf(buffer + len, "%.3ff,\t// 注目オフセット\n", mAttr.attn_offset); + sprintf(buffer + len, "%.3ff,\t// 注目オフセット\n", m.attn_offset); len = strlen(buffer); - sprintf(buffer + len, "%.3ff,\t// 重力\n", mAttr.gravity); + sprintf(buffer + len, "%.3ff,\t// 重力\n", m.gravity); len = strlen(buffer); - sprintf(buffer + len, "%.3ff,\t// スケ−ル\n", mAttr.scale); + sprintf(buffer + len, "%.3ff,\t// スケ−ル\n", m.scale); len = strlen(buffer); - sprintf(buffer + len, "%.3ff,\t// リアル影サイズ\n", mAttr.real_shadow_size); + sprintf(buffer + len, "%.3ff,\t// リアル影サイズ\n", m.real_shadow_size); len = strlen(buffer); - sprintf(buffer + len, "%.3ff,\t// 揺れパワ−\n", mAttr.shake_pow); + sprintf(buffer + len, "%.3ff,\t// 揺れパワ−\n", m.shake_pow); len = strlen(buffer); jorFile.writeData(buffer, len); jorFile.close(); @@ -88,11 +56,11 @@ void daObj_ItaMato_HIO_c::listenPropertyEvent(const JORPropertyEvent* i_event) { } void daObj_ItaMato_HIO_c::genMessage(JORMContext* ctx) { - ctx->genSlider("注目オフセット ", &mAttr.attn_offset, 0.0f, 1000.0f); - ctx->genSlider("重力 ", &mAttr.gravity, -100.0f, 100.0f); - ctx->genSlider("スケ−ル ", &mAttr.scale, 0.0f, 100.0f); - ctx->genSlider("リアル影サイズ ", &mAttr.real_shadow_size, 0.0f, 10000.0f); - ctx->genSlider("揺れパワ− ", &mAttr.shake_pow, 0.0f, 90.0f); + ctx->genSlider("注目オフセット ", &m.attn_offset, 0.0f, 1000.0f); + ctx->genSlider("重力 ", &m.gravity, -100.0f, 100.0f); + ctx->genSlider("スケ−ル ", &m.scale, 0.0f, 100.0f); + ctx->genSlider("リアル影サイズ ", &m.real_shadow_size, 0.0f, 10000.0f); + ctx->genSlider("揺れパワ− ", &m.shake_pow, 0.0f, 90.0f); ctx->genButton("ファイル書き出し", 0x40000002); } #endif @@ -111,7 +79,7 @@ static dCcD_SrcSph l_ccDSph = { } // mSphAttr }; -static PARAM_CLASS l_HIO; +static OBJ_ITAMATO_HIO_CLASS l_HIO; static char* l_resName = "H_ItaMato"; @@ -255,7 +223,9 @@ int daObj_ItaMato_c::Execute() { } } - dComIfGs_setTmpReg(0xF4FF, dComIfGs_getTmpReg(0xF4FF) + 1); + u8 curRegVal = dComIfGs_getTmpReg(0xF4FF); + curRegVal++; + dComIfGs_setTmpReg(0xF4FF, curRegVal); if (dComIfGp_getAttention()->GetLockonList(0) != NULL) { if (dComIfGp_getAttention()->LockonTruth()) { if (this == dComIfGp_getAttention()->GetLockonList(0)->getActor()) { @@ -311,7 +281,7 @@ int daObj_ItaMato_c::Execute() { cLib_addCalc2(&field_0x9f0[2], 0.0f, 0.125f, 125.0f); setMtx(); attention_info.position = current.pos; - attention_info.position.y += PARAM.attn_offset; + attention_info.position.y += mHIO->m.attn_offset; eyePos = attention_info.position; if (field_0xa16 == 0) { @@ -399,7 +369,7 @@ const char* daObj_ItaMato_c::getResName() { void daObj_ItaMato_c::setSwayParam(fopAc_ac_c* i_actor) { f32 fVar1 = 1.0f; - f32 fVar2[3] = {0.0f, 0.0f, PARAM.shake_pow}; + f32 fVar2[3] = {0.0f, 0.0f, mHIO->m.shake_pow}; field_0xa02 = fopAcM_searchActorAngleY(this, i_actor) - shape_angle.y + 0x8000; field_0x9e8 = 8; |
