public MagicalProjectile(MagicalProjectile copy) : base(copy) { myEffect = copy.myEffect; myColour = copy.myColour; myHit = copy.myHit; myHitTime = copy.myHitTime; }
public Spark(MagicalProjectile projectile, double maxSpeed = 1.0) { OriginX = projectile.OriginX + Tools.Random() * 0.5 - 0.25; OriginY = projectile.OriginY + Tools.Random() * 0.5 - 0.25; double speed = Tools.Random() * maxSpeed; double angle = Tools.Random() * Math.PI * 2.0; myVelocity = new Vector2d(Math.Cos(angle) * speed, Math.Sin(angle) * speed); myColour = new Color4 { R = Math.Min(projectile.myColour.R + 0.5f * (float)Tools.Random(), 1.0f), G = Math.Min(projectile.myColour.G + 0.5f * (float)Tools.Random(), 1.0f), B = Math.Min(projectile.myColour.B + 0.5f * (float)Tools.Random(), 1.0f), A = 1.0f }; }