mirror of
https://github.com/isledecomp/isle.git
synced 2024-11-22 15:48:09 -05:00
Implement/match LegoAnimPresenter::FUN_1006afc0 (#843)
* Implement/match LegoAnimPresenter::FUN_1006afc0 * empty
This commit is contained in:
parent
41be78ed1c
commit
67c9736953
3 changed files with 35 additions and 5 deletions
|
@ -73,7 +73,7 @@ class LegoAnimPresenter : public MxVideoPresenter {
|
||||||
|
|
||||||
virtual void VTable0xa0(Matrix4*); // vtable+0xa0
|
virtual void VTable0xa0(Matrix4*); // vtable+0xa0
|
||||||
|
|
||||||
MxResult FUN_1006afc0(MxMatrix*&, undefined4);
|
MxResult FUN_1006afc0(MxMatrix*& p_matrix, float p_und);
|
||||||
MxResult FUN_1006b140(LegoROI* p_roi);
|
MxResult FUN_1006b140(LegoROI* p_roi);
|
||||||
void FUN_1006d680(LegoAnimActor* p_actor, MxFloat p_value);
|
void FUN_1006d680(LegoAnimActor* p_actor, MxFloat p_value);
|
||||||
|
|
||||||
|
@ -97,6 +97,7 @@ class LegoAnimPresenter : public MxVideoPresenter {
|
||||||
LegoBool FUN_1006aba0();
|
LegoBool FUN_1006aba0();
|
||||||
MxBool FUN_1006abb0(LegoTreeNode* p_node, LegoROI* p_roi);
|
MxBool FUN_1006abb0(LegoTreeNode* p_node, LegoROI* p_roi);
|
||||||
void FUN_1006ac90();
|
void FUN_1006ac90();
|
||||||
|
void FUN_1006b900(LegoAnim* p_anim, MxS32 p_und, MxMatrix* p_matrix);
|
||||||
void FUN_1006b9a0(LegoAnim* p_anim, MxLong p_time, Matrix4* p_matrix);
|
void FUN_1006b9a0(LegoAnim* p_anim, MxLong p_time, Matrix4* p_matrix);
|
||||||
void FUN_1006c8a0(MxBool p_bool);
|
void FUN_1006c8a0(MxBool p_bool);
|
||||||
|
|
||||||
|
|
|
@ -577,11 +577,32 @@ void LegoAnimPresenter::PutFrame()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// STUB: LEGO1 0x1006afc0
|
// FUNCTION: LEGO1 0x1006afc0
|
||||||
// FUNCTION: BETA10 0x1005059a
|
// FUNCTION: BETA10 0x1005059a
|
||||||
MxResult LegoAnimPresenter::FUN_1006afc0(MxMatrix*&, undefined4)
|
MxResult LegoAnimPresenter::FUN_1006afc0(MxMatrix*& p_matrix, float p_und)
|
||||||
{
|
{
|
||||||
// TODO
|
MxU32 length = m_roiMapSize + 1;
|
||||||
|
p_matrix = new MxMatrix[length];
|
||||||
|
|
||||||
|
MxS32 i;
|
||||||
|
for (i = 1; i < length; i++) {
|
||||||
|
if (m_roiMap[i] != NULL) {
|
||||||
|
p_matrix[i] = m_roiMap[i]->GetLocal2World();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
FUN_1006b900(m_anim, p_und, m_unk0x78);
|
||||||
|
|
||||||
|
for (i = 1; i < length; i++) {
|
||||||
|
MxMatrix mat;
|
||||||
|
|
||||||
|
if (m_roiMap[i] != NULL) {
|
||||||
|
mat = p_matrix[i];
|
||||||
|
p_matrix[i] = m_roiMap[i]->GetLocal2World();
|
||||||
|
m_roiMap[i]->FUN_100a58f0(mat);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -720,6 +741,13 @@ const char* LegoAnimPresenter::GetActionObjectName()
|
||||||
return m_action->GetObjectName();
|
return m_action->GetObjectName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// STUB: LEGO1 0x1006b900
|
||||||
|
// FUNCTION: BETA10 0x100510d8
|
||||||
|
void LegoAnimPresenter::FUN_1006b900(LegoAnim* p_anim, MxS32 p_und, MxMatrix* p_matrix)
|
||||||
|
{
|
||||||
|
// TODO
|
||||||
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1006b9a0
|
// FUNCTION: LEGO1 0x1006b9a0
|
||||||
void LegoAnimPresenter::FUN_1006b9a0(LegoAnim* p_anim, MxLong p_time, Matrix4* p_matrix)
|
void LegoAnimPresenter::FUN_1006b9a0(LegoAnim* p_anim, MxLong p_time, Matrix4* p_matrix)
|
||||||
{
|
{
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
// SIZE 0x48
|
// SIZE 0x48
|
||||||
class MxMatrix : public Matrix4 {
|
class MxMatrix : public Matrix4 {
|
||||||
public:
|
public:
|
||||||
|
// FUNCTION: LEGO1 0x1006b120
|
||||||
inline MxMatrix() : Matrix4(m_elements) {}
|
inline MxMatrix() : Matrix4(m_elements) {}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10032770
|
// FUNCTION: LEGO1 0x10032770
|
||||||
|
@ -26,7 +27,7 @@ class MxMatrix : public Matrix4 {
|
||||||
virtual void operator=(const MxMatrix& p_matrix) { Equals(p_matrix); } // vtable+0x48
|
virtual void operator=(const MxMatrix& p_matrix) { Equals(p_matrix); } // vtable+0x48
|
||||||
|
|
||||||
private:
|
private:
|
||||||
float m_elements[4][4];
|
float m_elements[4][4]; // 0x08
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // MXMATRIX_H
|
#endif // MXMATRIX_H
|
||||||
|
|
Loading…
Reference in a new issue