PDA

View Full Version : Clarion



shadowblade
11-29-2006, 09:48 AM
do not credit me for this because i did not do this i am simply jsut posting a script
enjoy

{.Script Info:
# ScriptName = Clarion
# Author = Macrowave
# Description = Powerminer[srl][rs2]
# Version = 0.4
# Date = 27.11.2006
# Comments = you can use as an overnighter,antirandoms and antiban ofcourse.
# SetInfo = set players and const. Start next to rock,pick in inv first slot.
/Script Info}


Program Clarion;

{.include srl/srl.scar}
{.include srl/srl/skill/mining.scar}

{*********Drag crosshair to rs, set const, hit run.******************}

var oremask,ores,loads,playtime,stime,wtime,rtime,ltim e:integer;
playertime : integer;

{************************************************* *******************}
const
startplayer = 0;
rockcolor = 1976128;
runawaydir = 'N';

{************************************************* *******************}

Procedure DeclarePlayers;
begin

HowManyPlayers := 3;
NumberOfPlayers(howmanyplayers);
CurrentPlayer := StartPlayer;

Players[0].Name :='';//name
Players[0].Pass :='';//pass
Players[0].Nick := '';// about 3 letters of ur name
Players[0].Integer1 := 4;//wait time between rocks in seconds.
Players[0].Integer2 := 600;//time to stay in (in sec).
Players[0].Integer3 := 300;//random time to stay in(seconds).
Players[0].String1 := 'iron';//ore to mine
Players[0].Boolean1 := True;
Players[0].Boolean2 := True;
Players[0].Active := True;

Players[1].Name :='';//name
Players[1].Pass :='';//pass
Players[1].Nick := '';// about 3 letters of ur name
Players[1].Integer1 := 4;//wait time between rocks in seconds.
Players[1].Integer2 := 600;//time to stay in (in sec).
Players[1].Integer3 := 300;//random time to stay in(seconds).
Players[1].String1 := 'iron';//ore to mine
Players[1].Boolean1 := True;
Players[1].Boolean2 := True;
Players[1].Active := false;

Players[2].Name :='';//name
Players[2].Pass :='';//pass
Players[2].Nick := '';// about 3 letters of ur name
Players[2].Integer1 := 4;//wait time between rocks in seconds.
Players[2].Integer2 := 600;//time to stay in (in sec).
Players[2].Integer3 := 300;//random time to stay in(seconds).
Players[2].String1 := 'iron';//ore to mine
Players[2].Boolean1 := True;
Players[2].Boolean2 := True;
Players[2].Active := false;
Writeln('Using '+inttostr(HowManyPlayers)+' Player[s]');

end;
{************************************************* **********************}

Procedure curplaynopick(why:string);
Begin
writeln(why);
IF(loggedin)THEN
nextplayer(true);
end;

{************************************************* **********************}

Procedure nosuspect;
Begin
RandomChatEvery(4 + Random(5));
RotateEvery(6 + Random(10));
LeaveScreenEvery(10 + Random(5));
HoverEvery(5 + Random(5), 'random');
PickUpMouseEvery(7+ Random(10))
if (KillScriptTime > 0) then
KillScript(KillScriptTime);
end;

{************************************************* **********************}

Procedure randoms;
Begin
findpick;
wait(10+random(15));
findtalk;
wait(10+random(15));
findnormalrandoms;
wait(10+random(15));
solvesandwich;
wait(10+random(15));
IF(findfight) THEN
Begin
runawaydirection(runawaydir);
wait(8500+random(3500));
runback;
end;
wait(10+random(15));
Findtalk;
end;

{************************************************* **********************}
Procedure Dropeveryore;
Begin
writeln('Dropping the ores...');
clickallitemscolortolwait('rop',rockcolor,20,100+r andom(500));
randoms;
nosuspect;
loads := loads + 1;
end;

{************************************************* *********************}
procedure DeclareVar;
begin
wtime :=players[currentplayer].integer1 *1000;
ltime :=players[currentplayer].integer2 *1000;
rtime :=players[currentplayer].integer3 *1000;
playtime :=Ltime + random(rtime);
mousespeed :=9;
end;

{************************************************* **********************}

Procedure Mining;
var foundrock : boolean; WaitForOre : integer;
Begin
repeat
if(FindObjOre(x,y,'ine',RockColor,10,3))then
Begin
x := x+random(3);
y := y+random(3);
MMouse(x,y,0,0);
if(not(GasFound(x,y)))then
begin
if Random(9) < 7 then Mouse(x,y,0,0,true) else
begin
Mouse(x,y,0,0,false);
ChooseOption(x,y,'Mine');
end;
end;
foundrock := true;
nosuspect;
end;
MarkTime(WaitForOre);
if foundrock then
repeat
Randoms;
until((TimeFromMark(WaitForOre)) > WTime)
until(InvFull)
end;
{************************************************* **********************}
Procedure dropping;
Begin
dropeveryore;
wait(10+random(15));
randoms;
end;
{************************************************* **********************}

Procedure Setup;
Begin
declarevar;
activateclient;
marktime(playertime);
loginplayer;
highestangle;
perfectnorth;
setchat('on',1);
setchat('friends',2);
setchat('off',3);
if not findpickheadcolor then curplaynopick('didnt find pick.terminating player.');
nextplayer(true);
end;

{************************************************* **********************}
Procedure progressreport;
Begin
writeln('x_________________________________');
writeln('x player name:'+players[currentplayer].name);
writeln('x worked for :'+inttostr(timefrommark(playertime)*1000 *60)+',minutes.');
writeln('x dropped'+inttostr(loads));
writeln('x ores mined:'+inttostr(ores));
writeln('x_________________________________');
end;
{***********************Main Loop***************************************}

Begin

setupsrl;
setupsrlmining;
DeclarePlayers;
marktime(stime);
nosuspect;

repeat
setup;
repeat

if not loggedin then break;
writeln('starting main loop.');
mining;
ores := ores + countitembmpmasktol(oremask,20,25);
dropeveryore;

if not loggedin then break;
progressreport;
if(timefrommark(stime)> playertime) then break;
until(false);

if not loggedin then nextplayer(false) else nextplayer(true);
until(false);
end.
{**************************Finish line*******************************}program New;
begin
end.