Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {.include SWSSL\[0.1-4a]\library\setup.scar}
- const
- stopFKey = 12;
- continueFKey = 11;
- pauseFKey = 10;
- FULL_BAG_WEIGHT = 150;
- SCRIPT_BMP_TREE0 = 0;
- SCRIPT_BMP_TREE1 = 1;
- SCRIPT_BMP_TREE2 = 2;
- SCRIPT_BMP_TREE3 = 3;
- SCRIPT_BMP_TREE4 = 4;
- SCRIPT_BMP_TREE5 = 5;
- SCRIPT_BMP_DWARF0 = 6;
- SCRIPT_BMP_DWARF1 = 7;
- SCRIPT_BMP_DWARF2 = 8;
- SCRIPT_BMP_DWARF3 = 9;
- SCRIPT_BMP_DWARF4 = 10;
- SCRIPT_BMP_DWARF5 = 11;
- SCRIPT_BITMAPS_COUNT = 12;
- SCRIPT_DTM_AXE = 0;
- SCRIPT_DTM_LOGS = 1;
- SCRIPT_DTM_TREE = 2;
- SCRIPT_DTM_DWARF = 3;
- SCRIPT_DTMS_COUNT = 4;
- var
- PDMark, SCRIPT_BITMAPS, SCRIPT_DTMS: Integer;
- storedColors, bmpTree, bmpDwarf: TIntegerArray;
- procedure walkTo(spot: string); forward;
- function ScriptBitmapsSetup: Boolean;
- var
- h, i: Integer;
- S_BMP_STR_Arr: TStringArray;
- S_BMP_H_Arr, S_BMP_W_Arr, S_BMP_Arr: TIntegerArray;
- begin
- S_BMP_STR_Arr:= ['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'];
- S_BMP_W_Arr:= [11, 11, 11, 11, 11, 11, 6, 6, 6, 6, 6, 6];
- S_BMP_H_Arr:= [5, 5, 5, 5, 5, 5, 9, 9, 9, 9, 9, 9];
- h:= High(S_BMP_STR_Arr);
- if((h = High(S_BMP_W_Arr))and(h = High(S_BMP_H_Arr))and(h > -1))then
- begin
- SCRIPT_BITMAPS:= CreateNewBitmapSet;
- AddBitmapsToSet(SCRIPT_BITMAPS, S_BMP_STR_Arr, S_BMP_W_Arr, S_BMP_H_Arr);
- S_BMP_Arr:= [SCRIPT_BMP_TREE0, SCRIPT_BMP_TREE1, SCRIPT_BMP_TREE2, SCRIPT_BMP_TREE3, SCRIPT_BMP_TREE4, SCRIPT_BMP_TREE5,
- SCRIPT_BMP_DWARF0, SCRIPT_BMP_DWARF1, SCRIPT_BMP_DWARF2, SCRIPT_BMP_DWARF3, SCRIPT_BMP_DWARF4, SCRIPT_BMP_DWARF5];
- h:= High(S_BMP_Arr);
- for i:= 0 to h do
- LoadBitmapFromSetToMemory(SCRIPT_BITMAPS, i);
- Result:= True;
- end;
- for i:= 0 to h do
- begin
- S_BMP_STR_Arr[i]:= '';
- S_BMP_W_Arr[i]:= 0;
- S_BMP_H_Arr[i]:= 0;
- end;
- SetArrayLength(S_BMP_STR_Arr, 0);
- SetArrayLength(S_BMP_W_Arr, 0);
- SetArrayLength(S_BMP_H_Arr, 0);
- end;
- function ScriptDTMsSetup: Boolean;
- var
- h, i: Integer;
- S_DTM_STR_Arr: TStringArray;
- S_DTM_Arr: TIntegerArray;
- begin
- S_DTM_STR_Arr:= ['78DA63CC65606058CE8002227439C0342394CF58092436A3AAB194E04655930A2466A3AA79F6F82EE96A6280C43C5435DFBE7E4255930024E6A0AA993B6F3EC96A0038771407',
- '78DA63E46562606065644006FFFFEE04D33051C6FF401613AA9A9F8F97A0AA61069AC38BAAE6FDCDF9A86AF8816AB851D5EC5F5383AA4604A88603CD3D9FD6A3AA116442E241406E753EA65D7F509430F4B755A2A80100492A119F',
- '78DA63FCC6C8C07084010558DB89806946289F11A46615AA9ABDBBD6A2AAE16662605889AA664A5B31AA1A01A09A5DA86A9C1C2D51D58802D51C425573EFFA5654354C40356751D5242746A1A80100EB110F17',
- '78DA63B4606260E86740013D819A609A11CA67D400AA9980AA664A5731AA1A1DA09A05A86A9C1C2D51D59800D52C4355F3FCFE56143500603E0904'];
- h:= High(S_DTM_STR_Arr);
- if(h > -1)then
- begin
- SCRIPT_DTMS:= CreateNewDTMSet;
- AddDTMsToSet(SCRIPT_DTMS, S_DTM_STR_Arr);
- S_DTM_Arr:= [SCRIPT_DTM_AXE, SCRIPT_DTM_LOGS, SCRIPT_DTM_TREE, SCRIPT_DTM_DWARF];
- h:= High(S_DTM_Arr);
- for i:= 0 to h do
- LoadDTMFromSetToMemory(SCRIPT_DTMS, i);
- Result:= True;
- end;
- for i:= 0 to h do
- S_DTM_STR_Arr[i]:= '';
- SetArrayLength(S_DTM_STR_Arr, 0);
- end;
- procedure handleFKeys;
- begin
- if(IsFKeyDown(PauseFKey))then
- begin
- if(TimeFromTimeMark(PDMark) <= 12000)then
- PlaySound(ScriptPath + 'empty.wav');
- while (not(IsFKeyDown(continueFKey)))and(not(IsFKeyDown(stopFKey))) do
- Wait(1);
- end;
- if(IsFKeyDown(StopFKey))then
- TerminateScript;
- end;
- function playerHasMoved(var storedColors: TIntegerArray): Boolean;
- var
- i, h: Integer;
- tempColors: TIntegerArray;
- begin
- tempColors:= GetColors(BoxToPoints(MINIMAP_AREA_CENTER));
- Result:= (not(IdenticalTIAs(tempColors, storedColors)));
- if((not(Result))and(High(storedColors) = h))then
- Exit;
- SetArrayLength(storedColors, 0);
- storedColors:= tempColors;
- SetArrayLength(tempColors, 0);
- end;
- function FindTree(var x, y: Integer; xs, ys, xe, ye: Integer): Boolean;
- var
- i, h: Integer;
- begin
- h:= High(bmpTree);
- for i:= 0 to h do
- if(not(Result))then
- Result:= FindBitmapSpiralTolerance(BITMAP_SET[SCRIPT_BITMAPS].bitmap[bmpTree[i]].bmp, x, y, xs, ys, xe, ye, 20)
- else
- Exit;
- end;
- function FindDwarf(var x, y: Integer; xs, ys, xe, ye: Integer): Boolean;
- var
- i, h: Integer;
- begin
- h:= High(bmpDwarf);
- for i:= 0 to High(bmpDwarf) do
- if(not(Result))then
- Result:= FindBitmapToleranceIn(BITMAP_SET[SCRIPT_BITMAPS].bitmap[bmpDwarf[i]].bmp, x, y, xs, ys, xe, ye, 20)
- else
- Exit;
- end;
- function getChopSpot: Integer;
- var
- x, y: Integer;
- begin
- Result:= -1;
- if(FindDTM(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_TREE].dtm, x, y, MINIMAP_AREA.X1, MINIMAP_AREA.Y1, MINIMAP_AREA.X2, MINIMAP_AREA.Y2))then
- if((x = 530)and(InRange(y, 171, 175)))then
- Result:= (y - 171);
- end;
- procedure WalkToTreeSpot;
- var
- theSpot, x, y, tempTime, phmMark: Integer;
- storedColors: TIntegerArray;
- begin
- theSpot:= Random(5);
- if(FindTree(x, y, 3, 24, 250, 444))then
- begin
- Click((x + 60), ((y - 32) + (theSpot * 20)), L);
- MarkTime(phmMark);
- repeat
- if(TimeFromTimeMark(phmMark) >= 800)then
- WalkToTreeSpot;
- if((TimeFromTimeMark(phmMark) = 0)or(TimeFromTimeMark(phmMark) >= 50))then
- if(PlayerHasMoved(storedColors))then
- MarkTime(phmMark);
- Wait(10);
- until(InRange(getChopSpot, 0, 4));
- MarkTime(tempTime);
- while (not(FindItemInQuickBarSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_AXE].dtm, 2, dm_DTM))) do
- begin
- ScrollQuickItemBar(R);
- if(TimeFromTimeMark(tempTime) >= 5000)then
- Break;
- end;
- end else
- walkTo('Tree');
- end;
- procedure SellLogs;
- var
- i, i2, x, y: Integer;
- tempTM: Integer;
- begin
- handleFKeys;
- if(FindItemInQuickBarSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_LOGS].dtm, 1, dm_DTM))then
- begin
- if(FindDwarf(x, y, 180, 58, 379, 259))then
- begin
- MarkTime(tempTM);
- while (GetColor(53, 367) <> 15987699) do
- begin
- if(FindDwarf(x, y, 180, 58, 379, 259))then
- Click((x + 4), (y + 18), L);
- if(TimeFromTimeMark(tempTM) >= 5000)then
- SellLogs;
- end;
- Click(61, 370, L);
- MarkTime(tempTM);
- while (not(GetColor(238, 199) = 5535633)) do
- if(TimeFromTimeMark(tempTM) >= 5000)then
- SellLogs;
- DoubleClick(526, 260, L);
- Click(389, 381, L);
- DoubleClick(489, 260, L);
- Click(389, 381, L);
- for i:= 1 to 9 do
- begin
- for i2:= 1 to 3 do
- ScrollQuickItemBar(L);
- for i2:= 1 to 3 do
- begin
- case i2 of
- 1: DoubleClick(573, 260, L);
- 2: DoubleClick(526, 260, L);
- 3: DoubleClick(489, 260, L);
- end;
- Click(389, 379, L);
- end;
- end;
- CloseMenu;
- WalkTo('Tree');
- end else
- begin
- WalkTo('Dwarf');
- SellLogs;
- end;
- end else
- WalkTo('Tree');
- end;
- procedure WalkTo(spot: string);
- var
- x, y, i, ttl, dstnc, nwAngl, olAngl: Integer;
- s, drctn: string;
- cBx, sBox: TBox;
- cPtMM, cPt, wPt: TPoint;
- TPA: TPointArray;
- walkBoxArr: TBoxArray;
- b: Boolean;
- begin
- sBox:= IntToBox(WALKING_TILES[140].x1, WALKING_TILES[140].y1, WALKING_TILES[220].x2, WALKING_TILES[220].y2);
- cBx:= GetAreaBoxByID(180);
- cPt:= IntToPoint((cBx.x1 + 9), (cBx.y1 + 9));
- cPtMM:= IntToPoint (533, 174);
- dstnc:= Round(Distance(WALKING_AREA.x1, WALKING_AREA.y1, WALKING_AREA.x2, WALKING_AREA.y2) / 2);
- s:= Lowercase(spot);
- repeat
- case s of
- 'tree': b:= FindDTM(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_TREE].dtm, x, y, MINIMAP_AREA.x1, MINIMAP_AREA.y1, MINIMAP_AREA.x2, MINIMAP_AREA.y2);
- 'trader': b:= FindDTM(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_DWARF].dtm, x, y, MINIMAP_AREA.x1, MINIMAP_AREA.y1, MINIMAP_AREA.x2, MINIMAP_AREA.y2);
- end;
- if(b)then
- begin
- drctn:= Lowercase(mmCoordsToDirection(x, y));
- if(drctn = 'center')then
- if(Distance(cPtMM.x, cPtMM.y, x, y) < 10)then
- Break;
- nwAngl:= GetAngle(cPtMM, IntToPoint(x, y));
- if(nwAngl <> olAngl)then
- begin
- wPt:= GetTPointByXYDA(cPt, dstnc, nwAngl);
- TPA:= TPointLine(cPt, wPt);
- PickEveryXTPointFromTPA(4, TPA);
- walkBoxArr:= GetAreaBoxsByTPA(TPA);
- SkipTBoxsByArea(walkBoxArr, sBox, False);
- ttl:= GetArrayLength(walkBoxArr);
- olAngl:= nwAngl;
- end;
- if(ttl > 0)then
- begin
- i:= Random(ttl);
- Click((walkBoxArr[i].x1 + 9), (walkBoxArr[i].y1 + 9), L);
- end;
- end;
- until(False);
- Click((WALKING_AREA_CENTER.X1 + 5), (WALKING_AREA_CENTER.Y1 + 5), L);
- SetArrayLength(walkBoxArr, 0);
- SetArrayLength(TPA, 0);
- case s of
- 'tree': WalkToTreeSpot;
- 'trader': SellLogs;
- end;
- end;
- procedure Cut;
- var
- x, y, tempTM, tempSpot, tmpETM, ET: Integer;
- storedColors: TIntegerArray;
- begin
- while (not(FindItemInQuickBarSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_AXE].dtm, 2, dm_DTM))) do
- ScrollQuickItemBar(R);
- if(FindTree(x, y, 3, 24, 250, 444))then
- begin
- if(not(InRange(getChopSpot, 0, 4)))then
- WalkToTreeSpot;
- end else
- walkTo('Tree');
- Wait(500);
- repeat
- if(FindItemInQuickBarSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_LOGS].dtm, 1, dm_DTM))then
- Break;
- Click(564, 257, R)
- FindTree(x, y, 148, 185, 167, 285);
- Click((x + 5), (y + 3), L);
- OpenMenu(MENU_INVENTORY);
- MarkTime(tempTM);
- while ((not(BagOpen))and(TimeFromTimeMark(tempTM) < 2000)) do
- Wait(1);
- if(TimeFromTimeMark(tempTM) >= 2000)then
- Cut;
- MarkTime(tempTM);
- while ((BagOpen)and(TimeFromTimeMark(tempTM) < 5500)) do
- Wait(1);
- if(BagOpen)then
- begin
- CloseMenu;
- MarkTime(tempTM);
- while (BagOpen) do
- begin
- MarkTime(tmpETM);
- Wait(1);
- ET:= (TimeFromTimeMark(tmpETM) - 1);
- if((TimeFromTimeMark(tempTM) - ET) >= 10000)then
- TerminateScript;
- end;
- storedColors:= GetColors(BoxToPoints(MINIMAP_AREA_CENTER));
- MarkTime(tempTM);
- repeat
- SendArrow(1);
- Wait(100);
- if(TimeFromTimeMark(tempTM) > 5000)then
- TerminateScript;
- until(playerHasMoved(storedColors));
- WalkToTreeSpot;
- Wait(250);
- Cut;
- end else
- if(TimeFromTimeMark(tempTM) >= 5500)then
- begin
- if(not(FindTree(x, y, 151, 186, 164, 291)))then
- if(FindTree(x, y, 3, 24, 250, 444))then
- WalkToTreeSpot
- else
- TerminateScript;
- end;
- Wait(1);
- until(FindItemInQuickBarSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_LOGS].dtm, 1, dm_DTM));
- WalkTo('Trader');
- end;
- function ReadyToStart: Boolean;
- var
- h, tmr: Integer;
- TIA: TIntegerArray;
- begin
- if(SWClientActivated)then
- begin
- if(not(AtLoginScreen))then
- begin
- OpenMenu(MENU_INVENTORY);
- MarkTime(tmr);
- repeat
- if(TimeFromTimeMark(tmr) > 1000)then
- begin
- WriteLn('ERROR: FAILED TO OPEN INVENTORY. ..LAG?');
- Exit;
- end;
- until(MenuOpen(MENU_INVENTORY));
- TIA:= GetUsedBagSlots;
- h:= High(TIA);
- if(h = 0)then
- begin
- if(FindItemInBagSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_AXE].dtm, TIA[0], dm_DTM))then
- begin
- if(TIA[0] <> 29)then
- begin
- DragItem(TIA[0], 29);
- MoveMouse(600, 150);
- MarkTime(tmr);
- repeat
- if(TimeFromTimeMark(tmr) > 1000)then
- begin
- WriteLn('ERROR: FAILED TO MOVE AXE TO BAG SLOT NO.29.');
- Exit;
- end;
- until(FindItemInBagSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_AXE].dtm, 29, dm_DTM));
- end;
- MarkTime(tmr);
- repeat
- ScrollQuickItemBar(R);
- if(TimeFromTimeMark(tmr) > 1000)then
- WriteLn('ERROR: FAILED TO SCROLL QUICK ITEM BAR TO SLOT 29...');
- until(FindItemInQuickBarSlot(DTM_SET[SCRIPT_DTMS].DTM[SCRIPT_DTM_AXE].dtm, 2, dm_DTM));
- OpenMenu(MENU_INFORMATION);
- MarkTime(tmr);
- repeat
- if(TimeFromTimeMark(tmr) > 1000)then
- begin
- WriteLn('ERROR: FAILED TO OPEN PLAYER INFORMATION...');
- Exit;
- end;
- until(MenuOpen(MENU_INFORMATION));
- if((GetMaximumStuffWeight - GetUsedStuffWeight) < 150)then
- begin
- WriteLn('ERROR: NOT ENOUGH WEIGHT TO CARRY FULL LOAD OF LOGS...');
- Exit;
- end;
- CloseMenus;
- MarkTime(tmr);
- repeat
- if(TimeFromTimeMark(tmr) > 1000)then
- begin
- WriteLn('ERROR: COULD NOT CLOSE PLAYER INFORMATION...');
- Exit;
- end;
- until(not(MenuOpen(MENU_INFORMATION)));
- if(GetActiveChatBoxTab <> 0)then
- begin
- MarkTime(tmr);
- while ((not(SetActiveChatBoxTab(0)))and(TimeFromTimeMark(tmr) > 1000)) do
- Wait(10);
- if(GetActiveChatBoxTab <> 0)then
- begin
- WriteLn('ERROR: FAILED TO SET CHATBOX TAB TO 0.');
- Exit;
- end;
- end;
- Result:= True;
- end else
- WriteLn('ERROR: NO AXE IN BAG.');
- end else
- begin
- WriteLn('ERROR: PLAYER CAN ONLY HAVE A WOODCUTTING AXE IN BAG.');
- CloseMenus;
- SetArrayLength(TIA, 0);
- Exit;
- end;
- SetArrayLength(TIA, 0);
- end else
- WriteLn('ERROR: PLEASE LOGIN BEFORE RUNNING THE SCRIPT.');
- end else
- WriteLn('ERROR: SW CLIENT IS NOT ACTIVATED.');
- end;
- procedure ScriptTerminate;
- begin
- PlaySound(ScriptPath + 'empty.wav');
- SetArrayLength(storedColors, 0);
- SetArrayLength(bmpTree, 0);
- SetArrayLength(bmpDwarf, 0);
- SetClientPos(False);
- UnsetupSWSSL;
- end;
- begin
- if(not(SetupSWSSL))then
- Exit;
- bmpTree:= [SCRIPT_BMP_TREE0, SCRIPT_BMP_TREE1, SCRIPT_BMP_TREE2,
- SCRIPT_BMP_TREE3, SCRIPT_BMP_TREE4, SCRIPT_BMP_TREE5];
- bmpDwarf:= [SCRIPT_BMP_DWARF0, SCRIPT_BMP_DWARF1, SCRIPT_BMP_DWARF2,
- SCRIPT_BMP_DWARF3, SCRIPT_BMP_DWARF4, SCRIPT_BMP_DWARF5];
- ScriptBitmapsSetup;
- ScriptDTMsSetup;
- ActivateClient;
- Wait(1000);
- if(not(ReadyToStart))then
- TerminateScript;
- repeat
- handleFKeys;
- Cut;
- Wait(1);
- until(IsFKeyDown(StopFKey));
- UnsetupSWSSL;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement