Polski Česky English Français Русский Español
Home Site Original War Support Community Forums Facebook YouTube Discord
Your first time here? View this!
» Index > Modding Archive > SAIL - Funkcje losujące

SAIL - Funkcje losujące

Serpent pisze:Funkcja losująca to funkcja która zwraca losową liczbę z podanego zbioru liczb.

Najprostszą tego typu funkcją jest funkcja Rand:

Kod:

Rand(min, max); // gdzie min oznacza dolny przedział liczb, a max górny.

Nieco bardziej rozbudową funkcją jest MultiRand:

Kod:

MultiRand(min, max, c); // gdzie c oznacza ilość obrotów maszyny losującej  :D 

Schemat działania tej funkcji wygląda następująco:

Kod:

Export Function MultiRand2(min, max, c);
var i, d;
begin
for i = 1 to c do
     d := Rand(min, max);

result := d;
End;

Inną funkcją losującą jest Prob. Różnica polega jednak na tym że jest to funkcja logiczna (zwraca prawdę lub fałsz).

Przykład:

Kod:

if Prob(90) then // prawda jeśli wynik losowania jest większy od 90
if not Prob(90) then // prawda jeśli wynik nie jest większy od 90

Schemat działania funkcji Prob:

Kod:

Export Function Prob2(num);
begin
if Rand(0, 100) > num then
   result := true
    else
     result := false;
End;

Powyższe funkcję są bardzo użyteczne w programowaniu misji. Przykładowo jeśli chcemy aby personel bazy miał “różne skille” to bez funkcji losującej ciężko będzie to osiągnąć.

Author: Serpent
Topic: https://forum.original-war.net/viewtopic.php?f=42&t=4490

» Index > Modding Archive > SAIL - Funkcje losujące