• Log in or sign up for an account here: https://www.sythe.org/login

Cool little WoodCutting Calculator

pker overkil

Forum Addict
Joined
Feb 11, 2007
Sythe Gold
0
Messages
387
Location
behind you...
Heres a woodcutting calculator i made in my spare time:

Code:
program WoodCuttingCalculator;

var
  frmDesign : TForm;
  Label1 : TLabel;
  Label2 : TLabel;
  Label3 : TLabel;
  Label4 : TLabel;
  Label5 : TLabel;
  MoneyGained : TLabel;
  XpGained : TLabel;
  XpGainedValue:String;
  Amount:integer;
  Amount2:Extended;
  XpPerLog:Extended;
  Trees:integer;
  AmountOfTrees : TEdit;
  MoneyPerTree : TEdit;
  ComboBox1 : TComboBox;
  Button1 : TButton;
  MoneyGainedValue:String;

Procedure Calculate(Sender:TObject);
begin
Trees:=StrToInt(AmountOfTrees.text)
Amount:=StrToInt(MoneyPerTree.text)
MoneyGainedValue:=IntToStr(Amount*Trees)
MoneyGained.caption:=MoneyGainedValue
MoneyGained.Show
begin
Case Combobox1.text of
'Regular': XpPerLog:=25
'Oak': XpPerLog:=37.5
'Willow': XpPerLog:=67.5
'Yew': XpPerLog:=179.3
end;
Amount2:=StrToFloat(AmountOfTrees.text)
XpGainedValue:=FloatToStr(Amount2*XpPerLog)
XpGained.caption:=XpGainedValue
XpGained.show
end;
end;

Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 114;
frmDesign.Width := 440;
frmDesign.Height := 272;
frmDesign.Caption := 'WoodCutting Calculator';
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;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 27;
Label1.Top := 35;
Label1.Width := 70;
Label1.Height := 13;
Label1.Caption := 'Amount of logs';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 280;
Label2.Top := 35;
Label2.Width := 59;
Label2.Height := 13;
Label2.Caption := 'Price per log';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 160;
Label3.Top := 35;
Label3.Width := 53;
Label3.Height := 13;
Label3.Caption := 'Type of log';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 100;
Label4.Top := 116;
Label4.Width := 69;
Label4.Height := 13;
Label4.Caption := 'Money Gained';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 287;
Label5.Top := 116;
Label5.Width := 50;
Label5.Height := 13;
Label5.Caption := 'Xp Gained';
MoneyGained := TLabel.Create(frmDesign);
MoneyGained.Parent := frmDesign;
MoneyGained.Left := 100;
MoneyGained.Top := 138;
MoneyGained.Width := 66;
MoneyGained.Height := 13;
MoneyGained.Caption := 'MoneyGained';
MoneyGained.Hide
XpGained := TLabel.Create(frmDesign);
XpGained.Parent := frmDesign;
XpGained.Left := 287;
XpGained.Top := 138;
XpGained.Width := 47;
XpGained.Height := 13;
XpGained.Caption := 'XpGained';
XpGained.Hide
AmountOfTrees := TEdit.Create(frmDesign);
AmountOfTrees.Parent := frmDesign;
AmountOfTrees.Left := 27;
AmountOfTrees.Top := 52;
AmountOfTrees.Width := 121;
AmountOfTrees.Height := 21;
AmountOfTrees.TabOrder := 8;
MoneyPerTree := TEdit.Create(frmDesign);
MoneyPerTree.Parent := frmDesign;
MoneyPerTree.Left := 280;
MoneyPerTree.Top := 52;
MoneyPerTree.Width := 121;
MoneyPerTree.Height := 21;
MoneyPerTree.TabOrder := 9;
ComboBox1 := TComboBox.Create(frmDesign);
ComboBox1.Parent := frmDesign;
ComboBox1.Left := 160;
ComboBox1.Top := 52;
ComboBox1.Width := 108;
ComboBox1.Height := 21;
ComboBox1.DropDownCount := 4;
ComboBox1.ItemHeight := 13;
ComboBox1.TabOrder := 10;
ComboBox1.Text := '----select----';
ComboBox1.Items.Add('Regular')
ComboBox1.Items.Add('Oak')
ComboBox1.Items.Add('Willow')
ComboBox1.Items.Add('Yew')
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 181;
Button1.Top := 191;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Calculate';
Button1.TabOrder := 11;
Button1.Onclick :=@Calculate
end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
     SetArrayLength(V, 0);
     ThreadSafeCall('InitForm',v);
