void Sfx::AddThrustSmoke(const Body *b, TYPE t, const float speed, vector3d adjustpos) { Sfx *sfx = AllocSfxInFrame(b->GetFrame()); if (!sfx) return; sfx->m_type = t; sfx->m_age = 0; sfx->m_speed = speed; vector3d npos = b->GetPosition(); sfx->SetPosition(npos+adjustpos); sfx->m_vel = vector3d(0,0,0); }
void Sfx::Add(const Body *b, TYPE t) { Sfx *sfx = AllocSfxInFrame(b->GetFrame()); if (!sfx) return; sfx->m_type = t; sfx->m_age = 0; sfx->SetPosition(b->GetPosition()); sfx->m_vel = b->GetVelocity() + 200.0*vector3d( Pi::rng.Double()-0.5, Pi::rng.Double()-0.5, Pi::rng.Double()-0.5); }