Merge pull request #504 from Sage-of-Mirrors/obj_mknjd

Majority of daObjMknjD Done
This commit is contained in:
Jasper St. Pierre
2023-10-04 08:35:03 -07:00
committed by GitHub
16 changed files with 1185 additions and 180 deletions
@@ -4,6 +4,7 @@
#include "JSystem/J3DGraphAnimator/J3DSkinDeform.h"
#include "JSystem/J3DGraphBase/J3DPacket.h"
#include "JSystem/J3DGraphBase/J3DVertex.h"
#include "dolphin/mtx/mtx.h"
#include "dolphin/mtx/mtxvec.h"
#include "dolphin/types.h"
+25 -5
View File
@@ -538,17 +538,17 @@ private:
}; // Size: 0x1C
inline u16 calcZModeID(u8 param_0, u8 param_1, u8 param_2) {
return ((param_1 * 2) & 0x1FE) + (param_0 * 0x10) + param_2;
return (param_1 * 2) + (param_0 * 0x10) + param_2;
}
extern u8 j3dZModeTable[96];
extern J3DZModeInfo j3dZModeTable[2];
struct J3DZMode {
J3DZMode() { mZModeID = j3dDefaultZModeID; }
u8 getCompareEnaable() const { return j3dZModeTable[mZModeID * 3]; }
u8 getFunc() const { return j3dZModeTable[mZModeID * 3 + 1]; }
u8 getUpdateEnable() const { return j3dZModeTable[mZModeID * 3 + 2]; }
u8 getCompareEnaable() const { return j3dZModeTable[mZModeID].mCompareEnable; }
u8 getFunc() const { return j3dZModeTable[mZModeID].mFunc; }
u8 getUpdateEnable() const { return j3dZModeTable[mZModeID].mUpdateEnable; }
void setZModeInfo(const J3DZModeInfo& info) {
mZModeID = calcZModeID(info.mCompareEnable, info.mFunc, info.mUpdateEnable);
@@ -558,6 +558,14 @@ struct J3DZMode {
J3DGDSetZMode(getCompareEnaable(), GXCompare(getFunc()), getUpdateEnable());
}
void setCompareEnable(u8 i_compare) {
mZModeID = calcZModeID(i_compare, j3dZModeTable[mZModeID].mFunc, j3dZModeTable[mZModeID].mUpdateEnable);
}
void setUpdateEnable(u8 i_enable) {
mZModeID = calcZModeID(j3dZModeTable[mZModeID].mCompareEnable, j3dZModeTable[mZModeID].mFunc, i_enable);
}
/* 0x0 */ u16 mZModeID;
};
@@ -572,6 +580,18 @@ struct J3DBlend : public J3DBlendInfo {
void load(u8 ditherEnable) {
J3DGDSetBlendMode(getBlendMode(), getSrcFactor(), getDstFactor(), getLogicOp(), ditherEnable);
}
void setType(u8 i_type) {
mBlendMode = i_type;
}
void setSrcFactor(u8 i_src) {
mSrcFactor = i_src;
}
void setDstFactor(u8 i_dst) {
mDstFactor = i_dst;
}
};
extern const J3DFogInfo j3dDefaultFogInfo;
+11 -1
View File
@@ -85,12 +85,22 @@ public:
JPASetRMtxTVecfromMtx(mtx, mGlobalRotation, mGlobalTranslation);
}
void setGlobalTranslation(f32 x, f32 y, f32 z) { mGlobalTranslation.set(x, y, z); }
void setGlobalParticleScale(const JGeometry::TVec3<float>& scale) {
void setGlobalScale(const JGeometry::TVec3<float>& scale) {
mGlobalScale.set(scale);
mGlobalScale2D.set(scale);
}
void setGlobalParticleScale(const JGeometry::TVec3<float>& scale) {
mGlobalScale.set(scale);
}
void setGlobalDynamicsScale(const JGeometry::TVec3<float>& scale) {
mGlobalScale2D.set(scale);
}
void setMaxFrame(s32 maxFrame) { mMaxFrame = maxFrame; }
void setVolumeSweep(float i_volSweep) { mVolumeSweep = i_volSweep; }
void setLifeTime(s16 i_lifeTime) { mLifeTime = i_lifeTime; }
void setRate(float i_rate) { mRate = i_rate; }
void stopCreateParticle() { setStatus(JPAEmtrStts_StopEmit); }
void becomeInvalidEmitter() {
+3
View File
@@ -96,6 +96,9 @@ public:
void changeDemoMoveAngle(s16 angle) { mDemo.setMoveAngle(angle); }
u8 getCutType() const { return mAttackState; }
void onPlayerNoDraw() { field_0x29c |= 0x8000000; }
void offPlayerNoDraw() { field_0x29c &= ~0x8000000; }
virtual MtxP getLeftHandMatrix() = 0;
virtual MtxP getRightHandMatrix() = 0;
virtual void getGroundY() = 0;
+42 -9
View File
@@ -902,6 +902,10 @@ inline fopAc_ac_c* dComIfGp_getPlayer(int idx) {
return g_dComIfG_gameInfo.play.getPlayer(idx);
}
inline fopAc_ac_c* dComIfGp_getCb1Player() {
return g_dComIfG_gameInfo.play.getPlayerPtr(1);
}
inline roomRead_class* dComIfGp_getStageRoom() {
return g_dComIfG_gameInfo.play.getStage().getRoom();
}
@@ -1274,6 +1278,10 @@ inline fopAc_ac_c* dComIfGp_event_getTalkPartner() {
return g_dComIfG_gameInfo.play.getEvent().convPId(t);
}
inline void dComIfGp_event_setTalkPartner(void* i_actor) {
g_dComIfG_gameInfo.play.getEvent().setPtT(i_actor);
}
inline fopAc_ac_c* dComIfGp_event_getItemPartner() {
u32 i = g_dComIfG_gameInfo.play.getEvent().mPtItem;
return g_dComIfG_gameInfo.play.getEvent().convPId(i);
@@ -1297,7 +1305,7 @@ inline s32 dComIfGp_evmng_getEventPrio(s16 eventIdx) {
return dComIfGp_getEventManager().getEventPrio(eventIdx);
}
inline s16 dComIfGp_evmng_getEventIdx(char* pName, u8 evNo) {
inline s16 dComIfGp_evmng_getEventIdx(const char* pName, u8 evNo) {
return dComIfGp_getEventManager().getEventIdx(pName, evNo);
}
@@ -1313,7 +1321,7 @@ inline f32* dComIfGp_evmng_getMyFloatP(int staffIdx, const char* name) {
return reinterpret_cast<f32*>(dComIfGp_getEventManager().getMySubstanceP(staffIdx, name, 0)); //type 0 is float
}
inline Vec* dComIfGp_evmng_getMyVec3dP(int staffIdx, const char* name) {
inline Vec* dComIfGp_evmng_getMyXyzP(int staffIdx, const char* name) {
return reinterpret_cast<Vec*>(dComIfGp_getEventManager().getMySubstanceP(staffIdx, name, 1)); //type 1 is vec3f
}
@@ -1325,6 +1333,10 @@ inline char* dComIfGp_evmng_getMyStringP(int staffIdx, const char* name) {
return reinterpret_cast<char*>(dComIfGp_getEventManager().getMySubstanceP(staffIdx, name, 4)); //type 4 is string
}
inline BOOL dComIfGp_evmng_startCheck(s16 eventID) {
return dComIfGp_getEventManager().startCheck(eventID);
}
inline BOOL dComIfGp_evmng_startCheck(const char* pName) {
return dComIfGp_getEventManager().startCheckOld(pName);
}
@@ -1450,6 +1462,7 @@ inline void dComIfGd_setListP1() {
inline void dComIfGd_setListBG() {
g_dComIfG_gameInfo.drawlist.setOpaListBG();
g_dComIfG_gameInfo.drawlist.setXluListBG();
}
inline void dComIfGd_setXluListBG() {
@@ -1559,14 +1572,14 @@ inline JPABaseEmitter* dComIfGp_particle_set(u16 particleID, const cXyz* pos, co
pPrmColor, pEnvColor, pScale2D);
}
inline JPABaseEmitter* dComIfGp_particle_set(u16 particleID, const cXyz* pos, const csXyz* angle,
const cXyz* scale) {
return dComIfGp_particle_set(particleID, pos, angle, scale, 0xFF, NULL, -1, NULL, NULL, NULL);
}
inline void dComIfGp_particle_setStripes(u16 particleID, cXyz* pos, csXyz* angle, cXyz* scale, u8 param_4, u16 param_5) {
inline JPABaseEmitter* dComIfGp_particle_setP1(u16 particleID, const cXyz* pos, const csXyz* angle,
const cXyz* scale, u8 alpha,
dPa_levelEcallBack* pCallBack, s8 setupInfo,
const GXColor* pPrmColor, const GXColor* pEnvColor,
const cXyz* pScale2D) {
dPa_control_c* pParticle = g_dComIfG_gameInfo.play.getParticle();
pParticle->setNormalStripes(particleID, pos, angle, scale, param_4, param_5);
return pParticle->setNormalP1(particleID, pos, angle, scale, alpha, pCallBack, setupInfo,
pPrmColor, pEnvColor, pScale2D);
}
inline JPABaseEmitter* dComIfGp_particle_setToon(u16 particleID, const cXyz* pos,
@@ -1579,6 +1592,26 @@ inline JPABaseEmitter* dComIfGp_particle_setToon(u16 particleID, const cXyz* pos
pPrmColor, pEnvColor, pScale2D);
}
inline JPABaseEmitter* dComIfGp_particle_setProjection(u16 particleID, const cXyz* pos, const csXyz* angle,
const cXyz* scale, u8 alpha,
dPa_levelEcallBack* pCallBack, s8 setupInfo,
const GXColor* pPrmColor, const GXColor* pEnvColor,
const cXyz* pScale2D) {
dPa_control_c* pParticle = g_dComIfG_gameInfo.play.getParticle();
return pParticle->setProjection(particleID, pos, angle, scale, alpha, pCallBack, setupInfo,
pPrmColor, pEnvColor, pScale2D);
}
inline JPABaseEmitter* dComIfGp_particle_set(u16 particleID, const cXyz* pos, const csXyz* angle,
const cXyz* scale) {
return dComIfGp_particle_set(particleID, pos, angle, scale, 0xFF, NULL, -1, NULL, NULL, NULL);
}
inline void dComIfGp_particle_setStripes(u16 particleID, cXyz* pos, csXyz* angle, cXyz* scale, u8 param_4, u16 param_5) {
dPa_control_c* pParticle = g_dComIfG_gameInfo.play.getParticle();
pParticle->setNormalStripes(particleID, pos, angle, scale, param_4, param_5);
}
inline void dComIfGp_particle_calc3D() {
g_dComIfG_gameInfo.play.getParticle()->calc3D();
}
+3 -2
View File
@@ -69,7 +69,7 @@ public:
void remove();
void getStageEventDt();
void nextStageEventDt(void*);
void getPId(void*);
int getPId(void*);
fopAc_ac_c * convPId(unsigned int);
void getTactFreeMStick(int);
void getTactFreeCStick(int);
@@ -78,6 +78,7 @@ public:
u8 getTalkXYBtn() { return mTalkButton; }
bool chkTalkXY() { return mTalkButton == 1 || mTalkButton == 2 || mTalkButton == 3; }
void setPtI_Id(u32 id) { mPtItem = id; }
void setPtT(void* i_actor) { mPtTalk = getPId(i_actor); }
u8 getPreItemNo() { return mItemNo; }
u16 chkEventFlag(u16 flag) { return flag & mEventFlag; }
@@ -116,4 +117,4 @@ public:
/* 0xEE */ u8 mTactFreeCStick[4];
}; // Size = 0xF4
#endif /* D_EVENT_D_EVENT_H */
#endif /* D_EVENT_D_EVENT_H */
+2 -2
View File
@@ -37,7 +37,7 @@ public:
void getEventData(s16);
s16 getEventIdx(const char*, u8);
void order(s16);
void startCheck(s16);
BOOL startCheck(s16);
BOOL startCheckOld(const char*);
BOOL endCheck(s16);
BOOL endCheckOld(const char*);
@@ -76,4 +76,4 @@ inline int dEvmng_strcmp(const char* s1, const char* s2) {
return strcmp(s1, s2);
}
#endif /* D_EVENT_D_EVENT_MANAGER_H */
#endif /* D_EVENT_D_EVENT_MANAGER_H */
+15 -2
View File
@@ -370,12 +370,25 @@ public:
const cXyz* pScale2D) {
return set(0, particleID, pos, angle, scale, alpha, pCallBack, setupInfo, pPrmColor, pEnvColor, pScale2D);
}
JPABaseEmitter* setToon(u16 particleID, const cXyz* pos, const csXyz* angle,
JPABaseEmitter* setNormalP1(u16 particleID, const cXyz* pos, const csXyz* angle,
const cXyz* scale, u8 alpha, dPa_levelEcallBack* pCallBack,
s8 setupInfo, const GXColor* pPrmColor, const GXColor* pEnvColor,
const cXyz* pScale2D) {
return set(1, particleID, pos, angle, scale, alpha, pCallBack, setupInfo, pPrmColor, pEnvColor, pScale2D);
}
JPABaseEmitter* setToon(u16 particleID, const cXyz* pos, const csXyz* angle,
const cXyz* scale, u8 alpha, dPa_levelEcallBack* pCallBack,
s8 setupInfo, const GXColor* pPrmColor, const GXColor* pEnvColor,
const cXyz* pScale2D) {
return set(2, particleID, pos, angle, scale, alpha, pCallBack, setupInfo, pPrmColor, pEnvColor, pScale2D);
}
JPABaseEmitter* setProjection(u16 particleID, const cXyz* pos, const csXyz* angle,
const cXyz* scale, u8 alpha, dPa_levelEcallBack* pCallBack,
s8 setupInfo, const GXColor* pPrmColor, const GXColor* pEnvColor,
const cXyz* pScale2D) {
return set(4, particleID, pos, angle, scale, alpha, pCallBack, setupInfo, pPrmColor, pEnvColor, pScale2D);
}
void drawModelParticle() { mModelCtrl->draw(); }
@@ -392,4 +405,4 @@ public:
/* 0x001C */ dPa_simpleEcallBack mSimpleCallbacks[25];
};
#endif /* D_PARTICLE */
#endif /* D_PARTICLE */
+5 -11
View File
@@ -119,12 +119,12 @@ public:
void setEventId(s16 id) { mEventId = id; }
void setCondition(u16 condition) { mCondition = condition; }
u16 getCondition() { return mCondition; }
void setArchiveName(char* name) { mArchiveName = name; }
//void setArchiveName(char* name) { mArchiveName = name; }
u8 getMapToolId() { return mMapToolId; }
s16 getEventId() { return mEventId; }
s16 getIdx() { return mIndex; }
void setIdx(u8 i_idx) { mIndex = i_idx; }
char* getArchiveName() { return mArchiveName; }
//char* getArchiveName() { return mArchiveName; }
BOOL chkCondition(u16 condition) { return (mCondition & condition) == condition; }
void onCondition(u16 cond) { mCondition |= cond; }
void offCondition(u16 cond) { mCondition &= ~cond; }
@@ -135,20 +135,14 @@ public:
bool checkCommandDemoAccrpt() { return mCommand == 2; }
bool checkCommandCatch() { return mCommand == 6; }
void suspendProc(void* actor) {
if (field_0x10 != NULL) {
field_0x14(actor);
}
}
/* 0x04 */ u16 mCommand;
/* 0x06 */ u16 mCondition;
/* 0x08 */ s16 mEventId;
/* 0x0A */ u8 mMapToolId;
/* 0x0B */ s8 mIndex;
/* 0x0C */ char* mArchiveName;
/* 0x10 */ u8 field_0x10;
/* 0x14 */ void (*field_0x14)(void*);
/* 0x0C */ s16 (*mpEventCB)(void*, int);
/* 0x10 */ s16 (*mpCheckCB)(void*, int);
/* 0x14 */ s16 (*mpPhotoCB)(void*, int);
}; // Size = 0x18
struct actor_place {
+1 -1
View File
@@ -19,7 +19,7 @@ typedef struct base_process_class {
/* 0x0A */ s8 mUnk0;
/* 0x0B */ u8 mPauseFlag;
/* 0x0C */ s8 mInitState;
/* 0x0D */ u8 mUnk2;
/* 0x0D */ s8 mCreateResult;
/* 0x0E */ s16 mProfName;
/* 0x10 */ process_profile_definition* mpProf;
/* 0x14 */ struct create_request* mpCtRq;
+4
View File
@@ -70,6 +70,10 @@ inline void* fpcM_LyJudge(process_node_class* i_node, fpcLyIt_JudgeFunc i_func,
return fpcLyIt_Judge(&i_node->mLayer, i_func, i_data);
}
inline s8 fpcM_CreateResult(const void* pActor) {
return ((base_process_class*)pActor)->mCreateResult;
}
void fpcM_Draw(void* pProc);
s32 fpcM_DrawIterater(fpcM_DrawIteraterFunc pFunc);
s32 fpcM_Execute(void* pProc);
+8
View File
@@ -39,6 +39,10 @@ int mDoAud_load1stDynamicWave();
extern JKRSolidHeap* g_mDoAud_audioHeap;
inline void mDoAud_bgmStart(u32 param_0) {
mDoAud_zelAudio_c::getInterface()->bgmStart(param_0, 0, 0);
}
inline void mDoAud_bgmStop(u32 param_0) {
mDoAud_zelAudio_c::getInterface()->bgmStop(param_0, 0);
}
@@ -51,6 +55,10 @@ inline void mDoAud_load2ndDynamicWave() {
mDoAud_zelAudio_c::getInterface()->load2ndDynamicWave();
}
inline void mDoAud_taktModeMuteOff() {
mDoAud_zelAudio_c::getInterface()->taktModeMuteOff();
}
inline void mDoAud_resetProcess() {
if (mDoAud_zelAudio_c::isResetFlag()) {
mDoAud_zelAudio_c::getInterface()->resetProcess();
+10 -10
View File
@@ -191,7 +191,7 @@ void daArrow_c::setBlur() {
/* 800D4994-800D4A04 .text createBlur__9daArrow_cFv */
void daArrow_c::createBlur() {
if (!mPtclFollowCb.getEmitter()) {
dComIfGp_particle_setToon(0x48, &current.pos, NULL, NULL, 0xFF, &mPtclFollowCb, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x48, &current.pos, NULL, NULL, 0xFF, &mPtclFollowCb, -1, NULL, NULL, NULL);
}
}
@@ -393,7 +393,7 @@ bool daArrow_c::check_water_in() {
if (mArrowType == TYPE_FIRE) {
mInWaterTimer = 1;
dComIfGp_particle_setToon(0x35A, &waterHitPos, NULL, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x35A, &waterHitPos, NULL, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
if (field_0x6e4 == 0) {
dKy_arrowcol_chg_on(&current.pos, 0);
}
@@ -407,7 +407,7 @@ bool daArrow_c::check_water_in() {
dKy_arrowcol_chg_on(&current.pos, 1);
}
} else if (mArrowType == TYPE_LIGHT) {
dComIfGp_particle_setToon(0x2A1, &waterHitPos, NULL, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x2A1, &waterHitPos, NULL, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
fopAcM_seStartCurrent(this, JA_SE_OBJ_LIGHT_ARW_EFF, 0);
if (field_0x6e4 == 0) {
dKy_arrowcol_chg_on(&current.pos, 2);
@@ -691,7 +691,7 @@ BOOL daArrow_c::procMove() {
mDoMtx_stack_c::ZXYrotM(temp10.x, temp10.y, 0);
cMtx_copy(mDoMtx_stack_c::get(), field_0x6b4);
dComIfGp_particle_setToon(0x2A1, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x2A1, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
fopAcM_seStartCurrent(this, JA_SE_OBJ_LIGHT_ARW_EFF, 0);
fopAcM_delete(this);
} else {
@@ -792,15 +792,15 @@ BOOL daArrow_c::procMove() {
cMtx_copy(mDoMtx_stack_c::get(), field_0x6b4);
if (mArrowType == TYPE_FIRE) {
dComIfGp_particle_setToon(0x29A, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setToon(0x29B, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x29A, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x29B, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
fopAcM_seStartCurrent(this, JA_SE_OBJ_FIRE_ARW_EFF, 0);
field_0x698 = 0;
} else if (mArrowType == TYPE_ICE) {
if (dComIfG_Bgsp()->ChkGrpInf(mLinChk, 0x200)) {
fopAcM_create(PROC_Obj_Magmarock, NULL, &field_0x6a8, current.roomNo, NULL, NULL, -1, NULL);
} else {
dComIfGp_particle_setToon(0x29E, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x29E, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
fopAcM_createChild(
PROC_ARROW_ICEEFF, fpcM_GetID(this),
@@ -811,7 +811,7 @@ BOOL daArrow_c::procMove() {
fopAcM_seStartCurrent(this, JA_SE_OBJ_ICE_ARW_EFF, 0);
}
} else if (mArrowType == TYPE_LIGHT) {
dComIfGp_particle_setToon(0x2A1, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0x2A1, &field_0x6a8, &temp10, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
fopAcM_seStartCurrent(this, JA_SE_OBJ_LIGHT_ARW_EFF, 0);
field_0x698 = 0;
}
@@ -829,7 +829,7 @@ BOOL daArrow_c::procMove() {
csXyz temp9;
cM3d_CalcVecZAngle(triPla->mNormal, &temp9);
dComIfGp_particle_setToon(0xC, &field_0x6a8, &temp9, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
dComIfGp_particle_setP1(0xC, &field_0x6a8, &temp9, NULL, 0xFF, NULL, -1, NULL, NULL, NULL);
fopAcM_seStartCurrent(this, JA_SE_LK_ARROW_REBOUND, mtrlSndId);
} else {
fopAcM_seStartCurrent(this, JA_SE_LK_ARROW_HIT, mtrlSndId);
@@ -1142,7 +1142,7 @@ BOOL daArrow_c::_execute() {
scaleVec.x = scale;
scaleVec.y = scale;
scaleVec.z = scale;
mpSparkleEmitter->setGlobalParticleScale(scaleVec);
mpSparkleEmitter->setGlobalScale(scaleVec);
} else {
mpSparkleEmitter->becomeInvalidEmitter();
mpSparkleEmitter = NULL;
File diff suppressed because it is too large Load Diff
-1
View File
@@ -564,4 +564,3 @@ void dPa_setColorEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, si
// dPa_setColorEcallBack::~dPa_setColorEcallBack() {
// /* Nonmatching */
// }
+4 -4
View File
@@ -119,19 +119,19 @@ s32 fpcBs_SubCreate(base_process_class* i_proc) {
case 2:
case cPhs_COMPLEATE_e:
fpcBs_DeleteAppend(i_proc);
i_proc->mUnk2 = 2;
i_proc->mCreateResult = 2;
return 2;
case cPhs_INIT_e:
case 1:
i_proc->mInitState = 1;
i_proc->mUnk2 = 0;
i_proc->mCreateResult = 0;
return cPhs_INIT_e;
case 3:
i_proc->mUnk2 = 3;
i_proc->mCreateResult = 3;
return 3;
case cPhs_ERROR_e:
default:
i_proc->mUnk2 = 5;
i_proc->mCreateResult = 5;
return cPhs_ERROR_e;
}
}