示例#1
0
        public override void InitializeTasks()
        {
            base.InitializeTasks();

            DefenseTask.Enable();
            TimingAttackTask.Enable();
            if (Bot.Main.TargetManager.PotentialEnemyStartLocations.Count > 1 || SendScout)
            {
                WorkerScoutTask.Enable();
            }
            if (Bot.Main.BaseManager.Pocket != null)
            {
                ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
            }
            ArmyObserverTask.Enable();
            TimedObserverTask.Enable();
            ObserverScoutTask.Enable();
            SaveWorkersTask.Enable();
            ForceFieldRampTask.Enable();
            if (ProxyPylon)
            {
                ProxyTask.Enable(new List <ProxyBuilding>()
                {
                    new ProxyBuilding()
                    {
                        UnitType = UnitTypes.PYLON
                    }
                });
                ProxyTask.Task.UseEnemyNatural = true;
                ProxyTask.Task.Stopped         = true;
            }
        }
示例#2
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     if (Bot.Main.TargetManager.PotentialEnemyStartLocations.Count > 1 || Scouting)
     {
         WorkerScoutTask.Enable();
     }
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     ScoutTask.Enable();
     ArmyObserverTask.Enable();
     if (ObserverScout)
     {
         ObserverScoutTask.Enable();
     }
     if (Bot.Main.EnemyRace == SC2APIProtocol.Race.Zerg || Bot.Main.EnemyRace == SC2APIProtocol.Race.Protoss)
     {
         ForceFieldRampTask.Enable();
     }
     if (DenyScouting)
     {
         DenyScoutTask.Enable();
     }
     WorkerRushDefenseTask.Enable();
 }
示例#3
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     StalkerBlinkInMainTask.Enable();
     WorkerScoutTask.Enable();
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     ForceFieldRampTask.Enable();
 }
示例#4
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     WorkerScoutTask.Enable();
     ShieldRegenTask.Enable();
     ArmyObserverTask.Enable();
     ObserverScoutTask.Enable();
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     ArchonMergeTask.Enable();
     ForceFieldRampTask.Enable();
 }
示例#5
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     ArmyObserverTask.Enable();
     if (Bot.Main.EnemyRace == SC2APIProtocol.Race.Zerg || Bot.Main.EnemyRace == SC2APIProtocol.Race.Protoss)
     {
         ForceFieldRampTask.Enable();
     }
     WorkerRushDefenseTask.Enable();
 }
示例#6
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     if (Bot.Main.TargetManager.PotentialEnemyStartLocations.Count > 1)
     {
         WorkerScoutTask.Enable();
     }
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     HallucinationAttackTask.Enable();
     WorkerRushDefenseTask.Enable();
     ForceFieldRampTask.Enable();
 }
示例#7
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     HallucinationAttackTask.Enable();
     DefenseTask.Enable();
     MassSentriesTask.Enable();
     WorkerScoutTask.Enable();
     ForceFieldRampTask.Enable();
     KillOwnUnitTask.Enable();
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     WorkerRushDefenseTask.Enable();
     ArmyObserverTask.Enable();
     SentryWarpInTask.Enable();
 }
示例#8
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     ScoutTask.Enable();
     ArmyObserverTask.Enable();
     ForceFieldRampTask.Enable();
     DenyScoutTask.Enable();
     HuntScoutTask.Enable();
     HuntProxyTask.Enable();
     AttackLocationTask.Enable();
     WorkersAttackLocationTask.Enable();
 }
示例#9
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     if (Tyr.Bot.TargetManager.PotentialEnemyStartLocations.Count > 1)
     {
         WorkerScoutTask.Enable();
     }
     if (Tyr.Bot.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Tyr.Bot.BaseManager.Pocket.BaseLocation.Pos);
     }
     ScoutTask.Enable();
     ArmyObserverTask.Enable();
     if (Tyr.Bot.EnemyRace == SC2APIProtocol.Race.Zerg)
     {
         ForceFieldRampTask.Enable();
     }
 }
示例#10
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     if (Tyr.Bot.TargetManager.PotentialEnemyStartLocations.Count > 1)
     {
         WorkerScoutTask.Enable();
     }
     ArmyObserverTask.Enable();
     if (Tyr.Bot.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Tyr.Bot.BaseManager.Pocket.BaseLocation.Pos);
     }
     ArchonMergeTask.Enable();
     ShieldRegenTask.Enable();
     WorkerRushDefenseTask.Enable();
     ScoutTask.Enable();
     KillOwnUnitTask.Enable();
     ForceFieldRampTask.Enable();
 }
示例#11
0
文件: AntiMicro.cs 项目: evilz/TyrSc2
        public override void InitializeTasks()
        {
            base.InitializeTasks();
            DefenseTask.Enable();
            TimingAttackTask.Enable();
            if (Bot.Main.TargetManager.PotentialEnemyStartLocations.Count > 1 || !HuntProxies)
            {
                WorkerScoutTask.Enable();
            }
            if (Bot.Main.BaseManager.Pocket != null)
            {
                ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
            }
            ArmyObserverTask.Enable();
            ForceFieldRampTask.Enable();
            //ObserverScoutTask.Enable();
            if (HuntProxies)
            {
                HuntProxyTask1.AddMidwayPoint  = false;
                HuntProxyTask2.AddMidwayPoint  = false;
                HuntProxyTask1.CloseBasesFirst = true;
                HuntProxyTask2.CloseBasesFirst = true;
                HuntProxyTask1.StartFrame      = (int)(22.4 * 65);
                HuntProxyTask2.StartFrame      = (int)(22.4 * 65);
                Task.Enable(HuntProxyTask1);
                //Task.Enable(HuntProxyTask2);
            }
            Task.Enable(PerUnitDefenseTask.GroundDefenseTask);
            PerUnitDefenseTask.GroundDefenseTask.Priority = 8;
            PerUnitDefenseTask.GroundDefenseTask.AllowedDefenderTypes.Add(UnitTypes.STALKER);
            PerUnitDefenseTask.GroundDefenseTask.IgnoreEnemyTypes.Add(UnitTypes.MARAUDER);
            PerUnitDefenseTask.GroundDefenseTask.IgnoreEnemyTypes.Add(UnitTypes.MARINE);
            PerUnitDefenseTask.GroundDefenseTask.IgnoreEnemyTypes.Add(UnitTypes.CYCLONE);
            PerUnitDefenseTask.GroundDefenseTask.IgnoreEnemyTypes.Add(UnitTypes.SIEGE_TANK);
            PerUnitDefenseTask.GroundDefenseTask.IgnoreEnemyTypes.Add(UnitTypes.SIEGE_TANK_SIEGED);
            PerUnitDefenseTask.GroundDefenseTask.IgnoreEnemyTypes.Add(UnitTypes.AUTO_TURRET);

            RampDefensePoint = new PotentialHelper(Bot.Main.MapAnalyzer.GetMainRamp(), 5).To(MainDefensePos).Get();
        }