|
@@ -36,6 +36,8 @@
|
|
|
#include "T3D/gameBase/gameConnection.h"
|
|
|
#include "T3D/gameBase/std/stdMoveList.h"
|
|
|
#include "T3D/fx/cameraFXMgr.h"
|
|
|
+#include "T3D/Components/coreInterfaces.h"
|
|
|
+#include "T3D/Components/Component.h"
|
|
|
|
|
|
MODULE_BEGIN( ProcessList )
|
|
|
|
|
@@ -132,6 +134,16 @@ bool StdClientProcessList::advanceTime( SimTime timeDelta )
|
|
|
obj = obj->mProcessLink.next;
|
|
|
}
|
|
|
|
|
|
+ for (U32 i = 0; i < UpdateInterface::all.size(); i++)
|
|
|
+ {
|
|
|
+ Component *comp = dynamic_cast<Component*>(UpdateInterface::all[i]);
|
|
|
+
|
|
|
+ if (!comp->isClientObject() || !comp->isActive())
|
|
|
+ continue;
|
|
|
+
|
|
|
+ UpdateInterface::all[i]->interpolateTick(mLastDelta);
|
|
|
+ }
|
|
|
+
|
|
|
// Inform objects of total elapsed delta so they can advance
|
|
|
// client side animations.
|
|
|
F32 dt = F32(timeDelta) / 1000;
|
|
@@ -146,6 +158,19 @@ bool StdClientProcessList::advanceTime( SimTime timeDelta )
|
|
|
obj = obj->mProcessLink.next;
|
|
|
}
|
|
|
|
|
|
+ for (U32 i = 0; i < UpdateInterface::all.size(); i++)
|
|
|
+ {
|
|
|
+ Component *comp = dynamic_cast<Component*>(UpdateInterface::all[i]);
|
|
|
+
|
|
|
+ if (comp)
|
|
|
+ {
|
|
|
+ if (!comp->isClientObject() || !comp->isActive())
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ UpdateInterface::all[i]->advanceTime(dt);
|
|
|
+ }
|
|
|
+
|
|
|
return ret;
|
|
|
}
|
|
|
|