コード例 #1
0
 public EmpLauncher(int FactionNumber)
     : base(FactionNumber)
 {
     ShieldToughness = 10;
     HullToughness   = 15;
     MaxBuildTime    = 5000;
     Resistence      = AttackType.None;
     Weakness        = AttackType.None;
     ShieldColor     = ShieldInstancer.WhiteShield;
     EmpFireMode     = new StingRayEmpFireMode();
     EmpFireMode.SetLevel(3.5f);
     RotationSpeed = 0.5f;
 }
コード例 #2
0
        public override void Update(GameTime gameTime)
        {
            NoShootTime = -1;
            FreezeTime  = -1;

            if (stingRayEmpFireMode.Ammo > 0 && CurrentAttackTarget != null &&
                CurrentAttackTarget.GetType().IsSubclassOf(typeof(UnitTurret)) && !MarkedTurrets.Contains((UnitTurret)CurrentAttackTarget))
            {
                stingRayEmpFireMode.SetLevel(UnitLevel);
                stingRayEmpFireMode.Fire(Logic.ToAngle(CurrentAttackTarget.Position.get() - Position.get()));
                stingRayEmpFireMode.Ammo = 0;
                MarkedTurrets.AddLast((UnitTurret)CurrentAttackTarget);
            }
            base.Update(gameTime);
        }