SRL Archive - SRL Archives

Failsafe.scar


Naike

2009-04-20 02:13:22

I figured that i havn't done anything in here for ages so i made this ;D

Atm it closes the following menus
  • Quick Chat
  • Skill Menu
  • Quest Menu
  • Equip Character Menu
  • Price Checker Menu
  • Items Kept on Death Menu
  • Quick Prayers Menu
  • Clan Chat Setup Menu
  • Graphics Options Menu
  • Sound Options Menu
  • Sound Options Menu
  • World Map
  • Report Menu

All these are handled in one procedure, HandleFail.

NOTE: If you find any menu that i havn't included, feel free to post it ;D
This will be developed more with more stuffs :)


Type
TInfoMenu = Record
ColorCords ,CloseCords: TPoint;
Color: Integer;
Kind: String;
end;

Var
FailMenus: Array [0..11] of TInfoMenu;

Procedure SetFailSafe(ArrN: Integer; ColCords, CCords: TPoint; Col: Integer; KKind: String);
begin
FailMenus[ArrN].ColorCords := ColCords;
FailMenus[ArrN].CloseCords := CCords;
FailMenus[ArrN].Color := Col;
FailMenus[ArrN].Kind := KKind;
end;

Procedure SetupFailSafes;
begin
SetFailSafe(0, Point(54, 356), Point(13, 353), 16711680, 'Quick Chat');
SetFailSafe(1, Point(498, 22), Point(498, 22), 8042720, 'Skill Menu');
SetFailSafe(2, Point(464, 99), Point(465, 75), 2707817, 'Quest Menu');
SetFailSafe(3, Point(21, 38), Point(489, 42), 2070783, 'Equip Character Menu');
SetFailSafe(4, Point(217, 29), Point(485, 34), 2070783, 'Price Checker Menu');
SetFailSafe(5, Point(198, 29), Point(493, 29), 2070783, 'Items Kept on Death Menu');
SetFailSafe(6, Point(552, 213), Point(648, 455), 2070783, 'Quick Prayers Menu');
SetFailSafe(7, Point(207, 40), Point(486, 44), 2070783, 'Clan Chat Setup Menu');
SetFailSafe(8, Point(206, 32), Point(493, 35), 0, 'Graphics Options Menu');
SetFailSafe(9, Point(247, 51), Point(327, 54), 0, 'Sound Options Menu');
SetFailSafe(10, Point(598, 215), Point(721, 233), 2070783, 'Sound Options Menu');
SetFailSafe(11, Point(748, 17), Point(747, 18), 1449250, 'World Map');
SetFailSafe(12, Point(216, 38), Point(486, 41), 2070783, 'Report Menu');
end;

Procedure HandleFail;
var
I: Integer;
begin
For I:= 0 to High(FailMenus) do
If (GetColor(FailMenus[I].ColorCords.X, FailMenus[I].ColorCords.Y) = FailMenus[I].Color)then
begin
MouseBox(FailMenus[I].CloseCords.X-7, FailMenus[I].CloseCords.Y-7, FailMenus[I].CloseCords.X+7, FailMenus[I].CloseCords.Y+7, 1);
Wait(300+Random(500));
Writeln(FailMenus[I].Kind + ' Found open, Closed it.');
Exit;
end;
end;

Sir R. M8gic1an

2009-04-20 18:24:04


{*******************************************************************************
function CloseWindow: Boolean;
By: Solemn Wishes, Starblaster100 and ZephyrsFury
Description: Closes any open windows.
*******************************************************************************}

from text.scar


does it not close all of them?

~RM

Naike

2009-04-20 23:44:53

It handles about 8 of the 13 i made, it also double clicks at 2 of them making it walk off…

Nava2

2009-04-21 00:04:24

Why not use a bitmap of the x?

Naike

2009-04-21 16:39:10

Their is 5 diffrent ones?

and color checking is faster ;)