Beispiel #1
0
        public void DoHit(Vector3 pos, Projectile proj)
        {
            hitAlpha = 1f;

            if (proj != null) // A null projectile means an enemy collided with the player
                Health -= proj.Damage/2f;
            else
                Health -= 0.1f;
        }
        public void Spawn(ProjectileType type, object owner, Vector3 pos, Matrix rot, Vector3 speed, float damage, double life, bool gravity)
        {
            Projectile p = null;
            switch(type)
            {
                case ProjectileType.Laser1:
                case ProjectileType.Laser2:
                case ProjectileType.Laser3:
                case ProjectileType.Laser4:
                case ProjectileType.Rocket:
                    p = new Projectile()
                    {
                        Type = type,
                        Owner = owner,
                        Active = true,
                        Position = pos,
                        Speed = speed,
                        Damage = damage,
                        Rotation = rot,
                        affectedByGravity = gravity,
                        Life = life,
                        Time = 0
                    };
                    break;
            }

            Projectiles.Add(p);
        }