Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Problem] Poprawki w tasku


lubieBOCIĆ

Rekomendowane odpowiedzi

Opublikowano

Może mi ktoś napisać jak:

1.Wyłączyć ładowanie się statku sepromem na osłone,rakiety i promerium na szybkość oraz wyłączyć całkowicie wysyłanie się promerium na statek chce tylko żeby wysyłał i ładował się sepromem na strzały

2.Jak zrobić żeby bił do atakujących graczy z x4

task:

 

using System;
using System.Collections.Generic;
using System.Linq;

using PBDOBot.Helper;
using PBDOBot.Api;

/*
__________ .__ .__ .___.__ ___.
\______ \_____ | | | | _____ __| _/|__|__ __ _____ \_ |__ ___.__.
| ___/\__ \ | | | | \__ \ / __ | | | | \/ \ | __ < | |
| | / __ \| |_| |__/ __ \_/ /_/ | | | | / Y Y \ | \_\ \___ |
|____| (____ /____/____(____ /\____ | |__|____/|__|_| / |___ / ____|
\/ \/ \/ \/ \/\/
__ __ __________ __ __
\ \ \ \ |__\______ \ / / / /
\ \ \ \ | || | \ / / / /
/ / / / | || ` \ \ \ \ \
/_/ /_/ /\__| /_______ / \_\ \_\
\______| \/

____ ____
___ __ ___________ /_ | /_ |
\ \/ _/ __ \_ __ \ | | | |
\ /\ ___/| | \/ | | | |
\_/ \___ |__| |___| /\ |___|
\/ \/
*/

