SRL Archive - SRL Archives

Auto Reporter :)


Ruroken

2007-03-18 14:49:35

Well, I finally finished it.

My Auto Reporter!

It will report people for bad language in RS. Just call the 'Report' function, it'll take care of the rest.

And if anyone knows anymore dirty words that the RS censor dosn't catch….please tell me.

///////////////////////////////////////////////////////////////////////
// Reporter by Ruroken //
//Please note that this is EXPERAMENTAL do not use unless you know //
//what you are doing! As it could result in a ban! //
///////////////////////////////////////////////////////////////////////
program Reporter;
{.include SRL/SRL.scar}

var
TimeSinceLast : integer;

// more to be added
Function IsSwearingStars:boolean;
begin
If InChatMulti('***','****','*****') or
InChat('******')then result:=true;
end;

// more to be added
Function IsSwearing:boolean;
begin
If InChatMulti('Fak','Jew','Hell') or
InChatMulti('dam','Dam','Hell') or
InChatMulti('jew','fak','hell')then result:=true;
end;

// Based on Wizzy's and Sumilion's
function GetName : string;
begin
Result := Trim(GetTextAtEx(20, 415, 0, SmallChars, False, False, 0, 1, 0, 80, False, tr_AllChars));
Delete(Result, Pos(':', Result), 1);
Writeln(Result);
end;

function OpenReport : boolean;
var
ReportOpen : integer;
begin
Result := false;
ReportOpen := DTMFromString('78DA63BCCDC0C0A0CE8002FECF9007D38C503' +
'EE36F20A149400D2390A5865F0D00CAAE0777');
Mouse(455, 482, 2, 10, true);
if FindDTM (ReportOpen, x, y, 210, 31, 310, 50) then result := true;
end;

Function Report:boolean;
begin
result := true;
if (TimeFromMark(TimeSinceLast) < 300000) then WriteLn('Dont abuse the function...');
if (TimeFromMark(TimeSinceLast) >= 300000)or (TimeFromMark(TimeSinceLast) <= 1) then
begin
MarkTime(TimeSinceLast);
if IsSwearing or IsSwearingStars then
begin
GetName;
if OpenReport then
begin
TypeSend(GetName);
Wait(1000 + random (500) - random (500));
Mouse(97, 216, 1, 15, true);
end;
result := true;
end;
end;
end;

begin
end.
[ATTACH]2488[/ATTACH]

TheGodfather

2007-03-18 15:52:20

I'll be looking forward to test it out :P

EDIT:
So basically, it reports on the players cussing??
*I think that's a pretty small cuss library u got there*

I think u should have a case with all the words……. e.g.


Function IsSwearingStars:boolean;
var stars : integer;
Begin
//For
stars := 1 // to X do
begin
Case stars Of
1: If InChatMulti('***','****','*****') or InChat('******') Then
Result:=true;
// and so on with more cuss words..
end;
end;
End;

Ruroken

2007-03-18 16:00:45

From: TheGodfather
I'll be looking forward to test it out :P

EDIT:
So basically, it reports on the players cussing??
*I think that's a pretty small cuss library u got there*

I think u should have a case with all the words……. e.g.


Well, I didn't spend much time thinking of dirty words….

you can do that, make me a list if you want.

TheGodfather

2007-03-18 16:06:12

Here i edited my previous post….

So basically I think you should have 1 whole library of w/e should be reported for, and if it finds any of them, then it turns true, if true, then report… You get what im saying?

Ruroken

2007-03-18 16:23:27

yeah i do.

Might do it your way.

pwnaz0r

2007-03-18 16:26:57


If(InChat('Hell')) and not (InChat('Hello'))

:p?

TheGodfather

2007-03-18 17:12:20

From: pwnaz0r

If(InChat('Hell')) and not (InChat('Hello'))

:p?


that's a good point ;)

Bobarkinator

2007-03-18 17:38:34

This is gonna be tought thinking up every word then thinking if its part of any others…oh boy I'm gonna shoot myself before this is over.

Ruroken

2007-03-18 18:03:24

OOH!

Good eye!

I'll change it when i have time :p