This is a task made with task creator and add aegis abiliti by me :)
using System;
using System.IO;
using System.Linq;
using System;
using System.IO;
using System.Linq;
using System.Threading;
using System.Collections.Generic;
using PBDOBot.Helper;
using PBDOBot.Api;
using PBDOBot.Api.Task;
namespace Tasks
{
public class Task : BBaseTask
{
#region Task Configuration
bool UseShipAbilities = true;
bool UseRocketBuyCPU = true;
bool UseRocketLauncher = true;
public int RocketBuyConfig = 1;
public int HellstormBuyConfig = 2;
public Enums.LaserAmmoType LaserAmmo = Enums.LaserAmmoType.LCB_10;
public Enums.RocketAmmoType RocketAmmo = Enums.RocketAmmoType.PLT_2026;
public Enums.RocketLauncherAmmoType RocketLauncherAmmo = Enums.RocketLauncherAmmoType.ECO10;
#endregion
#region ITaskScripts
class ISurvive : ITaskScript
{
public ISurvive()
: base("ShipAbilities", 10000, 9)
{
}
public override int Run()
{
if (Task.BMain.Actions.CanUseAbility(Enums.ShipAbilit y.Aegis_Shield_Repair) && Task.BMain.Me.Shield / Task.BMain.Me.MaxShield * 100 <= 50)
{
Task.BMain.Actions.UseAbility(Enums.ShipAbility.Ae gis_Shield_Repair);
}
if (Task.BMain.Actions.CanUseAbility(Enums.ShipAbilit y.Aegis_Health_Repair) && Task.BMain.Me.Hitpoints <= 300000)
{
Task.BMain.Actions.UseAbility(Enums.ShipAbility.Ae gis_Health_Repair);
}
if (Task.BMain.Actions.CanUseAbility(Enums.ShipAbilit y.Aegis_Health_Pod) && Task.BMain.Me.Hitpoints <= (Task.BMain.Me.MaxHitpoints - 80000))
{
Task.BMain.Actions.UseAbility(Enums.ShipAbility.Ae gis_Health_Pod);
}
return -1;
}
public override bool NeedRun()
{
return (Task.BMain.Actions.CanUseAbility(Enums.ShipAbilit y.Aegis_Shield_Repair) || Task.BMain.Actions.CanUseAbility(Enums.ShipAbility .Aegis_Health_Repair) || Task.BMain.Actions.CanUseAbility(Enums.ShipAbility .Aegis_Health_Pod));
}
}
#endregion
public override void OnReset()
{
this.TaskScripts.Clear();
TaskScript = new TaskScript(
delegate()
{
if(UseShipAbilities)
this.TaskScripts.Add(new ISurvive()); // Ship Abilities
if (BMain.Me.SelectedShip != null && BMain.Me.SelectedShip.Name == BMain.Npc.StreuneR | BMain.Me.SelectedShip.Name == BMain.Npc.BossStreuneR)
{
if (BMain.Me.SelectedShip.Shield > 0) {LaserAmmoType = Enums.LaserAmmoType.LCB_10;} else {LaserAmmoType = Enums.LaserAmmoType.LCB_10;}
MinDurability = 80;
StandardConfiguration = 1;
DroneFormation = Enums.DroneFormation.Arrow;
UsePet = false;
}
else
{
MinDurability = 80;
StandardConfiguration = 1;
DroneFormation = Enums.DroneFormation.Arrow;
UsePet = false;
}
return -1;
},
delegate()
{
return true;
},
1000);
Enums.ResourceType[] protectedCollection = new Enums.ResourceType[] {
};
this.ProtectResourcesList.AddRange(protectedCollec tion);
Dictionary<string, Enums.ResourceType> boostCollection = new Dictionary<string, Enums.ResourceType>();
//boostCollection.Add("Speed", Enums.ResourceType.ore_);
//boostCollection.Add("Shield", Enums.ResourceType.ore_);
//boostCollection.Add("Lasers", Enums.ResourceType.ore_);
//boostCollection.Add("Rockets", Enums.ResourceType.ore_);
this.BoostDictionary = boostCollection;
}
public override void ChooseLogic()
{
if (!ActionList.Contains("PBDO-Bot Task"))
{
BMain.WriteLog("Task created with Taskcreator by Dr. Moc");
Reset();
TaskMap = "x-8";
HuntNpcsList.Add(BMain.Npc.Streuner);
HuntNpcsList.Add(BMain.Npc.StreuneR);
HuntNpcsList.Add(BMain.Npc.BossStreuneR);
AttackNpcs = true;
BMain.WriteLog("We will attack NPCs");
AttackTaggedNpcs = true;
AttackBossNpcs = true;
BMain.WriteLog("We will attack boss NPCs");
MinFightDistance = 200;
MaxFightDistance = 600;
Repair = true;
MinDurability = 80;
BMain.WriteLog("We will repair if hitpoint are lower then 80%");
StandardConfiguration = 1;
FleeOnEnemyInRadius = true;
BMain.WriteLog("We will flee from enemies");
FleeOnClanWarEnemyInRadius = true;
BMain.WriteLog("We will flee from clan war enemies");
FleeOnAttacked = true;
BMain.WriteLog("We will flee if we get attacked");
SwitchConfigWhileFleeing = true;
BMain.WriteLog("We will switch confi while fleeing");
SwitchConfigWhenShieldLow = true;
DroneFormation = Enums.DroneFormation.Arrow;
BMain.WriteLog("We will use drone formation Arrow");
CollectBonusBoxes = true;
BMain.WriteLog("We will collect bonusboxes");
CollectSpecialBoxes = true;
BMain.WriteLog("We will collect eventboxes");
CollectPirateBoxes = true;
CollectGoldenPirateBoxes = true;
BMain.WriteLog("We will collect pirate treasures");
SafeBotting = false;
ExtremeBotting = true;
LaserAmmoType = Enums.LaserAmmoType.LCB_10;
RocketAmmoType = Enums.RocketAmmoType.PLT_2026;
RocketLauncherAmmoType = Enums.RocketLauncherAmmoType.ECO10;
ActionList.Add("PBDO-Bot Task");
}
}
}
}