namespace PBDOBot.Api.Task
{
public class Task : BBaseTask
{
#region Task Configuration

/* You really should only need to change shiz here! */
bool UseHangarChange = true;
bool UseAmmoChanger = false;
bool UseShipAbilities = true;
bool UseTechCenter = false;
bool UseRocketBuyCPU = true;

bool UseRocketLauncher = true;
bool CloakOnSell = false;

public int CollectionHangar = 3;
public int SellHangar = 2;

public int RocketBuyConfig = 1;
public int HellstormBuyConfig = 2;

bool BoostLasersWithSeprom = true;
bool BoostRocketsWithSeprom = true;
bool BoostEnginesWithPromerium = true;
bool BoostShieldsWithSeprom = true;

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
/* ITaskScript MPCforum */
class IHangarChange : ITaskScript
{
public IHangarChange()
: base("HangarChange", 15000, 10)
{
}

public override int Run()
{
int hangarCollect = ((Task)Task).CollectionHangar;
int hangarSell = ((Task)Task).SellHangar;

int timer = Task.BMain.Me.Premium ? 5 : 20;

int cargo = Task.BMain.Me.FreeCargo - Task.MinFreeSlots;

// Fly to safety in 5-3
if (cargo <= 0 && Task.BMain.MapName == "5-3" && !Task.BMain.Me.InNoAttackZone && Task.BMain.LoggedIn)
{
Task.IdleInSafety = true;
Task.BMain.WriteLog("Flying to safety to change hangar");
}

// Logout when in safety
else if (cargo <= 0 && Task.BMain.MapName == "5-3" && Task.BMain.Me.InNoAttackZone && Task.BMain.LoggedIn)
{
Task.BMain.Actions.LogOff(180 + timer);
Task.BMain.WriteLog("Logging out to switch hangar");
}

// Trigger Selling in 5-3
else if (cargo <= 0 && Task.BMain.MapName == "5-2" && Task.BMain.LoggedIn)
{
Task.SellPalladium = true;
Task.Sell = true;
Task.BMain.WriteLog("Selling Palladium");
return 1500;
}

// Logout when sold
else if (cargo > 0 && Task.BMain.MapName == "5-2" && Task.BMain.Equip.Ship.CurrentHangar != hangarCollect && Task.BMain.Me.InNoAttackZone && Task.BMain.LoggedIn)
{
Task.IdleInSafety = true;
Task.BMain.Actions.LogOff(180 + timer);
Task.BMain.WriteLog("Logging out to switch hangar");
}

// Flee to safety to logout after selling
else if (cargo > 0 && Task.BMain.MapName == "5-2" && Task.BMain.Equip.Ship.CurrentHangar != hangarCollect && !Task.BMain.Me.InNoAttackZone && Task.BMain.LoggedIn)
{
Task.IdleInSafety = true;
Task.BMain.WriteLog("Flying to safety to change hangar");
}

// Login to selling hangar
if (!Task.BMain.LoggedIn && Task.BMain.MapName == "5-3")
{
Task.BMain.Equip.Ship.ChangeHangars(hangarSell);
Task.BMain.Actions.LogOn();
Task.BMain.WriteLog("Switching to chosen sell hangar");
}

// Login to collection hangar
else if (!Task.BMain.LoggedIn && Task.BMain.MapName == "5-2")
{
Task.BMain.Equip.Ship.ChangeHangars(hangarCollect);
Task.BMain.Actions.LogOn();
Task.BMain.WriteLog("Switching to chosen collect hangar");
}

return -1;
}

public override bool NeedRun()
{
return Task.BMain.EquipmentLoaded;
}
}

class IShootPeepz : ITaskScript
{
public IShootPeepz()
: base("AmmoChanger", 2000, 8)
{
}

public override int Run()
{
if (Task.BMain.Me.SelectedShip.IsNpc)
{
if (Task.BMain.Me.SelectedShip.Shield > 0) { Task.BMain.Actions.SetDroneFormation(Enums.DroneFormation.Heart); } else { Task.BMain.Actions.SetDroneFormation(Enums.DroneFormation.Heart); }
if (Task.BMain.Me.SelectedShip.Shield > 0) { Task.BMain.Me.SetLaserAmmo(Enums.LaserAmmoType.SAB); } else { Task.BMain.Me.SetLaserAmmo(((Task)Task).LaserAmmo); }
}
else
{
if (Task.BMain.Me.GetAmmoCount(Enums.LaserAmmoType.RSB_75) >= 1000 && Task.BMain.Me.GetAmmoCount(Enums.LaserAmmoType.UCB_100) >= 1000)
{
if (Task.LaserAmmoType != Enums.LaserAmmoType.RSB_75)
{
Task.BMain.Me.SetLaserAmmo(Enums.LaserAmmoType.RSB_75);
return 500;
}

if (Task.LaserAmmoType != Enums.LaserAmmoType.UCB_100)
{
Task.BMain.Me.SetLaserAmmo(Enums.LaserAmmoType.UCB_100);
return 3000;
}
}

if (Task.BMain.Actions.CanUseInstaShield && Task.BMain.Me.Hitpoints <= 50000) Task.BMain.Actions.UseInstaShield();
if (Task.BMain.Actions.CanUseEmp && Task.BMain.Me.Hitpoints <= 30000) Task.BMain.Actions.UseEmp();
if (Task.BMain.Me.Shield <= Task.BMain.Me.MaxShield * 0.1 && Task.BMain.Actions.CanUseTech(Enums.TechType.ShieldBackup)) Task.BMain.Actions.UseTech(Enums.TechType.ShieldBackup);
}
return -1;
}

public override bool NeedRun()
{
return Task.BMain.Me.SelectedShip != null;
}
}

class ISurvive : ITaskScript
{
public ISurvive()
: base("ShipAbilities", 5000, 9)
{
}

public override int Run()
{
if (Task.BMain.Actions.CanUseAbility(Enums.ShipAbility.Aegis_Shield_Repair) && (Task.BMain.Me.Shield / (double)Task.BMain.Me.MaxShield) * 100 <= 70)
{
Task.BMain.Actions.UseAbility(Enums.ShipAbility.Aegis_Shield_Repair);
}
if (Task.BMain.Actions.CanUseAbility(Enums.ShipAbility.Aegis_Health_Repair) && Task.BMain.Me.Hitpoints <= (Task.BMain.Me.MaxHitpoints - 100000))
{
Task.BMain.Actions.UseAbility(Enums.ShipAbility.Aegis_Health_Repair);
}
if (Task.BMain.Actions.CanUseAbility(Enums.ShipAbility.Aegis_Health_Pod) && Task.BMain.Me.Hitpoints <= 100000)
{
Task.BMain.Actions.UseAbility(Enums.ShipAbility.Aegis_Health_Pod);
}
return -1;
}

public override bool NeedRun()
{
return (Task.BMain.Actions.CanUseAbility(Enums.ShipAbility.Aegis_Shield_Repair) || Task.BMain.Actions.CanUseAbility(Enums.ShipAbility.Aegis_Health_Repair) || Task.BMain.Actions.CanUseAbility(Enums.ShipAbility.Aegis_Health_Pod));
}
}

class ICanHazRocketz : ITaskScript
{
public ICanHazRocketz()
: base("RocketBuyCPU", 2000, 7)
{
}

public override int Run()
{
int RocketCount = Task.BMain.Me.GetAmmoCount(((Task)Task).RocketAmmo);


if (RocketCount < 10)
{

Task.StandardConfiguration = ((Task)Task).RocketBuyConfig;
Task.SwitchConfigWhenShieldLow = false;
return 5000; // Config Change Cooldown
}

else
{

Task.StandardConfiguration = ((Task)Task).HellstormBuyConfig;
Task.SwitchConfigWhenShieldLow = true;
}


if (RocketCount > 300)
return 120000; // I doubt we will use 300 rockets in less than 2 mins. This gives the CPU back some processing time!


return -1;
}

public override bool NeedRun()
{
return true;
}
}

class IHazSuperPowerz : ITaskScript
{
public IHazSuperPowerz()
: base("TechCenter", 1000, 6)
{
}

public override int Run()
{
Task.BMain.Actions.UseTech(Enums.TechType.RocketPrecision);
return 1200000; // Precision Targeter Duration and Cooldown
}

public override bool NeedRun()
{
return Task.BMain.Actions.CanUseTech(Enums.TechType.RocketPrecision) && Task.BMain.Actions.GetTechAmount(Enums.TechType.RocketPrecision) > 10;
}
}
#endregion


public override void OnReset()
{
this.BoostDictionary = new Dictionary {
{ "Lasers", Enums.ResourceType.ore_seprom },
{ "Rockets", Enums.ResourceType.ore_seprom },
{ "Speed", Enums.ResourceType.ore_promerium },
{ "Shield", Enums.ResourceType.ore_seprom },
};

this.TaskScripts.Clear();

if (UseHangarChange)
this.TaskScripts.Add(new IHangarChange()); // Hangar Change

if (UseAmmoChanger)
this.TaskScripts.Add(new IShootPeepz()); // Ammo Changer

if (UseShipAbilities)
this.TaskScripts.Add(new ISurvive()); // Ship Abilities

if (UseRocketBuyCPU)
this.TaskScripts.Add(new ICanHazRocketz()); // Auto Rocket Buy

if (UseTechCenter)
this.TaskScripts.Add(new IHazSuperPowerz()); // Tech Center
}

public override void ChooseLogic()
{
if (!ActionList.Contains("Palladium Pro"))
{
BMain.WriteLog("Palladium Pro");
BMain.WriteLog("\u00A9 Made by -jD- with special thanks to ukjet");

Restock = false;

UseRocketLauncher = UseRocketLauncher;
LaserAmmoType = LaserAmmo;
RocketAmmoType = RocketAmmo;
RocketLauncherAmmoType = RocketLauncherAmmo;

AvoidNpcsRange = 3500;

CollectResources = true;
ExtremeBotting = false;

CollectBonusBoxes = false;
CollectCargoBoxes = false;

SwitchConfigWhenShieldLow = true;
SwitchConfigShieldPercent = 10;

AnswerAttacks = true;
FleeOnEnemyInRadius = false;

TaskMap = "5-3";

AttackNpcs = true;

DroneFormation = Enums.DroneFormation.Heart;

if (BMain.MapName != "5-3") { UsePet = true; } else { UsePet = true; }

/* Confusing cloak logic FTW! :D */
if (!BMain.MapName.Contains("5-"))
if(BMain.MapName.Contains("-8"))
Cloak = false;
else if (CloakOnSell)
Cloak = false;
else
if (!UseHangarChange && CloakOnSell)
if (BMain.MapName != "5-3") { Cloak = false; } else { Cloak = false; }


PetMode = Enums.PetMode.Auto_Resource_Collector;
RestockPetFuel = true;
PetFuelMinAmount = 1000;
PetMinDurability = 1;
RepairPetWhenDead = true;

Repair = true;
MinDurability = 80;
MaxDurability = 100;

Refine = false;

if (UseHangarChange)
{
if (BMain.MapName == "5-3")
{
Sell = false;
SellPalladium = false;
SellSkylabPromerium = false;
}
else
{
Sell = true;
SellPalladium = true;
SellSkylabPromerium = true;
}
}
else
{
Sell = true;
SellPalladium = true;
SellSkylabPromerium = true;
}

MinFreeSlots = 0;
MinPalladiumAmountToSell = 30;

ActionList.Add("Palladium Pro");
}
}
}
}

 