end;

Procedure ShowFormModal;
begin
     frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v:TVariantArray;
begin
SetArrayLength(V,0);
ThreadSafeCall('ShowFormModal', v);
end;

begin
SafeInitForm
SafeShowFormModal
end.
 
Here is the almost always accurate combat calculator
Code:
// The Calculator may occasionally be off by 1 combat level.

program CombatCalculator;

var
PrayerInt:Extended;
StrengthInt:extended;
AttackInt:extended;
DefenceInt:extended;
HitPointsInt:extended;
MagicInt:Extended;
RangedInt:Extended;
CombatInt:extended;
CombatIntMelee:extended;
CombatIntMagic:extended;
CombatIntRanged:extended;
  frmDesign : TForm;
  Combatlevel : TLabel;
  Label1 : TLabel;
  Label2 : TLabel;
  Label3 : TLabel;
  Label4 : TLabel;
  Label5 : TLabel;
  Label6 : TLabel;
  Label7 : TLabel;
  Prayer : TEdit;
  Defence : TEdit;
  HitPoints : TEdit;
  Magic : TEdit;
  Ranged : TEdit;
  Attack : TEdit;
  Strength : TEdit;
  Button1 : TButton;

procedure Calculate(Sender:TObject);
begin
PrayerInt:=StrToFloat(Prayer.text);
StrengthInt:=StrToFloat(Strength.text);
AttackInt:=StrToFloat(Attack.text);
DefenceInt:=StrToFloat(Defence.text);
HitPointsInt:=StrToFloat(HitPoints.text);
MagicInt:=StrToFloat(Magic.text);
RangedInt:=StrToFloat(Ranged.text);
CombatIntMelee:=(((PrayerInt/2)-0.5+HitPointsInt+DefenceInt)/4)+(StrengthInt+AttackInt)*0.325
CombatIntMagic:=(((PrayerInt/2)-0.5+HitPointsInt+DefenceInt)/4)+(((MagicInt/2)-0.5)+MagicInt)*0.325
CombatIntRanged:=(((PrayerInt/2)-0.5+HitPointsInt+DefenceInt)/4)+(((RangedInt/2)-0.5)+RangedInt)*0.325
if CombatIntMelee>CombatIntMagic then
begin
if CombatIntMelee>CombatIntRanged then
begin
CombatInt:=CombatIntMelee;
end;
end;
if CombatIntMagic>CombatIntMelee then
begin
if CombatIntMagic>CombatIntRanged then
begin
CombatInt:=CombatIntMagic
end;
end;
if CombatIntRanged>CombatIntMagic then
begin
if CombatIntRanged>CombatIntMelee then
begin
CombatInt:=CombatIntRanged
end;
end;
Combatlevel.Caption:=FloatToStr(CombatInt)
Combatlevel.Show
end;
Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 371;
frmDesign.Top := 174;
frmDesign.Width := 464;
frmDesign.Height := 401;
frmDesign.Caption := 'Combat Calculator--::Made by Pker Overkil::--';
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;
Combatlevel := TLabel.Create(frmDesign);
Combatlevel.Parent := frmDesign;
Combatlevel.Left := 193;
Combatlevel.Top := 308;
Combatlevel.Width := 62;
Combatlevel.Height := 13;
Combatlevel.Caption := 'CombatLevel';
Combatlevel.Hide
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 33;
Label1.Top := 29;
Label1.Width := 30;
Label1.Height := 13;
Label1.Caption := 'Prayer';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 276;
Label2.Top := 29;
Label2.Width := 42;
Label2.Height := 13;
Label2.Caption := 'HitPoints';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 33;
Label3.Top := 94;
Label3.Width := 41;
Label3.Height := 13;
Label3.Caption := 'Defence';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 276;
Label4.Top := 94;
Label4.Width := 29;
Label4.Height := 13;
Label4.Caption := 'Magic';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 33;
Label5.Top := 152;
Label5.Width := 38;
Label5.Height := 13;
Label5.Caption := 'Ranged';
Label6 := TLabel.Create(frmDesign);
Label6.Parent := frmDesign;
Label6.Left := 276;
Label6.Top := 152;
Label6.Width := 31;
Label6.Height := 13;
Label6.Caption := 'Attack';
Label7 := TLabel.Create(frmDesign);
Label7.Parent := frmDesign;
Label7.Left := 33;
Label7.Top := 221;
Label7.Width := 40;
Label7.Height := 13;
Label7.Caption := 'Strength';
Prayer := TEdit.Create(frmDesign);
Prayer.Parent := frmDesign;
Prayer.Left := 33;
Prayer.Top := 44;
Prayer.Width := 121;
Prayer.Height := 21;
Prayer.TabOrder := 8;
Defence := TEdit.Create(frmDesign);
Defence.Parent := frmDesign;
Defence.Left := 33;
Defence.Top := 108;
Defence.Width := 121;
Defence.Height := 21;
Defence.TabOrder := 9;
HitPoints := TEdit.Create(frmDesign);
HitPoints.Parent := frmDesign;
HitPoints.Left := 276;
HitPoints.Top := 44;
HitPoints.Width := 121;
HitPoints.Height := 21;
HitPoints.TabOrder := 10;
Magic := TEdit.Create(frmDesign);
Magic.Parent := frmDesign;
Magic.Left := 276;
Magic.Top := 108;
Magic.Width := 121;
Magic.Height := 21;
Magic.TabOrder := 11;
Ranged := TEdit.Create(frmDesign);
Ranged.Parent := frmDesign;
Ranged.Left := 33;
Ranged.Top := 166;
Ranged.Width := 121;
Ranged.Height := 21;
Ranged.TabOrder := 12;
Attack := TEdit.Create(frmDesign);
Attack.Parent := frmDesign;
Attack.Left := 276;
Attack.Top := 166;
Attack.Width := 121;
Attack.Height := 21;
Attack.TabOrder := 13;
Strength := TEdit.Create(frmDesign);
Strength.Parent := frmDesign;
Strength.Left := 33;
Strength.Top := 235;
Strength.Width := 121;
Strength.Height := 21;
Strength.TabOrder := 14;
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 292;
Button1.Top := 234;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Calculate';
Button1.TabOrder := 15;
Button1.OnClick := @Calculate
end;
procedure SafeInitForm;
var
v: TVariantArray;
begin
     SetArrayLength(V, 0);
     ThreadSafeCall('InitForm',v);
