EDIT: Got the air runner now but need help, scroll down please![]()
EDIT: Got the air runner now but need help, scroll down please![]()
There is one in Junior members section.
Make 10 non-spam threads and stay here a week and you will gain acsess to the junior members part of the forum.
Scripts: Varrock Smither! | Fight Caves Runner! | Kebab Buyer! | L.A.M.E. (Outdated)
Tutorials: SRL user-defined procedures | JaGex UID files | Printing your scripts
Applications: StartUp Notepad | SCAR Assistant
Misc: FREE Delphi 7 v2 | Official SRL Graphics
You have to become SRL junior member, use the search button if you dont know how to become one.
Hi, I do have a script but I couldnt seem to work it =/ I got the error:
Line 28: [Error] (28:1): Unable to register function function FindGapsTPA(TPA : TPointArray; MinPixels: Integer): T2DPointArray; in script C:\Documents and Settings\Compaq_Owner\Desktop\Air Crafter\Air Crafter 1.6 by Kave.scar
Get SCAR 3.15
Oh, thank you.
I'm now getting a different error. (I have installed the new Scar)
Line 89: [Error] (12899:4): Unknown identifier 'FindMime' in script C:\Documents and Settings\Compaq_Owner\Desktop\Air Crafter\Air Crafter 1.6 by Kave.scar
Code:{*---------------*--------------*--------------*--------------*---------------*} {* _ _ ____ _ _ ____ ____ ____ _ ____ ____ ____ ____ ____ ___ ____ ____ *} {* |_/ |__| | | |___ [__ |__| | |__/ | |__/ |__| |___ | |___ |__/ *} {* | \_ | | \/ |___ ___] | | | | \ |___ | \ | | | | |___ | \ *} {* *} {*---------------*--------------*--------------*--------------*---------------*} {* This script starts in Falador East Bank, withdraws Essence from any top *} {* bank slot, walks to the Mysterious Ruins, enters it(needs tiara), crafts *} {* the essence, goes through the portal, and walks back to the bank. *} {*---------------*--------------*--------------*--------------*---------------*} {* _ _ _ __ ____ *} {* | | | | (_) / | / ___| *} {* | | | | ___ _ __ ___ _ ___ _ __ `| | / /___ *} {* | | | |/ _ \ '__/ __| |/ _ \| '_ \ | | | ___ \ *} {* \ \_/ / __/ | \__ \ | (_) | | | | _| |__| \_/ | *} {* \___/ \___|_| |___/_|\___/|_| |_| \___(_)_____/ *} {* *} {*---------------*--------------*--------------*--------------*---------------*} {* +-+-+-+ +-+-+-+-+-+-+ +-+-+-+-+ +-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+ *} {* |R|U|N| |S|C|R|I|P|T| |W|I|T|H| |T|H|E|S|E| |P|A|R|A|M|E|T|E|R|S| *} {* +-+-+-+ +-+-+-+-+-+-+ +-+-+-+-+ +-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+ *} {* SET UP LINES 35 - 67 *} {* WEAR A TIARA *} {* ESSENCE IN ANY TOP BANK SLOT *} {* AT 32 BIT COLOR *} {* ON LOW DETAIL *} {*---------------*--------------*--------------*--------------*---------------*} program Air_and_Earth_Crafter; {.include SRL\SRL.scar} {.include SRL\SRL\skill\RuneCrafting.scar} var Rune,MessedUp,SLevel,Level,i,x,y,bx,by:Integer; EssToDo,UsedEss,RunesMade,RunesPerEss:Integer; ExpPlus,ExpPerEss:Extended; Once : Boolean; Procedure DeclarePlayers; begin SRLID :='1234'; //SRL STATS ID SRLPassword :='123456'; //SRL STATS PASSWORD HowManyPlayers :=3; //How many players total are you using? NumberOfPlayers(HowManyPlayers); //DONT TOUCH! CurrentPlayer:=0; //What character to start on Players[0].Name :=''; //Character name Players[0].Pass :=''; //Character password Players[0].Nick :=''; //3-4 letters of name Players[0].Pin := ''; //Bank Pin Players[0].Loc :='In Bank'; //DONT TOUCH! Players[0].Integers[0] := 1234; //Amount of essence to use Players[0].Active := True; //Using this player? Players[1].Name :=''; Players[1].Pass :=''; Players[1].Nick :=''; Players[1].Pin := ''; Players[1].Loc :='In Bank'; Players[1].Integers[0] := 000; Players[1].Active := False; Players[2].Name :=''; Players[2].Pass :=''; Players[2].Nick :=''; Players[2].Pin := ''; Players[2].Loc :='In Bank'; Players[2].Integers[0] := 000; Players[2].Active := False; end; procedure DeclareDTM; begin Rune := DTMFromString('78DA63AC676460C8674001D1A1A10CFF81345' + '086E13F1030F60259D90C6880118904D21D40563501351544A829' + '02B20A09A82906B23209A801F9AB96809A3E20AB18BF1A00D74F0' + 'DB8'); end; //WT-Fakawi procedure FindRandoms; begin Status('Finding Randoms...'); for i := 1 to 11 do begin case i of 1: FindTalk; 2: FindDead; 3: FindMod; 4: FindMime; 5: FindMaze; 6: FindQuiz; 7: FindDemon; 8: FindTalk; 9: FindLamp('runecrafting'); 10: if FindBox then begin if not(SolveBox) then GambleBox; end; 11: if FindFight then begin RunAwayDirection('N'); Wait(10000 + random(2000)); RunBack; end; end; wait(10); end; end; procedure AdvReport; var l, r :Integer; Prog :array[0..7] of String; Output :String; begin Prog[0] := ' | Running Time: '+(TimeRunning)+''; Prog[1] := ' | Essence Used: '+(IntToStr(UsedEss))+''; Prog[2] := ' | Airs Crafted: '+(IntToStr(RunesMade))+''; Prog[3] := ' | My Location Is: '+Players[CurrentPlayer].Loc+''; Prog[4] := ' | Banked '+IntToStr(Players[CurrentPlayer].Banked)+' times.'; Prog[5] := ' | Gained '+IntToStr(Level)+' levels.'; Prog[6] := ' | Experience Gained: ' +(FloatToStr(ExpPlus))+ ''; Prog[7] := ' | Runecrafting Level: '+(IntToStr(Players[CurrentPlayer].Level[7]))+ ''; for r := 0 to 7 do begin OutPut := Prog[r] for l := Length(Prog[r]) to 45 do OutPut := OutPut + ' '; WriteLn(OutPut + '|'); end; end; procedure Report; begin if not(LoggedIn) then exit; ClearDebug; SRLRandomsReport; WriteLn('[-]--------------------<>--------------------[-]'); WriteLn(' | Kave`s Air Crafter | '); WriteLn('[-]--------------------<>--------------------[-]'); AdvReport; WriteLn('[-]--------------------<>--------------------[-]'); end; //By: Boreas -simplified by mat_de_b function BankBox(i: Integer): TBox; var row, col: Integer; begin col := i mod 8; if col = 0 then col := 8; // Columns are Vertical row := i / 8; if i mod 8 <> 0 then Inc(row); // Rows are Horizontal Result.x1 := 32 + (col * 47); Result.y1 := 24 + (row * 38); Result.x2 := Result.x1 + 31; Result.y2 := Result.y1 + 31; end; //By: mat_de_b function FindBankDTM(var x, y: integer; DDTM: integer; UpText2: string): boolean; var BankSlot: TBox; begin for i := 0 to 48 do begin BankSlot := BankBox(i); if (FindDTM(DDTM, x, y, BankSlot.x1, BankSlot.y1, BankSlot.x2, BankSlot.y2)) then begin MMouse(x, y, 5, 5); wait(50 + random(50)); if (pos(Uptext2, rs_GetUpText) > 0) then begin Result := true; Exit; end; end; end; end; //Nielsie96 (Auto Color Aid) function AutoColorIt: Integer; var X, Y, Z: Extended; Points: TPointArray; Colors, UniqueColors: TIntegerArray; i, a: Integer; NewColor: Boolean; begin if not LoggedIn then Exit; ColorToleranceSpeed(0); FindColorsSpiralTolerance(MMCX, MMCY, Points, 1062210, MMX1, MMY1, MMX2, MMY2, 15); if Length(Points) < 1 then begin ColorToleranceSpeed(1) Exit; end; Colors := GetColors(Points); for i := 0 to Length(Colors) -1 do begin NewColor := True; for a := 0 to GetArrayLength(UniqueColors) - 1 do begin if(UniqueColors[a] = Colors[i])then begin NewColor := False; Break; end; end; if(NewColor)then begin SetArrayLength(UniqueColors, GetArrayLength(UniqueColors) + 1); UniqueColors[GetArrayLength(UniqueColors) - 1] := Colors[i]; end; end; for i := 0 to Length(UniqueColors) -1 do if UniqueColors[i] <> 0 then begin ColorToXYZ(UniqueColors[i], X, Y, Z); if (X < 7) and (X > 2) then if (Y < 3) and (Y > -1) then if (Z < 8) and (Z > 2) then if CountColor(UniqueColors[i], MMX1, MMY1, MMX2, MMY2) > 50 then begin WriteLn('AutoColor: '+IntTostr(UniqueColors[i])) Result := UniqueColors[i]; Break; end; end; ColorToleranceSpeed(1); end; procedure MouseBoxNoClick(xs, ys, xe, ye: Integer); var a, b: Integer; begin a := Max(xs, xe) - Min(xs, xe); b := Max(ys, ye) - Min(ys, ye); a := Random(a); b := Random(b); MMouse(xs + a, ys + b, 0, 0); end; //SRL team i suppose, i just added InPin to it :P function OpenMyBank: Boolean; var x, y, f: Integer; begin Status('Openning Bank...'); if not(LoggedIn) then exit; Flag; Wait(350 + random(150)); if not BankScreen then repeat if FindObj(x,y,'ank',4612728,4) then Mouse(x, y, 4, 4, False); Wait(250); if (ChooseOption('Use-quickly')) then begin FFlag(0); wait(1000); if(PinScreen) then repeat Wait(500); InPin(IntToStr(Players[CurrentPlayer].Pin)); Inc(f); until (BankScreen) or (f > 5); end; until (BankScreen) or (PinScreen) or (f > 5); Result := BankScreen; end; //XcanadamanX (from is awesome Al Kharid Smelter) function CountItemDtm(dtm: Integer): Integer; var TB: Tbox; begin if not(LoggedIn) then exit; GameTab(4); for i := 1 to 28 do begin TB := InvBox(i); if ExistsItem(i) then if FindDtm(DTM, x, y, TB.x1, TB.y1, TB.x2, TB.y2) then Inc(Result); end; end; function CheckActive : Boolean; var z: Integer; begin for i := 0 to HowManyPlayers-1 do if Players[i].Active then Inc(z); if z > 0 then begin wait(1000); NextPlayer(False); Result := True; end else Result := False; end; procedure MyLevel; begin Status('Getting Level...'); if not(LoggedIn) then exit; SLevel := GetSkillLevel('runecrafting'); ExpPerEss := 5; if (SLevel = 99) then RunesPerEss := 10 else if (SLevel >= 88) then RunesPerEss := 9 else if (SLevel >= 77) then RunesPerEss := 8 else if (SLevel >= 66) then RunesPerEss := 7 else if (SLevel >= 55) then RunesPerEss := 6 else if (SLevel >= 44) then RunesPerEss := 5 else if (SLevel >= 33) then RunesPerEss := 4 else if (SLevel >= 22) then RunesPerEss := 3 else if (SLevel >= 11) then RunesPerEss := 2 else if (SLevel < 11) then RunesPerEss := 1; end; procedure InBank; begin Status('Finding Booth...'); if not(LoggedIn) then exit; FindRandoms; wait(250); if(OpenMyBank) then begin Inc(Players[CurrentPlayer].Banked); ReportVars[3] := Players[CurrentPlayer].Banked; DepositAll; Wait(200+random(50)); FixBank; Wait(100+random(50)); if Once then begin FindBankDTM(bx,by,rune,'ess'); Once := False; end; Mouse(bx,by,7,7,false); if (EssToDo-UsedEss >= 28) then ChooseOption('All') else begin ChooseOption('X'); TypeSend(IntToStr(EssToDo-UsedEss)); end; Wait(300+random(50)); CloseBank; end else begin WriteLn('Bankscreen not found. Logging out...'); Players[CurrentPlayer].Loc := 'No Bankscreen'; Players[CurrentPlayer].Active := False; Exit; end; FindRandoms; SetRun(True); ReportVars[0] := CountItemDtm(Rune); Wait(200+random(50)); Players[CurrentPlayer].Loc := 'To Altar'; Wait(200+random(50)); end; procedure ToAltar; var f,r:Integer; begin Status('Walking to Mysterious Ruins...'); if not(LoggedIn) then exit; r := random(10); repeat FindRandoms; until RadialWalk(FindFallyRoadColor, 250, 260, 70, 1, 1) or not(LoggedIn); FFlag(2); repeat FindRandoms; until RadialWalk(FindFallyRoadColor, 167, 210, 65, 1, 1) or not(LoggedIn); FFlag(2); repeat FindRandoms; until RadialWalk(FindFallyRoadColor, 160, 200, 65, 1, 1) or not(LoggedIn); FFlag(2); repeat FindRandoms; until RadialWalk(FindRoadColor, 160, 220, 65, 1, 1) or not(LoggedIn); FFlag(0); repeat FindRandoms; until RadialWalk(AutoColorIt , 200, 250, 65, 1, 1) or not(LoggedIn); FFlag(0); repeat FindRandoms; until RadialWalk(AutoColorIt , 200, 250, 55, 1, 1) or not(LoggedIn); FFlag(0); Mouse(150-r,80-r,0,0,true); FFlag(0); FindRandoms; Status('Searching for Mysterious Ruins...'); while not(IsUpText('yster')) do begin repeat wait(300+random(100)); Inc(f); until FindObj(x,y,'yster',3291441,0) or (f > 10); end; GetMousePos(x,y); if not(f >10) then begin Mouse(x,y,0,0,true); FindRandoms; FFlag(0); end else begin WriteLn('Cant find altar... Logging Out'); Players[CurrentPlayer].Loc := 'No Altar'; Players[CurrentPlayer].Active := False; Exit; end; Players[CurrentPlayer].Loc := 'In Altar'; wait(500 + random(300)); end; procedure InAltar; begin if not(LoggedIn) then exit; Status('Finding Altar...'); SetRun(False); repeat FindRandoms; wait(300+random(100)); MouseBoxNoClick(350,20,400,70); GetMousePos(x,y); until IsUpTextMulti('tar','lta','ltar'); Mouse(x,y,0,0,true); FFlag(0); FindRandoms; Status('Searching for Portal...'); while not(FindObjCustom(x, y, ['ort','tal'],[7905960,7774119,6853276],10)) do begin wait(300+random(100)); FindRandoms; Mouse(270-random(20),320-random(20),0,0,true); FFlag(0); end; Mouse(x,y,0,0,true); MyLevel; UsedEss := UsedEss + ReportVars[0]; ReportVars[1] := (ReportVars[0] * RunesPerEss); RunesMade := RunesMade + ReportVars[1]; ReportVars[2] := Trunc((ReportVars[1]/RunesPerEss) * ExpPerEss); ExpPlus := ExpPlus + ReportVars[2]; Level := SLevel - Players[CurrentPlayer].Level[7]; Players[CurrentPlayer].Loc := 'To Bank'; Report; FFlag(0); wait(800 + random(200)); end; procedure ToBank; var f,r:Integer; begin if not(LoggedIn) then exit; Status('Walking to Bank...'); r := random(4); wait(800 + random(200)); repeat FindRandoms; until RadialWalk(AutoColorIt, 0, 55, 45, 1, 1) or not(LoggedIn); FFlag(3); repeat FindRandoms; until RadialWalk(AutoColorIt, 0, 40, 60, 1, 1) or not(LoggedIn); FFlag(3); repeat FindRandoms; until RadialWalk(AutoColorIt, 45, 80, 45, 1, 1) or not(LoggedIn); FFlag(3); repeat FindRandoms; until RadialWalk(FindFallyRoadColor, 25, 40, 60, 1, 1) or not(LoggedIn); FFlag(3); repeat FindRandoms; until RadialWalk(FindFallyRoadColor, 350, 370, 70, 1, 1) or not(LoggedIn); FFlag(3); Status('Finding Bank Symbol...'); while not(FindSymbol(x,y,'bank')) and not(FindColorTolerance(x,y,6082797,MMX1,MMY1,MMX2,MMY2,50)) and not(f > 10) do begin if RadialWalk(FindFallyRoadColor, 330, 370, 40, 1, 1) then FindRandoms; Inc(f); end; if not(f > 10) then begin Mouse(x,y,0,0,true); FindRandoms; FFlag(0); Players[CurrentPlayer].Loc := 'In Bank'; Wait(500+random(50)); end else begin WriteLn('Cant find bank... Logging Out'); Players[CurrentPlayer].Loc := 'No Bank'; Players[CurrentPlayer].Active := False; Exit; end; end; begin ClearDebug; SetupSRL; ScriptID := '288'; FindWindowBySize(766, 504); ActivateClient; DeclarePlayers; DeclareDTM; if not(LoggedIn) then Loginplayer; repeat Players[CurrentPlayer].Level[7] := GetSkillLevel('runecrafting'); EssToDo := Players[CurrentPlayer].Integers[0]; UsedEss := 0; Level := 0; ExpPlus := 0; Once := True; SetScreenName(Players[CurrentPlayer].Nick); repeat if not(LoggedIn) then exit; If not(Players[CurrentPlayer].Loc = 'To Bank') then ClearDebug; WriteLn(Players[CurrentPlayer].Loc); HighestAngle; MakeCompass('N'); case Players[CurrentPlayer].Loc of 'In Bank':InBank; 'To Altar':ToAltar; 'In Altar':InAltar; 'To Bank':ToBank; else begin WriteLn('What the hell did you do? It said DONT TOUCH!'); Players[CurrentPlayer].Loc := 'Dumbass'; Players[CurrentPlayer].Active := False; Exit; end; end; until(UsedEss >= EssToDo) or (not(Players[CurrentPlayer].Active)); if not(Players[CurrentPlayer].Active) then begin Inc(MessedUp); ReportVars[4] := MessedUp; end; Report; LogOut; until not(CheckActive); TerminateScript; end.
Ok, that script is outdated. Sorry to say so.
Scripts: Varrock Smither! | Fight Caves Runner! | Kebab Buyer! | L.A.M.E. (Outdated)
Tutorials: SRL user-defined procedures | JaGex UID files | Printing your scripts
Applications: StartUp Notepad | SCAR Assistant
Misc: FREE Delphi 7 v2 | Official SRL Graphics
dont gravedig... and spam m8 :S read rules. i can link you if you want me?
There are currently 1 users browsing this thread. (0 members and 1 guests)