mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-19 21:33:07 -04:00
+19
-10
@@ -259,8 +259,10 @@ dPa_followEcallBack::dPa_followEcallBack(u8 param_1, u8 param_2) {
|
||||
void dPa_followEcallBack::execute(JPABaseEmitter* emtr) {
|
||||
if (field_0x12 == 0 && !(mFlag & 2)) {
|
||||
emtr->setGlobalTranslation(mPos->x, mPos->y, mPos->z);
|
||||
if (mAngle != NULL)
|
||||
emtr->setGlobalRotation(JGeometry::TVec3<s16>(mAngle->x, mAngle->y, mAngle->z));
|
||||
if (mAngle != NULL) {
|
||||
JGeometry::TVec3<s16> tmp(mAngle->x, mAngle->y, mAngle->z);
|
||||
emtr->setGlobalRotation(tmp);
|
||||
}
|
||||
}
|
||||
|
||||
if (emtr->isEnableDeleteEmitter()) {
|
||||
@@ -748,21 +750,26 @@ void dPa_control_c::draw(JPADrawInfo* param_1, u8 param_2) {
|
||||
|
||||
/* 8007D1DC-8007D378 .text set__13dPa_control_cFUcUsPC4cXyzPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyz */
|
||||
JPABaseEmitter* dPa_control_c::set(u8 groupID, u16 userID, const cXyz* pos, const csXyz* angle, const cXyz* scale, u8 alpha, dPa_levelEcallBack* pCallBack, s8 setupInfo, const GXColor* prm, const GXColor* env, const cXyz* globalScale) {
|
||||
JPABaseEmitter* emtr = mEmitterMng->createSimpleEmitterID(JGeometry::TVec3<f32>(pos->x, pos->y, pos->z), userID, groupID, getRM_ID(userID), NULL, NULL);
|
||||
JGeometry::TVec3<f32> tmp(pos->x, pos->y, pos->z);
|
||||
JPABaseEmitter* emtr = mEmitterMng->createSimpleEmitterID(tmp, userID, groupID, getRM_ID(userID), NULL, NULL);
|
||||
if (emtr == NULL)
|
||||
return NULL;
|
||||
|
||||
if (angle != NULL)
|
||||
emtr->setGlobalRotation(*(JGeometry::TVec3<s16>*)angle);
|
||||
if (angle != NULL) {
|
||||
JGeometry::TVec3<s16> tmp2(angle->x, angle->y, angle->z);
|
||||
emtr->setGlobalRotation(tmp2);
|
||||
}
|
||||
|
||||
if (scale != NULL)
|
||||
emtr->setGlobalScale(*scale);
|
||||
if (scale != NULL) {
|
||||
JGeometry::TVec3<f32> tmp2(scale->x, scale->y, scale->z);
|
||||
emtr->setGlobalScale(tmp2);
|
||||
}
|
||||
|
||||
emtr->mGlobalPrmColor.a = alpha;
|
||||
if (pCallBack != NULL) {
|
||||
emtr->setEmitterCallBackPtr(pCallBack);
|
||||
pCallBack->setup(emtr, pos, angle, setupInfo);
|
||||
} else if (!!(userID & 0x4000)) {
|
||||
} else if (userID & 0x4000) {
|
||||
emtr->setEmitterCallBackPtr(&mKagero);
|
||||
}
|
||||
|
||||
@@ -770,8 +777,10 @@ JPABaseEmitter* dPa_control_c::set(u8 groupID, u16 userID, const cXyz* pos, cons
|
||||
emtr->setGlobalPrmColor(prm->r, prm->g, prm->b);
|
||||
if (env != NULL)
|
||||
emtr->setGlobalEnvColor(env->r, env->g, env->b);
|
||||
if (globalScale != NULL)
|
||||
emtr->setGlobalParticleScale(*globalScale);
|
||||
if (globalScale != NULL) {
|
||||
JGeometry::TVec3<f32> tmp2(globalScale->x, globalScale->y, globalScale->z);
|
||||
emtr->setGlobalParticleScale(tmp2);
|
||||
}
|
||||
return emtr;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user