DEADSOFTWARE

Convert codepage to utf8
[cavecraft.git] / src / randoms.mpsrc
1 unit randoms;
3 interface
4 procedure srand(s:integer);//Устанавливает зерно для ГПСЧ
5 function rand:integer;//Возвращает случайное число
6 function rnd(max:integer):integer;//Возвращает число от 0 до max
7 function rnd_pr(pr,p1,p2:integer):integer;
9 implementation
10 var
11 next:integer;
13 function rand:integer;
14 begin
15 next:=next xor (next << 13);
16 next:=next xor (next >>> 17);
17 next:=next xor (next << 5);
18 rand:=abs(next);
19 end;
21 procedure srand(s:integer);
22 begin
23 //Debug('srand('+s+')');
24 next:=s;
25 end;
27 function rnd(max:integer):integer;
28 begin
29 rnd:=rand mod max;
30 end;
32 function rnd_pr(pr,p1,p2:integer):integer;
33 begin
34 if pr>=rnd(101) then rnd_pr:=p1; else rnd_pr:=p2;
35 end;
37 end.