void AITurretShape::setAllGunsFiring(bool fire) { setImageTriggerState(0,fire); setImageTriggerState(1,fire); setImageTriggerState(2,fire); setImageTriggerState(3,fire); }
void StaticShape::processTick(const Move* move) { Parent::processTick(move); // Image Triggers if (move && mDamageState == Enabled) { setImageTriggerState(0,move->trigger[0]); setImageTriggerState(1,move->trigger[1]); } }
void AITurretShape::setGunSlotFiring(S32 slot, bool fire) { if (slot < 0 || slot > 3) return; setImageTriggerState(slot, fire); }
void StaticShape::processTick(const Move* move) { Parent::processTick(move); // Image Triggers if (move && mDamageState == Enabled) { setImageTriggerState(0,move->trigger[0]); setImageTriggerState(1,move->trigger[1]); } if (isMounted()) { MatrixF mat; mMount.object->getMountTransform( mMount.node, mMount.xfm, &mat ); Parent::setTransform(mat); Parent::setRenderTransform(mat); } }
//----------------------------------------------------------------------------- // // VActor::processTick( pMove ); // // ... // //----------------------------------------------------------------------------- void VActor::processTick( const Move *pMove ) { // Parent Call. Parent::processTick( pMove ); // Triggers? if ( pMove && mDamageState == Enabled ) { // Handle each Image Trigger. const U32 imageCount = getMin( ShapeBase::MaxMountedImages, MaxTriggerKeys ); for ( U32 i = 0; i < imageCount; i++ ) { setImageTriggerState( i, pMove->trigger[i] ); } } }
void TurretShape::processTick(const Move* move) { // Image Triggers if (getAllowManualFire() && move && mDamageState == Enabled) { switch(mDataBlock->weaponLinkType) { case TurretShapeData::FireTogether: { setImageTriggerState(0,move->trigger[0]); setImageTriggerState(1,move->trigger[0]); setImageTriggerState(2,move->trigger[0]); setImageTriggerState(3,move->trigger[0]); setImageAltTriggerState(0,move->trigger[1]); setImageAltTriggerState(1,move->trigger[1]); setImageAltTriggerState(2,move->trigger[1]); setImageAltTriggerState(3,move->trigger[1]); break; } case TurretShapeData::GroupedFire: { setImageTriggerState(0,move->trigger[0]); setImageTriggerState(1,move->trigger[1]); setImageTriggerState(2,move->trigger[0]); setImageTriggerState(3,move->trigger[1]); break; } case TurretShapeData::IndividualFire: { setImageTriggerState(0,move->trigger[0]); setImageTriggerState(1,move->trigger[1]); setImageTriggerState(2,move->trigger[2]); setImageTriggerState(3,move->trigger[3]); break; } } } Parent::processTick(move); // Change our type based on our rest state if (mAtRest) { // At rest so we're static mTypeMask &= ~DynamicShapeObjectType; mTypeMask |= StaticObjectType | StaticShapeObjectType; } else { // Not at rest so we're dynamic mTypeMask &= ~StaticObjectType; mTypeMask &= ~StaticShapeObjectType; mTypeMask |= DynamicShapeObjectType; } if (!isGhost()) updateAnimation(TickSec); if (isMounted()) { MatrixF mat; mMount.object->getMountTransform( mMount.node, mMount.xfm, &mat ); ShapeBase::setTransform(mat); ShapeBase::setRenderTransform(mat); } updateMove(move); }