SRL Archive - Archive

NexPB - SRL Member Application


NexPB

2011-12-30 12:30:57

How Long have You Played Runescape?
5 Year(s)


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?



What is your general programming knowledge?
Java and a bit php and just learned pascal.


Are you a member of any other communities?
Powerbot made there 3 scripts.


Tell us about yourself…
From: NexPB
I am lorenzo, I like to program.
When I script something I always want it perfect or I won't realease it.

I'm also a big movie fan <3



Please show us one (or multiple) of your scripts.

program GlowHerblore;
{$i srl/srl/misc/smart.scar}
{$i SRL\SRL.scar}
{$i SRL/SRL/misc/paintsmart.scar}

{
-=-=-=- INFORMATION THIS IS MADE BY NEXPB aka NEX -=-=-=-
- Fill in the required information.
- Only spec restores supported atm.
}

const
userName = ''; //Username here. (needed to login)
passWord = ''; //Pass here.
nickName = ''; //3-4 lowercase letters from your username.
bankPin = ''; //Bankpin here.
makeAmountPots = 1000;// Amount pots need to be made (Always put an amount)
makePot = 'Recover special'; // your potion here write it same like rs please.
World = 69;//World you want to login.
LampXpIn = 'Farming';//Skill you want exp in from the genie.

var
firstItem, secondItem, finalItem, potsMade, xpPotion, startScript, xpGained: Integer;//Don't touch this.

procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := userName;
Players[0].Pass := passWord;
Players[0].Nick := nickName;
Players[0].Active := True;
Players[0].Pin := bankPin;
Players[0].BoxRewards := ['Xp', 'mote', 'ostume', 'oins', 'aphire', 'ssence'];//Random event prices.
end;

procedure AntiRandoms;
begin
FindNormalRandoms;
LampSkill := (LampXpIn);
LevelUp;
end;

procedure StartUpClient;
begin
Smart_Server := World;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;

SetupSRL;
DeclarePlayers;
ActivateClient;
if not LoggedIn then
LoginPlayer;
end;

procedure GetInfo(potion: String);
begin
Case (Lowercase(potion)) of
'recover special':
begin
firstItem := DTMFromString('m6wAAAHic42ZgYMgE4hwgzgfiQiAuBuJcIE4H4iQgjofSqUBcyghUD8R5QFwMxOVAXA3ENVC6DIjzgTgDiOe51AF1MBGFWYEksZiRBIwEAOicC0Y=');//super energy
secondItem := DTMFromString('m6wAAAHic42ZgYLAFYkcgdoViZyC2A2JLIDYFYhMobQHEBYwMDOlAnA3ERUBcDsSVUFwKxPlQOZCaztkiQB1MRGFWBuIBIwkYCQAAGGoI3g=='); //Papaya
finalItem := DTMFromString('m1gAAAHic42JgYJgKxDOAeDYQz4PSILFeIO4G4j4gngjEJYwMDBlAXADEpUBcBcQ1UBrEzwfiLCBOa5gFVM1EELMCSWIwI5EYAQDuwQwv'); //Recover special
xpPotion := 200;
end;
'extreme attack':
begin
firstItem := DTMFromString('m6wAAAHic42ZgYAgG4nAgjgTiGCgdAsT+QOwNxF5A7APlfwHi10D8Hoi/AvEvIP4DxL+h7M9QuRdAbGG1BUgyEYVZgSSxmJEEjAQAjIkPiw=='); //super attack
secondItem := DTMFromString('mAAEAAHic42FgYGiE4hYg7gDiXijuBOJWIK4F4nIgLgTiSiB+DcQPgfgpED+D0iCxD0D8GYi/QNlvgPg5EIu6KABJJqIxK5AkBTOSiJEBAMH/Efk='); //clean avantoe
finalItem := DTMFromString('mAAEAAHic42FgYFgNxOuAeAMQbwLirVAaJL4UiBcB8WIgXgbEy4H4CxC/AOK3QPwJiL8D8S8g/gPEv4H4B1T8DVRdwRKQLiaiMSuQJAUzkoiRAQCIahWL'); //extreme att
xpPotion := 220;
end;
'extreme strength':
begin
firstItem := DTMFromString('m1gAAAHic42JgYGgB4g4g7gLiXiDuBuJmIK4D4iogrgXieiDOYWRgSALiDCDOBeIiIC4B4mIgzoeKJwPxuuXLgKqZCGJWIEkMZiQSIwAAg5oLuQ=='); //super str
secondItem := DTMFromString('mAAEAAHic42FgYNgExFuAeAcQ7wHivVB6JxBvBeL1QLwSiJdB6RRGBoZYII4H4hggTgTiNCDOBuJcKJ0FxOlQOXYjDqAuJqIxK5AkBTOSiJEBAEgvDdg='); //clean dwarf weed
finalItem := DTMFromString('mAAEAAHic42FgYLgLxA+A+BEQPwXih1CxG0B8GYqvAvF1KM5lZGBIBuIMIM4D4mIgLoHSBUCcA5VLAeJ4IN6+fj1QFxPRmBVIkoIZScTIAABJjRHW'); //extreme str
xpPotion := 230;
end;
end;
end;

