Failed when compiling
Line 25: [Error] (14474:1): Identifier expected in script D:\Program Files\SCAR 3.11\Scripts\MiniMiner.scar
Well... For some reason I get this when my script looks fine. I know what it means, but not what's casing it.
SCAR Code:
{.Script Info:
# ScriptName = MiniMiner
# Author = r0b0t1
# Description = Mines with option to bank (at varrock east), and which ores.
# Version = 1.0
# Date =
# Comments = Player creating is alot like RsN's, but not many ways to do it.
/Script Info}
program MiniMiner;
{Fill in rotations and hit start!}
{.Include SRL/SRL.scar}
Const {you can use +Random(); to randomize}
Rotations=5; {How many times will it loop through players?}
Var RockColor: Integer;
Var
TerminateReason: String;
Type TRock = record
Name: String;
Color: Integer;
Var
Rock: Array [0..8] of TRock;
Label
TerminateLabel;
Var
frmDesign : TForm;
PageControl1 : TPageControl;
TabPages : Array [1..3] Of TTabSheet;
btnHelp : TButton;
chCustColors : TCheckBox;
chShwStatus : TCheckBox;
chExtReport : TCheckBox;
btnReportBug : TButton;
chAutoColor : TCheckBox;
btnChooseClr : TButton;
var
frmColorPick : TForm;
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Label5 : TLabel;
Label6 : TLabel;
Label7 : TLabel;
Label8 : TLabel;
Label9 : TLabel;
Edit1 : TEdit;
Edit2 : TEdit;
Edit3 : TEdit;
Edit4 : TEdit;
Edit5 : TEdit;
Edit6 : TEdit;
Edit7 : TEdit;
Edit8 : TEdit;
Edit9 : TEdit;
var
edUser : TEdit;
edPass : TEdit;
edNick : TEdit;
edLoc : TEdit;
cmbActive : TComboBox;
cmbPick : TComboBox;
cmbBank : TComboBox;
cmbRock : TComboBox;
btnPrev : TButton;
btnDelPlayer : TButton;
btnCreaPlayer : TButton;
btnNext : TButton;
edLoads : TEdit;
var
i : Integer; //Added this
cUser : Integer; //And this
Procedure AddPlayer;
begin;
SetArrayLength(Players, GetArrayLength(Players) + 1);
Players[GetArrayLength(Players) - 1].Name := 'Name';
Players[GetArrayLength(Players) - 1].Pass := 'Pass';
Players[GetArrayLength(Players) - 1].Nick := 'Nick';
Players[GetArrayLength(Players) - 1].Active := True;
Players[GetArrayLength(Players) - 1].Loc := 'Location';
Players[GetArrayLength(Players) - 1].String1 := 'Rock';
Players[GetArrayLength(Players) - 1].Integer1 := 0
Players[GetArrayLength(Players) - 1].Boolean1 := True; {Pick Wielded}
Players[GetArrayLength(Players) - 1].Boolean2 := True; {Bank If available}
end;
Procedure InitPlayers;
begin;
Players[cUser].Nick := edNick.Text;
Players[cUser].Name := edUser.Text;
Players[cUser].Pass := edPass.Text;
Players[cUser].Loc := edLoc.Text;
Players[cUser].Integer1:= StrToInt(edLoads.Text);
If (cmbActive.Text = 'True') Then
Players[cUser].Active:= True
else
Players[cUser].Active:= False;
{--------------------------------}
If (cmbPick.Text = 'True') Then
begin;
Players[cUser].Boolean1:= True;
end else
Players[cUser].Boolean1:= False;
{---------------------------------}
If (cmbBank.Text = 'True') Then
begin;
Players[cUser].Boolean2:= True;
end else
Players[cUser].Boolean2:= False;
{---------------------------------}
Case lowercase(cmbRock.Text) of
'tin': Players[cUser].String1:= 'tin';
'copper': Players[cUser].String1:= 'copper';
'iron': Players[cUser].String1:= 'iron';
'silver': Players[cUser].String1:= 'silver';
'coal': Players[cUser].String1:= 'coal';
'gold': Players[cUser].String1:= 'gold';
'mithril': Players[cUser].String1:= 'mithril';
'adamant': Players[cUser].String1:= 'adamant';
'runite': Players[cUser].String1:= 'runite';
end;
cUser := GetArrayLength(Players) - 1;
end;
Procedure CreatePlayer;
begin;
Players[cUser].Nick:= edNick.Text;
Players[cUser].Name:= edUser.Text;
Players[cUser].Pass:= edPass.Text;
Players[cUser].Loc:= edLoc.Text;
Players[cUser].Integer1:= StrToInt(edLoads.Text);
If (cmbActive.Text = 'True') Then
Players[cUser].Active:= True
else
Players[cUser].Active:= False;
{--------------------------------}
If (cmbPick.Text = 'True') Then
begin;
Players[cUser].Boolean1:= True;
end else
Players[cUser].Boolean1:= False;
{---------------------------------}
If (cmbBank.Text = 'True') Then
begin;
Players[cUser].Boolean2:= True;
end else
Players[cUser].Boolean2:= False;
{---------------------------------}
Case lowercase(cmbRock.Text) of
'tin': Players[cUser].String1:= 'tin';
'copper': Players[cUser].String1:= 'copper';
'iron': Players[cUser].String1:= 'iron';
'silver': Players[cUser].String1:= 'silver';
'coal': Players[cUser].String1:= 'coal';
'gold': Players[cUser].String1:= 'gold';
'mithril': Players[cUser].String1:= 'mithril';
'adamant': Players[cUser].String1:= 'adamant';
'runite': Players[cUser].String1:= 'runite';
end;
AddPlayer;
cUser := GetArrayLength(Players) - 1;
edLoc.Text:= Players[cUser].Loc;
edNick.Text:= Players[cUser].Nick;
edUser.Text:= Players[cUser].Name;
edPass.Text:= Players[cUser].Pass;
Players[cUser].Integer1 := StrToInt(edLoads.Text);
If (Players[cUser].Active) then
cmbActive.Text:= 'True'
else
cmbActive.Text:= 'False';
{--------------------------------}
If (Players[cUser].Boolean1) Then
begin;
cmbPick.Text:= 'True';
end else
cmbPick.Text:= 'False';
{---------------------------------}
If (Players[cUser].Boolean2) Then
begin;
cmbBank.Text:= 'True';
end else
cmbBank.Text:= 'False';
{---------------------------------}
Case lowercase(Players[cUser].String1) of
'tin': cmbRock.Text:= 'tin';
'copper': cmbRock.Text:= 'copper';
'iron': cmbRock.Text:= 'iron';
'silver': cmbRock.Text:= 'silver';
'coal': cmbRock.Text:= 'coal';
'gold': cmbRock.Text:= 'gold';
'mithril': cmbRock.Text:= 'mithril';
'adamant': cmbRock.Text:= 'adamant';
'runite': cmbRock.Text:= 'runite';
end;
end;
Procedure ForwardPlayer;
begin;
Players[cUser].Nick:= edNick.Text;
Players[cUser].Name:= edUser.Text;
Players[cUser].Pass:= edPass.Text;
Players[cUser].Loc:= edLoc.Text;
Players[cUser].Integer1:= StrToInt(edLoads.Text);
If (cmbActive.Text = 'True') Then
Players[cUser].Active:= True
else
Players[cUser].Active:= False;
{--------------------------------}
If (cmbPick.Text = 'True') Then
begin;
Players[cUser].Boolean1:= True;
end else
Players[cUser].Boolean1:= False;
{---------------------------------}
If (cmbBank.Text = 'True') Then
begin;
Players[cUser].Boolean2:= True;
end else
Players[cUser].Boolean2:= False;
{---------------------------------}
Case lowercase(cmbRock.Text) of
'tin': Players[cUser].String1:= 'tin';
'copper': Players[cUser].String1:= 'copper';
'iron': Players[cUser].String1:= 'iron';
'silver': Players[cUser].String1:= 'silver';
'coal': Players[cUser].String1:= 'coal';
'gold': Players[cUser].String1:= 'gold';
'mithril': Players[cUser].String1:= 'mithril';
'adamant': Players[cUser].String1:= 'adamant';
'runite': Players[cUser].String1:= 'runite';
end;
If (cUser + 1 > GetArrayLength(Players) - 1) Then
cUser := 0
else
cUser := cUser + 1;
edLoc.Text:= Players[cUser].Loc;
edNick.Text:= Players[cUser].Nick;
edUser.Text:= Players[cUser].Name;
edPass.Text:= Players[cUser].Pass;
Players[cUser].Integer1 := StrToInt(edLoads.Text);
If (Players[cUser].Active) then
cmbActive.Text:= 'True'
else
cmbActive.Text:= 'False';
{--------------------------------}
If (Players[cUser].Boolean1) Then
begin;
cmbPick.Text:= 'True';
end else
cmbPick.Text:= 'False';
{---------------------------------}
If (Players[cUser].Boolean2) Then
begin;
cmbBank.Text:= 'True';
end else
cmbBank.Text:= 'False';
{---------------------------------}
Case lowercase(Players[cUser].String1) of
'tin': cmbRock.Text:= 'tin';
'copper': cmbRock.Text:= 'copper';
'iron': cmbRock.Text:= 'iron';
'silver': cmbRock.Text:= 'silver';
'coal': cmbRock.Text:= 'coal';
'gold': cmbRock.Text:= 'gold';
'mithril': cmbRock.Text:= 'mithril';
'adamant': cmbRock.Text:= 'adamant';
'runite': cmbRock.Text:= 'runite';
end;
end;
Procedure BackPlayer;
begin;
Players[cUser].Nick:= edNick.Text;
Players[cUser].Name:= edUser.Text;
Players[cUser].Pass:= edPass.Text;
Players[cUser].Loc:= edLoc.Text;
Players[cUser].Integer1:= StrToInt(edLoads.Text);
If (cmbActive.Text = 'True') Then
Players[cUser].Active:= True
else
Players[cUser].Active:= False;
{--------------------------------}
If (cmbPick.Text = 'True') Then
begin;
Players[cUser].Boolean1:= True;
end else
Players[cUser].Boolean1:= False;
{---------------------------------}
If (cmbBank.Text = 'True') Then
begin;
Players[cUser].Boolean2:= True;
end else
Players[cUser].Boolean2:= False;
{---------------------------------}
Case lowercase(cmbRock.Text) of
'tin': Players[cUser].String1:= 'tin';
'copper': Players[cUser].String1:= 'copper';
'iron': Players[cUser].String1:= 'iron';
'silver': Players[cUser].String1:= 'silver';
'coal': Players[cUser].String1:= 'coal';
'gold': Players[cUser].String1:= 'gold';
'mithril': Players[cUser].String1:= 'mithril';
'adamant': Players[cUser].String1:= 'adamant';
'runite': Players[cUser].String1:= 'runite';
end;
If (cUser - 1 < 0) Then
cUser := GetArrayLength(Players) - 1
else
cUser := cUser - 1;
edLoc.Text:= Players[cUser].Loc;
edNick.Text:= Players[cUser].Nick;
edUser.Text:= Players[cUser].Name;
edPass.Text:= Players[cUser].Pass;
Players[cUser].Integer1:= StrToInt(edLoads.Text);
If (Players[cUser].Active) then
cmbActive.Text:= 'True'
else
cmbActive.Text:= 'False';
{--------------------------------}
If (Players[cUser].Boolean1) Then
begin;
cmbPick.Text:= 'True';
end else
cmbPick.Text:= 'False';
{---------------------------------}
If (Players[cUser].Boolean2) Then
begin;
cmbBank.Text:= 'True';
end else
cmbBank.Text:= 'False';
{---------------------------------}
Case lowercase(Players[cUser].String1) of
'tin': cmbRock.Text:= 'tin';
'copper': cmbRock.Text:= 'copper';
'iron': cmbRock.Text:= 'iron';
'silver': cmbRock.Text:= 'silver';
'coal': cmbRock.Text:= 'coal';
'gold': cmbRock.Text:= 'gold';
'mithril': cmbRock.Text:= 'mithril';
'adamant': cmbRock.Text:= 'adamant';
'runite': cmbRock.Text:= 'runite';
end;
end;
Procedure DeletePlayer(Sender: TObject);
var
lo, na, ni, ro: string;
ac, pic, ba: Boolean;
loa: 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;
loa := Players[GetArrayLength(Players) - 1].Integer1; {loads}
ro := Players[GetArrayLength(Players) - 1].String1; {Rock}
pic := Players[GetArrayLength(Players) - 1].Boolean1; {Pick wielded}
ba := Players[GetArrayLength(Players) - 1].Boolean2; {Bank}
Players[cUser].Loc := lo;
Players[cUser].Name := na;
Players[cUser].Nick := ni;
Players[cUser].Active := ac;
Players[cUser].Integer1 := loa; {Loads}
Players[cUser].String1 := ro; {Rock}
Players[cUser].Boolean1 := pic; {Pick Wielded}
Players[cUser].Boolean2 := ba; {Bank}
SetArrayLength(Players, GetArrayLength(Players) - 1);
if (cUser + 1 > GetArrayLength(Players) - 1) then
cUser := 0
else
cUser := cUser + 1;
edLoc.Text:= Players[cUser].Loc;
edNick.Text:= Players[cUser].Nick;
edUser.Text:= Players[cUser].Name;
edPass.Text:= Players[cUser].Pass;
Players[cUser].Integer1 := StrToInt(edLoads.Text);
If (Players[cUser].Active) then
cmbActive.Text:= 'True'
else
cmbActive.Text:= 'False';
{--------------------------------}
If (Players[cUser].Boolean1) Then
begin;
cmbPick.Text:= 'True';
end else
cmbPick.Text:= 'False';
{---------------------------------}
If (Players[cUser].Boolean2) Then
begin;
cmbBank.Text:= 'True';
end else
cmbBank.Text:= 'False';
{---------------------------------}
Case lowercase(Players[cUser].String1) of
'tin': cmbRock.Text:= 'tin';
'copper': cmbRock.Text:= 'copper';
'iron': cmbRock.Text:= 'iron';
'silver': cmbRock.Text:= 'silver';
'coal': cmbRock.Text:= 'coal';
'gold': cmbRock.Text:= 'gold';
'mithril': cmbRock.Text:= 'mithril';
'adamant': cmbRock.Text:= 'adamant';
'runite': cmbRock.Text:= 'runite';
end;
end;
Procedure StartPlayers2(Sender: TObject);
begin;
edLoc.Text := Players[cUser].Loc;
edNick.Text := Players[cUser].Nick;
edUser.Text := Players[cUser].Name;
edPass.Text := Players[cUser].Pass;
If (Players[cUser].Active) then
cmbActive.Text := 'True'
else
cmbActive.Text := 'False';
end;
Procedure GetHelp;
begin;;
OpenWebPage('http://www.villavu.com/forum/showthread.php?t=400');
end;
Procedure ReportBug;
begin;;
OpenWebPage('http://www.srl-forums.com/forum/private.php?do=newpm&u=4338');
end;
procedure CustomColor; forward;
Procedure ButtonClicks(Sender: TObject);
begin;;
Case Sender of
btnHelp: GetHelp;
btnReportBug: ReportBug;
btnChooseClr: CustomColor;
end;
end;
Procedure InitMainForm;
begin;;
frmDesign := CreateForm;
frmDesign.Left := 374;
frmDesign.Top := 116;
frmDesign.Width := 335;
frmDesign.Height := 289;
frmDesign.BorderStyle := bsSizeToolWin;
frmDesign.Caption := 'MiniMiner 1.0 by r0b0t1';
frmDesign.Color := clBtnFace;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'MS Sans Serif';
frmDesign.Font.Style := [];
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;
PageControl1 := TPageControl.Create(frmDesign);
PageControl1.Parent := frmDesign;
PageControl1.Align := alClient;
for i := 1 to 3 do // Amount of Tabs
begin;
TabPages[i] := TTabSheet.Create(frmDesign);
TabPages[i].PageControl := PageControl1; // We Must Identify are Page Control
end;
TabPages[1].Caption := 'Help'; // The Caption of the title
TabPages[2].Caption := 'Settings';
TabPages[3].Caption := 'Players';
{Tab 1 - "Help"}
btnHelp := TButton.Create(frmDesign);
btnHelp.Parent := TabPages[1];
btnHelp.Left := 100;
btnHelp.Top := 104;
btnHelp.Width := 109;
btnHelp.Height := 25;
btnHelp.Caption := 'Click For Help';
btnHelp.TabOrder := 1;
btnHelp.OnClick := @ButtonClicks;
{Tab 2 - "Settings"}
chCustColors := TCheckBox.Create(frmDesign);
chCustColors.Parent := TabPages[2];
chCustColors.Left := 34;
chCustColors.Top := 75;
chCustColors.Width := 97;
chCustColors.Height := 17;
chCustColors.Hint := 'Do you want to pick your own colors?';
chCustColors.Caption := 'Custom Colors';
chCustColors.ParentShowHint := False;
chCustColors.ShowHint := True;
chCustColors.TabOrder := 8;
chShwStatus := TCheckBox.Create(frmDesign);
chShwStatus.Parent := TabPages[2];
chShwStatus.Left := 34;
chShwStatus.Top := 139;
chShwStatus.Width := 97;
chShwStatus.Height := 17;
chShwStatus.Hint := 'Print status to debug box';
chShwStatus.Caption := 'Show status';
chShwStatus.ParentShowHint := False;
chShwStatus.ShowHint := True;
chShwStatus.TabOrder := 9;
chExtReport := TCheckBox.Create(frmDesign);
chExtReport.Parent := TabPages[2];
chExtReport.Left := 34;
chExtReport.Top := 107;
chExtReport.Width := 97;
chExtReport.Height := 17;
chExtReport.Hint := 'Useful for devs';
chExtReport.Caption := 'Extended Rep.';
chExtReport.Checked := True;
chExtReport.ParentShowHint := False;
chExtReport.ShowHint := True;
chExtReport.State := cbChecked;
chExtReport.TabOrder := 10;
btnReportBug := TButton.Create(frmDesign);
btnReportBug.Parent := TabPages[2];
btnReportBug.Left := 178;
btnReportBug.Top := 79;
btnReportBug.Width := 75;
btnReportBug.Height := 25;
btnReportBug.Caption := 'Report Bug';
btnReportBug.TabOrder := 11;
btnReportBug.OnClick := @ButtonClicks;
chAutoColor := TCheckBox.Create(frmDesign);
chAutoColor.Parent := TabPages[2];
chAutoColor.Left := 34;
chAutoColor.Top := 45;
chAutoColor.Width := 97;
chAutoColor.Height := 17;
chAutoColor.Hint := 'Automatic coloring';
chAutoColor.Caption := 'Use AutoColor';
chAutoColor.Checked := True;
chAutoColor.ParentShowHint := False;
chAutoColor.ShowHint := True;
chAutoColor.State := cbChecked;
chAutoColor.TabOrder := 12;
btnChooseClr := TButton.Create(frmDesign);
btnChooseClr.Parent := TabPages[2];
btnChooseClr.Left := 178;
btnChooseClr.Top := 119;
btnChooseClr.Width := 75;
btnChooseClr.Height := 25;
btnChooseClr.Caption := 'Choose colors';
btnChooseClr.Font.Color := clWindowText;
btnChooseClr.Font.Height := -11;
btnChooseClr.Font.Name := 'MS Sans Serif';
btnChooseClr.Font.Style := [];
btnChooseClr.ParentFont := False;
btnChooseClr.TabOrder := 13;
btnChooseClr.OnClick := @ButtonClicks;
{Tab 3 - "Players"}
edUser := TEdit.Create(frmDesign);
edUser.Parent := TabPages[3];
edUser.Left := 16;
edUser.Top := 32;
edUser.Width := 121;
edUser.Height := 21;
edUser.TabOrder := 8;
edUser.Text := 'Username';
edPass := TEdit.Create(frmDesign);
edPass.Parent := TabPages[3];
edPass.Left := 16;
edPass.Top := 56;
edPass.Width := 121;
edPass.Height := 21;
edPass.PasswordChar := '*';
edPass.TabOrder := 9;
edPass.Text := 'Password';
edNick := TEdit.Create(frmDesign);
edNick.Parent := TabPages[3];
edNick.Left := 16;
edNick.Top := 80;
edNick.Width := 121;
edNick.Height := 21;
edNick.TabOrder := 10;
edNick.Text := 'Nickname';
edLoc := TEdit.Create(frmDesign);
edLoc.Parent := TabPages[3];
edLoc.Left := 16;
edLoc.Top := 104;
edLoc.Width := 121;
edLoc.Height := 21;
edLoc.TabOrder := 11;
edLoc.Text := 'Location';
edLoads := TEdit.Create(frmDesign);
edLoads.Parent := TabPages[3];
edLoads.Left := 144;
edLoads.Top := 56;
edLoads.Width := 121;
edLoads.Height := 21;
edLoads.TabOrder := 20;
edLoads.Text := 'Loads';
cmbActive := TComboBox.Create(frmDesign);
cmbActive.Parent := TabPages[3];
cmbActive.Left := 16;
cmbActive.Top := 152;
cmbActive.Width := 121;
cmbActive.Height := 21;
cmbActive.ItemHeight := 13;
cmbActive.TabOrder := 12;
cmbActive.Text := 'Active';
cmbActive.Items.Add('True');
cmbActive.Items.Add('False');
cmbPick := TComboBox.Create(frmDesign);
cmbPick.Parent := TabPages[3];
cmbPick.Left := 16;
cmbPick.Top := 176;
cmbPick.Width := 121;
cmbPick.Height := 21;
cmbPick.ItemHeight := 13;
cmbPick.TabOrder := 13;
cmbPick.Text := 'Pick Wielded';
cmbPick.Items.Add('True');
cmbPick.Items.Add('False');
cmbBank := TComboBox.Create(frmDesign);
cmbBank.Parent := TabPages[3];
cmbBank.Left := 144;
cmbBank.Top := 32;
cmbBank.Width := 121;
cmbBank.Height := 21;
cmbBank.ItemHeight := 13;
cmbBank.TabOrder := 14;
cmbBank.Text := 'Bank (If available)';
cmbBank.Items.Add('True');
cmbBank.Items.Add('False');
cmbRock := TComboBox.Create(frmDesign);
cmbRock.Parent := TabPages[3];
cmbRock.Left := 16;
cmbRock.Top := 128;
cmbRock.Width := 121;
cmbRock.Height := 21;
cmbRock.ItemHeight := 13;
cmbRock.TabOrder := 15;
cmbRock.Text := 'Rock';
cmbRock.Items.Add('tin');
cmbRock.Items.Add('copper');
cmbRock.Items.Add('iron');
cmbRock.Items.Add('silver');
cmbRock.Items.Add('coal');
cmbRock.Items.Add('gold');
cmbRock.Items.Add('mithril');
cmbRock.Items.Add('adamant');
cmbRock.Items.Add('runite');
btnPrev := TButton.Create(frmDesign);
btnPrev.Parent := TabPages[3];
btnPrev.Left := 160;
btnPrev.Top := 92;
btnPrev.Width := 75;
btnPrev.Height := 25;
btnPrev.Caption := '<';
btnPrev.TabOrder := 16;
btnPrev.OnClick := @ButtonClicks;
btnDelPlayer := TButton.Create(frmDesign);
btnDelPlayer.Parent := TabPages[3];
btnDelPlayer.Left := 160;
btnDelPlayer.Top := 124;
btnDelPlayer.Width := 75;
btnDelPlayer.Height := 25;
btnDelPlayer.Caption := 'Delete Player';
btnDelPlayer.TabOrder := 17;
btnDelPlayer.OnClick := @ButtonClicks;
btnCreaPlayer := TButton.Create(frmDesign);
btnCreaPlayer.Parent := TabPages[3];
btnCreaPlayer.Left := 160;
btnCreaPlayer.Top := 156;
btnCreaPlayer.Width := 75;
btnCreaPlayer.Height := 25;
btnCreaPlayer.Caption := 'Create Player';
btnCreaPlayer.TabOrder := 18;
btnCreaPlayer.OnClick := @ButtonClicks;
btnNext := TButton.Create(frmDesign);
btnNext.Parent := TabPages[3];
btnNext.Left := 160;
btnNext.Top := 188;
btnNext.Width := 75;
btnNext.Height := 25;
btnNext.Caption := '>';
btnNext.TabOrder := 19;
btnNext.OnClick := @ButtonClicks;
end;
Procedure SafeInitMainForm;
var
v: TVariantArray;
begin;
SetArrayLength(v, 0);
ThreadSafeCall('InitMainForm', v);
end;
Procedure ShowFormModal;
begin;
frmDesign.ShowModal;
end;
Procedure SafeShowFormModal;
var
v: TVariantArray;
begin;;
SetArrayLength(v, 0);
ThreadSafeCall('ShowFormModal', v);
end;
{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{Second Form}///}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
Procedure CustomColorsNotSafe;
begin;;
frmColorPick := CreateForm;
frmColorPick.Left := 250;
frmColorPick.Top := 114;
frmColorPick.Width := 428;
frmColorPick.Height := 263;
frmColorPick.BorderStyle := bsSizeToolWin;
frmColorPick.Caption := 'Choose Custom Colors';
frmColorPick.Color := clBtnFace;
frmColorPick.Font.Color := clWindowText;
frmColorPick.Font.Height := -11;
frmColorPick.Font.Name := 'MS Sans Serif';
frmColorPick.Font.Style := [];
frmColorPick.Visible := True;
frmColorPick.PixelsPerInch := 96;
Label1 := TLabel.Create(frmColorPick);
Label1.Parent := frmColorPick;
Label1.Left := 8;
Label1.Top := 16;
Label1.Width := 23;
Label1.Height := 13;
Label1.Caption := 'Tin:';
Label2 := TLabel.Create(frmColorPick);
Label2.Parent := frmColorPick;
Label2.Left := 8;
Label2.Top := 48;
Label2.Width := 37;
Label2.Height := 13;
Label2.Caption := 'Copper:';
Label3 := TLabel.Create(frmColorPick);
Label3.Parent := frmColorPick;
Label3.Left := 8;
Label3.Top := 80;
Label3.Width := 21;
Label3.Height := 13;
Label3.Caption := 'Iron:';
Label4 := TLabel.Create(frmColorPick);
Label4.Parent := frmColorPick;
Label4.Left := 8;
Label4.Top := 112;
Label4.Width := 29;
Label4.Height := 13;
Label4.Caption := 'Silver:';
Label5 := TLabel.Create(frmColorPick);
Label5.Parent := frmColorPick;
Label5.Left := 8;
Label5.Top := 144;
Label5.Width := 24;
Label5.Height := 13;
Label5.Caption := 'Coal:';
Label6 := TLabel.Create(frmColorPick);
Label6.Parent := frmColorPick;
Label6.Left := 8;
Label6.Top := 176;
Label6.Width := 25;
Label6.Height := 13;
Label6.Caption := 'Gold:';
Label7 := TLabel.Create(frmColorPick);
Label7.Parent := frmColorPick;
Label7.Left := 8;
Label7.Top := 208;
Label7.Width := 30;
Label7.Height := 13;
Label7.Caption := 'Mithril:';
Label8 := TLabel.Create(frmColorPick);
Label8.Parent := frmColorPick;
Label8.Left := 208;
Label8.Top := 16;
Label8.Width := 45;
Label8.Height := 13;
Label8.Caption := 'Adamant:';
Label9 := TLabel.Create(frmColorPick);
Label9.Parent := frmColorPick;
Label9.Left := 208;
Label9.Top := 48;
Label9.Width := 34;
Label9.Height := 13;
Label9.Caption := 'Runite:';
Edit1 := TEdit.Create(frmColorPick);
Edit1.Parent := frmColorPick;
Edit1.Left := 56;
Edit1.Top := 8;
Edit1.Width := 121;
Edit1.Height := 21;
Edit1.TabOrder := 8;
Edit2 := TEdit.Create(frmColorPick);
Edit2.Parent := frmColorPick;
Edit2.Left := 56;
Edit2.Top := 40;
Edit2.Width := 121;
Edit2.Height := 21;
Edit2.TabOrder := 9;
Edit3 := TEdit.Create(frmColorPick);
Edit3.Parent := frmColorPick;
Edit3.Left := 56;
Edit3.Top := 72;
Edit3.Width := 121;
Edit3.Height := 21;
Edit3.TabOrder := 10;
Edit4 := TEdit.Create(frmColorPick);
Edit4.Parent := frmColorPick;
Edit4.Left := 56;
Edit4.Top := 104;
Edit4.Width := 121;
Edit4.Height := 21;
Edit4.TabOrder := 11;
Edit5 := TEdit.Create(frmColorPick);
Edit5.Parent := frmColorPick;
Edit5.Left := 56;
Edit5.Top := 136;
Edit5.Width := 121;
Edit5.Height := 21;
Edit5.TabOrder := 12;
Edit6 := TEdit.Create(frmColorPick);
Edit6.Parent := frmColorPick;
Edit6.Left := 56;
Edit6.Top := 168;
Edit6.Width := 121;
Edit6.Height := 21;
Edit6.TabOrder := 13;
Edit7 := TEdit.Create(frmColorPick);
Edit7.Parent := frmColorPick;
Edit7.Left := 56;
Edit7.Top := 200;
Edit7.Width := 121;
Edit7.Height := 21;
Edit7.TabOrder := 14;
Edit8 := TEdit.Create(frmColorPick);
Edit8.Parent := frmColorPick;
Edit8.Left := 264;
Edit8.Top := 8;
Edit8.Width := 121;
Edit8.Height := 21;
Edit8.TabOrder := 15;
Edit9 := TEdit.Create(frmColorPick);
Edit9.Parent := frmColorPick;
Edit9.Left := 264;
Edit9.Top := 48;
Edit9.Width := 121;
Edit9.Height := 21;
Edit9.TabOrder := 16;
end;
Procedure CustomColors;
var
v: TVariantArray;
begin;
SetArrayLength(v, 0);
ThreadSafeCall('CustomColorsNotSafe', v);
end;
Procedure ShowFormModal2;
begin;
frmColorPick.ShowModal;
end;
Procedure SafeShowFormModal2;
var
v: TVariantArray;
begin;
SetArrayLength(v, 0);
ThreadSafeCall('ShowFormModal', v);
end;
Procedure CustomColor;
begin;
CustomColors;
SafeShowFormModal2;
end;
{Procedure TermScript(TheReason: String);
begin;
TerminateReason:= TheReason;
If (TheReason <> '') or (TheReason <> ' ') Then
goto ;
end;}
{______________________________________________________________________________}
{----------------------------MINING PROCEDURES---------------------------------}
{Set colors}
Procedure SetRockColors;
begin;
Rock[0].Name:= 'tin';
Rock[0].Color:= ;
Rock[1].Name:= 'copper';
Rock[1].Color:= ;
Rock[2].Name:= 'iron';
Rock[2].Color:= ;
Rock[3].Name:= 'silver';
Rock[3].Color:= ;
Rock[4].Name:= 'coal';
Rock[4].Color:= ;
Rock[5].Name:= 'gold';
Rock[5].Color:= ;
Rock[6].Name:= 'mithril';
Rock[6].Color:= ;
Rock[7].Name:= 'adamant';
Rock[7].Color:= ;
Rock[8].Name:= 'runite';
Rock[8].Color:= ;
end;
Procedure SetPlayerRockColor;
Var I:Integer;
begin;
RockColor:= 0;
For I:=0 to GetArrayLength(Rock) - 1 do
begin;
If (Players[CurrentPlayer].String1 = Rock[I].Name) Then
RockColor:= Rock[I].Color;
end;
If (RockColor = 0) Then
begin;
TerminateReason:= 'Value stored in ''cmbRock.Text'' is in-valid.';
goto TerminateLabel;
end;
end;
begin
GetSelf.WindowState := wsMinimized;
SafeInItMainForm;
SafeShowFormModal;
GetSelf.WindowState := wsNormal;
FreeForm(frmDesign);
ActivateClient;
{------------}
TerminateLabel:
WriteLn('End of script. If script was canceled, reason:');
WriteLn(TerminateReason);
end.
Sooo...
Feel free to comment on the script too.