Exemplo n.º 1
0
        public void Shoot()
        {
            if (waitTime > 0)
            {
                return;
            }

            Projectile projectile = (Projectile)shell.Clone();
            Transform  tr         = new Transform();

            tr.position = transform.WorldPosition;
            tr.rotation = transform.WorldRotation;

            tr.position += Utils.RotatedVector(tr.rotation + 90, -transform.size.Y);
            tr.rotation += Utils.Clamp((float)rnd.NextGaussian(0, spreadAngle / 1.6f), -spreadAngle, spreadAngle);
            projectile.SetPosition(tr);

            Networking.CreateProjectileAsync(projectile);
            Instantiate(projectile);

            spreadAngle = maxSpreadAngle;
            waitTime    = reloadTime;

            //shotParticles.Emit(10);
        }