mirror of https://github.com/zeldaret/tp.git
d_a_kytag13 matching + small various work (#2826)
* kytag13 matching * pr cleanup
This commit is contained in:
parent
cb08a259a5
commit
e7270bf7ab
|
|
@ -1835,7 +1835,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_kytag08"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_kytag09"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_kytag12"),
|
||||
ActorRel(NonMatching, "d_a_kytag13"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_kytag13"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_kytag15"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_kytag16"),
|
||||
ActorRel(NonMatching, "d_a_mant"),
|
||||
|
|
|
|||
|
|
@ -11,9 +11,11 @@
|
|||
*
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class kytag13_class : public fopAc_ac_c {
|
||||
*/
|
||||
|
||||
class kytag13_class {
|
||||
public:
|
||||
/* 0x000 */ fopAc_ac_c actor;
|
||||
/* 0x568 */ u8 field_0x568[0x574 - 0x568];
|
||||
/* 0x574 */ f32 mSpeed;
|
||||
/* 0x578 */ u16 mMax;
|
||||
|
|
|
|||
|
|
@ -32,36 +32,33 @@ static void vectle_calc(DOUBLE_POS* pos, cXyz* out) {
|
|||
}
|
||||
}
|
||||
|
||||
/* 8085F2B0-80860148 000130 0E98+00 1/1 0/0 0/0 .text
|
||||
* daKytag13_Execute_standard__FP13kytag13_class */
|
||||
// NONMATCHING - some regalloc
|
||||
/* 8085F2B0-80860148 000130 0E98+00 1/1 0/0 0/0 .text daKytag13_Execute_standard__FP13kytag13_class */
|
||||
static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)i_this;
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)&i_this->actor;
|
||||
dKankyo_snow_Packet* snow_packet = g_env_light.mpSnowPacket;
|
||||
camera_class* camera = dComIfGp_getCamera(0);
|
||||
camera_class* camera = (camera_class*)dComIfGp_getCamera(0);
|
||||
fopAc_ac_c* player = dComIfGp_getPlayer(0);
|
||||
DOUBLE_POS sp88;
|
||||
cXyz sp7C;
|
||||
cXyz sp70;
|
||||
|
||||
cXyz spec;
|
||||
cXyz spf8;
|
||||
cXyz sp104;
|
||||
cXyz sp110;
|
||||
cXyz sp11c;
|
||||
cXyz sp64 = dKyw_get_wind_vecpow();
|
||||
cXyz sp60;
|
||||
|
||||
cXyz sp4C;
|
||||
cXyz sp40;
|
||||
|
||||
dBgS_ObjGndChk_All spA0;
|
||||
cXyz sp34;
|
||||
cXyz sp134, sp140, sp14c, sp158;
|
||||
dBgS_ObjGndChk_All gnd_chk;
|
||||
cXyz sp164;
|
||||
f32 zero = 0.0f;
|
||||
|
||||
if (snow_packet == NULL) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
sp34 = player->current.pos;
|
||||
sp34.y += 100.0f;
|
||||
spA0.SetPos(&sp34);
|
||||
sp164 = player->current.pos;
|
||||
sp164.y += 100.0f;
|
||||
gnd_chk.SetPos(&sp164);
|
||||
|
||||
f32 temp_f30 = dComIfG_Bgsp().GroundCross(&spA0);
|
||||
f32 temp_f30 = dComIfG_Bgsp().GroundCross(&gnd_chk);
|
||||
temp_f30 += 5.0f;
|
||||
f32 var_f29;
|
||||
f32 var_f28;
|
||||
|
|
@ -75,38 +72,34 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
}
|
||||
|
||||
snow_packet->field_0x6d74 = camera->lookat.eye;
|
||||
sp7C.z = 0.0f;
|
||||
sp7C.y = 0.0f;
|
||||
sp7C.x = 0.0f;
|
||||
sp110.x = sp110.y = sp110.z = 0.0f;
|
||||
|
||||
cXyz* temp_r27 = dKyw_get_wind_vec();
|
||||
f32 temp_f31 = dKyw_get_wind_pow();
|
||||
|
||||
sp4C.x = 0.0f;
|
||||
sp4C.y = 1000.0f * a_this->scale.y;
|
||||
sp4C.z = 0.0f;
|
||||
sp14c.x = 0.0f;
|
||||
sp14c.y = 1000.0f * a_this->scale.y;
|
||||
sp14c.z = 0.0f;
|
||||
|
||||
mDoMtx_stack_c::transS(a_this->current.pos.x, a_this->current.pos.y, a_this->current.pos.z);
|
||||
mDoMtx_stack_c::ZrotM(a_this->current.angle.z);
|
||||
mDoMtx_stack_c::YrotM(a_this->current.angle.y);
|
||||
mDoMtx_stack_c::XrotM(a_this->current.angle.x);
|
||||
mDoMtx_stack_c::multVec(&sp4C, &sp40);
|
||||
mDoMtx_stack_c::ZrotM((s16)a_this->current.angle.z);
|
||||
mDoMtx_stack_c::YrotM((s16)a_this->current.angle.y);
|
||||
mDoMtx_stack_c::XrotM((s16)a_this->current.angle.x);
|
||||
mDoMtx_stack_c::multVec(&sp14c, &sp158);
|
||||
sp11c = *temp_r27;
|
||||
|
||||
sp70 = *temp_r27;
|
||||
|
||||
dKyr_get_vectle_calc(&sp40, &a_this->current.pos, &sp64);
|
||||
dKyr_get_vectle_calc(&sp158, &a_this->current.pos, &sp64);
|
||||
|
||||
cXyz sp170;
|
||||
sp88.x = camera->lookat.center.x - camera->lookat.eye.x;
|
||||
sp88.y = 0.0;
|
||||
sp88.z = camera->lookat.center.z - camera->lookat.eye.z;
|
||||
vectle_calc(&sp88, &sp170);
|
||||
|
||||
cXyz sp28;
|
||||
vectle_calc(&sp88, &sp28);
|
||||
snow_packet->field_0x6d84 = cM3d_VectorProduct2d(0.0f, 0.0f, -sp11c.x, -sp11c.z, sp170.x, sp170.z);
|
||||
|
||||
snow_packet->field_0x6d84 = cM3d_VectorProduct2d(0.0f, 0.0f, -sp70.x, -sp70.z, sp28.x, sp28.z);
|
||||
|
||||
f32 tmp = fabsf((sp70.x * sp28.x) + (sp70.z * sp28.z));
|
||||
snow_packet->field_0x6d80 = (1.0f - tmp) * temp_f31 * (1.0f - fabsf(0.3f + sp70.y));
|
||||
f32 tmp = fabsf((sp11c.x * sp170.x) + (sp11c.z * sp170.z));
|
||||
snow_packet->field_0x6d80 = (1.0f - tmp) * temp_f31 * (1.0f - fabsf(0.3f + sp11c.y));
|
||||
snow_packet->field_0x6d80 *= fabsf(snow_packet->field_0x6d84);
|
||||
|
||||
for (int i = i_this->field_0x57e - 1; i >= i_this->field_0x57c; i--) {
|
||||
|
|
@ -125,47 +118,37 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
snow_packet->mSnowEff[i].mWindSpeed = (4.0f * i_this->mSpeed) + cM_rndF(6.0f);
|
||||
snow_packet->mSnowEff[i].mGravity = temp_f28;
|
||||
snow_packet->mSnowEff[i].mTimer = 0;
|
||||
snow_packet->mSnowEff[i].mPosition.x = sp40.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mPosition.y = sp40.y - cM_rndF(1000.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mPosition.z = sp40.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = sp40.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = sp40.y - cM_rndF(1000.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = sp40.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mPosition.x = sp158.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mPosition.y = sp158.y - cM_rndF(1000.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mPosition.z = sp158.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = sp158.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = sp158.y - cM_rndF(1000.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = sp158.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mScale = 1.0f;
|
||||
snow_packet->mSnowEff[i].field_0x30 = 1.0f;
|
||||
snow_packet->mSnowEff[i].mPosWaveX = cM_rndF(0xFFFF);
|
||||
snow_packet->mSnowEff[i].mPosWaveZ = cM_rndF(0xFFFF);
|
||||
snow_packet->mSnowEff[i].mPosWaveX = cM_rndF(65536.0f);
|
||||
snow_packet->mSnowEff[i].mPosWaveZ = cM_rndF(65536.0f);
|
||||
snow_packet->mSnowEff[i].mStatus = 1;
|
||||
|
||||
if (strcmp(dComIfGp_getStartStageName(), "D_MN11") == 0 &&
|
||||
dComIfGp_roomControl_getStayNo() == 0)
|
||||
{
|
||||
if (i < 25) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x =
|
||||
1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
1630.0f - cM_rndF(1630.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
4280.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = 1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 1630.0f - cM_rndF(1630.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 4280.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
} else if (i < 50) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x =
|
||||
-1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
1630.0f - cM_rndF(1630.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
4280.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = -1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 1630.0f - cM_rndF(1630.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 4280.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
} else if (i < 75) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x = cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
1680.0f - cM_rndF(1680.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
5000.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 1680.0f - cM_rndF(1680.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 5000.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
} else if (i < 100) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x = cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
750.0f - cM_rndF(750.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
7110.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 750.0f - cM_rndF(750.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 7110.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
@ -211,13 +194,9 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
sp1C.y = cM_ssin(temp_r4_2);
|
||||
sp1C.z = cM_scos(temp_r4_2) * cM_scos(temp_r5_2);
|
||||
|
||||
snow_packet->mSnowEff[i].mPosition.x +=
|
||||
(sp64.x * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mPosition.z +=
|
||||
(sp64.z * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mPosition.y +=
|
||||
(snow_packet->mSnowEff[i].mGravity +
|
||||
(sp64.y * snow_packet->mSnowEff[i].mWindSpeed));
|
||||
snow_packet->mSnowEff[i].mPosition.x += (sp64.x * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mPosition.z += (sp64.z * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mPosition.y += (snow_packet->mSnowEff[i].mGravity + (sp64.y * snow_packet->mSnowEff[i].mWindSpeed));
|
||||
|
||||
snow_packet->mSnowEff[i].mPosition.x += (3.7f * sp1C.x);
|
||||
snow_packet->mSnowEff[i].mPosition.y += (3.7f * sp1C.y);
|
||||
|
|
@ -225,13 +204,9 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
}
|
||||
|
||||
if (snow_packet->mSnowEff[i].mBasePos.y > var_f29) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x +=
|
||||
(sp64.x * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mBasePos.z +=
|
||||
(sp64.z * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mBasePos.y +=
|
||||
(snow_packet->mSnowEff[i].mGravity +
|
||||
(sp64.y * snow_packet->mSnowEff[i].mWindSpeed));
|
||||
snow_packet->mSnowEff[i].mBasePos.x += (sp64.x * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mBasePos.z += (sp64.z * snow_packet->mSnowEff[i].mWindSpeed);
|
||||
snow_packet->mSnowEff[i].mBasePos.y += (snow_packet->mSnowEff[i].mGravity + (sp64.y * snow_packet->mSnowEff[i].mWindSpeed));
|
||||
|
||||
snow_packet->mSnowEff[i].mBasePos.x += (3.0f * sp1C.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y += (3.0f * sp1C.y);
|
||||
|
|
@ -239,20 +214,18 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
}
|
||||
|
||||
cLib_addCalc(&snow_packet->mSnowEff[i].mPosWaveX,
|
||||
snow_packet->mSnowEff[i].mPosWaveX + cM_rndF(3000.0f), 0.25f, 1500.0f,
|
||||
0.001f);
|
||||
snow_packet->mSnowEff[i].mPosWaveX + cM_rndF(3000.0f), 0.25f, 1500.0f, 0.001f);
|
||||
cLib_addCalc(&snow_packet->mSnowEff[i].mPosWaveZ,
|
||||
snow_packet->mSnowEff[i].mPosWaveZ + cM_rndF(3000.0f), 0.25f, 1500.0f,
|
||||
0.001f);
|
||||
snow_packet->mSnowEff[i].mPosWaveZ + cM_rndF(3000.0f), 0.25f, 1500.0f, 0.001f);
|
||||
|
||||
sp60.y = snow_packet->mSnowEff[i].mPosition.y;
|
||||
if (sp60.y < var_f28) {
|
||||
sp134.y = snow_packet->mSnowEff[i].mPosition.y;
|
||||
if (sp134.y < var_f28) {
|
||||
snow_packet->mSnowEff[i].mPosition.y = var_f28;
|
||||
snow_packet->mSnowEff[i].mStatus = 2;
|
||||
}
|
||||
|
||||
sp60.y = snow_packet->mSnowEff[i].mBasePos.y;
|
||||
if (sp60.y < var_f29) {
|
||||
sp134.y = snow_packet->mSnowEff[i].mBasePos.y;
|
||||
if (sp134.y < var_f29) {
|
||||
snow_packet->mSnowEff[i].mBasePos.y = var_f29;
|
||||
snow_packet->mSnowEff[i].mStatus = 2;
|
||||
}
|
||||
|
|
@ -261,12 +234,9 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
cLib_addCalc(&snow_packet->mSnowEff[i].mScale, 0.0f, 0.25f, 0.05f, 0.0001f);
|
||||
|
||||
if (snow_packet->mSnowEff[i].mScale <= 0.0001f) {
|
||||
snow_packet->mSnowEff[i].mPosition.x =
|
||||
sp40.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mPosition.y =
|
||||
sp40.y - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mPosition.z =
|
||||
sp40.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mPosition.x = sp158.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mPosition.y = sp158.y - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mPosition.z = sp158.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mStatus = 1;
|
||||
}
|
||||
} else {
|
||||
|
|
@ -277,62 +247,52 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
cLib_addCalc(&snow_packet->mSnowEff[i].field_0x30, 0.0f, 0.25f, 0.05f, 0.0001f);
|
||||
|
||||
if (snow_packet->mSnowEff[i].field_0x30 <= 0.0001f) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x =
|
||||
sp40.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = sp40.y - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
sp40.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = sp158.x + cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = sp158.y - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = sp158.z + cM_rndFX(500.0f * a_this->scale.z);
|
||||
|
||||
if (strcmp(dComIfGp_getStartStageName(), "D_MN11") == 0 &&
|
||||
dComIfGp_roomControl_getStayNo() == 0)
|
||||
{
|
||||
if (
|
||||
strcmp(dComIfGp_getStartStageName(), "D_MN11") == 0 &&
|
||||
dComIfGp_roomControl_getStayNo() == 0
|
||||
) {
|
||||
if (i < 20) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x =
|
||||
1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
1630.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
4280.0f + cM_rndFX(200.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = 1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 1630.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 4280.0f + cM_rndFX(200.0f * a_this->scale.z);
|
||||
} else if (i < 50) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x =
|
||||
-1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
1630.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
4280.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = -1680.0f + cM_rndFX(200.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 1630.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 4280.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
} else if (i < 75) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x =
|
||||
cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
1680.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
5000.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 1680.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 5000.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
} else if (i < 100) {
|
||||
snow_packet->mSnowEff[i].mBasePos.x =
|
||||
cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y =
|
||||
750.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z =
|
||||
7110.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
snow_packet->mSnowEff[i].mBasePos.x = cM_rndFX(500.0f * a_this->scale.x);
|
||||
snow_packet->mSnowEff[i].mBasePos.y = 750.0f - cM_rndF(10.0f * a_this->scale.y);
|
||||
snow_packet->mSnowEff[i].mBasePos.z = 7110.0f + cM_rndFX(100.0f * a_this->scale.z);
|
||||
}
|
||||
}
|
||||
|
||||
snow_packet->mSnowEff[i].mStatus = 1;
|
||||
}
|
||||
} else {
|
||||
snow_packet->mSnowEff[i].field_0x30 = 0.5f;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
if (dComIfGp_roomControl_getStayNo() == 5) {
|
||||
if (snow_packet->mSnowEff[i].mBasePos.z > -5560.0f &&
|
||||
snow_packet->mSnowEff[i].mBasePos.y < 925.0f)
|
||||
{
|
||||
if (
|
||||
snow_packet->mSnowEff[i].mBasePos.z > -5560.0f &&
|
||||
snow_packet->mSnowEff[i].mBasePos.y < 925.0f
|
||||
) {
|
||||
snow_packet->mSnowEff[i].field_0x30 = 0.0f;
|
||||
}
|
||||
if (snow_packet->mSnowEff[i].mPosition.z > -5560.0f &&
|
||||
snow_packet->mSnowEff[i].mPosition.y < 925.0f)
|
||||
{
|
||||
|
||||
if (
|
||||
snow_packet->mSnowEff[i].mPosition.z > -5560.0f &&
|
||||
snow_packet->mSnowEff[i].mPosition.y < 925.0f
|
||||
) {
|
||||
snow_packet->mSnowEff[i].mScale = 0.0f;
|
||||
}
|
||||
}
|
||||
|
|
@ -343,7 +303,8 @@ static int daKytag13_Execute_standard(kytag13_class* i_this) {
|
|||
|
||||
/* 808601C0-80860200 001040 0040+00 1/0 0/0 0/0 .text daKytag13_Execute__FP13kytag13_class */
|
||||
static int daKytag13_Execute(kytag13_class* i_this) {
|
||||
if (i_this->home.roomNo == dComIfGp_roomControl_getStayNo()) {
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)&i_this->actor;
|
||||
if (a_this->home.roomNo == dComIfGp_roomControl_getStayNo()) {
|
||||
daKytag13_Execute_standard(i_this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -203,6 +203,46 @@ enum grDS_RES_File_ID {
|
|||
/* 0x62 */ EVT_EVENT_LIST = 0x62,
|
||||
};
|
||||
|
||||
enum Bou3_Joint {
|
||||
/* 0x00 */ JNT_CENTER,
|
||||
/* 0x01 */ JNT_BACKBONE1,
|
||||
/* 0x02 */ JNT_BACKBONE2,
|
||||
/* 0x03 */ JNT_NECK,
|
||||
/* 0x04 */ JNT_HEAD,
|
||||
/* 0x05 */ JNT_CHIN,
|
||||
/* 0x06 */ JNT_MAYU_L,
|
||||
/* 0x07 */ JNT_MAYU_R,
|
||||
/* 0x08 */ JNT_MOUTH,
|
||||
/* 0x09 */ JNT_SHOULDERL,
|
||||
/* 0x0A */ JNT_ARML1,
|
||||
/* 0x0B */ JNT_ARML2,
|
||||
/* 0x0C */ JNT_HANDL,
|
||||
/* 0x0D */ JNT_FINGERL1,
|
||||
/* 0x0E */ JNT_THAMBL,
|
||||
/* 0x0F */ JNT_SHOULDERR,
|
||||
/* 0x10 */ JNT_ARMR1,
|
||||
/* 0x11 */ JNT_ARMR2,
|
||||
/* 0x12 */ JNT_HANDR,
|
||||
/* 0x13 */ JNT_FINGERR1,
|
||||
/* 0x14 */ JNT_THAMBR,
|
||||
/* 0x15 */ JNT_HARA,
|
||||
/* 0x16 */ JNT_WAIST,
|
||||
/* 0x17 */ JNT_CLOTCHL,
|
||||
/* 0x18 */ JNT_LEGL1,
|
||||
/* 0x19 */ JNT_LEGL2,
|
||||
/* 0x1A */ JNT_FOOTL,
|
||||
/* 0x1B */ JNT_CLOTCHR,
|
||||
/* 0x1C */ JNT_LEGR1,
|
||||
/* 0x1D */ JNT_LEGR2,
|
||||
/* 0x1E */ JNT_FOOTR,
|
||||
/* 0x1F */ JNT_HARA_TOPF,
|
||||
/* 0x20 */ JNT_HARA_UNDERF,
|
||||
/* 0x21 */ JNT_HARA_UNDERL,
|
||||
/* 0x22 */ JNT_HARA_UNDERR,
|
||||
/* 0x23 */ JNT_OBIL,
|
||||
/* 0x24 */ JNT_OBIR,
|
||||
};
|
||||
|
||||
/* 80B41E18-80B41E1C -00001 0004+00 1/2 0/0 0/0 .data l_resALink */
|
||||
static char* l_resALink = "alSumou";
|
||||
|
||||
|
|
@ -2674,7 +2714,7 @@ bool daNpcWrestler_c::checkOutOfArenaW() {
|
|||
}
|
||||
|
||||
int jointNo = mType == 0 ? 0x1A : 0x18;
|
||||
int jointNo2 = mType == 0 ? 0x1E : 0x1B;
|
||||
int jointNo2 = mType == 0 ? JNT_FOOTR : 0x1B;
|
||||
f32 fVar1 = std::pow(mArenaExtent, 2);
|
||||
|
||||
field_0x89c = getJointPos(jointNo);
|
||||
|
|
@ -3440,10 +3480,9 @@ bool daNpcWrestler_c::sumouTackleShock(void* param_1) {
|
|||
|
||||
/* 80B38C90-80B39334 009AF0 06A4+00 2/0 0/0 0/0 .text sumouTackleStagger__15daNpcWrestler_cFPv */
|
||||
bool daNpcWrestler_c::sumouTackleStagger(void* param_1) {
|
||||
// NONMATCHING - regalloc
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
int jointNo = mType == 0 ? 0x1A : 0x18;
|
||||
int jointNo2 = mType == 0 ? 0x1E : 0x1B;
|
||||
int jointNo2 = mType == 0 ? JNT_FOOTR : 0x1B;
|
||||
f32 fVar1, fVar2;
|
||||
|
||||
switch (field_0xe96) {
|
||||
|
|
@ -3494,6 +3533,7 @@ bool daNpcWrestler_c::sumouTackleStagger(void* param_1) {
|
|||
case 3:
|
||||
player->setSumouForceGraspCancel();
|
||||
break;
|
||||
|
||||
default:
|
||||
JUT_ASSERT(4311, FALSE);
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -110,7 +110,6 @@ void daObjIce_s_c::setBaseMtx() {
|
|||
// reg alloc
|
||||
static void rideCallBack(dBgW* param_1, fopAc_ac_c* param_2, fopAc_ac_c* param_3) {
|
||||
(void)param_1;
|
||||
cXyz* icePos;
|
||||
daObjIce_s_c* ice = (daObjIce_s_c*)param_2;
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
cXyz& playerPos = fopAcM_GetPosition(player);
|
||||
|
|
@ -126,7 +125,7 @@ static void rideCallBack(dBgW* param_1, fopAc_ac_c* param_2, fopAc_ac_c* param_3
|
|||
ice->Check_LinkRideOn(playerPos);
|
||||
}
|
||||
|
||||
icePos = &fopAcM_GetPosition(param_2);
|
||||
cXyz* icePos = &fopAcM_GetPosition(param_2);
|
||||
if (pBallCenter != NULL && icePos != NULL && icePos->absXZ(*pBallCenter) < ice->field_0x5c8.x * 600.0f) {
|
||||
ice->field_0x5d8 = 0x300;
|
||||
ice->field_0x5a4 = -11.0f;
|
||||
|
|
|
|||
|
|
@ -398,7 +398,7 @@ void dGrass_data_c::hitCheck(int i_roomNo, u16 i_particleName) {
|
|||
if (field_0x02 >= 16) {
|
||||
dGrass_anm_c* anm_p = daGrass_c::getGrass()->getAnm(field_0x02);
|
||||
s16 spC = anm_p->m_angY & 0xE000;
|
||||
int sp10 = field_0x02 & 15;
|
||||
int sp10 = (field_0x02 & 15) & 0xFFFF;
|
||||
dGrass_anm_c* temp_r27 = daGrass_c::getGrass()->getAnm(sp10);
|
||||
|
||||
if (anm_p->m_state == 2) {
|
||||
|
|
@ -481,6 +481,8 @@ dGrass_packet_c::dGrass_packet_c() {
|
|||
m_Mkusa_9q_cDL_size = 0xC0;
|
||||
field_0x1d714 = 0;
|
||||
|
||||
OS_REPORT("草群メモリ=%fK\n", 117.7734375f);
|
||||
|
||||
m_deleteRoom = &dGrass_packet_c::deleteRoom;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue