public DelayedExplosionInfo(SExplosionManager em, SExplosionParameters ep, float intensity, Vector3 position, Vector3 velocity, float delay) { _explParams = ep; _em = em; _position = position; _velocity = velocity; _intensity = intensity; _delayRemaining = delay; }
public ExplosionChainInfo(SExplosionManager em, SChainExplosionParameters cep, Vector3 position, Vector3 velocity) { _em = em; _chainParams = cep; _position = position; _velocity = velocity; _explosionsRemaining = rand.Next(cep.numExplosionMin, cep.numExplosionsMax + 1); _delaysRemaining = new float[cep.maxNumConcurrent]; _delaysRemaining[0] = cep.initDelay; // have one explosion kick in right away with no delay for (int i = 1; i < cep.maxNumConcurrent; ++i) { _delaysRemaining[i] = cep.initDelay + cep.minDelay + (float)rand.NextDouble() * (cep.maxDelay - cep.minDelay); } }
public ExplosionChainInfo(SExplosionManager em, SChainExplosionParameters cep, Vector3 position, Vector3 velocity) { _em = em; _chainParams = cep; _position = position; _velocity = velocity; _explosionsRemaining = rand.Next(cep.numExplosionMin, cep.numExplosionsMax+1); _delaysRemaining = new float[cep.maxNumConcurrent]; _delaysRemaining[0] = cep.initDelay; // have one explosion kick in right away with no delay for (int i = 1; i < cep.maxNumConcurrent; ++i) { _delaysRemaining[i] = cep.initDelay + cep.minDelay + (float)rand.NextDouble() * (cep.maxDelay - cep.minDelay); } }