Beispiel #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;
            }
        }
Beispiel #2
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     if (!BlockExpand)
     {
         WorkerScoutTask.Enable();
     }
     ArmyObserverTask.Enable();
     ObserverScoutTask.Enable();
     if (Bot.Main.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Bot.Main.BaseManager.Pocket.BaseLocation.Pos);
     }
     ArchonMergeTask.Enable();
     ForwardProbeTask.Enable();
     ShieldRegenTask.Enable();
     HodorTask.Enable();
     if (BlockExpand)
     {
         BlockExpandTask.Enable();
     }
     if (ProxyPylon)
     {
         ProxyTask.Enable(new List <ProxyBuilding>()
         {
             new ProxyBuilding()
             {
                 UnitType = UnitTypes.PYLON
             }
         });
         ProxyTask.Task.UseEnemyNatural = true;
     }
 }
Beispiel #3
0
        public ReaperCheese(DefaultSharkyBot defaultSharkyBot, IIndividualMicroController scvMicroController) : base(defaultSharkyBot)
        {
            ProxyLocationService = defaultSharkyBot.ProxyLocationService;

            OpeningAttackChatSent = false;
            ProxyTask             = new ProxyTask(defaultSharkyBot.SharkyUnitData, false, 0.9f, MacroData, string.Empty, MicroTaskData, defaultSharkyBot.DebugService, scvMicroController);
            ProxyTask.ProxyName   = GetType().Name;
        }
Beispiel #4
0
        public ReaperCheese(BuildOptions buildOptions, MacroData macroData, ActiveUnitData activeUnitData, AttackData attackData, ChatService chatService, MicroTaskData microTaskData, UnitCountService unitCountService, SharkyUnitData sharkyUnitData, ProxyLocationService proxyLocationService, DebugService debugService, IIndividualMicroController scvMicroController) : base(buildOptions, macroData, activeUnitData, attackData, chatService, unitCountService)
        {
            MicroTaskData        = microTaskData;
            ProxyLocationService = proxyLocationService;

            OpeningAttackChatSent = false;
            ProxyTask             = new ProxyTask(sharkyUnitData, false, 0.9f, MacroData, string.Empty, MicroTaskData, debugService, scvMicroController);
            ProxyTask.ProxyName   = GetType().Name;
        }
Beispiel #5
0
        public ProxyVoidRay(DefaultSharkyBot defaultSharkyBot, ICounterTransitioner counterTransitioner, IIndividualMicroController probeMicroController)
            : base(defaultSharkyBot, counterTransitioner)
        {
            SharkyOptions        = defaultSharkyBot.SharkyOptions;
            SharkyUnitData       = defaultSharkyBot.SharkyUnitData;
            ProxyLocationService = defaultSharkyBot.ProxyLocationService;

            OpeningAttackChatSent  = false;
            CancelledProxyChatSent = false;

            ProxyTask           = new ProxyTask(SharkyUnitData, false, 0.9f, MacroData, string.Empty, MicroTaskData, defaultSharkyBot.DebugService, probeMicroController);
            ProxyTask.ProxyName = GetType().Name;
        }
        public ProxyVoidRay(BuildOptions buildOptions, MacroData macroData, ActiveUnitData activeUnitData, AttackData attackData, ChatService chatService, ChronoData chronoData, SharkyOptions sharkyOptions, MicroTaskData microTaskData, ICounterTransitioner counterTransitioner, SharkyUnitData unitDataManager, ProxyLocationService proxyLocationService, DebugService debugService, UnitCountService unitCountService, IIndividualMicroController probeMicroController)
            : base(buildOptions, macroData, activeUnitData, attackData, chatService, chronoData, counterTransitioner, unitCountService)
        {
            SharkyOptions        = sharkyOptions;
            MicroTaskData        = microTaskData;
            SharkyUnitData       = unitDataManager;
            ProxyLocationService = proxyLocationService;

            OpeningAttackChatSent  = false;
            CancelledProxyChatSent = false;

            ProxyTask           = new ProxyTask(SharkyUnitData, false, 0.9f, MacroData, string.Empty, MicroTaskData, debugService, probeMicroController);
            ProxyTask.ProxyName = GetType().Name;
        }