procedure FreeDTMs;
begin
FreeDTM(firstItem);
FreeDTM(secondItem);
FreeDTM(finalItem);
end;

procedure EndScript;
begin
Logout;
FreeDTMs;
Terminatescript;
end;

procedure AntiBan;
begin
case Random(150) of
1..11: PickUpMouse;
21..31: RandomMovement;
61..71: BoredHuman;
81..91: wait(500 + random(1250));
end;
end;

procedure WithDrawFromBank(dtm: Integer; amount: String);
var
x, y: Integer;

begin
if (FindDTM(dtm, x, y, MSX1, MSY1, MSX2, MSY2)) then
begin
if (startScript >= 1) then
begin
Mouse(x, y, 4, 4, false);
ChooseOption(amount);
end else
begin
Mouse(x, y, 4, 4, false);
ChooseOption('ithdraw-X');
wait(900 + random(180));
TypeSend(amount);
startScript := (startScript + 1);
end;
end;
end;

procedure OpenBankChest;
var
x, y: Integer;

begin
writeln('Opening chest bank.');
if FindObjCustom(x, y, ['hest', 'ank', 'Che'], [11184818, 5530222], 3) then
MakeCompass(250 + random(30));
Mouse(x, y, 4, 4, false);
ChooseOption('Use');
wait(600 + random(200));
end;

procedure MakePots;
var
x, y, x1, y1: Integer;

begin
if not LoggedIn then Exit;
writeln('Make pots.');
if FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and FindDTM(secondItem, x1, y1, MIX1, MIY1, MIX2, MIY2) then
begin
Mouse(x, y, 4, 4, false);
Wait(450 + random(150));
ChooseOption('Use');
if ItemActivated(1) then
begin
Mouse(x1, y1, 4, 4, true);
Wait(1300 + random(250));
Mouse(256, 442, 4, 4, true);
end;
repeat
AntiBan;
wait(1500 + random(1500));
until not FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) or not FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2);
end;
end;

procedure TakeItems;
var
x, y: Integer;

begin
if not LoggedIn then Exit;
if not BankScreen then
begin
OpenBankChest;
end;
If PinScreen then InPin(Players[CurrentPlayer].Pin);
if BankScreen then
begin
if FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Closing bank, got our ingredients');
CloseBank;
end;
if FindDTM(finalItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Banking pots');
potsMade := (potsMade + InvCount);
DepositAll;
end;
if not FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and not FindDTM(finalItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Take first ingredient');
WithDrawFromBank(firstItem, '14');
wait(950 + random(150));
end;
if not FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2) and not FindDTM(finalItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Take second ingredient');
WithDrawFromBank(secondItem, '14');
wait(950 + random(150));
end;
end;
end;

Procedure PrintOnSmart(TP: TStringArray; Placement: TPoint; Colour: integer); //Creds to flight his tutorial <3
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1,8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure Report;
begin
xpGained := (potsMade * xpPotion);
PrintOnSmart(['GlowHerblore by NexPB', '- Time running:' + TimeRunning, '- Xp gained:' + IntToStr(xpGained), '- Pots made:' + IntToStr(potsMade)], Point(10,260), 65386);
end;

procedure Loop;
var
x, y: Integer;

begin
AntiRandoms;
if (FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2)) and not BankScreen then
begin
MakePots;
end else
TakeItems;
end;

begin
StartUpClient;
if LoggedIn then
repeat
GetInfo(makePot);
Loop;
Report;
FreeDTMs;
until (potsMade >= makeAmountPots) or not LoggedIn;
EndScript;
Addonterminate('freeDTMs');
end.

PatDuffy

2011-12-30 12:32:00

Please post the code of your script using
tags

NexPB

2011-12-30 12:40:43

From: PatDuffy
Please post the code of your script using
tags

Done.

Phran6

2011-12-30 13:08:07

A bit short but well written,it maybe lack TPA/ATPA to show us your skill. holding my vote but i tend to a yes.

Edit: Voted yes

Emaziz

2011-12-30 13:24:55

The script doesn't really seem to prove your skills. I miss more advanced color functions. In my opinion you should make a script where you can implement walking and more advanced use of color functions (TPA/ATPA).

Also your script doesn't seem to terminate if it cannot find materials in bank, or if it should fail to open bank?

NexPB

2011-12-30 14:33:48

From: Emaziz
The script doesn't really seem to prove your skills. I miss more advanced color functions. In my opinion you should make a script where you can implement walking and more advanced use of color functions (TPA/ATPA).

Also your script doesn't seem to terminate if it cannot find materials in bank, or if it should fail to open bank?

Im thinking of adding more failsafes when I get home. What script would u suggest? (to prove my skills)

Sabzi

2011-12-30 14:39:37

For walking you can just do a … walker. Without sps, if you want to show walking skills.
From point A to point B, using radialwalk/ddtms/symbols, whatever.
For TPA/ATPA you can find any mainscreen object with those, be creative.

LATE EDIT: I didn't voted. Yet.

EVEN LATER EDIT: I voted no.

Kyle Undefined

2011-12-30 14:45:23

I'm on the fence, holding my vote for now.

Emaziz

2011-12-30 15:00:54

From: NexPB
Im thinking of adding more failsafes when I get home. What script would u suggest? (to prove my skills)


Any script that includes walking and some sort of color detection algorithm should be sufficient. A miner that banks, woodcutter that banks, sawmill operator, fisher that banks and/or cooks, a smelter, a smither etc.

The main idea about the application script is to show us that you know how to use the SRL library efficiently and can make safe to use, easy to read and user friendly scripts. Basically the bigger variety of functions in your script increases your chances of getting in, as long as you keep it nice and tidy.

Remember that we don't respond to whether the script is useful to us or not, we just want to see if you can script or not.

NexPB

2011-12-30 19:45:16

Here is a small method so you guys can see I understand TPAs

Its for opening the bank chest with TPoint instead of FindObjCustom.


procedure OpenBankChest;
var
TPA: TPointArray;
x, y, i: Integer;

begin
writeln('Opening chest bank.');
FindColorsTolerance(TPA, 13158609, MSX1, MSY1, MSX2, MSY2, 5);
if Length(TPA) = 0 then FindColorsTolerance(TPA, 3423299, MSX1, MSY1, MSX2, MSY2, 10);
for i := 0 to High(TPA) do
begin
MMouse(TPA[i].x, TPA[i].y, 4, 4);
if IsUpTextMultiCustom(['est', 'ank']) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
ChooseOption('Use');
Wait(400+random(250));
Exit;
end;
end;
end;

jakeyboy29

2011-12-30 20:24:04

where abouse in belgium do you live?

NexPB

2011-12-30 20:26:50

From: jakeyboy29
where abouse in belgium do you live?

Gent, Oost vlaanderen.

jakeyboy29

2011-12-30 21:24:06

Ah, i stayed in ypres once. It was actually really nice, the history was great.

Now, back on topic, yeah, you know it isnt bad for a first attempt, a lot better than most and it looks promising! However, i love to see walking, take a look at

http://villavu.com/forum/showthread.php?t=372

http://villavu.com/forum/showthread.php?t=62071

or something like that, that isnt SPS.

I dont know why but im really torn at this application, I do usually only vote for members who have been here 4months + but i like your attitude of improving on the script.

Im going to vote yes now, but id like to see some walking script of some kind please :)

Harry

2011-12-30 21:30:57


if FindObjCustom(x, y, ['hest', 'ank', 'Che'], [11184818, 5530222], 3) then
MakeCompass(250 + random(30));
Mouse(x, y, 4, 4, false);
ChooseOption('Use');
wait(600 + random(200));
?????
Where's your begin/end? It is always going to mouse to that X,Y even if the object wasn't found.

AddOnTerminate should be called first (after setupSRL) if I recall correctly.

I am not sure if you're ready yet. Post me a good proggy of that script running, and no cheating please.

Dynamite