end;

Procedure ShowFormModal;
begin
     frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v:TVariantArray;
begin
SetArrayLength(V,0);
ThreadSafeCall('ShowFormModal', v);
end;

begin
SafeInitForm
SafeShowFormModal
end.
 
PHP:
program WoodCuttingCalculator;

var
  frmDesign : TForm;
  Label1 : TLabel;
  Label2 : TLabel;
  Label3 : TLabel;
  Label4 : TLabel;
  Label5 : TLabel;
  MoneyGained : TLabel;
  XpGained : TLabel;
  XpGainedValue:String;
  Amount:integer;
  Amount2:Extended;
  XpPerLog:Extended;
  Trees:integer;
  AmountOfTrees : TEdit;
  MoneyPerTree : TEdit;
  ComboBox1 : TComboBox;
  Button1 : TButton;
  MoneyGainedValue:String;

Procedure Calculate(Sender:TObject);
begin
Trees:=StrToInt(AmountOfTrees.text)
Amount:=StrToInt(MoneyPerTree.text)
MoneyGainedValue:=IntToStr(Amount*Trees)
MoneyGained.caption:=MoneyGainedValue
MoneyGained.Show
begin
Case Combobox1.text of
'Regular': XpPerLog:=25
'Oak': XpPerLog:=37.5
'Willow': XpPerLog:=67.5
'Yew': XpPerLog:=179.3
end;
Amount2:=StrToFloat(AmountOfTrees.text)
XpGainedValue:=FloatToStr(Amount2*XpPerLog)
XpGained.caption:=XpGainedValue
XpGained.show
end;
end;

Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 114;
frmDesign.Width := 440;
frmDesign.Height := 272;
frmDesign.Caption := 'WoodCutting Calculator';
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;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 27;
Label1.Top := 35;
Label1.Width := 70;
Label1.Height := 13;
Label1.Caption := 'Amount of logs';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 280;
Label2.Top := 35;
Label2.Width := 59;
Label2.Height := 13;
Label2.Caption := 'Price per log';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 160;
Label3.Top := 35;
Label3.Width := 53;
Label3.Height := 13;
Label3.Caption := 'Type of log';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 100;
Label4.Top := 116;
Label4.Width := 69;
Label4.Height := 13;
Label4.Caption := 'Money Gained';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 287;
Label5.Top := 116;
Label5.Width := 50;
Label5.Height := 13;
Label5.Caption := 'Xp Gained';
MoneyGained := TLabel.Create(frmDesign);
MoneyGained.Parent := frmDesign;
MoneyGained.Left := 100;
MoneyGained.Top := 138;
MoneyGained.Width := 66;
MoneyGained.Height := 13;
MoneyGained.Caption := 'MoneyGained';
MoneyGained.Hide
XpGained := TLabel.Create(frmDesign);
XpGained.Parent := frmDesign;
XpGained.Left := 287;
XpGained.Top := 138;
XpGained.Width := 47;
XpGained.Height := 13;
XpGained.Caption := 'XpGained';
XpGained.Hide
AmountOfTrees := TEdit.Create(frmDesign);
AmountOfTrees.Parent := frmDesign;
AmountOfTrees.Left := 27;
AmountOfTrees.Top := 52;
AmountOfTrees.Width := 121;
AmountOfTrees.Height := 21;
AmountOfTrees.TabOrder := 8;
MoneyPerTree := TEdit.Create(frmDesign);
MoneyPerTree.Parent := frmDesign;
MoneyPerTree.Left := 280;
MoneyPerTree.Top := 52;
MoneyPerTree.Width := 121;
MoneyPerTree.Height := 21;
MoneyPerTree.TabOrder := 9;
ComboBox1 := TComboBox.Create(frmDesign);
ComboBox1.Parent := frmDesign;
ComboBox1.Left := 160;
ComboBox1.Top := 52;
ComboBox1.Width := 108;
ComboBox1.Height := 21;
ComboBox1.DropDownCount := 4;
ComboBox1.ItemHeight := 13;
ComboBox1.TabOrder := 10;
ComboBox1.Text := '----select----';
ComboBox1.Items.Add('Regular')
ComboBox1.Items.Add('Oak')
ComboBox1.Items.Add('Willow')
ComboBox1.Items.Add('Yew')
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 181;
Button1.Top := 191;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Calculate';
Button1.TabOrder := 11;
Button1.Onclick :=@Calculate
end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
     SetArrayLength(V, 0);
     ThreadSafeCall('InitForm',v);
