protected override void TakeSnapshot(ref Snapshot snap) { SpraySnapshot spraySnap = (SpraySnapshot)snap; spraySnap.Direction = _direction; spraySnap.Spread = _spread; }
protected override void GetParticlePositionAndOrientation(Snapshot snap, ref Vector2 position, ref Vector2 orientation) { SpraySnapshot spraySnap = (SpraySnapshot)snap; float angle = spraySnap.Direction + ((float)Rnd.NextDouble() * spraySnap.Spread) - (spraySnap.Spread / 2f); orientation.X = (float)Math.Sin(angle); orientation.Y = (float)Math.Cos(angle); }