示例#1
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     QueenInjectTask.Enable();
     QueenDefenseTask.Enable();
     DefenseTask.Enable();
     TimingAttackTask.Enable();
     SafeZerglingsFromReapersTask.Enable();
 }
示例#2
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     TimingAttackTask.Enable();
     WorkerScoutTask.Enable();
     QueenInjectTask.Enable();
     QueenDefenseTask.Enable();
     ArmyOverseerTask.Enable();
     QueenTumorTask.Enable();
     DefenseTask.Enable();
 }
示例#3
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     TimingAttackTask.Enable();
     WorkerScoutTask.Enable();
     QueenInjectTask.Enable();
     QueenDefenseTask.Enable();
     ArmyOverseerTask.Enable();
     QueenTumorTask.Enable();
     DefenseTask.Enable();
     DefenseSquadTask.Enable(true, UnitTypes.HYDRALISK);
 }
示例#4
0
        public override void InitializeTasks()
        {
            base.InitializeTasks();
            TimingAttackTask.Enable();
            WorkerScoutTask.Enable();
            QueenInjectTask.Enable();
            QueenDefenseTask.Enable();
            ArmyOverseerTask.Enable();
            QueenTumorTask.Enable();
            DefenseTask.Enable();
            WorkerRushDefenseTask.Enable();
            OverlordSuicideTask.Enable();
            SafeZerglingsFromReapersTask.Enable();

            BaseLocation enemyNatural = Tyr.Bot.MapAnalyzer.GetEnemyNatural();

            if (enemyNatural != null)
            {
                Base enemyNaturalBase = null;
                foreach (Base b in Tyr.Bot.BaseManager.Bases)
                {
                    if (SC2Util.DistanceSq(b.BaseLocation.Pos, enemyNatural.Pos) <= 2 * 2)
                    {
                        enemyNaturalBase = b;
                        break;
                    }
                }
                DefendEnemyNaturalTask = new DefenseSquadTask(enemyNaturalBase, UnitTypes.ZERGLING);
                DefendEnemyNaturalTask.MaxDefenders       = 100;
                DefendEnemyNaturalTask.AlwaysNeeded       = true;
                DefendEnemyNaturalTask.DraftFromFarAway   = true;
                DefendEnemyNaturalTask.DefendRange        = 12;
                DefendEnemyNaturalTask.RetreatMoveCommand = true;

                PotentialHelper potential = new PotentialHelper(enemyNatural.Pos);
                potential.Magnitude = 10;
                potential.From(Tyr.Bot.MapAnalyzer.GetEnemyRamp());
                DefendEnemyNaturalTask.OverrideIdleLocation = potential.Get();

                potential           = new PotentialHelper(enemyNatural.Pos);
                potential.Magnitude = 5;
                potential.From(Tyr.Bot.MapAnalyzer.GetEnemyRamp());
                DefendEnemyNaturalTask.OverrideDefenseLocation = potential.Get();
                DefenseSquadTask.Enable(DefendEnemyNaturalTask);
            }
        }
示例#5
0
 public override void InitializeTasks()
 {
     base.InitializeTasks();
     GroupedAttackTask.Enable();
     WorkerScoutTask.Enable();
     QueenInjectTask.Enable();
     DefenseTask.Enable();
     QueenDefenseTask.Enable();
     ArmyOverseerTask.Enable();
     DefendingOverseerTask.Enable();
     QueenTumorTask.Enable();
     OverlordScoutTask.Enable();
     CreeperLordTask.Enable();
     OverlordAtNaturalTask.Enable();
     ParasitedBCTask.Enable();
     DefenseSquadTask.Enable(false, UnitTypes.QUEEN);
     MechDestroyExpandsTask.Enable();
 }
示例#6
0
        public override void OnStart(Tyr tyr)
        {
            MicroControllers.Add(new StutterController());
            MicroControllers.Add(new TargetFireController(GetPriorities()));

            TimingAttackTask.Enable();
            WorkerScoutTask.Enable();
            QueenInjectTask.Enable();
            DefenseTask.Enable();
            QueenDefenseTask.Enable();
            ArmyOverseerTask.Enable();

            Set += ZergBuildUtil.Overlords();
            Set += Spores();
            Set += Zerglings();
            Set += Ultras();
            Set += MainBuild();
            Set += AntiLifting();
        }