XxtOmxX
2007-06-04 12:33:24
<!– BEGIN TEMPLATE: formanswers –>
XxtOmxX - SRL Member Application Form
XxtOmxX
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
nope
Other Communitys
nope
How Long have You Played Runescape
like 2 months
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well, i know how to script something :P im good with forms and i know the SRL code pretty well, or i know where to look for if i dont know something. I will happily learn new things like now scar. Awww, and i hate to write soooo lonnnggg sentences. So thats about me ;)
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
<!– END TEMPLATE: formanswers –>
XxtOmxX - SRL Member Application Form
XxtOmxX
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
nope
Other Communitys
nope
How Long have You Played Runescape
like 2 months
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well, i know how to script something :P im good with forms and i know the SRL code pretty well, or i know where to look for if i dont know something. I will happily learn new things like now scar. Awww, and i hate to write soooo lonnnggg sentences. So thats about me ;)
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
program UltimateRangerForDIVI;
{.include srl/srl.scar}
{.include srl/srl/skill/fighting.scar}
{.include srl/srl/extended/xBitMap.scar}
{.include srl/srl/extended/xAutoTalk.scar}
{.include srl/srl/extended/xAntiBan.scar}
{ --- Mons. Variables --- }
var MonsterString1, MonsterString2,MonsterString3:String;
MonstersColor1,MonstersColor2,MonstersColor3,MonstersColor4:Integer;
{ --- Misc. variables --- }
var KTMx, KTMy : Integer;
Starter2 : Boolean;
{ --- Food Variables --- }
var Swordfish,Lobster,Tuna,Salmon,Trout,Herring,Sardine:Integer;
ShrimpOrAnchovies,Chicken,Meat:Integer;
FOODDTM:Integer;
{ --- Form Variables --- }
var
frmDesign : TForm;
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Label5 : TLabel;
Label7 : TLabel;
Label8 : TLabel;
lblUser : String;
gbControl : TGroupBox;
btnBack : TButton;
btnNext : TButton;
btnCreate : TButton;
btnDelete : TButton;
edUser : TEdit;
edPass : TEdit;
edLocation : TEdit;
edNick : TEdit;
cbActive : TComboBox;
GroupBox11 : TGroupBox;
Label9 : TLabel;
ToKill : TEdit;
ComboBox2 : TComboBox;
ComboBox3 : TComboBox;
GroupBox1 : TGroupBox;
GroupBox2 : TGroupBox;
Label6 : TLabel;
Label10 : TLabel;
ComboBox1 : TComboBox;
Edit1 : TEdit;
cUser : Integer;
Button1 : TButton;
{------------------------------------------------------------------------------}
{ --- DeclarePlayers --- }
{------------------------------------------------------------------------------}
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //name
Players[0].Pass := ''; //pass
Players[0].Nick := ''; //nick
Players[0].Active := True;//true/false
Players[0].String1 := ''; //food
Players[0].String2 := ''; //mode
Players[0].String3 := ''; //monster
Players[0].Integer1 := 0; //tokill
Players[0].Integer2 := 0; //hp to eat(%)
end;
{------------------------------------------------------------------------------}
{--- FORM SETTINGS --- FORMS SETTINGS --- FORMS SETTINGS --- FORM SETTINGS --- }
{------------------------------------------------------------------------------}
procedure AddUser;
begin
SetArrayLength(Players, GetArrayLength(Players) + 1);
Players[GetArrayLength(Players) - 1].Name := '';
Players[GetArrayLength(Players) - 1].Pass := '';
Players[GetArrayLength(Players) - 1].Nick := '';
Players[GetArrayLength(Players) - 1].Active := True;
Players[GetArrayLength(Players) - 1].Loc := 'Dont Touch';
Players[GetArrayLength(Players) - 1].String1 := 'none';
Players[GetArrayLength(Players) - 1].String2 := 'none';
Players[GetArrayLength(Players) - 1].String3 := 'none';
Players[GetArrayLength(Players) - 1].Integer1 := 0;
Players[GetArrayLength(Players) - 1].Integer2 := 0;
end;
procedure Inititate(Sender: TObject);
begin
lblUser := IntToStr(cUser);
Players[cUser].Nick := edNick.Text;
Players[cUser].Name := edUser.Text;
Players[cUser].Pass := edPass.Text;
Players[cUser].Loc := edLocation.Text;
Players[cUser].String2 := ComboBox3.Text;
Players[cUser].String3 := ComboBox2.Text;
Players[cUser].Integer1 := strtoint(ToKill.Text);
Players[cUser].Integer2 := strtoint(Edit1.Text);
if (cbActive.Text = 'True') then
Players[cUser].Active := True
else
Players[cUser].Active := False;
cUser := GetArrayLength(Players) - 1;
end;
procedure CreateUser(Sender: TObject);
begin
Players[cUser].Nick := edNick.Text;
Players[cUser].Name := edUser.Text;
Players[cUser].Pass := edPass.Text;
Players[cUser].Loc := edLocation.Text;
Players[cUser].String2 := ComboBox3.Text;
Players[cUser].String3 := ComboBox2.Text;
Players[cUser].Integer1 := strtoint(ToKill.Text);
Players[cUser].Integer2 := strtoint(Edit1.Text);
if (cbActive.Text = 'True') then
Players[cUser].Active := True
else
Players[cUser].Active := False;
AddUser;
cUser := GetArrayLength(Players) - 1;
lblUser := IntToStr(cUser);
edLocation.Text := Players[cUser].Loc;
edNick.Text := Players[cUser].Nick;
edUser.Text := Players[cUser].Name;
edPass.Text := Players[cUser].Pass;
ComboBox3.Text := Players[cUser].String2;
ComboBox2.Text := Players[cUser].String3;
ToKill.Text := inttostr(Players[cUser].Integer1);
Edit1.Text := inttostr(Players[cUser].Integer2);
if (Players[cUser].Active) then
cbActive.Text := 'True'
else
cbActive.Text := 'False';
end;
procedure ForwardUser(Sender: TObject);
begin
Players[cUser].Nick := edNick.Text;
Players[cUser].Name := edUser.Text;
Players[cUser].Pass := edPass.Text;
Players[cUser].Loc := edLocation.Text;
Players[cUser].String2 := ComboBox3.Text;
Players[cUser].String3 := ComboBox2.Text;
Players[cUser].Integer1 := strtoint(ToKill.Text);
Players[cUser].Integer2 := strtoint(Edit1.Text);
if (cbActive.Text = 'True') then
Players[cUser].Active := True
else
Players[cUser].Active := False;
if (cUser + 1 > GetArrayLength(Players) - 1) then
cUser := 0
else
cUser := cUser + 1;
lblUser := IntToStr(cUser);
edLocation.Text := Players[cUser].Loc;
edNick.Text := Players[cUser].Nick;
edUser.Text := Players[cUser].Name;
edPass.Text := Players[cUser].Pass;
ComboBox1.Text := Players[cUser].String1;
ComboBox3.Text := Players[cUser].String2;
ComboBox2.Text := Players[cUser].String3;
ToKill.Text := inttostr(Players[cUser].Integer1);
Edit1.Text := inttostr(Players[cUser].Integer2);
if (Players[cUser].Active) then
cbActive.Text := 'True'
else
cbActive.Text := 'False';
end;
procedure BackUser(Sender: TObject);
begin
Players[cUser].Nick := edNick.Text;
Players[cUser].Name := edUser.Text;
Players[cUser].Pass := edPass.Text;
Players[cUser].Loc := edLocation.Text;
Players[cUser].String2 := ComboBox3.Text;
Players[cUser].String3 := ComboBox2.Text;
Players[cUser].String1 := ComboBox1.Text;
Players[cUser].Integer1 := strtoint(ToKill.Text);
Players[cUser].Integer2 := strtoint(Edit1.Text);
if (cbActive.Text = 'True') then
Players[cUser].Active := True
else
Players[cUser].Active := False;
if (cUser - 1 < 0) then
cUser := GetArrayLength(Players) - 1
else
cUser := cUser - 1;
lblUser := IntToStr(cUser);
edLocation.Text := Players[cUser].Loc;
edNick.Text := Players[cUser].Nick;
edUser.Text := Players[cUser].Name;
edPass.Text := Players[cUser].Pass;
ComboBox1.Text := Players[cUser].String1;
ComboBox3.Text := Players[cUser].String2;
ComboBox2.Text := Players[cUser].String3;
ToKill.Text := inttostr(Players[cUser].Integer1);
Edit1.Text := inttostr(Players[cUser].Integer2);
if (Players[cUser].Active) then
cbActive.Text := 'True'
else
cbActive.Text := 'False';
end;
procedure DeleteUser(Sender: TObject);
var
lo, na, ni, ex, ec,e2: string;
ac: Boolean;
ab,sb: Integer;
begin
lo := Players[GetArrayLength(Players) - 1].Loc;
na := Players[GetArrayLength(Players) - 1].Name;
ni := Players[GetArrayLength(Players) - 1].Nick;
ac := Players[GetArrayLength(Players) - 1].Active;
e2 := Players[GetArrayLength(Players) - 1].String2;
ex := Players[GetArrayLength(Players) - 1].String2;
ec := Players[GetArrayLength(Players) - 1].String3;
ab := Players[GetArrayLength(Players) - 1].Integer1;
sb := Players[GetArrayLength(Players) - 1].Integer2;
Players[cUser].Loc := lo;
Players[cUser].Name := na;
Players[cUser].Nick := ni;
Players[cUser].Active := ac;
Players[cUser].String2 := ex;
Players[cUser].String3 := ec;
Players[cUser].Integer1 := ab;
SetArrayLength(Players, GetArrayLength(Players) - 1);
if (cUser + 1 > GetArrayLength(Players) - 1) then
cUser := 0
else
cUser := cUser + 1;
lblUser := IntToStr(cUser);
edLocation.Text := Players[cUser].Loc;
edNick.Text := Players[cUser].Nick;
edUser.Text := Players[cUser].Name;
edPass.Text := Players[cUser].Pass;
ComboBox1.Text := Players[cUser].String1;
ComboBox2.Text := Players[cUser].String3;
ComboBox3.Text := Players[cUser].String2;
ToKill.Text := inttostr(Players[cUser].Integer1);
Edit1.Text := inttostr(Players[cUser].Integer2);
if (Players[cUser].Active) then
cbActive.Text := 'True'
else
cbActive.Text := 'False';
end;
procedure Start(Sender: TObject);
begin
lblUser := IntToStr(cUser);
edLocation.Text := Players[cUser].Loc;
edNick.Text := Players[cUser].Nick;
edUser.Text := Players[cUser].Name;
edPass.Text := Players[cUser].Pass;
ComboBox1.Text := Players[cUser].String1;
ComboBox2.Text := Players[cUser].String3;
ComboBox3.Text := Players[cUser].String2;
ToKill.Text := inttostr(Players[cUser].Integer1);
Edit1.Text := inttostr(Players[cUser].Integer2);
if (Players[cUser].Active) then
cbActive.Text := 'True'
else
cbActive.Text := 'False';
end;
procedure Starter(Sender: TObject);
begin
Writeln('Starting Script, Please Wait.');
Starter2 := True;
frmDesign.ModalResult:= mrOk;
end;
procedure LoadForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 453;
frmDesign.Top := 212;
frmDesign.Width := 310;
frmDesign.Height := 429;
frmDesign.BorderIcons := [biSystemMenu];
frmDesign.Caption := 'Ultimate Ranger For DIVI By XxtOmxX';
frmDesign.Color := clBtnFace;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'MS Sans Serif';
frmDesign.Font.Style := [fsBold];
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;
frmDesign.OnShow := @Start;
GroupBox1 := TGroupBox.Create(frmDesign);
GroupBox1.Parent := frmDesign;
GroupBox1.Left := 16;
GroupBox1.Top := 8;
GroupBox1.Width := 272;
GroupBox1.Height := 142;
GroupBox1.Caption := 'Player Settings';
GroupBox1.TabOrder := 13;
GroupBox2 := TGroupBox.Create(frmDesign);
GroupBox2.Parent := frmDesign;
GroupBox2.Left := 16;
GroupBox2.Top := 250;
GroupBox2.Width := 272;
GroupBox2.Height := 70;
GroupBox2.Caption := 'Food and HP Settings';
GroupBox2.TabOrder := 14;
GroupBox11 := TGroupBox.Create(frmDesign);
GroupBox11.Parent := frmDesign;
GroupBox11.Left := 16;
GroupBox11.Top := 155;
GroupBox11.Width := 272;
GroupBox11.Height := 91;
GroupBox11.Caption := 'Fighting Settings';
GroupBox11.TabOrder := 11;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 25;
Label1.Top := 23;
Label1.Width := 85;
Label1.Height := 13;
Label1.Caption := 'Username :';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 25;
Label2.Top := 50;
Label2.Width := 87;
Label2.Height := 13;
Label2.Caption := 'Password :';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 25;
Label3.Top := 79;
Label3.Width := 86;
Label3.Height := 13;
Label3.Caption := 'Location :';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 25;
Label4.Top := 105;
Label4.Width := 87;
Label4.Height := 13;
Label4.Caption := 'Nick :';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 25;
Label5.Top := 131;
Label5.Width := 89;
Label5.Height := 13;
Label5.Caption := 'Active :';
Label7 := TLabel.Create(frmDesign);
Label7.Parent := frmDesign;
Label7.Left := 26;
Label7.Top := 175;
Label7.Width := 94;
Label7.Height := 13;
Label7.Caption := 'Attack Style :';
Label7.Font.Color := clWindowText;
Label7.Font.Height := -11;
Label7.Font.Name := 'MS Sans Serif';
Label7.Font.Style := [fsBold];
Label7.ParentFont := False;
Label8 := TLabel.Create(frmDesign);
Label8.Parent := frmDesign;
Label8.Left := 26;
Label8.Top := 199;
Label8.Width := 94;
Label8.Height := 13;
Label8.Caption := 'Monster To Kill :';
Label8.Font.Color := clWindowText;
Label8.Font.Height := -11;
Label8.Font.Name := 'MS Sans Serif';
Label8.Font.Style := [fsBold];
Label8.ParentFont := False;
gbControl := TGroupBox.Create(frmDesign);
gbControl.Parent := frmDesign;
gbControl.Left := 16;
gbControl.Top := 324;
gbControl.Width := 272;
gbControl.Height := 58;
gbControl.Caption := ' Control ';
gbControl.TabOrder := 3;
btnBack := TButton.Create(frmDesign);
btnBack.Parent := frmDesign;
btnBack.Left := 25;
btnBack.Top := 345;
btnBack.Width := 45;
btnBack.Height := 25;
btnBack.Caption := '<';
btnBack.TabOrder := 4;
btnBack.OnClick := @BackUser;
btnNext := TButton.Create(frmDesign);
btnNext.Parent := frmDesign;
btnNext.Left := 235;
btnNext.Top := 345;
btnNext.Width := 45;
btnNext.Height := 25;
btnNext.Caption := '>';
btnNext.TabOrder := 5;
btnNext.OnClick := @ForwardUser;
btnCreate := TButton.Create(frmDesign);
btnCreate.Parent := frmDesign;
btnCreate.Left := 155;
btnCreate.Top := 345;
btnCreate.Width := 75;
btnCreate.Height := 25;
btnCreate.Caption := 'Create';
btnCreate.TabOrder := 6;
btnCreate.OnClick := @CreateUser;
btnDelete := TButton.Create(frmDesign);
btnDelete.Parent := frmDesign;
btnDelete.Left := 75;
btnDelete.Top := 345;
btnDelete.Width := 75;
btnDelete.Height := 25;
btnDelete.Caption := 'Delete';
btnDelete.TabOrder := 7;
btnDelete.OnClick := @DeleteUser;
edUser := TEdit.Create(frmDesign);
edUser.Parent := frmDesign;
edUser.Left := 125;
edUser.Top := 20;
edUser.Width := 145;
edUser.Height := 21;
edUser.TabOrder := 1;
edUser.Text := 'Name Here';
edPass := TEdit.Create(frmDesign);
edPass.Parent := frmDesign;
edPass.Left := 125;
edPass.Top := 47;
edPass.Width := 145;
edPass.Height := 21;
edPass.TabOrder := 2;
edPass.Text := 'Pass Here';
edLocation := TEdit.Create(frmDesign);
edLocation.Parent := frmDesign;
edLocation.Left := 125;
edLocation.Top := 75;
edLocation.Width := 145;
edLocation.Height := 21;
edLocation.TabOrder := 4;
edLocation.Text := 'Dont Touch';
edNick := TEdit.Create(frmDesign);
edNick.Parent := frmDesign;
edNick.Left := 125;
edNick.Top := 102;
edNick.Width := 145;
edNick.Height := 21;
edNick.TabOrder := 3;
edNick.Text := 'Nick Here';
cbActive := TComboBox.Create(frmDesign);
cbActive.Parent := frmDesign;
cbActive.Left := 125;
cbActive.Top := 129;
cbActive.Width := 145;
cbActive.Height := 21;
cbActive.DropDownCount := 2;
cbActive.ItemHeight := 13;
cbActive.TabOrder := 10;
cbActive.Text := 'True';
cbActive.Items.Add('True');
cbActive.Items.Add('False');
Label9 := TLabel.Create(GroupBox11);
Label9.Parent := GroupBox11;
Label9.Left := 10;
Label9.Top := 69;
Label9.Width := 96;
Label9.Height := 13;
Label9.Caption := 'Monsters To Kill:';
ToKill := TEdit.Create(GroupBox11);
ToKill.Parent := GroupBox11;
ToKill.Left := 110;
ToKill.Top := 64;
ToKill.Width := 145;
ToKill.Height := 21;
ToKill.TabOrder := 0;
ToKill.Text := '0';
ComboBox2 := TComboBox.Create(frmDesign);
ComboBox2.Parent := frmDesign;
ComboBox2.Left := 126;
ComboBox2.Top := 195;
ComboBox2.Width := 145;
ComboBox2.Height := 21;
ComboBox2.ItemHeight := 13;
ComboBox2.TabOrder := 12;
ComboBox2.Text := 'none';
ComboBox2.Items.Add('Barbarian');
ComboBox2.Items.Add('Chicken');
ComboBox2.Items.Add('Goblin');
ComboBox2.Items.Add('Cow');
ComboBox2.Items.Add('Guard');
ComboBox2.Items.Add('Rat');
ComboBox2.Items.Add('Duck');
ComboBox2.Items.Add('Giant Rat');
ComboBox2.Items.Add('Scorpion');
ComboBox2.Items.Add('Zombie');
ComboBox2.Items.Add('Skeleton');
ComboBox2.Items.Add('Grizly Bear');
ComboBox2.Items.Add('Giant Spider');
ComboBox2.Items.Add('Deadly Red Spider');
ComboBox2.Items.Add('Moss Giant');
ComboBox3 := TComboBox.Create(frmDesign);
ComboBox3.Parent := frmDesign;
ComboBox3.Left := 126;
ComboBox3.Top := 171;
ComboBox3.Width := 145;
ComboBox3.Height := 21;
ComboBox3.ItemHeight := 13;
ComboBox3.TabOrder := 99;
ComboBox3.Text := 'none';
ComboBox3.Items.Add('Accurate');
ComboBox3.Items.Add('Rapid');
ComboBox3.Items.Add('Longrange');
Label6 := TLabel.Create(GroupBox2);
Label6.Parent := GroupBox2;
Label6.Left := 10;
Label6.Top := 20;
Label6.Width := 95;
Label6.Height := 13;
Label6.Caption := 'Food To Eat :';
Label10 := TLabel.Create(GroupBox2);
Label10.Parent := GroupBox2;
Label10.Left := 10;
Label10.Top := 46;
Label10.Width := 93;
Label10.Height := 13;
Label10.Caption := 'HP To Eat (%) :';
ComboBox1 := TComboBox.Create(GroupBox2);
ComboBox1.Parent := GroupBox2;
ComboBox1.Left := 110;
ComboBox1.Top := 17;
ComboBox1.Width := 145;
ComboBox1.Height := 21;
ComboBox1.ItemHeight := 13;
ComboBox1.TabOrder := 0;
ComboBox1.Text := 'none';
ComboBox1.Items.Add('Swordfish');
ComboBox1.Items.Add('Lobster');
ComboBox1.Items.Add('Tuna');
ComboBox1.Items.Add('Salmon');
ComboBox1.Items.Add('Trout');
ComboBox1.Items.Add('Herring');
ComboBox1.Items.Add('Sardine');
ComboBox1.Items.Add('ShrimpOrAnchovies');
ComboBox1.Items.Add('Chicken');
ComboBox1.Items.Add('Meat');
Edit1 := TEdit.Create(GroupBox2);
Edit1.Parent := GroupBox2;
Edit1.Left := 110;
Edit1.Top := 43;
Edit1.Width := 144;
Edit1.Height := 21;
Edit1.TabOrder := 1;
Edit1.Text := '0';
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 114;
Button1.Top := 390;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Start';
Button1.TabOrder := 23;
Button1.OnClick := @Starter;
end;
procedure TheForm;
var
v: TVariantArray;
begin
SetArrayLength(V, 0);
ThreadSafeCall('LoadForm', v);
end;
procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;
procedure TehForm;
var
v: TVariantArray;
begin
SetArrayLength(V, 0);
ThreadSafeCall('ShowFormModal', v);
end;
{------------------------------------------------------------------------------}
{---- SetupMonsters by XxtOmxX ------------------------------------------------}
{------------------------------------------------------------------------------}
procedure SetupMonsters;
begin
if(Players[CurrentPlayer].String3='none')then
begin
Writeln('Invalid Monster Name, please setup the script again!')
TerminateScript;
end else
if(Players[CurrentPlayer].String3='Barbarian')then
begin
MonsterString1 := 'arba';
MonsterString2 := 'barian';
MonsterString3 := 'Barba';
MonstersColor1 := 6324905;
MonstersColor2 := 928900;
MonstersColor3 := 4605516;
MonstersColor4 := 7440783;
end else
if(Players[CurrentPlayer].String3='Chicken')then
begin
MonsterString1 := 'hicke';
MonsterString2 := 'icken';
MonsterString3 := 'Chick';
MonstersColor1 := 5095895;
MonstersColor2 := 5095895;
MonstersColor3 := 2375248;
MonstersColor4 := 5665152;
end else
if(Players[CurrentPlayer].String3='Goblin')then
begin
MonsterString1 := 'gob';
MonsterString2 := 'lin';
MonsterString3 := 'bli';
MonstersColor1 := 595305;
MonstersColor2 := 950379;
MonstersColor3 := 615508;
MonstersColor4 := 3622497;
end else
if(Players[CurrentPlayer].String3='Cow')then
begin
MonsterString1 := 'ow';
MonsterString2 := 'Cow';
MonsterString3 := 'ow';
MonstersColor1 := 4607322;
MonstersColor2 := 9278360;
MonstersColor3 := 11778236;
MonstersColor4 := 5265508;
end else
if(Players[CurrentPlayer].String3='Guard')then
begin
MonsterString1 := 'Gua';
MonsterString2 := 'ard';
MonsterString3 := 'uar';
MonstersColor1 := 2702396;
MonstersColor2 := 1625037;
MonstersColor3 := 6193061;
MonstersColor4 := 1122456;
end else
if(Players[CurrentPlayer].String3='Rat')then
begin
MonsterString1 := 'Ra';
MonsterString2 := 'Rat';
MonsterString3 := 'at';
MonstersColor1 := 6650774;
MonstersColor2 := 5927281;
MonstersColor3 := 6322296;
MonstersColor4 := 6650774;
end else
if(Players[CurrentPlayer].String3='Duck')then
begin
MonsterString1 := 'Duc';
MonsterString2 := 'uck';
MonsterString3 := 'Duck';
MonstersColor1 := 3166570;
MonstersColor2 := 10263720;
MonstersColor3 := 2505004;
MonstersColor4 := 1827557;
end else
if(Players[CurrentPlayer].String3='Giant Rat')then
begin
MonsterString1 := 'Gia';
MonsterString2 := 'rat';
MonsterString3 := 'ant';
MonstersColor1 := 9279640;
MonstersColor2 := 9279640;
MonstersColor3 := 9279640;
MonstersColor4 := 9279640;
end else
if(Players[CurrentPlayer].String3='Scorpion')then
begin
MonsterString1 := 'Scor';
MonsterString2 := 'pion';
MonsterString3 := 'orpi';
MonstersColor1 := 3035523;
MonstersColor2 := 4745628;
MonstersColor3 := 3035523;
MonstersColor4 := 2900579;
end else
if(Players[CurrentPlayer].String3='Zombie')then
begin
MonsterString1 := 'Zom';
MonsterString2 := 'bie';
MonsterString3 := 'mbi';
MonstersColor1 := 9274253;
MonstersColor2 := 9142667;
MonstersColor3 := 2509908;
MonstersColor4 := 11839924;
end else
if(Players[CurrentPlayer].String3='Skeleton')then
begin
MonsterString1 := 'Ske';
MonsterString2 := 'let';
MonsterString3 := 'ton';
MonstersColor1 := 1122383;
MonstersColor2 := 5264982;
MonstersColor3 := 4605516;
MonstersColor4 := 1576462;
end else
if(Players[CurrentPlayer].String3='Grizly Bear')then
begin
MonsterString1 := 'Gri';
MonsterString2 := 'zly';
MonsterString3 := 'ear';
MonstersColor1 := 3821398;
MonstersColor2 := 3030596;
MonstersColor3 := 3162696;
MonstersColor4 := 1587014;
end else
if(Players[CurrentPlayer].String3='Giant Spider')then
begin
MonsterString1 := 'Gia';
MonsterString2 := 'spi';
MonsterString3 := 'der';
MonstersColor1 := 1142933;
MonstersColor2 := 605768;
MonstersColor3 := 1142933;
MonstersColor4 := 605768;
end else
if(Players[CurrentPlayer].String3='Deadly Red Spider')then
begin
MonsterString1 := 'Dead';
MonsterString2 := 'red';
MonsterString3 := 'ider';
MonstersColor1 := 1902939;
MonstersColor2 := 3942697;
MonstersColor3 := 4146864;
MonstersColor4 := 5463268;
end else
if(Players[CurrentPlayer].String3='Moss Giant')then
begin
MonsterString1 := 'Moss';
MonsterString2 := 'ian';
MonsterString3 := 'oss';
MonstersColor1 := 2907004;
MonstersColor2 := 5272949;
MonstersColor3 := 4157553;
MonstersColor4 := 5467259;
end;
end;
{------------------------------------------------------------------------------}
{ --- LoadFoodDTMs by XxtOmxX ------------------------------------------------ }
{------------------------------------------------------------------------------}
procedure LoadFoodDTMs;
begin
Swordfish := DTMFromString('78DA633CC6C4C020C7C8800A189148207D08A' +
'84699809AFD40351A04D4EC06AA3124A0663B508D2511761132E7' +
'30508D1E0135A7806AB409A8B90C54A34B40CD05A01A4D026ACE1' +
'01186C7816A14F0AB01004F5D0B7A');
Lobster := DTMFromString('78DA6374666260B8C7800242BCACC1342394C' +
'FE80F54738D010D30A2AA0905AAB949404D3050CD6D026A02816A' +
'9E13500372CF63026A02806A3E1050E349841A17A09A3704D4580' +
'1D5BC22420D217FD910F6170042C70F2E');
Tuna := DTMFromString('78DA632C64626050666440058C482490CE05A' +
'AD124A0260DA8469F809A14A01A73026A32806A2C09A8C927424D' +
'29508D2901359540350604D43400D5E81150530B54A3865F0D00D' +
'AE50684');
Salmon := DTMFromString('78DA632C626260B8C38006189148209D0554F' +
'38C809A14A09AB704D46400D57C20A0A600A8E61D01352544A8A9' +
'04AA794A404D1D50CD0322D4DC2342CD2D026A6A816A6E1050530' +
'A54F30855C57C33415435F99871B1D14614450D00643F13A0');
Trout := DTMFromString('78DA639CC3C4C07087010D302291407A1A50C' +
'D13026AFA816A5E1150D30754F38E809AA940351F08A801B9F93D' +
'0135F388B06B1E116E5E0954F380809AE540357789507383809A0' +
'540358F5155E4474760C6C54B5435F59969286A00820A1649');
Herring := DTMFromString('78DA63AC61626070656440058C4824902E01A' +
'AF125A02607A8C68F809A54A09A6022D4441150930954134D404D' +
'11504D240135A54035A104D45400D50411505307541388AAA6293' +
'B1D554D0DE1F00100661F0A05');
Sardine := DTMFromString('78DA633CC9C4C0E0C1C8800A189148207D0CA' +
'8C697809A0340358104D4EC03AA0923A0E620504D3811EE0925A0' +
'E60411EE390B54E34740CD0522FC7E0AA8C613BF1A0074E40B1D');
ShrimpOrAnchovies := DTMFromString('78DA633CC3C4C0F09F010D30229140FA12500' +
'D13237E3557806AD818099BC34D40CD05A01A2E026ACE02D5F013' +
'507304A8468C809ABD40354204D46C07AAE120A06637500D23013' +
'5078830E710508D001176F1A0AA31505040510300A0730C4E');
Chicken := DTMFromString('78DA639CCFC4C0A0C8C8800A189148203D07A' +
'84685809A594035AA04D44C01AAD124A06602508D0101357D4035' +
'C64498634640CD54A01A0B026A1603D598A2AA6909E04355B31CA' +
'8C68880392B816A74F1AB0100858409BB');
Meat := DTMFromString('78DA630C60626070626440058C482490F601A' +
'A7143553331D205558D07508D3701731C806AFC08A8B106AA0924' +
'424D3801357640353104D43803D5C41150E30E54134F404D20504' +
'D2801356140359E04D47861864F8D0F1F8A1A005176096C');
end;
{------------------------------------------------------------------------------}
{ --- FreeFoodDTMs by XxtOmxX ------------------------------------------------ }
{------------------------------------------------------------------------------}
procedure FreeFoodDTMs;
begin
FreeDtm(Swordfish);
FreeDtm(Lobster);
FreeDtm(Tuna);
FreeDtm(Salmon);
FreeDtm(Trout);
FreeDtm(Herring);
FreeDtm(Sardine);
FreeDtm(ShrimpOrAnchovies);
FreeDtm(Chicken);
FreeDtm(Meat);
end;
procedure SetFood;
begin
case LowerCase(Players[CurrentPlayer].String1) of
'lobster' : FOODDTM := Lobster;
'swordfish' : FOODDTM := Swordfish;
'tuna' : FOODDTM := Tuna;
'salmon' : FOODDTM := Salmon;
'trout' : FOODDTM := Trout;
'herring' : FOODDTM := Herring;
'sardine' : FOODDTM := Sardine;
'shrimp' : FOODDTM := ShrimpOrAnchovies;
'anchovies' : FOODDTM := ShrimpOrAnchovies;
'chicken' : FOODDTM := Chicken;
'meat' : FOODDTM := Meat;
end;
end;
procedure EatProcedure;
begin
GameTab(4)
if(FindDtm(FOODDTM,x,y,MIX1,MIY1,MIX2,MIY2))then
begin
Mouse(x,y,2,2,true)
Wait(217)
ClearDebug;
Writeln('Ate food')
Status('Ate food')
end;
end;
procedure CheckHp;
begin
if(HpPercent<Players[CurrentPlayer].Integer2)then
begin
EatProcedure;
end;
end;
{------------------------------------------------------------------------------}
{ --- FindObjColorsInMS by The Nerd & inSane (Modified by XxtOmxX) ----------- }
{------------------------------------------------------------------------------}
Function FindObjColorsInMS(var x,y:Integer;Text1,Text2,Text3:String;
Color1,Color2,Color3,Color4,Tol,BoxSize:Integer):Boolean;
var
I, A , B, D ,E ,CX ,CY:Integer;
ColorPosx : Array [1..4] Of Integer;
ColorPosy : Array [1..4] Of Integer;
begin
Result := False;
If (FindColorTolerance(cx,cy,Color1,MSX1, MSY1, MSX2, MSY2, Tol)) Or
(FindColorTolerance(cx,cy,Color2,MSX1, MSY1, MSX2, MSY2, Tol)) Or
(FindColorTolerance(cx,cy,Color3,MSX1, MSY1, MSX2, MSY2, Tol)) Or
(FindColorTolerance(cx,cy,Color4,MSX1, MSY1, MSX2, MSY2, Tol)) Then
begin
D := 6;
E := D;
Repeat
For I := 1 To 4 Do
begin
ColorPosx[i] := MSCX;
ColorPosy[i] := MSCY;
end;
If (A = 1) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := MSCX;
ColorPosy[i] := ColorPosy[i] + D;
end;
end;
If (A = 2) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + (D div 2);
ColorPosy[i] := ColorPosy[i] + D;
end;
end;
If (A = 3) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + D;
ColorPosy[i] := ColorPosy[i] + D;
end;
end;
If (A = 4) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + D;
ColorPosy[i] := ColorPosy[i] + (D div 2);
end;
end;
If (A = 5) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + D;
ColorPosy[i] := ColorPosy[i] + (D div 4);
end;
end;
If (A = 6) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + D;
ColorPosy[i] := MSCY;
end;
end;
If (A = 7) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + D;
ColorPosy[i] := ColorPosy[i] - (D div 4);
end;
end;
If (A = 8) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + D;
ColorPosy[i] := ColorPosy[i] - (D div 2);
end;
end;
If (A = 9) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + D;
ColorPosy[i] := ColorPosy[i] - D;
end;
end;
If (A = 10) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] + (D div 2);
ColorPosy[i] := ColorPosy[i] - D;
end;
end;
If (A = 11) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := MSCX;
ColorPosy[i] := ColorPosy[i] - D;
end;
end;
If (A = 12) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - (D div 2);
ColorPosy[i] := ColorPosy[i] - D;
end;
end;
If (A = 13) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - D;
ColorPosy[i] := ColorPosy[i] - D;
end;
end;
If (A = 14) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - D;
ColorPosy[i] := ColorPosy[i] - (D div 2);
end;
end;
If (A = 15) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - D;
ColorPosy[i] := ColorPosy[i] - (D div 4);
end;
end;
If (A = 16) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - D;
ColorPosy[i] := MSCY;
end;
end;
If (A = 17) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - D;
ColorPosy[i] := ColorPosy[i] + (D div 4);
end;
end;
If (A = 18) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - D;
ColorPosy[i] := ColorPosy[i] + (D div 2);
end;
end;
If (A = 19) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - D;
ColorPosy[i] := ColorPosy[i] + D;
end;
end;
If (A = 20) Then
begin
For I := 1 To 4 Do
begin
ColorPosx[i] := ColorPosx[i] - (D div 2);
ColorPosy[i] := ColorPosy[i] + D;
end;
A := 0;
D := D + E;
end;
FindColorSpiralTolerance(ColorPosx[1],ColorPosy[1],
Color1,MSX1, MSY1, MSX2, MSY2, Tol)
FindColorSpiralTolerance(ColorPosx[2],ColorPosy[2],
Color2,MSX1, MSY1, MSX2, MSY2, Tol)
FindColorSpiralTolerance(ColorPosx[3],ColorPosy[3],
Color3,MSX1, MSY1, MSX2, MSY2, Tol)
FindColorSpiralTolerance(ColorPosx[4],ColorPosy[4],
Color3,MSX1, MSY1, MSX2, MSY2, Tol)
If ((ColorPosx[1] - ColorPosx[2] < BoxSize) Or
(ColorPosx[1] - ColorPosx[2] > -BoxSize)) And
((ColorPosy[1] - ColorPosy[2] < BoxSize) Or
(ColorPosy[1] - ColorPosy[2] > -BoxSize)) Then
begin
If ((ColorPosx[2] - ColorPosx[3] < BoxSize) Or
(ColorPosx[2] - ColorPosx[3] > -BoxSize)) And
((ColorPosy[2] - ColorPosy[3] < BoxSize) Or
(ColorPosy[2] - ColorPosy[3] > -BoxSize)) Then
begin
If ((ColorPosx[3] - ColorPosx[4] < BoxSize) Or
(ColorPosx[3] - ColorPosx[4] > -BoxSize)) And
((ColorPosy[3] - ColorPosy[4] < BoxSize) Or
(ColorPosy[3] - ColorPosy[4] > -BoxSize)) Then
begin
If ((ColorPosx[3] - ColorPosx[1] < BoxSize) Or
(ColorPosx[3] - ColorPosx[1] > -BoxSize)) And
((ColorPosy[3] - ColorPosy[1] < BoxSize) Or
(ColorPosy[3] - ColorPosy[1] > -BoxSize)) Then
begin
If ((ColorPosx[4] - ColorPosx[1] < BoxSize) Or
(ColorPosx[4] - ColorPosx[1] > -BoxSize)) And
((ColorPosy[4] - ColorPosy[1] < BoxSize) Or
(ColorPosy[4] - ColorPosy[1] > -BoxSize)) Then
begin
If ((ColorPosx[4] - ColorPosx[2] < BoxSize) Or
(ColorPosx[4] - ColorPosx[2] > -BoxSize)) And
((ColorPosy[4] - ColorPosy[2] < BoxSize) Or
(ColorPosy[4] - ColorPosy[2] > -BoxSize)) Then
begin
MMouse(ColorPosx[1],ColorPosy[1],3,3);
Wait(100);
If (IsUpTextMulti(Text1,Text2,Text3)) Then
begin
Result := True;
Sleep(1);
getmousepos(x,y);
end;
end;
end;
end;
end;
end;
end;
A := A + 1;
B := B + 1;
Until (Result = True) Or (B > ((MSCX * 20) / E) )
end;
end;
{------------------------------------------------------------------------------}
{ --- FindRandoms by WT-Fakawi (i think :) ) ----------------------------------}
{------------------------------------------------------------------------------}
procedure FindRandoms;
begin
if ( not ( LoggedIn )) then Exit;
RC;
if ( not ( UseBoxSolver )) then
if FindNewBox and
not ( GambleNewBox ) then
begin
Players[CurrentPlayer].loc := 'NewBox';
Logout;
Exit;
end;
if InBlack then
begin
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
Wait(1);
if NoGameTab then
begin
Players[CurrentPlayer].loc := 'GameTab';
Logout;
Exit;
end;
FindNormalRandoms;
Wait(1);
end;
{------------------------------------------------------------------------------}
{ --- FindFastRandoms by WT-Fakawi ------------------------------------------- }
{------------------------------------------------------------------------------}
Function FindFastRandoms: Boolean;
var
i: Integer;
begin
for i:=1 to 8 do
begin
case I of
1: If FindDead then
Result := True;
2: If FindMod then
Result := True;
3: If FindMime then
Result := True;
4: If FindMaze then
Result := True;
5: If FindQuiz then
Result := True;
6: If FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
8: begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
end;
wait(1);
end;
end;
{------------------------------------------------------------------------------}
{---- ChooseOptionMulti (Modified from ChooseOption by inSane (banned, so i ---}
{---- dont know if this is good, but it works)) -------------------------------}
{------------------------------------------------------------------------------}
function ChooseOptionMulti(x, y: Integer; txt,
txt2, txt3: string): Boolean;
var x1, y1, x2, y2, LeftCorner, RightCorner: Integer;
begin
LeftCorner := BitmapFromString(4, 4, 'z78DA33753135313137C5' +
'411A600064715CEA914500CACE13F0');
RightCorner := BitmapFromString(4, 4, 'z78DA33753135313137' +
'C5200D30002E35F8C501C9C013F0');
if(FindBitmap(LeftCorner, x1, y1))and(FindBitmap(RightCorner, x2, y2))then
begin
if(FindText(x, y, txt, upchars, x1, y1, x2, 502))and
(FindText(x, y, txt2, upchars, x1, y1, x2, 502))and
(FindText(x, y, txt3, upchars, x1, y1, x2, 502))then
begin
Result := True;
Mouse(x + Length(txt) * 3, y + 3, 2, 2, True);
end else
if(FindText(x, y, 'Cancel', upchars, x1, y1, x2, 502))then
Mouse(x + 9, y + 3, 2, 2, True);
end;
FreeBitmap(LeftCorner);
FreeBitmap(RightCorner);
end;
{------------------------------------------------------------------------------}
{ --- Arrow picking by XxtOmxX --- }
{------------------------------------------------------------------------------}
function PickUpTheArrows: Boolean;
var Arrow, TakeArrows, PickedArrows, Xa, Ya: Integer;
begin
Arrow := DTMFromString('78DA63E467646038CE8002428D39185881345' +
'086E13F1000002D87056B');
TakeArrows := BitmapFromString(124, 3, 'z78DA3330C00EDC9000' +
'F1B2C488136F3231EA4701E5C0CDCDD2C0044A52224E2D35C488E' +
'32749F13BADD23979268C82D1748E2B3DD32E9D935AF652ABFC1F' +
'4DFFF449EDF8530EB5D2397E7BF1AB275E1C0200EA89C450');
if FindDTM(Arrow, Xa, Ya, MSX1, MSY1, MSX2, MSY2) then
begin
Status('Picking Arrows')
Mouse(xa,ya,0,0,false);
wait(100);
ChooseOptionMulti(x,y,'ke','rr','ow')
PickedArrows := PickedArrows +1;
Result := True;
Status('Arrows Picked')
FreeDtm(Arrow);
FreeBitmap(TakeArrows);
end
else
Result := False;
end;
{------------------------------------------------------------------------------}
{---- KillTheMonster by XxtOmxX -----------------------------------------------}
{------------------------------------------------------------------------------}
Function someoneelse: Boolean;
Begin
if(Pos('omeone',GetTextAtEx(20, 415, 0, SmallChars, False,False, 0, 1, 0, 80, False, tr_AllChars))<>0)then
Result:=True;
End;
Function cantreach: Boolean;
Begin
if(Pos('can',GetTextAtEx(20, 415, 0, SmallChars, False,False, 0, 1, 0, 80, False, tr_AllChars))<>0)then
Result:=True;
End;
procedure KillTheMonster;
begin
if(FindObjColorsInMS(KTMx,KTMy,MonsterString1,MonsterString2,
MonsterString3,MonstersColor1,MonstersColor2,MonstersColor3,
MonstersColor4,7,10))then
begin
Mouse(KTMx,KTMy,2,3,true);
Flag;
Wait(2512);
repeat
case random(5) of
0 : begin FindRandoms; Wait(1542+random(345)); end;
1 : begin CheckHp; Wait(2342+random(345)); end;
2 : begin FindNormalRandoms; Wait(842+random(345)); end;
3 : begin FindFastRandoms; Wait(2242+random(345)); end;
4 : begin AntiBan; Wait(942+random(345)); end;
end;
until((InFight=false)or(someoneelse=true)or(cantreach=true));
end;
end;
procedure SetupFightMode;
begin
case LowerCase(Players[CurrentPlayer].String2) of
'Accurate' : SetFightMode(1);
'Rapid' : SetFightMode(2);
'Longrange' : SetFightMode(3);
end;
end;
{------------------------------------------------------------------------------}
{ --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- }
{------------------------------------------------------------------------------}
begin
SetupSRL;
Starter2:=False;
LoadUs;
cUser:=0;
MouseSpeed:=7;
if(GetArrayLength(Players)=0)then
AddUser;
TheForm;
TehForm;
SaveUs;
if Starter2 = True then
begin
HowManyPlayers:=cUser;
repeat
LoginPlayer;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
SetupMonsters;
SetFood;
SetupFightMode;
repeat
MakeCompass('N');
HighestAngle;
KillTheMonster;
PickUpTheArrows;
// Calibrate; //added in next version.
// if AtLumby then
// KYABWalkBack(Players[CurrentPlayer].String3); //added after i am member :)
until(Players[CurrentPlayer].Integer2>=Players[CurrentPlayer].Integer3)
until(false)
end else
TerminateScript;
end.——————————————————
<!– END TEMPLATE: formanswers –>