Beispiel #7
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     ArmyObserverTask.Enable();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     DefendRegionTask.Enable();
     if (Tyr.Bot.TargetManager.PotentialEnemyStartLocations.Count > 1)
     {
         WorkerScoutTask.Enable();
     }
     if (Tyr.Bot.BaseManager.Pocket != null)
     {
         ScoutProxyTask.Enable(Tyr.Bot.BaseManager.Pocket.BaseLocation.Pos);
     }
     ProxyTask.Enable(new List <ProxyBuilding>()
     {
         new ProxyBuilding()
         {
             UnitType = UnitTypes.PYLON
         },
         new ProxyBuilding()
         {
             UnitType = UnitTypes.STARGATE, Number = 1, Test = () => Count(UnitTypes.CYBERNETICS_CORE) > 0
         },
         new ProxyBuilding()
         {
             UnitType = UnitTypes.PHOTON_CANNON, Number = 1, Test = () => CollectionUtil.Get(ProxyTask.Task.UnitCounts, UnitTypes.STARGATE) > 0
         },
         new ProxyBuilding()
         {
             UnitType = UnitTypes.STARGATE, Number = 2, Test = () => Count(UnitTypes.FLEET_BEACON) > 0
         },
         new ProxyBuilding()
         {
             UnitType = UnitTypes.PHOTON_CANNON, Number = 3, Test = () => Minerals() >= 150 && Count(UnitTypes.FLEET_BEACON) > 0 && (Count(UnitTypes.TEMPEST) > 0 || Minerals() >= 600)
         },
         new ProxyBuilding()
         {
             UnitType = UnitTypes.PYLON, Number = 2, Test = () => Minerals() >= 400 && Count(UnitTypes.PHOTON_CANNON) >= 3
         },
         new ProxyBuilding()
         {
             UnitType = UnitTypes.SHIELD_BATTERY, Number = 3, Test = () => Minerals() >= 400 && Count(UnitTypes.TEMPEST) > 0
         },
         //new ProxyBuilding() { UnitType = UnitTypes.STARGATE, Number = 1, Test = () => Count(UnitTypes.TEMPEST) >= 2 }
     }, true);
 }
Beispiel #8
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     DefenseTask.Enable();
     ProxyTask.Enable(new List <ProxyBuilding>()
     {
         new ProxyBuilding()
         {
             UnitType = UnitTypes.PYLON
         }, new ProxyBuilding()
         {
             UnitType = UnitTypes.PHOTON_CANNON
         }
     });
     ProxyTask.Task.UseEnemyNatural = true;
     TimingAttackTask.Enable();
 }
Beispiel #9
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     ArmyObserverTask.Enable();
     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);
     }
     ProxyTask.Enable(new List <ProxyBuilding>()
     {
         new ProxyBuilding()
         {
             UnitType = UnitTypes.PYLON
         },
         new ProxyBuilding()
         {
             UnitType = UnitTypes.ROBOTICS_FACILITY, Number = 2
         }
     });
     if (DefendProxyTask == null)
     {
         DefendProxyTask = new DefenseSquadTask(Main);
         DefendProxyTask.DraftFromFarAway = true;
         DefendProxyTask.AlwaysNeeded     = true;
         DefendProxyTask.MaxDefenders     = 1000000;
         DefendProxyTask.Priority         = 3;
     }
     DefenseSquadTask.Enable(DefendProxyTask);
     ReaperDefenseTask = new DefenseSquadTask(Main, UnitTypes.STALKER);
     ReaperDefenseTask.MaxDefenders = 0;
     DefenseSquadTask.Enable(ReaperDefenseTask);
     WarpPrismElevatorTask.Enable();
 }