Opublikowano

bool BoostRocketsWithSeprom = true;

bool BoostEnginesWithPromerium = true;

bool BoostShieldsWithSeprom = true;

this.BoostDictionary = new Dictionary

{ "Lasers", Enums.ResourceType.ore_seprom },

{ "Rockets", Enums.ResourceType.ore_seprom },

{ "Speed", Enums.ResourceType.ore_promerium },

{ "Shield", Enums.ResourceType.ore_seprom },

};

SellSkylabPromerium = true;

zmień na
bool BoostRocketsWithSeprom = false;

bool BoostEnginesWithPromerium = false;

bool BoostShieldsWithSeprom = false;

this.BoostDictionary = new Dictionary();

SellSkylabPromerium = false;

Opublikowano

 

bool BoostRocketsWithSeprom = true;
 bool BoostEnginesWithPromerium = true;
 bool BoostShieldsWithSeprom = true;
this.BoostDictionary = new Dictionary
{ "Lasers", Enums.ResourceType.ore_seprom },
 { "Rockets", Enums.ResourceType.ore_seprom },
 { "Speed", Enums.ResourceType.ore_promerium },
 { "Shield", Enums.ResourceType.ore_seprom },
 };
SellSkylabPromerium = true;
zmień na
bool BoostRocketsWithSeprom = false;
 bool BoostEnginesWithPromerium = false;
 bool BoostShieldsWithSeprom = false;
this.BoostDictionary = new Dictionary();
SellSkylabPromerium = false;

 

Możesz mi napisać co na co mam dokładnie na co zamienić a co usunąć bo jak nie robie to i tak mam błąd typu brak jakiegoś znaku

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...