コード例 #1
0
 public static void ShieldDamageEnergy(float damage, float goThroughShield, DamageType damageType, Ship ship, Shield shield)
 {
     if (Globals.Randomizer.Next(0, 101) < shield.Chance && ship.GetType().Name == "Player")
     {
         Player p = (Player)ship;
         p.Energy.Change(-damage);
     }
     else
     {
         ship.TakeDamage(damage, goThroughShield, damageType, true);
     }
 }
コード例 #2
0
 public static void ShieldReflect(float damage, float goThroughShield, DamageType damageType, Ship ship, Shield shield)
 {
     if (damageType == DamageType.laser && Globals.Randomizer.Next(0, 101) < shield.Chance)
     {
         List <string> targets = new List <string>();
         targets.Add(ship.GetType().Name == "Player" ? "Enemy" : "Player");
         SceneManager.mapScene.CurrentLevel.ToAdd.Add(new Shot(ship.Position, MathHelper.Lerp((float)Math.PI + 0.2f, (float)Math.PI * 2 - 0.2f, (float)Globals.Randomizer.NextDouble()), damage, Shot.HitBasic, targets, 0f, 0));
     }
     else
     {
         ship.TakeDamage(damage, goThroughShield, damageType, true);
     }
 }
コード例 #3
0
ファイル: Shot.cs プロジェクト: kraban/Outer-Space
 public static void HitEnemyShotDelay(Level level, Shot shot)
 {
     if (CollisionTarget(level, shot) != null)
     {
         Ship ship = CollisionTarget(level, shot);
         ship.TakeDamage(shot.Damage, shot.ShieldPiercing, DamageType.laser, false);
         if (Globals.Randomizer.Next(0, 101) < shot.Chance)
         {
             ship.Weapons[Globals.Randomizer.Next(0, ship.Weapons.Count)].Disabled = 120;
             level.CombatText(ship.GetType().Name + " Weapon Jammed!");
         }
         shot.Dead = true;
     }
 }
コード例 #4
0
ファイル: Shot.cs プロジェクト: indietom/Outer-Space
 public static void HitEnemyShotDelay(Ship ship, Level level, Shot shot)
 {
     ship.TakeDamage(shot.Damage, shot.ShieldPiercing, DamageType.laser);
     if (Globals.Randomizer.Next(0, 101) < shot.Chance)
     {
         ship.Weapons[Globals.Randomizer.Next(0, ship.Weapons.Count)].Disabled = 120;
         level.CombatText(ship.GetType().Name + " Weapon Jammed!");
     }
 }