end;

Procedure ShowFormModal;
begin
     frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v:TVariantArray;
begin
SetArrayLength(V,0);
ThreadSafeCall('ShowFormModal', v);
end;

begin
SafeInitForm
SafeShowFormModal
end.
Code:
program WoodCuttingCalculator;

var
  frmDesign : TForm;
  Label1 : TLabel;
  Label2 : TLabel;
  Label3 : TLabel;
  Label4 : TLabel;
  Label5 : TLabel;
  MoneyGained : TLabel;
  XpGained : TLabel;
  XpGainedValue:String;
  Amount:integer;
  Amount2:Extended;
  XpPerLog:Extended;
  Trees:integer;
  AmountOfTrees : TEdit;
  MoneyPerTree : TEdit;
  ComboBox1 : TComboBox;
  Button1 : TButton;
  MoneyGainedValue:String;

Procedure Calculate(Sender:TObject);
begin
Trees:=StrToInt(AmountOfTrees.text)
Amount:=StrToInt(MoneyPerTree.text)
MoneyGainedValue:=IntToStr(Amount*Trees)
MoneyGained.caption:=MoneyGainedValue
MoneyGained.Show
begin
Case Combobox1.text of
'Regular': XpPerLog:=25
'Oak': XpPerLog:=37.5
'Willow': XpPerLog:=67.5
'Yew': XpPerLog:=179.3
end;
Amount2:=StrToFloat(AmountOfTrees.text)
XpGainedValue:=FloatToStr(Amount2*XpPerLog)
XpGained.caption:=XpGainedValue
XpGained.show
end;
end;

Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 114;
frmDesign.Width := 440;
frmDesign.Height := 272;
frmDesign.Caption := 'WoodCutting Calculator';
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;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 27;
Label1.Top := 35;
Label1.Width := 70;
Label1.Height := 13;
Label1.Caption := 'Amount of logs';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 280;
Label2.Top := 35;
Label2.Width := 59;
Label2.Height := 13;
Label2.Caption := 'Price per log';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 160;
Label3.Top := 35;
Label3.Width := 53;
Label3.Height := 13;
Label3.Caption := 'Type of log';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 100;
Label4.Top := 116;
Label4.Width := 69;
Label4.Height := 13;
Label4.Caption := 'Money Gained';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 287;
Label5.Top := 116;
Label5.Width := 50;
Label5.Height := 13;
Label5.Caption := 'Xp Gained';
MoneyGained := TLabel.Create(frmDesign);
MoneyGained.Parent := frmDesign;
MoneyGained.Left := 100;
MoneyGained.Top := 138;
MoneyGained.Width := 66;
MoneyGained.Height := 13;
MoneyGained.Caption := 'MoneyGained';
MoneyGained.Hide
XpGained := TLabel.Create(frmDesign);
XpGained.Parent := frmDesign;
XpGained.Left := 287;
XpGained.Top := 138;
XpGained.Width := 47;
XpGained.Height := 13;
XpGained.Caption := 'XpGained';
XpGained.Hide
AmountOfTrees := TEdit.Create(frmDesign);
AmountOfTrees.Parent := frmDesign;
AmountOfTrees.Left := 27;
AmountOfTrees.Top := 52;
AmountOfTrees.Width := 121;
AmountOfTrees.Height := 21;
AmountOfTrees.TabOrder := 8;
MoneyPerTree := TEdit.Create(frmDesign);
MoneyPerTree.Parent := frmDesign;
MoneyPerTree.Left := 280;
MoneyPerTree.Top := 52;
MoneyPerTree.Width := 121;
MoneyPerTree.Height := 21;
MoneyPerTree.TabOrder := 9;
ComboBox1 := TComboBox.Create(frmDesign);
ComboBox1.Parent := frmDesign;
ComboBox1.Left := 160;
ComboBox1.Top := 52;
ComboBox1.Width := 108;
ComboBox1.Height := 21;
ComboBox1.DropDownCount := 4;
ComboBox1.ItemHeight := 13;
ComboBox1.TabOrder := 10;
ComboBox1.Text := '----select----';
ComboBox1.Items.Add('Regular')
ComboBox1.Items.Add('Oak')
ComboBox1.Items.Add('Willow')
ComboBox1.Items.Add('Yew')
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 181;
Button1.Top := 191;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Calculate';
Button1.TabOrder := 11;
Button1.Onclick :=@Calculate
end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
     SetArrayLength(V, 0);
     ThreadSafeCall('InitForm',v);
