Nice script you have there! You have a bunch of repeated code where it checks the overText, and it would be much nicer to put that in a loop. Something like this:
Simba Code:
procedure CheckRod();
var
rodiDTM, x, y, i: Integer;
s: String;
begin
rodiDTM := DTMFromString('mggAAAHicY2NgYAhnY2BIAWIPIA4B4gggDgTiDCYGhmggLgLiZCDOhbJnVDkBdTFhYEkG7IARB4YAAFFyBis=');
if gameTabs.openTab(TAB_EQUIPMENT) then
begin
writeLn('Tab Equipment is opened');
if findDTM(rodiDTM, x, y, tabBackPack.getbounds()) then
begin
mouse(point(x, y).randRange(4, 8, -8, 8), MOUSE_MOVE);
wait(random(500, 1500));
s := getMouseOverText(True); // True means it will use tesseract
for i := 1 to 10 do // Loop from 1 to 10
if strToInt(s) = i then
begin
Lvl := i;
writeLn('Our rod O-matic is lvl ' + i);
end;
if Lvl = 10 then Dissasemble();
end else
writeln('Looks like we didnt find rodiDTM?');
end;
gameTabs.openTab(TAB_BACKPACK);
mouseOffClient(OFF_CLIENT_RANDOM);
FreeDTM(rodiDTM);
end;
You can also probably do a similar thing for procedure ChatBoxSearch;