SCAR Code:
{.include srl/srl.scar}
{.include srl/srl/misc/QuickChat.scar}
const
StartPersonality = 'angry';
var
Respond1, I: array of string;
Personality: string;
N: Integer;
function InChatMulti(text: TStringArray): boolean;
var
i: integer;
s: string;
begin
for i := 0 to high(text) do
begin
if (not (GetLastChatText(s))) then
LastChatter(s);
Result := (Pos(Text[i], s) > 0);
end;
end;
procedure Responding;
begin
SetupSrl;
DeclarePlayers;
Personality := StartPersonality;
if not FindBlackChatMessage(Players[currentplayer].name) and InChatMulti(['lvl', 'level', 'lv', 'lev', 'leve', 'hi', 'hello', 'sup', 'yo']) then
begin
I := ['oodcutting', 'oodcut', 'ishing', 'ish', 'ine', 'ining', 'hi', 'hello', 'sup', 'yo'];
for N := 0 to GetArrayLength(I) do
case InChat(I[N]) of
True:
begin
case I[N] of
0, 1:
begin
case lowercase(Personality) of
'laid back': Respond1 := ['Tis ', 'Yo, my wc lvl is ', ''];
'polite': Respond1 := ['Thanks for asking', 'It is ', ''];
'bored': Respond1 := ['Lolz, it''s ', 'dood! My wc level is ', ''];
'angry': Respond1 := ['What''s it matter? If you must know it''s ', 'Bah. ', ''];
end;
case Random(4) of
0..2: TypeSend(Respond1[Random(GetArrayLength(Respond1))] + IntToStr(GetSkillInfo('woodcutting', True)));
3: QCSayLevel('woodcutting');
end;
end;
2, 3:
begin
case lowercase(Personality) of
'laid back': Respond1 := ['Tis ', 'Yo, my fishing lvl is ', 'It''s ', ''];
'polite': Respond1 := ['Thanks for asking', 'It is ', ''];
'bored': Respond1 := ['Lolz, it''s ', 'dood! My fishing level is ', ''];
'angry': Respond1 := ['What''s it matter? If you must know it''s ', 'Bah. ', ''];
end;
case Random(4) of
0..2: TypeSend(Respond1[Random(GetArrayLength(Respond1))] + IntToStr(GetSkillInfo('fishing', True)));
4: QCSayLevel('woodcutting');
end;
end;
4, 5:
begin
case lowercase(Personality) of
'laid back': Respond1 := ['Tis ', 'Yo, my mining lvl is ', ''];
'polite': Respond1 := ['Thanks for asking', 'It is ', ''];
'bored': Respond1 := ['Lolz, it''s ', 'dood! My mining level is ', ''];
'angry': Respond1 := ['Whats it matter? If you must know its ', 'Bah. ', ''];
end;
case Random(4) of
0..2: TypeSend(Respond1[Random(GetArrayLength(Respond1))] + IntToStr(GetSkillInfo('mining', True)));
3: QCSayLevel('woodcutting');
end;
end;
6..9:
begin
case lowercase(Personality) of
'laid back': Respond1 := ['Yo!', 'Sup?', 'Sup man?'];
'polite': Respond1 := ['Hello.', 'Good day to you.'];
'bored': Respond1 := ['Ohaider!', 'Hi.'];
'angry': Respond1 := ['What?', 'Leave me alone!', 'Go away!'];
end;
case Random(4) - 1 of
0..2: TypeSend(Respond1[Random(GetArrayLength(Respond1))]);
3: TypeSend('GH' + IntToStr(Random(5)));
end;
end;
False: WriteLn('Didn''t find anything');
end;
end;
end;
end;
end;
begin
Responding;
end.