end;

Procedure ShowFormModal;
begin
     frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v:TVariantArray;
begin
SetArrayLength(V,0);
ThreadSafeCall('ShowFormModal', v);
end;

begin
SafeInitForm
SafeShowFormModal
end.
program WoodCuttingCalculator;

var
frmDesign : TForm;
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Label5 : TLabel;
MoneyGained : TLabel;
XpGained : TLabel;
XpGainedValue:String;
Amount:integer;
Amount2:Extended;
XpPerLog:Extended;
Trees:integer;
AmountOfTrees : TEdit;
MoneyPerTree : TEdit;
ComboBox1 : TComboBox;
Button1 : TButton;
MoneyGainedValue:String;

Procedure Calculate(Sender:TObject);
begin
Trees:=StrToInt(AmountOfTrees.text)
Amount:=StrToInt(MoneyPerTree.text)
MoneyGainedValue:=IntToStr(Amount*Trees)
MoneyGained.caption:=MoneyGainedValue
MoneyGained.Show
begin
Case Combobox1.text of
'Regular': XpPerLog:=25
'Oak': XpPerLog:=37.5
'Willow': XpPerLog:=67.5
'Yew': XpPerLog:=179.3
end;
Amount2:=StrToFloat(AmountOfTrees.text)
XpGainedValue:=FloatToStr(Amount2*XpPerLog)
XpGained.caption:=XpGainedValue
XpGained.show
end;
end;

Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 114;
frmDesign.Width := 440;
frmDesign.Height := 272;
frmDesign.Caption := 'WoodCutting Calculator';
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;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 27;
Label1.Top := 35;
Label1.Width := 70;
Label1.Height := 13;
Label1.Caption := 'Amount of logs';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 280;
Label2.Top := 35;
Label2.Width := 59;
Label2.Height := 13;
Label2.Caption := 'Price per log';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 160;
Label3.Top := 35;
Label3.Width := 53;
Label3.Height := 13;
Label3.Caption := 'Type of log';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 100;
Label4.Top := 116;
Label4.Width := 69;
Label4.Height := 13;
Label4.Caption := 'Money Gained';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 287;
Label5.Top := 116;
Label5.Width := 50;
Label5.Height := 13;
Label5.Caption := 'Xp Gained';
MoneyGained := TLabel.Create(frmDesign);
MoneyGained.Parent := frmDesign;
MoneyGained.Left := 100;
MoneyGained.Top := 138;
MoneyGained.Width := 66;
MoneyGained.Height := 13;
MoneyGained.Caption := 'MoneyGained';
MoneyGained.Hide
XpGained := TLabel.Create(frmDesign);
XpGained.Parent := frmDesign;
XpGained.Left := 287;
XpGained.Top := 138;
XpGained.Width := 47;
XpGained.Height := 13;
XpGained.Caption := 'XpGained';
XpGained.Hide
AmountOfTrees := TEdit.Create(frmDesign);
AmountOfTrees.Parent := frmDesign;
AmountOfTrees.Left := 27;
AmountOfTrees.Top := 52;
AmountOfTrees.Width := 121;
AmountOfTrees.Height := 21;
AmountOfTrees.TabOrder := 8;
MoneyPerTree := TEdit.Create(frmDesign);
MoneyPerTree.Parent := frmDesign;
MoneyPerTree.Left := 280;
MoneyPerTree.Top := 52;
MoneyPerTree.Width := 121;
MoneyPerTree.Height := 21;
MoneyPerTree.TabOrder := 9;
ComboBox1 := TComboBox.Create(frmDesign);
ComboBox1.Parent := frmDesign;
ComboBox1.Left := 160;
ComboBox1.Top := 52;
ComboBox1.Width := 108;
ComboBox1.Height := 21;
ComboBox1.DropDownCount := 4;
ComboBox1.ItemHeight := 13;
ComboBox1.TabOrder := 10;
ComboBox1.Text := '----select----';
ComboBox1.Items.Add('Regular')
ComboBox1.Items.Add('Oak')
ComboBox1.Items.Add('Willow')
ComboBox1.Items.Add('Yew')
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 181;
Button1.Top := 191;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Calculate';
Button1.TabOrder := 11;
Button1.Onclick :=@Calculate
end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
SetArrayLength(V, 0);
ThreadSafeCall('InitForm',v);
end;

Procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v:TVariantArray;
begin
SetArrayLength(V,0);
ThreadSafeCall('ShowFormModal', v);
end;

begin
SafeInitForm
SafeShowFormModal
end.
HTML:
program WoodCuttingCalculator;

var
  frmDesign : TForm;
  Label1 : TLabel;
  Label2 : TLabel;
  Label3 : TLabel;
  Label4 : TLabel;
  Label5 : TLabel;
  MoneyGained : TLabel;
  XpGained : TLabel;
  XpGainedValue:String;
  Amount:integer;
  Amount2:Extended;
  XpPerLog:Extended;
  Trees:integer;
  AmountOfTrees : TEdit;
  MoneyPerTree : TEdit;
  ComboBox1 : TComboBox;
  Button1 : TButton;
  MoneyGainedValue:String;

Procedure Calculate(Sender:TObject);
begin
Trees:=StrToInt(AmountOfTrees.text)
Amount:=StrToInt(MoneyPerTree.text)
MoneyGainedValue:=IntToStr(Amount*Trees)
MoneyGained.caption:=MoneyGainedValue
MoneyGained.Show
begin
Case Combobox1.text of
'Regular': XpPerLog:=25
'Oak': XpPerLog:=37.5
'Willow': XpPerLog:=67.5
'Yew': XpPerLog:=179.3
end;
Amount2:=StrToFloat(AmountOfTrees.text)
XpGainedValue:=FloatToStr(Amount2*XpPerLog)
XpGained.caption:=XpGainedValue
XpGained.show
end;
end;

Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 114;
frmDesign.Width := 440;
frmDesign.Height := 272;
frmDesign.Caption := 'WoodCutting Calculator';
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;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 27;
Label1.Top := 35;
Label1.Width := 70;
Label1.Height := 13;
Label1.Caption := 'Amount of logs';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 280;
Label2.Top := 35;
Label2.Width := 59;
Label2.Height := 13;
Label2.Caption := 'Price per log';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 160;
Label3.Top := 35;
Label3.Width := 53;
Label3.Height := 13;
Label3.Caption := 'Type of log';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 100;
Label4.Top := 116;
Label4.Width := 69;
Label4.Height := 13;
Label4.Caption := 'Money Gained';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 287;
Label5.Top := 116;
Label5.Width := 50;
Label5.Height := 13;
Label5.Caption := 'Xp Gained';
MoneyGained := TLabel.Create(frmDesign);
MoneyGained.Parent := frmDesign;
MoneyGained.Left := 100;
MoneyGained.Top := 138;
MoneyGained.Width := 66;
MoneyGained.Height := 13;
MoneyGained.Caption := 'MoneyGained';
MoneyGained.Hide
XpGained := TLabel.Create(frmDesign);
XpGained.Parent := frmDesign;
XpGained.Left := 287;
XpGained.Top := 138;
XpGained.Width := 47;
XpGained.Height := 13;
XpGained.Caption := 'XpGained';
XpGained.Hide
AmountOfTrees := TEdit.Create(frmDesign);
AmountOfTrees.Parent := frmDesign;
AmountOfTrees.Left := 27;
AmountOfTrees.Top := 52;
AmountOfTrees.Width := 121;
AmountOfTrees.Height := 21;
AmountOfTrees.TabOrder := 8;
MoneyPerTree := TEdit.Create(frmDesign);
MoneyPerTree.Parent := frmDesign;
MoneyPerTree.Left := 280;
MoneyPerTree.Top := 52;
MoneyPerTree.Width := 121;
MoneyPerTree.Height := 21;
MoneyPerTree.TabOrder := 9;
ComboBox1 := TComboBox.Create(frmDesign);
ComboBox1.Parent := frmDesign;
ComboBox1.Left := 160;
ComboBox1.Top := 52;
ComboBox1.Width := 108;
ComboBox1.Height := 21;
ComboBox1.DropDownCount := 4;
ComboBox1.ItemHeight := 13;
ComboBox1.TabOrder := 10;
ComboBox1.Text := '----select----';
ComboBox1.Items.Add('Regular')
ComboBox1.Items.Add('Oak')
ComboBox1.Items.Add('Willow')
ComboBox1.Items.Add('Yew')
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 181;
Button1.Top := 191;
Button1.Width := 75;
Button1.Height := 25;
Button1.Caption := 'Calculate';
Button1.TabOrder := 11;
Button1.Onclick :=@Calculate
end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
     SetArrayLength(V, 0);
     ThreadSafeCall('InitForm',v);
end;

Procedure ShowFormModal;
begin
     frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v:TVariantArray;
begin
SetArrayLength(V,0);
ThreadSafeCall('ShowFormModal', v);
end;

begin
SafeInitForm
SafeShowFormModal
end.
 
nice....woodcutting calc has helped me alot =)
 
Great job, making calculators in scar is a neglected possibilitie and it takes a good scripter to make one good onya.
 
ok i ALREADY know im a "NOOB!!!!" but Yea im new to this shit so mai i ask how do u use this
 
ok i ALREADY know im a "NOOB!!!!" but Yea im new to this shit so mai i ask how do u use this

You copy + paste it to SCAR and press run..

It's alright, although it's sort of simple.. But nice that you've made forms to it :)
 
Runescape Gamblingrunescape gambling
Back
Top