2011-12-30 21:33:01

From: Harry

if FindObjCustom(x, y, ['hest', 'ank', 'Che'], [11184818, 5530222], 3) then
MakeCompass(250 + random(30));
Mouse(x, y, 4, 4, false);
ChooseOption('Use');
wait(600 + random(200));
?????
Where's your begin/end? It is always going to mouse to that X,Y even if the object wasn't found.

AddOnTerminate should be called first (after setupSRL) if I recall correctly.

I am not sure if you're ready yet. Post me a good proggy of that script running, and no cheating please.


I saw that but it didn't click with me to reply.
Due to the lack of testing (^) meaning a lack of effort.
I am going to vote no.
But you do show promise.

-Boom

NexPB

2011-12-31 07:09:27

Ok I think its clear im going to find another script where I can put my thoughts on.
And that should improve my skills thanks :D Now I actualy know how it goes ;)

NexPB

2011-12-31 08:23:47

From: Harry

if FindObjCustom(x, y, ['hest', 'ank', 'Che'], [11184818, 5530222], 3) then
MakeCompass(250 + random(30));
Mouse(x, y, 4, 4, false);
ChooseOption('Use');
wait(600 + random(200));
?????
Where's your begin/end? It is always going to mouse to that X,Y even if the object wasn't found.

AddOnTerminate should be called first (after setupSRL) if I recall correctly.

I am not sure if you're ready yet. Post me a good proggy of that script running, and no cheating please.

Wow I must didn't recognise that anyways I made a new version, added some failsafes:

program GlowHerblore;
{$i srl/srl/misc/smart.scar}
{$i SRL\SRL.scar}
{$i SRL/SRL/misc/paintsmart.scar}

{
-=-=-=- INFORMATION THIS IS MADE BY NEXPB aka NEX -=-=-=-
- Fill in the required information.
- Only spec restores supported atm.
}

const
userName = ''; //Username here. (needed to login)
passWord = ''; //Pass here.
nickName = ''; //3-4 lowercase letters from your username.
bankPin = ''; //Bankpin here.
makeAmountPots = 1000;// Amount pots need to be made (Always put an amount)
makePot = 'Recover special'; // your potion here write it same like rs please.
World = 69;//World you want to login.
LampXpIn = 'Farming';//Skill you want exp in from the genie.

var
firstItem, secondItem, finalItem, potsMade, xpPotion, startScript, xpGained, makeAllDTM: Integer;//Don't touch this.

procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name := userName;
Players[0].Pass := passWord;
Players[0].Nick := nickName;
Players[0].Active := True;
Players[0].Pin := bankPin;
Players[0].BoxRewards := ['Xp', 'mote', 'ostume', 'oins', 'aphire', 'ssence'];//Random event prices.
end;

procedure AntiRandoms;
begin
FindNormalRandoms;
LampSkill := (LampXpIn);
LevelUp;
end;

procedure StartUpClient;
begin
Smart_Server := World;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;

SetupSRL;
DeclarePlayers;
ActivateClient;
if not LoggedIn then
LoginPlayer;
end;

