Anonymous
public text v1 · immutablepublic class LostTrainer extends Methods
{
int pray;
String active = ("Waiting");
int combatlvl;
String itempick = (" ");
int gbank = 0;
String sfmode;
int gs = 0;
int gb = 0;
int setbones = 0;
int cg = 0;
int sw = 0;
int setmode = 0;
int pause = 0;
String count;
int picker = 1;
String ver = ("0.2");
int fmode;
int done1 = 0;
int coin = 1;
int mace = 1;
int ring = 1;
int dia = 1;
int ruby = 1;
int sap = 1;
int eme = 1;
int hal = 1;
int dea = 1;
int law = 1;
int cos = 1;
int cha = 1;
int dra = 1;
String bank = ("@ran@Bank");
String drop = ("@cya@Drop");
String coino = ("@ran@Bank");
String maceo = ("@ran@Bank");
String ringo = ("@ran@Bank");
String diao = ("@ran@Bank");
String rubyo = ("@ran@Bank");
String sapo = ("@ran@Bank");
String emeo = ("@ran@Bank");
String halo = ("@ran@Bank");
String deao = ("@ran@Bank");
String lawo = ("@ran@Bank");
String coso = ("@ran@Bank");
String chao = ("@ran@Bank");
String drao = ("@ran@Bank");
String[] mode = {"Controlled","Strength","Attack","Defence"};
int[] spicklist = {75,81,93,112,397,399,400,401,402,403,404,406,407,522,524,593,594,597,795,1278,297,298,299,300};
int[] inventlist = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int[] picklist = {10,96,286,157,158,159,160,526,38,42,46,41,1276,1277,527};
int[] droplist = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int fm;
int fn;
int bones;
int carry;
String[] fooduse = {"Cakes","Shark","Lobsters","Sword Fish","Bass","Trout","Salmon","Tuna","Turtle","Manaray","Pike","Cod","Anchove","Mackeral","Herring","Sardine","Shrimp","@cya@Enter Own Id"};
int[] foodhp = {4,20,12,14,13,7,9,10,20,21,8,7,3,6,5,4,3,0,0};
int[] foodid = {330,546,373,370,555,359,357,367,1193,1191,364,551,352,553,362,355,350,0,0};
int foodout = 0;
int closegates;
String[] yesno = {"Yes","No"};
int world;
public LostTrainer(mudclient mc){super(mc);}
public void MainBody(String Args[])
{
StartScanForMods();
Display("Lost City Trainer By : tedjohntj");
while(Running())
{
AutoLogin(true);
while(done1 == 0)
{
String[] items = {"Coins --- " + coino,"Mithril Maces --- " + maceo,"Ruby Rings --- " + ringo,"Diamonds --- " + diao,"Ruby's --- " + rubyo,"Saphires --- " + sapo,"Emeralds --- " + emeo,"Half Keys --- " + halo,"Death Runes --- " + deao,"Law Rune --- " + lawo,"Cosmic Runes --- " + coso,"Chaos Runes --- " + chao,"Half Dragon Square --- " + drao,"@whi@Done"};
int option = GetOption("Bank Or Drop",items);
if(option == 0)
{
coin = (coin + 1);
if(coin > 2)
{
coin = 1;
}
if(coin == 1)
{
picklist[option] = 10;
droplist[option] = 0;
coino = bank;
}
if(coin == 2)
{
picklist[option] = 0;
droplist[option] = 10;
coino = drop;
}
}
if(option == 1)
{
mace = (mace + 1);
if(mace > 2)
{
mace = 1;
}
if(mace == 1)
{
picklist[option] = 96;
droplist[option] = 0;
maceo = bank;
}
if(mace == 2)
{
picklist[option] = 0;
droplist[option] = 96;
maceo = drop;
}
}
if(option == 2)
{
ring = (ring + 1);
if(ring > 2)
{
ring = 1;
}
if(ring == 1)
{
picklist[option] = 286;
droplist[option] = 0;
ringo = bank;
}
if(ring == 2)
{
picklist[option] = 0;
droplist[option] = 286;
ringo = drop;
}
}
if(option == 3)
{
dia = (dia + 1);
if(dia > 2)
{
dia = 1;
}
if(dia == 1)
{
picklist[option] = 157;
droplist[option] = 0;
diao = bank;
}
if(dia == 2)
{
picklist[option] = 0;
droplist[option] = 157;
diao = drop;
}
}
if(option == 4)
{
ruby = (ruby + 1);
if(ruby > 2)
{
ruby = 1;
}
if(ruby == 1)
{
picklist[option] = 158;
droplist[option] = 0;
rubyo = bank;
}
if(ruby == 2)
{
picklist[option] = 0;
droplist[option] = 158;
rubyo = drop;
}
}
if(option == 5)
{
sap = (sap + 1);
if(sap > 2)
{
sap = 1;
}
if(sap == 1)
{
picklist[option] = 159;
droplist[option] = 0;
sapo = bank;
}
if(sap == 2)
{
picklist[option] = 0;
droplist[option] = 159;
sapo = drop;
}
}
if(option == 6)
{
eme = (eme + 1);
if(eme > 2)
{
eme = 1;
}
if(eme == 1)
{
picklist[option] = 160;
droplist[option] = 0;
emeo = bank;
}
if(eme == 2)
{
picklist[option] = 0;
droplist[option] = 160;
emeo = drop;
}
}
if(option == 7)
{
hal = (hal + 1);
if(hal > 2)
{
hal = 1;
}
if(hal == 1)
{
picklist[14] = 527;
picklist[option] = 526;
droplist[option] = 0;
droplist[14] = 0;
halo = bank;
}
if(hal == 2)
{
picklist[14] = 0;
picklist[option] = 0;
droplist[option] = 526;
droplist[14] = 527;
halo = drop;
}
}
if(option == 8)
{
dea = (dea + 1);
if(dea > 2)
{
dea = 1;
}
if(dea == 1)
{
picklist[option] = 38;
droplist[option] = 0;
deao = bank;
}
if(dea == 2)
{
picklist[option] = 0;
droplist[option] = 38;
deao = drop;
}
}
if(option == 9)
{
law = (law + 1);
if(law > 2)
{
law = 1;
}
if(law == 1)
{
picklist[option] = 42;
droplist[option] = 0;
lawo = bank;
}
if(law == 2)
{
picklist[option] = 0;
droplist[option] = 42;
lawo = drop;
}
}
if(option == 10)
{
cos = (cos + 1);
if(cos > 2)
{
cos = 1;
}
if(cos == 1)
{
picklist[option] = 46;
droplist[option] = 0;
coso = bank;
}
if(cos == 2)
{
picklist[option] = 0;
droplist[option] = 46;
coso = drop;
}
}
if(option == 11)
{
cha = (cha + 1);
if(cha > 2)
{
cha = 1;
}
if(cha == 1)
{
picklist[option] = 41;
droplist[option] = 0;
chao = bank;
}
if(cha == 2)
{
picklist[option] = 0;
droplist[option] = 41;
chao = drop;
}
}
if(option == 12)
{
dra = (dra + 1);
if(dra > 2)
{
dra = 1;
}
if(dra == 1)
{
picklist[option] = 1276;
picklist[13] = 1277;
drao = bank;
droplist[option] = 0;
droplist[13] = 0;
}
if(dra == 2)
{
picklist[option] = 0;
picklist[13] = 0;
droplist[option] = 1276;
droplist[13] = 1277;
drao = drop;
}
}
if(option == 13)
{
done1 = 1;
}
}
fm = GetOption("Pick Food To Use",fooduse);
if(fm == 17)
{
String of = GetInput("Enter Food ID");
String he = GetInput("How Many HP Does It Heal?");
foodid[fm] = StrToInt(of);
foodhp[fm] = StrToInt(he);
}
fn = GetOption("Secondary Food To Use",fooduse);
if(fn == 17)
{
String ofa = GetInput("Enter Food ID");
String hea = GetInput("How Many HP Does It Heal?");
foodid[(fn + 1)] = StrToInt(ofa);
foodhp[(fn + 1)] = StrToInt(hea);
}
count = GetInput("How Much Food To Carry?");
carry = StrToInt(count);
picker = GetOption("Use Picker Only?",yesno);
bones = GetOption("Bury Bones?",yesno);
closegates = GetOption("Should I Close Bank Gates On Enter And Exit?",yesno);
world = GetWorld();
fmode = GetOption("Select Fight Mode",mode);
LockMode(fmode);
Display("Lost City Trainer Ver. "+ ver +" By : tedjohntj");
checkinv();
while(Running() && done1 == 1)
{
pray = GetMaxLvl(5);
combatlvl = GetCombatLvl();
active = ("Waiting");
itempick = (" ");
if(gb == 1)
{
gb = 0;
gobank();
}
if(gs == 1)
{
sleep();
gs = 0;
}
if(cg == 1)
{
closegates = GetOption("Should I Close Bank Gates On Enter And Exit?",yesno);
}
if(setbones == 1)
{
bones = GetOption("Bury Bones?",yesno);
setbones = 0;
}
if(setmode == 1)
{
fmode = GetOption("Select Fight Mode",mode);
LockMode(fmode);
setmode = 0;
}
if(fmode == 0)
{
sfmode = ("Controlled");
}
if(fmode == 1)
{
sfmode = ("Strength");
}
if(fmode == 2)
{
sfmode = ("Attack");
}
if(fmode == 3)
{
sfmode = ("Defence");
}
if(sw == 1)
{
String[] sworld = {"86","88","90"};
int setworld = GetOption("Switch To World?",sworld);
if(setworld == 0)
{
active = ("Changing To World 86");
world = 86;
}
if(setworld == 1)
{
active = ("Changing To World 88");
world = 88;
}
if(setworld == 2)
{
active = ("Changing To World 90");
world = 90;
}
sw = 0;
}
active = ("Waiting");
checkhp();
SleepIfAt(90);
if(GetWorld() != world)
{
ChangeWorld(world);
while(LoggedIn())
{
while(InCombat())
{
if(HitsPercent() < 50)
{
WalkToWait(172,3542);
WalkToWait(168,3530);
}
Wait(100);
}
LogOut();
Wait(100);
}
}
if(CountInv(droplist) != 0 && !InCombat())
{
active = ("Dropping Item");
dropper();
Wait(100);
}
if(CountInv() == 30 && !InCombat())
{
gobank();
}
if(CountInv(foodid[fm]) == 0)
{
gobank();
}
if(HitsPercent() < 30 && pause == 0)
{
shutdown();
}
active = ("Waiting");
int[] spick = GetItemById(spicklist);
if(spick[1] != -1 && pause == 0)
{
active = ("Picking Special Item");
if(spick[0] == 75){itempick = ("Rune Long Sword");}
if(spick[0] == 81){itempick = ("Rune 2-Hander");}
if(spick[0] == 93){itempick = ("Rune Battle Axe");}
if(spick[0] == 112){itempick = ("Rune Large Helmet");}
if(spick[0] == 397){itempick = ("Rune Short Sword");}
if(spick[0] == 399){itempick = ("Rune Medium Helmet");}
if(spick[0] == 400){itempick = ("Rune Chain");}
if(spick[0] == 401){itempick = ("Rune Plate Male");}
if(spick[0] == 402){itempick = ("Rune Legs");}
if(spick[0] == 403){itempick = ("Rune Square Shield");}
if(spick[0] == 404){itempick = ("Rune Kite Shield");}
if(spick[0] == 406){itempick = ("Rune Skirt");}
if(spick[0] == 407){itempick = ("Rune Plate Female");}
if(spick[0] == 522){itempick = ("Dragon Ammy");}
if(spick[0] == 524){itempick = ("Dragon Ammy");}
if(spick[0] == 597){itempick = ("Dragon Ammy");}
if(spick[0] == 593){itempick = ("Dragon Sword");}
if(spick[0] == 594){itempick = ("Dragon Battle Axe");}
if(spick[0] == 795){itempick = ("Dragon Medium Helmet");}
if(spick[0] == 1278){itempick = ("Dragon Square Shield");}
if(spick[0] == 297){itempick = ("Magic Ammy");}
if(spick[0] == 298){itempick = ("Emerald Ammy");}
if(spick[0] == 299){itempick = ("Ruby Ammy");}
if(spick[0] == 300){itempick = ("Diamond Ammy");}
if(spick[0] == -1){itempick = (" ");}
while(GetX() != spick[1] && GetY() != spick[2])
{
WalkTo(spick[1],spick[2]);
Wait(200);
}
PickupItem(spick[1],spick[2],spick[0]);
Wait(200);
}
active = ("Waiting");
itempick = (" ");
if(bones == 0 && pause == 0)
{
int[] bone = GetItemById(20);
if(bone[1] == GetX() && bone[2] == GetY())
{
active = ("Picking");
itempick = ("Bones");
PickupItem(bone[1],bone[2],bone[0]);
Wait(100);
}
itempick = (" ");
}
active = ("Waiting");
if(bones == 0 && CountInv(20) != 0 && pause == 0)
{
active = ("Burying Bones");
UseItem(GetItemPos(20));
Wait(100);
}
active = ("Waiting");
int[] pick = GetItemById(picklist);
if(pick[1] != -1 && !InCombat() && HitsPercent() > 60 && spick[1] == -1 && pause == 0)
{
active = ("Picking");
if(pick[0] == 10){itempick = ("Coins");}
if(pick[0] == 96){itempick = ("Mith Mace");}
if(pick[0] == 286){itempick = ("Ruby Ring");}
if(pick[0] == 157){itempick = ("Uncut Diamond");}
if(pick[0] == 158){itempick = ("Uncut Ruby");}
if(pick[0] == 159){itempick = ("Uncut Emerald");}
if(pick[0] == 160){itempick = ("Uncut Saphire");}
if(pick[0] == 526 || pick[0] == 527){itempick = ("Half Key");}
if(pick[0] == 38){itempick = ("Death Rune");}
if(pick[0] == 42){itempick = ("Law Rune");}
if(pick[0] == 46){itempick = ("Cosmic Rune");}
if(pick[0] == 41){itempick = ("Chaos Rune");}
if(pick[0] == 1276 || pick[0] == 1277){itempick = ("Half Dragon Shield");}
while(GetX() != pick[1] && GetY() != pick[2])
{
WalkTo(pick[1],pick[2]);
Wait(175);
}
PickupItem(pick[1],pick[2],pick[0]);
Wait(150);
}
active = ("Waiting");
itempick = (" ");
if(gbank == 1)
{
gbank = 0;
gobank();
}
if(pick[1] == -1 && GetFatigue() < 90 && HitsPercent() > 50 && picker == 1 && pause == 0)
{
int[] npc = GetNpcById(298);
if(npc[1] != -1)
{
active = ("Attacking");
AttackNpc(npc[0]);
Wait(300);
}
}
while(InCombat())
{
active = ("Fighting");
Wait(100);
while(HitsPercent() < 50 && InCombat())
{
WalkToWait(GetX(),GetY());
Wait(200);
}
}
}
}
done1 = 0;
}
public void checkhp()
{
active = ("Checking HP");
while((GetMaxLvl(3) - GetCurLvl(3)) >= (foodhp[fm]) && foodout != 1 && !InCombat())
{
if(fm == 0)
{
active = ("Eating Cake");
while(CountInv(335) != 0)
{
UseItem(GetItemPos(335));
Wait(800);
}
while(CountInv(333) != 0 && CountInv(335) == 0)
{
UseItem(GetItemPos(333));
Wait(800);
}
while(CountInv(330) != 0 && CountInv(333) == 0 && CountInv(335) == 0)
{
UseItem(GetItemPos(330));
Wait(800);
}
if(CountInv(330) == 0 && CountInv(333) == 0 && CountInv(335) == 0)
{
foodout = 1;
}
}
if(fm != 0)
{
active = ("Eating" + fooduse[fm]);
if(CountInv(foodid[fm]) != 0)
{
UseItem(GetItemPos(foodid[fm]));
Wait(800);
}
if(CountInv(foodid[fm]) == 0)
{
gbank = 1;
}
}
}
active = ("Waiting");
}
public void gobank()
{
active = ("Walking To Bank");
gbank = 0;
gb = 0;
Display("Going To Bank");
WalkToWait(172,3542);
WalkToWait(168,3530);
while(GetX() != 171 && GetY() != 3527)
{
WalkToWait(171,3527);
Wait(200);
}
int[] gate = GetObjectById(57);
if(gate[0] != -1)
{
active = ("Opening Gates");
AtObject(gate[1],gate[2]);
Wait(900);
}
while(GetX() != 172 && GetY() != 3528)
{
WalkToWait(172,3528);
Wait(200);
}
if(closegates == 0)
{
int[] gate2 = GetObjectById(58);
if(gate2[0] != -1)
{
active = ("Closing Gates");
AtObject2(gate2[1],gate2[2]);
Wait(900);
}
}
bank();
}
public void frombank()
{
active = ("Walking Back From Bank");
while(GetX() != 172 && GetY() != 3528)
{
WalkToWait(172,3528);
Wait(200);
}
int gate1[] = GetObjectById(57);
if(gate1[0] != -1)
{
active = ("Opening Gates");
AtObject(gate1[1],gate1[2]);
Wait(900);
}
while(GetX() != 171 && GetY() != 3527)
{
WalkToWait(171,3527);
Wait(200);
}
if(closegates == 0)
{
int[] gate3 = GetObjectById(58);
if(gate3[0] != -1)
{
active = ("Closing Gates");
AtObject2(gate3[1],gate3[2]);
Wait(900);
}
}
WalkToWait(172,3542);
}
public void dropper()
{
active = ("Dropping Item");
int dt = 0;
while(dt < 15 && !InCombat())
{
while(CountInv(droplist[dt]) != 0 && droplist[dt] != 0)
{
DropItem(GetItemPos(droplist[dt]));
Wait(300);
}
dt = (dt + 1);
}
}
public void sleep()
{
active = ("Sleeping");
while(!Sleeping() && Running() && !InCombat())
{
if(CountInv(1263) == 0)
{
Display("Script stopped, no sleeping bag");
End();
}
UseItem(GetItemPos(1263));
Wait(3000);
}
while(Sleeping() && Running())
{
Wait(100);
}
}
public void bank()
{
active = ("Banking");
while(!QuestMenu())
{
int[] banker = GetNpcById(224);
if(banker[0] != -1)
{
TalkToNpc(banker[0]);
Wait(2000);
}
Wait(400);
}
Answer(0);
Wait(1000);
while(!InBank())
{
Wait(500);
}
int bt = 0;
while(bt < 15 && InBank())
{
while(CountInv(picklist[bt]) != 0)
{
while(CountInv(picklist[bt]) > 2500)
{
Deposit(picklist[bt],2500);
Wait(300);
}
while(CountInv(picklist[bt]) > 500)
{
Deposit(picklist[bt],500);
Wait(300);
}
while(CountInv(picklist[bt]) > 100)
{
Deposit(picklist[bt],100);
Wait(300);
}
while(CountInv(picklist[bt]) > 25)
{
Deposit(picklist[bt],25);
Wait(300);
}
while(CountInv(picklist[bt]) > 5)
{
Deposit(picklist[bt],5);
Wait(300);
}
while(CountInv(picklist[bt]) > 0)
{
Deposit(picklist[bt],1);
Wait(300);
}
}
bt = (bt + 1);
}
int ko = 0;
while(ko < 24)
{
if(CountInv(spicklist[ko]) > inventlist[ko])
{
int ju = (CountInv(spicklist[ko]) - inventlist[ko]);
int ji = 0;
while(ji != ju)
{
Deposit(spicklist[ko],1);
Wait(300);
ji = (ji + 1);
}
}
ko = (ko + 1);
}
while(CountInv(foodid[fm]) < carry && CountInBank(foodid[fm]) > 0)
{
Withdraw(foodid[fm],1);
Wait(300);
}
Wait(500);
if(CountInv(foodid[fm]) > carry)
{
int dep = (CountInv(foodid[fm]) - carry);
Deposit(foodid[fm],dep);
Wait(500);
}
if(CountInv(foodid[fm]) == 0 && foodout == 0)
{
Display("Food Out! Switching To Secondary Food");
fm = fn;
if(foodout == 1 && CountInv(foodid[fm]) == 0 && CountInBank(foodid[fm]) == 0)
{
shutdown();
}
foodout = 1;
bank();
}
Wait(500);
CloseBank();
Wait(300);
frombank();
}
public void shutdown()
{
AutoLogin(false);
if(InCombat())
{
while(HitsPercent() > 50)
{
Wait(100);
}
WalkToWait(172,3542);
WalkToWait(168,3530);
}
while(LoggedIn())
{
LogOut();
Wait(300);
}
}
public void OnInput(String input)
{
if(input.equals("menu"))
{
done1 = 0;
Wait(100);
}
if(input.equals("bank"))
{
gb = 1;
}
if(input.equals("fmode"))
{
setmode = 1;
}
if(input.equals("world"))
{
sw = 1;
}
if(input.equals("bones"))
{
setbones = 1;
}
if(input.equals("gates"))
{
cg = 1;
}
if(input.equals("pause"))
{
pause = 1;
}
if(input.equals("cont"))
{
pause = 0;
}
if(input.equals("sleep"))
{
gs = 1;
}
}
public Stats ToShow()
{
String[] Message = {"Combatlvl - " + combatlvl,"Prayer Lvl : @yel@" + pray,"Mode - " + sfmode,"Version - " + ver,"LostTrainer","Activity : @cya@" + active,"Picking : @cya@" + itempick};
int[] XCoords = {10,10,10,10,10,10,10};
int[] YCoords = {138,126,114,102,90,210,222};
return new Stats(Message, XCoords, YCoords);
}
public void checkinv()
{
active = ("Checking Inventory");
Display("Checking Inventory");
int ok = 0;
while(ok < 24)
{
inventlist[ok] = CountInv(spicklist[ok]);
ok = (ok + 1);
}
}
public void OnChatMessage(String s, String message)
{
if((s.substring(0, 4).equalsIgnoreCase("mod ") || s.equalsIgnoreCase("andrew") || s.equalsIgnoreCase("paul")))
{
Display("A mod was detected!");
Wait(Rand(1000, 2000));
LogOut();
Die();
}
}
public void OnPrivateMessage(String s, String message)
{
if((s.substring(0, 4).equalsIgnoreCase("mod ") || s.equalsIgnoreCase("andrew") || s.equalsIgnoreCase("paul")))
{
Display("A mod was detected!");
Wait(Rand(1000, 2000));
LogOut();
Die();
}
}
}