diff options
| author | Pheenoh <pheenoh@gmail.com> | 2023-03-17 21:05:06 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-17 21:05:06 -0600 |
| commit | 3cdef97cb8648cf5a5f2151938c5fa8d66056751 (patch) | |
| tree | e96e03eb21c61f9aa4cd2868724b55b4872a190b /src/m_Do/m_Do_ext.cpp | |
| parent | a01d65b0b99400f62d93eee28475872b641cfd50 (diff) | |
d_file_select, JASResArcLoader, d_a_obj_stone, d_a_obj_stone_mark (#309)
* setup TU
* JASResArcLoader OK
* d_a_obj_stoneMark work
* some funcs in d_a_obj_stoneMark
* many changes
* quat, d_a_obj_stone, d_a_alink, fix python script, tidy makefile
* d_file_select functions + pr cleanup
Diffstat (limited to 'src/m_Do/m_Do_ext.cpp')
| -rw-r--r-- | src/m_Do/m_Do_ext.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp index 4786fe3639..598019f247 100644 --- a/src/m_Do/m_Do_ext.cpp +++ b/src/m_Do/m_Do_ext.cpp @@ -3530,26 +3530,28 @@ asm void mDoExt_removeSubFont() { /* 80014C54-80014D5C 00F594 0108+00 3/3 14/14 445/445 .text * mDoExt_J3DModel__create__FP12J3DModelDataUlUl */ -J3DModel* mDoExt_J3DModel__create(J3DModelData* i_modelData, u32 param_1, u32 param_2) { +J3DModel* mDoExt_J3DModel__create(J3DModelData* i_modelData, u32 modelFlag, u32 differedDlistFlag) { if (i_modelData != NULL) { J3DModel* model = new J3DModel(); if (model != NULL) { + // Update the modelFlag if the model data passed in has a shared dlist object if (i_modelData->getMaterialNodePointer(0)->getSharedDisplayListObj() != NULL) { if (i_modelData->isLocked()) { - param_1 = 0x20000; - } else if (param_1 == 0x20000) { - param_1 |= 0x40000; + modelFlag = J3DMdlFlag_Unk20000; + } else if (modelFlag == J3DMdlFlag_Unk20000) { + modelFlag |= J3DMdlFlag_Unk40000; } else { - param_1 = 0x80000; + modelFlag = J3DMdlFlag_Unk80000; } } - if (!model->entryModelData(i_modelData, param_1, 1)) { - if (param_1 == 0x80000 && model->newDifferedDisplayList(param_2)) { + // Set up the model + if (!model->entryModelData(i_modelData, modelFlag, 1)) { + if (modelFlag == J3DMdlFlag_Unk80000 && model->newDifferedDisplayList(differedDlistFlag)) { return NULL; } - + model->lock(); return model; } |
