BobboHobbo
2007-08-24 19:40:04
<!– BEGIN TEMPLATE: formanswers –>
bobbohobbo - SRL Member Application Form
bobbohobbo
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
HTML
Other Communitys
Umm Fagex but i dont go on it.
How Long have You Played Runescape
About 3 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Im 13 and love to script :)
Hmm a bit about my expernce in this area aye, umm well i like writing scripts its fun and it feels good that im releasing scripts to the community and doing stuff on the forums not leeching like others :)
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
<!– END TEMPLATE: formanswers –>
bobbohobbo - SRL Member Application Form
bobbohobbo
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
HTML
Other Communitys
Umm Fagex but i dont go on it.
How Long have You Played Runescape
About 3 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Im 13 and love to script :)
Hmm a bit about my expernce in this area aye, umm well i like writing scripts its fun and it feels good that im releasing scripts to the community and doing stuff on the forums not leeching like others :)
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
{:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
------------------------------------------------------------------
<:-------------BH - Rhimngton Woodcutter + Firemaker!----------:>
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::[Instructions]
:: 1. Low Detail highest brightness!
:: 2. Fill in the Declare Players
:: 3. Put your characters somewhere where is alot of trees.
:: 4. Drag the (+) into Runescape and press play!
:: 5. Enjoy! Post progress reports and bugs.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: [Script History]
:: Friday 24 of August 2007 - First Release!
::
::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::[Credits]
:: SantaClause, he helped me with things. Thanks!
::YoHoJo, For his awesome EntFinder
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: [What does the script do]
:: It woodcuts Normal Logs,Oaks and Willows then burns them.
:: If gets stuck, i made to move somewhere else.
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
{.include SRL\SRL.scar}
{.include SRL\SRL\Skill\Woodcutting.SCAR}
const
DirrectionR = 'N'; //Which way to run if in fight and so on.
Burn = 150; //How many LOGS to burn before changing accounts
// There s about 26 Logs ea load
var
Tinderbox, AxeH, WoodcutLv, FiremakeLv, TreeToCut, Normal, x, y: Integer;
Oak, Willow, NL, OL, WL, Burnt, Swapplayer, EntAvoid, LogMask: Integer;
procedure DeclarePlayers;
begin
HowManyPlayers := 10;
CurrentPlayer := 0;
NumberOfPlayers(HowManyPlayers);
Players[0].Name := 'User';
Players[0].Pass := 'Pass';
Players[0].Nick := 'Nick'; //3 letters of your username, example jonno you would choose onn.
Players[0].Active := True;
Players[1].Name := 'Username';
Players[1].Pass := 'Password';
Players[1].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[1].Active := True;
Players[2].Name := 'Username'; // take away the { on the left to show these
Players[2].Pass := 'Password';
Players[2].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[2].Active := True;
Players[3].Name := 'Username';
Players[3].Pass := 'Password';
Players[3].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[3].Active := True;
Players[4].Name := 'Username';
Players[4].Pass := 'Password';
Players[4].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[4].Active := True;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
Swapplayer := Swapplayer + 1;
end;
procedure LoadDTMS;
begin
Tinderbox := DTMFromString('78DA63DCCFCCC0B08A910119C4D973303C04D' +
'220D1FF40C0B81BA8662EAA1A902C17540D987712A86636013567' +
'806A9613507304A8662301353B816A361350B301A8663D01351B8' +
'16A961150B30DA866217E35005E0E1297');
AxeH := DTMFromString('78DA63EC63666058C1C8800C9A92781974804' +
'220D1FF40C0D80D54B305550D48968B01A206CCEB01AA5949400D' +
'C8AE8504D44C04AA994540CD1CA09AD944A8594C847BD61150D30' +
'B54B309BF1A00B817109E');
NL := DTMFromString('78DA63E465616058CAC80002109281A125D59' +
'6E12194FF1F081839806AE6C3646100550FA310116AA4816AE612' +
'50230F54B39C801A39A09AF504D48802D56C24A0861BA8660B013' +
'520BF6F20A08609A8661501356C4035CBF0AB010069480E46');
OL := DTMFromString('78DA63DCCDCCC0708A9101194CC877627808A' +
'441A2FF8180710B50CD61543510591809A4F711A1E638116A4E62' +
'BA0743CD19A09A0B04D41C02AAB94240CD56A09A6B04D4AC03AAB' +
'94440CD26A09A93F8D50000C00C15B6');
WL := DTMFromString('78DA637CC6CCC0708A91011984F9CA333C04D' +
'220D1FF40C0780FA8E630AA1A882C8C04D22F8850F311A8E62001' +
'35DF806ACE1350F31AA8E62A01354F806AAE13507317A8E60A013' +
'537816A4EE357030026DF1521');
LogMask := BitmapFromString(31, 25, 'z78DAED97810D002008C35' +
'EE20AFF3FC90F0806852EB207A88EC030EBD1726530C5D938FCA7' +
'24B7C8575AAF5FCA712D5397D0695D7EFD49AEDB2DEAE47106E62' +
'EF349983BD77781CF9CEFA5211FF221AF9F90BAE4CC1BE434E757' +
'DE869555EE7232F39B56FE519954845FDD2F1893E2')
end;
procedure FindTinderDTM;
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
Writeln('Tinderbox found!');
wait(1000);
end;
begin
if FindDTM(AxeH, x, y, 553, 209, 725, 457) then
begin
Writeln('Axe found!')
MMouse(x, y, 1, 1);
if (IsUpText('axe')) then
wait(1000);
Exit;
end else
Writeln('Tinderbox or axe not found, Make sure its in your Inventory');
TerminateScript;
end;
end;
procedure Check;
begin
GameTab(4);
LoadDTMS;
FindTinderDTM;
FreeDTM(AxeH);
end;
procedure EntFinder; // Thanks to YoHoJo.
var
EX, EY: integer;
FX, FY: integer;
SafeEntWait: LongInt;
begin
Status('Checking For Ent')
if
(FindObjCustom(EX, EY, ['Tree', 'Willow', 'Oak'], [4690821], 5)) then
begin
MMouse(EX, EY, 0, 0)
if FindColorTolerance(FX, FY, 55769, 85, 15, 115, 15, 20) then
begin
Status('Ent Found');
MouseFindFlag(645, 83, 2, 2);
MarkTime(SafeEntWait)
repeat
FTWait(5)
FindNormalRandoms;
if not (LoggedIn) then
NextPlayer(False);
until TimeFromMark(SafeEntWait) > 29000 + Random(10000)
EntAvoid := EntAvoid + 1
end;
end;
end;
function FindFastRandoms: Boolean; //By WT-Fakawi.
var
i: Integer;
begin
for i := 1 to 8 do
begin
case I of
1: if FindDead then
Result := True;
2: if FindMod then
Result := True;
3: if FindMime then
Result := True;
4: if FindMaze then
Result := True;
5: if FindQuiz then
Result := True;
6: if FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
7: begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
8: RC;
end;
wait(1);
end;
end;
///////////////////////////////////////////////////////////////////////////
procedure FindRandoms;
begin
FindFastRandoms;
FindNormalRandoms;
Wait(20)
FindTalk;
FTWait(3)
EntFinder;
if (FindFight) then
begin
RunAwayDirection(DirrectionR);
Wait(8000 + Random(2000));
RunBack;
end;
Wait(20)
FindTalk;
end;
procedure AntiBannage;
begin
case random(16) of
0: GameTab(5 + Random(12));
1: BoredHuman;
2: GameTab(4 + Random(12));
3: GameTab(1 + Random(12));
4: GameTab(2 + Random(12));
5: RandomMovement
6: BoredHuman;
7: PickUpMouse;
8: RandomRClick;
9: BoredHuman;
10: GameTab(1 + Random(12));
11: RandomMovement;
12: GameTab(5 + Random(12));
13: GameTab(6 + Random(12));
14: BoredHuman;
15: GameTab(7 + Random(12));
end;
end;
procedure MoveIfProblem;
begin
MouseFindFlag(643, 78, 2, 2)
end;
procedure FmOak;
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Oak') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
end;
end;
end;
end;
procedure FmNormal;
begin
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Logs') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
//Begins Drop
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 2, 2)
if IsUpText('Oak') then
begin
Mouse(x, y, 3, 3, false);
Wait(200 + Random(50)); ;
ChooseOption('Drop');
end;
end;
end;
end;
end;
end;
end;
procedure CantLightWaitBH;
begin
if InChatMulti('can', 'ire h', 'lig') then
begin
MouseFindFlag(643, 78, 2, 2);
end;
end;
procedure CantLightWillow;
begin
if InChatMulti('of 30', 'willow', 'ow logs.') then
begin
if FindDTM(WL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Willow') then
mouse(x, y, 1, 1, false);
ChooseOption('Drop');
end;
end;
end;
procedure CantLightOak;
begin
if InChatMulti('of 15', 'oak', 'ak logs.') then
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Oak') then
wait(100);
Mouse(x, y, 1, 1, False);
wait(500);
ChooseOption('Drop');
end;
end;
end;
procedure LightWaitBH;
begin
if InChat('You at') then
repeat
if (not (LoggedIn)) then
begin
Exit;
end else
ClicktoContinue;
FTWait(1);
until InChatMulti('cat', 'Con', 'ire');
end;
procedure LightLogs;
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
wait(100);
Mouse(x, y, 5, 5, true);
end;
begin
if FindDTM(NL, x, y, 553, 209, 725, 457) or
FindDTM(OL, x, y, 553, 209, 725, 457) or
FindDTM(WL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
mouse(x, y, 1, 1, true);
wait(1000);
end;
begin
LightWaitBH;
wait(1000);
CantLightWaitBH;
CantLightOak;
CantLightWillow;
ClickToContinue;
wait(1000);
Burnt := Burnt + 1;
end;
end;
end;
procedure check1;
begin
Setrun(false);
WoodcutLv := GetSkillLevel('woodcutting')
FiremakeLv := GetSkillLevel('firemaking')
WriteLn('Starting WC level: ' + IntToStr(WoodcutLv));
WriteLn('Starting FM level: ' + IntToStr(FiremakeLv));
end;
procedure CutNormalLogs;
begin
if invfull then
Exit;
if FindObj(x, y, 'Tree', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
procedure CutOakLogs;
begin
if invfull then
Exit;
begin
wait(6000 + random(2000));
if FindObj(x, y, 'Oak', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;
procedure CutWillowLogs;
begin
if invfull then
begin Exit;
wait(8000 + random(2000));
if FindObj(x, y, 'Willow', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;
procedure DoWhatToCut;
begin
Writeln('Began DoWhatToCut;');
if ((GetSkillLevel('woodcutting')) < 15) and
((GetSkillLevel('woodcutting')) >= 1) then
TreeToCut := Normal;
if ((GetSkillLevel('woodcutting')) < 30) and
((GetSkillLevel('woodcutting')) >= 15) then
TreeToCut := Oak;
if ((GetSkillLevel('woodcutting')) < 99) and
((GetSkillLevel('woodcutting')) >= 30) then
TreeToCut := Willow;
end;
procedure WhatToCut;
begin
Writeln('Began WhatToCut;');
if (TreeToCut = Normal) then
begin
CutNormalLogs;
end;
if (TreeToCut = Oak) then
begin
CutOakLogs;
end;
if (TreeToCut = Willow) then
begin
CutWillowLogs;
end;
end;
procedure ProgressReport;
begin
ClearDebug;
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
Writeln('¤ BH - WoodCutter + Burner Progress ');
Writeln('¤ Report! ');
WriteLn('¤ Worked for ' + TimeRunning + '.');
Writeln('¤ Burnt Logs ' + IntToStr(Burnt) + ' Time/s' + ' ');
Writeln('¤ Logged in ' + IntToStr(Swapplayer) + ' Time/s' + ' ');
WriteLn('¤ Ents Avoided ' + IntToStr(EntAvoid) + ' Time/s');
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
end;
procedure Setup;
begin
Burnt := 0;
end;
begin
ActivateClient;
SetupSRL;
ActivateClient;
wait(100);
Setup;
DeclarePlayers;
if (not (loggedIn)) then
begin
LoginPlayer;
end;
begin
Check;
check1
FindRandoms;
AntiBannage;
DoWhatToCut;
repeat
repeat;
FindRandoms;
AntiBannage;
ProgressReport;
WhatToCut;
until (invfull);
if (invfull) then
begin
repeat
LightLogs;
FindRandoms;
ProgressReport;
until (not (FindBitmapMaskTolerance(LogMask, x, y, 553, 209, 725, 457, 10, 2))) or
(Burnt = (Burn));
if (Burnt >= Burn) then
begin
NextPlayer(True);
Burnt := 0;
end;
end;
until (false);
end;
end.——————————————————
<!– END TEMPLATE: formanswers –>