mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-16 09:04:38 +00:00
Merge pull request #243 from Azaezel/alpha40_triggerTricks2
from @practicing01: trigger mounting
This commit is contained in:
commit
7de3829d38
2 changed files with 26 additions and 0 deletions
|
|
@ -537,6 +537,13 @@ void Trigger::setTransform(const MatrixF & mat)
|
||||||
testObjects();
|
testObjects();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Trigger::onUnmount( SceneObject *obj, S32 node )
|
||||||
|
{
|
||||||
|
Parent::onUnmount( obj, node );
|
||||||
|
// Make sure the client get's the final server pos.
|
||||||
|
setMaskBits(TransformMask | ScaleMask);
|
||||||
|
}
|
||||||
|
|
||||||
void Trigger::prepRenderImage( SceneRenderState *state )
|
void Trigger::prepRenderImage( SceneRenderState *state )
|
||||||
{
|
{
|
||||||
// only render if selected or render flag is set
|
// only render if selected or render flag is set
|
||||||
|
|
@ -695,6 +702,13 @@ void Trigger::processTick(const Move* move)
|
||||||
if (!mDataBlock->isClientSide && isClientObject())
|
if (!mDataBlock->isClientSide && isClientObject())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (isMounted()) {
|
||||||
|
MatrixF mat;
|
||||||
|
mMount.object->getMountTransform( mMount.node, mMount.xfm, &mat );
|
||||||
|
setTransform(mat);
|
||||||
|
setRenderTransform(mat);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
if (mObjects.size() == 0)
|
if (mObjects.size() == 0)
|
||||||
return;
|
return;
|
||||||
|
|
@ -734,6 +748,15 @@ void Trigger::processTick(const Move* move)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Trigger::interpolateTick(F32 delta)
|
||||||
|
{
|
||||||
|
if (isMounted()) {
|
||||||
|
MatrixF mat;
|
||||||
|
mMount.object->getRenderMountTransform( delta, mMount.node, mMount.xfm, &mat );
|
||||||
|
setRenderTransform(mat);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------
|
//--------------------------------------------------------------------------
|
||||||
|
|
||||||
U32 Trigger::packUpdate(NetConnection* con, U32 mask, BitStream* stream)
|
U32 Trigger::packUpdate(NetConnection* con, U32 mask, BitStream* stream)
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,8 @@ class Trigger : public GameBase
|
||||||
|
|
||||||
static const U32 CMD_SIZE = 1024;
|
static const U32 CMD_SIZE = 1024;
|
||||||
|
|
||||||
|
void onUnmount(SceneObject* obj,S32 node);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
enum TriggerUpdateBits
|
enum TriggerUpdateBits
|
||||||
|
|
@ -104,6 +106,7 @@ class Trigger : public GameBase
|
||||||
static bool smRenderTriggers;
|
static bool smRenderTriggers;
|
||||||
bool testObject(GameBase* enter);
|
bool testObject(GameBase* enter);
|
||||||
void processTick(const Move *move);
|
void processTick(const Move *move);
|
||||||
|
void interpolateTick(F32 delta);
|
||||||
|
|
||||||
void buildConvex(const Box3F& box, Convex* convex);
|
void buildConvex(const Box3F& box, Convex* convex);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue