public override void InitializeTasks() { base.InitializeTasks(); SiegeTask.Enable(); TimingAttackTask.Enable(); //WorkerScoutTask.Enable(); DefenseTask.Enable(); BunkerDefendersTask.Enable(); SupplyDepotTask.Enable(); ArmyRavenTask.Enable(); MechDestroyExpandsTask.Enable(); RepairTask.Enable(); ReplenishBuildingSCVTask.Enable(); ClearBlockedExpandsTask.Enable(); HomeRepairTask.Enable(); TransformTask.Enable(); ThorretTask.Enable(); HideBuildingTask.Enable(); HideUnitsTask.Enable(); //AttackTask.Enable(); AttackTask.Enable(); if (TankDefenseTasks.Count == 0) { foreach (Base b in Bot.Main.BaseManager.Bases) { if (b == Natural || b == Main) { continue; } TankDefenseTasks.Add(new DefenseSquadTask(b, UnitTypes.SIEGE_TANK) { MaxDefenders = 2 }); LiberatorDefenseTasks.Add(new DefenseSquadTask(b, UnitTypes.LIBERATOR) { MaxDefenders = 1 }); VikingDefenseTasks.Add(new DefenseSquadTask(b, UnitTypes.VIKING_FIGHTER) { MaxDefenders = 1 }); } } foreach (DefenseSquadTask task in TankDefenseTasks) { Task.Enable(task); } foreach (DefenseSquadTask task in LiberatorDefenseTasks) { Task.Enable(task); } foreach (DefenseSquadTask task in VikingDefenseTasks) { Task.Enable(task); } }
public void Execute_TransformerFailed_ShouldReturnFailure() { var task = new TransformTask<string, string>( Task.Const("foo"), val => { throw new Exception("An error has occurred"); }); task.Execute().AssertFailedWith("An error has occurred"); }
public void Execute_NestedTaskSucceed_ShouldTransform() { var task = new TransformTask<string, string>( Task.Const("foo"), val => val.ToUpper()); task.Execute().AssertDataIs("FOO"); }
public void Execute_NestedTaskFailed_ShouldFail() { var task = new TransformTask<string, string>( Task.Failure<string>("error message"), val => val.ToUpper()); task.Execute().AssertFailedWith("error message"); }
public override void InitializeTasks() { base.InitializeTasks(); TimingAttackTask.Enable(); DefenseTask.Enable(); SupplyDepotTask.Enable(); RepairTask.Enable(); ReplenishBuildingSCVTask.Enable(); ClearBlockedExpandsTask.Enable(); HomeRepairTask.Enable(); TransformTask.Enable(); }
public bool Execute() { bool result = true; BuildEngine.LogMessageEvent(new BuildMessageEventArgs($"Transforming file: {Path}", string.Empty, nameof(TransformConfig), MessageImportance.Normal)); try { TransformationCollection transforms = new TransformationCollection(); foreach (var item in Trasformations) { if (transforms.ContainsKey(item.ItemSpec) == false) { transforms.Add(item.ItemSpec, item.GetMetadata("Value")); } else { BuildEngine.LogWarningEvent(new BuildWarningEventArgs( null, null, null, 0, 0, 0, 0, $"Transform key duplicate: {item.ItemSpec}. Skipping.", null, nameof(TransformConfig), DateTime.Now)); result = false; } } TransformTask.Transform(Type, Path, Target ?? Path, transforms); BuildEngine.LogMessageEvent(new BuildMessageEventArgs($"File transformed to: {Target ?? Path}", string.Empty, nameof(TransformConfig), MessageImportance.Normal)); } catch (Exception ex) { BuildEngine.LogErrorEvent(new BuildErrorEventArgs( null, null, null, 0, 0, 0, 0, $"File transformation error: {ex.Message}", null, nameof(TransformConfig), DateTime.Now)); result = false; } return(result); }
public override void InitializeTasks() { base.InitializeTasks(); WorkerScoutTask.Enable(); DefenseTask.Enable(); BunkerDefendersTask.Enable(); SupplyDepotTask.Enable(); ArmyRavenTask.Enable(); //MechDestroyExpandsTask.Enable(); RepairTask.Enable(); ReplenishBuildingSCVTask.Enable(); TransformTask.Enable(); WorkerRushDefenseTask.Enable(); TimingAttackTask.Enable(); DefenseSquadTask.Enable(false, UnitTypes.MARINE); SiegeAtRampTask.Enable(); SiegeBelowRampTask.Enable(); HomeRepairTask.Enable(); }
public static bool TransformConfig(this ICakeContext context, string type, string path, string target, TransformationCollection transformations) { var result = true; context.Log.Write(Verbosity.Normal, LogLevel.Information, "Transforming file: {0}", path); try { TransformTask.Transform(type, path, target ?? path, transformations); context.Log.Write(Verbosity.Normal, LogLevel.Information, "File transformed to: {0}", target ?? path); } catch (Exception ex) { context.Log.Write(Verbosity.Normal, LogLevel.Error, "File transformation error: {0}", ex.Message); result = false; } return(result); }
public override void InitializeTasks() { base.InitializeTasks(); TimingAttackTask.Enable(); WorkerScoutTask.Enable(); DefenseTask.Enable(); BunkerDefendersTask.Enable(); SupplyDepotTask.Enable(); ArmyRavenTask.Enable(); RepairTask.Enable(); ReplenishBuildingSCVTask.Enable(); DistributedDefenseTask.Enable(); TransformTask.Enable(); KillScoutsTask.Enable(); HomeRepairTask.Enable(); MechDestroyExpandsTask.Enable(); DistributeHellbatsTask = new DistributeOverBasesTask(UnitTypes.HELLBAT); DistributeHellbatsTask.Enable(); if (CycloneDefenseSquads == null) { CycloneDefenseSquads = DefenseSquadTask.GetDefenseTasks(UnitTypes.CYCLONE); } else { foreach (DefenseSquadTask task in CycloneDefenseSquads) { Tyr.Bot.TaskManager.Add(task); } } DefenseSquadTask.Enable(CycloneDefenseSquads, true, true); foreach (DefenseSquadTask task in CycloneDefenseSquads) { task.Priority = 4; task.MaxDefenders = 1; task.AllowClaiming = false; } }
public override void InitializeTasks() { base.InitializeTasks(); SiegeTask.Enable(); TimingAttackTask.Enable(); WorkerScoutTask.Enable(); DefenseTask.Enable(); BunkerDefendersTask.Enable(); SupplyDepotTask.Enable(); ArmyRavenTask.Enable(); RepairTask.Enable(); ReplenishBuildingSCVTask.Enable(); ClearBlockedExpandsTask.Enable(); HomeRepairTask.Enable(); TransformTask.Enable(); if (TankDefenseTasks.Count == 0) { foreach (Base b in Bot.Main.BaseManager.Bases) { if (b == Natural || b == Main) { continue; } TankDefenseTasks.Add(new DefenseSquadTask(b, UnitTypes.SIEGE_TANK) { MaxDefenders = 2 }); LiberatorDefenseTasks.Add(new DefenseSquadTask(b, UnitTypes.LIBERATOR) { MaxDefenders = 1 }); VikingDefenseTasks.Add(new DefenseSquadTask(b, UnitTypes.VIKING_FIGHTER) { MaxDefenders = 1 }); } } foreach (DefenseSquadTask task in TankDefenseTasks) { Task.Enable(task); } foreach (DefenseSquadTask task in LiberatorDefenseTasks) { Task.Enable(task); } foreach (DefenseSquadTask task in VikingDefenseTasks) { Task.Enable(task); } DefenseSquadTask.Enable(false, UnitTypes.CYCLONE); foreach (DefenseSquadTask task in DefenseSquadTask.Tasks) { task.MaxDefenders = 2; } if (CycloneDefenseTasks == null) { CycloneDefenseTasks = DefenseSquadTask.GetDefenseTasks(UnitTypes.CYCLONE); } DefenseSquadTask.Enable(CycloneDefenseTasks, false, false); foreach (DefenseSquadTask task in CycloneDefenseTasks) { task.MaxDefenders = 1; task.Priority = 8; } }