public void Spawn(GraphicsDevice gDev, int level) { if (mUfo == null && mTimer > (750 - (level * 5)) && rand.Next(SCUtil.Max(0, 2250 - SCUtil.Min(mTimer, 2249))) < 1) //<-- 1/1000 chance per cycle { sndUFOMoving.Play(); if (rand.Next(10) < 5) { mUfo = new Sprite(mUFOTexture, new Vector2(gDev.Viewport.Width - 200, 20), new Vector2(-1.5f, 0), 1.0f + (float)level / 8.0f); } else { mUfo = new Sprite(mUFOTexture, new Vector2(-68, 20), new Vector2(1.5f, 0), 1.0f + (float)level / 8.0f); } } }
//General methods public void CheckBounds(int lower, int upper) { mPosition.X = SCUtil.Max(0, SCUtil.Min((int)mPosition.X, upper - mImage.Width)); setQAs(); }