SimFire::SimFire( const SimFireRecord * record, float _fireOut ) { type |= SimExplosion::defaultFxObjectType; shapeTag = record->shapeTag; translucentShapeTag = record->shapeTagT; soundID = record->soundID; producesSmoke = record->smokeTag > 0; setSmoke(record->smokeTag,record->smokeTagT,record->ISI,record->smokeDuration); smokeOffset.x = record->smokeXoffset; smokeOffset.y = record->smokeYoffset; smokeOffset.z = record->smokeZoffset; lightRange = record->lightRange; lightColor.set(record->r, record->g, record->b); faceCam = record->faceCam==1; followCam = record->faceCam==2; renderedYet = false; useLight = true; fireOut = _fireOut; pos.set(0, 0, 0); onObj = 0; hSound = SFX_INVALID_HANDLE; }
//------------------------------------------------------------------------------ // playerState2Nib() -- Sets this NIB's player data //------------------------------------------------------------------------------ void Nib::playerState2Nib() { const models::Player* player = getPlayer(); if (player != nullptr) { // Player name const char* cname = nullptr; const base::String* sname = player->getName(); if (sname != nullptr) cname = *sname; if (cname != nullptr) setPlayerName(cname); else setPlayerName("OPENEAAGLES"); freeze( player->isFrozen() ); if (!isMode(models::Player::DELETE_REQUEST)) setMode( player->getMode() ); setDamage( player->getDamage() ); setSmoke( player->getSmoke() ); setFlames( player->getFlames() ); setCamouflageType( player->getCamouflageType() ); setSide( player->getSide() ); // Reset our dead reckoning with the current state data from the player //resetDeadReckoning( // RVW_DRM, // player->getGeocPosition(), // player->getGeocVelocity(), // player->getGeocAcceleration(), // player->getGeocEulerAngles(), // player->getGeocAngularVelocities() //); resetDeadReckoning( RVW_DRM, player->getSynchronizedState().getGeocPosition(), player->getSynchronizedState().getGeocVelocity(), player->getSynchronizedState().getGeocAcceleration(), player->getSynchronizedState().getGeocEulerAngles(), player->getSynchronizedState().getAngularVelocities() ); // mark the current times //Simulation* sim = getNetIO()->getSimulation(); //setTimeExec( static_cast<double>(sim->getExecTimeSec()) ); setTimeExec( static_cast<double>(player->getSynchronizedState().getTimeExec()) ); //setTimeUtc( static_cast<double>(sim->getSysTimeOfDay()) ); setTimeUtc( static_cast<double>(player->getSynchronizedState().getTimeUtc()) ); { //base::Vec3d pos = player->getGeocPosition(); //base::Vec3d vec = player->getGeocVelocity(); //std::cout << "playerState2Nib(): geoc pos: ("; //std::cout << pos[0] << ", "; //std::cout << pos[1] << ", "; //std::cout << pos[2] << ") "; //std::cout << "geoc vel: ("; //std::cout << vec[0] << ", "; //std::cout << vec[1] << ", "; //std::cout << vec[2] << ") "; //std::cout << std::endl; } } }