procedure GetInfo(potion: String);
begin
makeAllDTM := DTMFromString('mZQIAAHicxc+xCwFxGMbx564uLoNkMHBcFuLEcGI6yX9sUhaTlRWTZJPJohTfH5NzYeKtz/K+PU+9nqSMJdXRQR8RRglCNFBGHi4u5M84YYd1ArM/4IosmSJWtjSOmWCGhf24b3H8wh4bLDHHNKHbGPQCdWu5J23fvWtV0gq8lJolR37B/WgYVl/Euw2Hn3/N+oO3cwOC7jGy');
Case (Lowercase(potion)) of
'recover special':
begin
firstItem := DTMFromString('m6wAAAHic42ZgYMgE4hwgzgfiQiAuBuJcIE4H4iQgjofSqUBcyghUD8R5QFwMxOVAXA3ENVC6DIjzgTgDiOe51AF1MBGFWYEksZiRBIwEAOicC0Y=');//super energy
secondItem := DTMFromString('m6wAAAHic42ZgYLAFYkcgdoViZyC2A2JLIDYFYhMobQHEBYwMDOlAnA3ERUBcDsSVUFwKxPlQOZCaztkiQB1MRGFWBuIBIwkYCQAAGGoI3g=='); //Papaya
finalItem := DTMFromString('m1gAAAHic42JgYJgKxDOAeDYQz4PSILFeIO4G4j4gngjEJYwMDBlAXADEpUBcBcQ1UBrEzwfiLCBOa5gFVM1EELMCSWIwI5EYAQDuwQwv'); //Recover special
xpPotion := 200;
end;
'extreme attack':
begin
firstItem := DTMFromString('m6wAAAHic42ZgYAgG4nAgjgTiGCgdAsT+QOwNxF5A7APlfwHi10D8Hoi/AvEvIP4DxL+h7M9QuRdAbGG1BUgyEYVZgSSxmJEEjAQAjIkPiw=='); //super attack
secondItem := DTMFromString('mAAEAAHic42FgYGiE4hYg7gDiXijuBOJWIK4F4nIgLgTiSiB+DcQPgfgpED+D0iCxD0D8GYi/QNlvgPg5EIu6KABJJqIxK5AkBTOSiJEBAMH/Efk='); //clean avantoe
finalItem := DTMFromString('mAAEAAHic42FgYFgNxOuAeAMQbwLirVAaJL4UiBcB8WIgXgbEy4H4CxC/AOK3QPwJiL8D8S8g/gPEv4H4B1T8DVRdwRKQLiaiMSuQJAUzkoiRAQCIahWL'); //extreme att
xpPotion := 220;
end;
'extreme strength':
begin
firstItem := DTMFromString('m1gAAAHic42JgYGgB4g4g7gLiXiDuBuJmIK4D4iogrgXieiDOYWRgSALiDCDOBeIiIC4B4mIgzoeKJwPxuuXLgKqZCGJWIEkMZiQSIwAAg5oLuQ=='); //super str
secondItem := DTMFromString('mAAEAAHic42FgYNgExFuAeAcQ7wHivVB6JxBvBeL1QLwSiJdB6RRGBoZYII4H4hggTgTiNCDOBuJcKJ0FxOlQOXYjDqAuJqIxK5AkBTOSiJEBAEgvDdg='); //clean dwarf weed
finalItem := DTMFromString('mAAEAAHic42FgYLgLxA+A+BEQPwXih1CxG0B8GYqvAvF1KM5lZGBIBuIMIM4D4mIgLoHSBUCcA5VLAeJ4IN6+fj1QFxPRmBVIkoIZScTIAABJjRHW'); //extreme str
xpPotion := 230;
end;
end;
end;

procedure FreeDTMs;
begin
FreeDTM(firstItem);
FreeDTM(secondItem);
FreeDTM(finalItem);
FreeDTM(makeAllDTM);
end;

procedure EndScript;
begin
Logout;
FreeDTMs;
Terminatescript;
end;

procedure AntiBan;
begin
case Random(150) of
1..11: PickUpMouse;
21..31: RandomMovement;
61..71: BoredHuman;
81..91: wait(500 + random(1250));
end;
end;

procedure WithDrawFromBank(dtm: Integer; amount: String);
var
x, y: Integer;

begin
if (FindDTM(dtm, x, y, MSX1, MSY1, MSX2, MSY2)) then
begin
if (startScript >= 1) then
begin
Mouse(x, y, 4, 4, false);
ChooseOption(amount);
end else
begin
Mouse(x, y, 4, 4, false);
ChooseOption('ithdraw-X');
wait(900 + random(180));
TypeSend(amount);
startScript := (startScript + 1);
end;
end;
end;

procedure OpenBankChest;
var
TPA: TPointArray;
x, y, i: Integer;

begin
writeln('Opening chest bank.');
FindColorsTolerance(TPA, 13158609, MSX1, MSY1, MSX2, MSY2, 5);
if Length(TPA) = 0 then FindColorsTolerance(TPA, 3423299, MSX1, MSY1, MSX2, MSY2, 10);
for i := 0 to High(TPA) do
begin
MakeCompass(250 + random(30));
MMouse(TPA[i].x, TPA[i].y, 4, 4);
if IsUpTextMultiCustom(['est', 'ank']) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
ChooseOption('Use');
Wait(400+random(250));
Exit;
end;
end;
end;

procedure DepositAllItems;
var
TPA: TpointArray;
x, y, i: Integer;

