XSkriptHowTo.HowTo001
Search:
print pdf

XSkript HowTo002 - Credits per script

Mit nachfolgender Funktion ist es möglich einen zufälligen Gegenstand zu ermitteln.
markieren
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
function GetRandomItem(var Item: TLagerItem): Boolean;
var
  Versuche : Integer;
  Index    : Integer;
begin
  result:=false;
  
  Versuche:=50;
  while not result do
  begin
    Versuche:=Versuche-1;
    if Versuche=-1 then
      exit;

    Index:=random(lager_api_count());
    Item:=lager_api_GetItem(Index);

    if not ((Item.TypeID=ptGranate) or (Item.TypeID=ptMine) 
      or (Item.TypeID=ptMunition) 
      or (Item.TypeID=ptSensor) or (Item.TypeID=ptWaffe)) then
      continue;
      
    // Alienausrüstung darf nicht gehandelt werden
    if (Item.AlienItem) then
      continue;

    result:=true;
  end
end;
Die Funktion gibt true zurück, wenn eine entsprechende Ausrüstung ermittelt wurde. Besonderes Augenmerk liegt in den Zeilen 18 und 19. Hier wird angegeben um was für einen Ausrüstungstyp es sich handelt. Nähere Informationen zum Ausrüstungstyp unter Ausrüstungstyp.

Der Aufruf der Funktion kann folgendermaßen erfolgen:
markieren
1
2
3
4
5
6
7
8
9
10
11
12
var
  Item: TLagerItem;
begin
  if GetLagerItem(Item) then
  begin
    // Ausrüstung wurde ermittelt, jetzt kann irgendwas damit gemacht werden
  end
  else
  begin
    // Es wurde keine Ausrüstung gefunden
  end;
end;


Recent Changes - Edit Menue
Page last modified on 10.11.2004, 08:33 by Christian Reich
Edit Page - Attributes - Page History