Simba Code:
procedure Activity(Choice:Integer); // Choose Activity to Implement
var
I: Integer;
Param: TVariantArray;
ArrayOfActivity: TStringArray;
ArrayOfChoices: TVariantArray;
Begin
If(not(loggedin))then
Exit;
Disguise('Setting Activity To Do');
WriteLn('Setting Activity To Do');
Case Choice of
0: Begin // mine clay and bank it
Disguise('mine clay and bank it');
WriteLn('Clay Loads = ' + IntToStr(TotalLoads));
ArrayOfActivity := ['DepositItems', 'WalkToMine', 'MineClay', 'BankFromMine'];
SetLength(ArrayOfChoices, Length(ArrayOfActivity));
If (TotalLoads = LoadsToDo) Then
Begin
FindNormalRandoms;
DepositItems;
Proggy;
LogOut;
TerminateScript;
End else
Begin
For I := 0 To High(ArrayOfActivity) Do
Begin
ArrayOfChoices[I] := CallProc(ArrayOfActivity[I], Param);
If LostMyWay then
Begin
Exit;
End
End;
End;
End;
1: Begin // mine clay and soften it then bank it
Disguise('mine clay and soften it then bank it');
ArrayOfActivity := ['DepositItems', 'WalkToMine', 'MineClay', 'WalkToWater', 'SoftenClay', 'WalkToTheBank'];
SetLength(ArrayOfChoices, Length(ArrayOfActivity));
If (TotalLoads = LoadsToDo) Then
Begin
FindNormalRandoms;
DepositItems;
Proggy;
LogOut;
TerminateScript;
End else
Begin
For I := 0 To High(ArrayOfActivity) Do
Begin
ArrayOfChoices[I] := CallProc(ArrayOfActivity[I], Param);
If LostMyWay then
Begin
Exit;
End
End;
End;
End;
2: Begin // get soft clay from bank and craft it then bank it
DisGuise('Get Soft Clay From Bank And Craft It Then Bank It');
ArrayOfActivity := ['DepositItems', 'WithdrawItems', 'WalkPottery', 'MakePottery(ChoosePottery)', 'BankFromPottery'];
SetLength(ArrayOfChoices, Length(ArrayOfActivity));
If (TotalLoads = LoadsToDo) Then
Begin
FindNormalRandoms;
DepositItems;
Proggy;
LogOut;
TerminateScript;
End else
Begin
For I := 0 To High(ArrayOfActivity) Do
Begin
ArrayOfChoices[I] := CallProc(ArrayOfActivity[I], Param);
If LostMyWay then
Begin
Exit;
End
End;
End;
End;
3: Begin // get soft clay from bank and craft it and drop it
Disguise('get soft clay from bank and craft it and drop it');
ArrayOfActivity := ['DepositItems', 'WithdrawItems', 'WalkPottery', 'MakePottery(ChoosePottery)', 'DropItems', 'Proggy', 'BankFromPottery'];
SetLength(ArrayOfChoices, Length(ArrayOfActivity));
If (TotalLoads = LoadsToDo) Then
Begin
FindNormalRandoms;
DepositItems;
Proggy;
LogOut;
TerminateScript;
End else
Begin
For I := 0 To High(ArrayOfActivity) Do
Begin
ArrayOfChoices[I] := CallProc(ArrayOfActivity[I], Param);
If LostMyWay then
Begin
Exit;
End
End;
End;
End;
4: Begin // mine clay,soften it,craft it,bank it
Disguise('mine clay,soften it,craft it,bank it');
ArrayOfActivity := ['DepositItems', 'WalkToMine', 'MineClay', 'WalkToWater', 'SoftenClay', 'CraftFromPump', 'MakePottery(ChoosePottery)', 'FireOven(ChoosePottery)', 'BankFromPottery'];
SetLength(ArrayOfChoices, Length(ArrayOfActivity));
If (TotalLoads = LoadsToDo) Then
Begin
FindNormalRandoms;
DepositItems;
Proggy;
LogOut;
TerminateScript;
End else
Begin
For I := 0 To High(ArrayOfActivity) Do
Begin
ArrayOfChoices[I] := CallProc(ArrayOfActivity[I], Param);
If LostMyWay then
Begin
Exit;
End
End;
End;
End;
5: Begin // fire softpots,urns,bowls and bank it
Disguise('fire softpots,urns,bowls and bank it');
End;
6: Begin // fire softpots,urns,bowls and drop it
Disguise('fire softpots,urns,bowls and drop it');
End;
7: Begin // get clay from bank,soften it bank it
Disguise('get clay from bank,soften it bank it');
ArrayOfActivity := ['DepositItems', 'WithdrawItems', 'BankToWater', 'SoftenClay', 'WalkToTheBank'];
SetLength(ArrayOfChoices, Length(ArrayOfActivity));
If (TotalLoads = LoadsToDo) Then
Begin
FindNormalRandoms;
DepositItems;
Proggy;
LogOut;
TerminateScript;
End else
Begin
For I := 0 To High(ArrayOfActivity) Do
Begin
ArrayOfChoices[I] := CallProc(ArrayOfActivity[I], Param);
If LostMyWay then
Begin
Exit;
End
End;
End;
End;
8: Begin // get soft clay from bank and craft it Fire It then bank it
DisGuise('Get Soft Clay From Bank And Craft It Then Bank It');
ArrayOfActivity := ['DepositItems', 'WithdrawItems', 'WalkPottery', 'MakePottery(ChoosePottery)', 'FireOven(ChoosePottery)', 'BankFromPottery'];
SetLength(ArrayOfChoices, Length(ArrayOfActivity));
If (TotalLoads = LoadsToDo) Then
Begin
FindNormalRandoms;
DepositItems;
Proggy;
LogOut;
TerminateScript;
End else
Begin
For I := 0 To High(ArrayOfActivity) Do
Begin
ArrayOfChoices[I] := CallProc(ArrayOfActivity[I], Param);
If LostMyWay then
Begin
Exit;
End
End;
End;
End;
End;
End;