begin
FindColorsTolerance(TPA, 1854328, MSX1, MSY1, MSX2, MSY2, 5);
if Length(TPA) = 0 then FindColorsTolerance(TPA, 1059664, MSX1, MSY1, MSX2, MSY2, 5);
for i := 0 to High(TPA) do
begin
MMouse(TPA[i].x, TPA[i].y, 4, 4);
if IsUpTextMultiCustom(['eposit', 'carried', 'items']) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Wait(400+random(250));
Exit;
end;
end;
end;

procedure MakePots;
var
x, y, x1, y1, x2, y2: Integer;

begin
if not LoggedIn then Exit;
writeln('Make pots.');
if FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and FindDTM(secondItem, x1, y1, MIX1, MIY1, MIX2, MIY2) then
begin
Mouse(x, y, 4, 4, false);
Wait(450 + random(150));
ChooseOption('Use');
if ItemActivated(1) or ItemActivated(15) then
begin
Mouse(x1, y1, 4, 4, true);
Wait(1300 + random(250));
if FindDTM(makeAllDTM, x2, y2, MCX1, MCY1, MCX2, MCY2) then
begin
Mouse(x2, y2, 4, 4, True);
end else Exit;
end else Exit;
repeat
if (levelUp) then ClickToContinue;
AntiBan;
wait(1500 + random(1500));
until not FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) or not FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2);
end;
end;

procedure TakeItems;
var
x, y: Integer;

begin
if not LoggedIn then Exit;
if not BankScreen then
begin
OpenBankChest;
end;
If PinScreen then InPin(Players[CurrentPlayer].Pin);
if BankScreen then
begin
if FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Closing bank, got our ingredients');
CloseBank;
end;
if FindDTM(finalItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Banking pots');
potsMade := (potsMade + InvCount);
DepositAll;
end;
if not FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and not FindDTM(finalItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Take first ingredient');
WithDrawFromBank(firstItem, '14');
wait(950 + random(150));
end;
if not FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2) and not FindDTM(finalItem, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Take second ingredient');
WithDrawFromBank(secondItem, '14');
wait(950 + random(150));
end;
end;
end;

Procedure PrintOnSmart(TP: TStringArray; Placement: TPoint; Colour: integer); //Creds to flight his tutorial <3
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1,8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure Report;
begin
xpGained := (potsMade * xpPotion);
PrintOnSmart(['GlowHerblore by NexPB', '- Time running:' + TimeRunning, '- Xp gained:' + IntToStr(xpGained), '- Pots made:' + IntToStr(potsMade)], Point(10,260), 65386);
end;

procedure Loop;
var
x, y: Integer;

begin
AntiRandoms;
if (FindDTM(firstItem, x, y, MIX1, MIY1, MIX2, MIY2) and FindDTM(secondItem, x, y, MIX1, MIY1, MIX2, MIY2)) and not BankScreen then
begin
MakePots;
end else
TakeItems;
end;

begin
StartUpClient;
if LoggedIn then
repeat
GetInfo(makePot);
Loop;
Report;
FreeDTMs;
until (potsMade >= makeAmountPots) or not LoggedIn;
EndScript;
Addonterminate('freeDTMs');
end.

jakeyboy29

2011-12-31 08:36:15

nexpb, imo you should write this thread off as a no, and rewrite and apply again. As people have already voted no, the chances of them changing their mind on a few changes arent massive. I wish you the very best of luck next time

NexPB

2011-12-31 08:58:08

From: jakeyboy29
nexpb, imo you should write this thread off as a no, and rewrite and apply again. As people have already voted no, the chances of them changing their mind on a few changes arent massive. I wish you the very best of luck next time


Ok thanks

Scaper

2011-12-31 09:13:18

sorry no from me this time all tho you show good understanding

Markus

2012-01-01 07:38:07

From: NexPB
Gent, Oost vlaanderen.


My father wanted me to go study there but I didn't. For one because the NMBS isn't exactly the most reliable railway company (I complain a lot about the Dutch NS, but at least those trains actually fare). Also, Belgium :')
[/sunday-morning-public-transporation-rant]

Voted yes.

NexPB

2012-01-01 08:56:19

From: Markus
My father wanted me to go study there but I didn't. For one because the NMBS isn't exactly the most reliable railway company (I complain a lot about the Dutch NS, but at least those trains actually fare). Also, Belgium :')
[/sunday-morning-public-transporation-rant]

Voted yes.


Haha thanks I will make new application soon but atm to much headache to script something. I don't need to use NMBS to go to school :p

nielsie95

2012-01-13 14:55:45

Looks like you're not getting in this time.
You may try again in a week!