Yoko
http://forum.yoko.com.ua/

Никто не пытался написать нормальный рандом?
http://forum.yoko.com.ua/viewtopic.php?f=17&t=15995
Page 1 of 1

Author:  GMX [ 2010-12-05 20:52:26 ]
Post subject:  Никто не пытался написать нормальный рандом?

Собсно, сабж. Встроенный uo.random() имеет явные недостатки.
Code:
                   k=uo.random(50)-25
                   j=uo.random(50)-25

В девяти случаях из десяти k будет равно j.
Возникла мысль, можно ли реализовать рандом силами скриптинга. Никто раньше об этом не задумывался?

Author:  Sirocco [ 2010-12-06 00:49:54 ]
Post subject:  Re: Никто не пытался написать нормальный рандом?

:idea: бери число с этого сайта: http://www.random.org/

Author:  GMX [ 2010-12-06 08:34:36 ]
Post subject:  Re: Никто не пытался написать нормальный рандом?

Sirocco, добрый ты!

Author:  GMX [ 2010-12-06 15:14:44 ]
Post subject:  Re: Никто не пытался написать нормальный рандом?

Code:
SCRFUN(Random)
{
Table->SetType(Result,T_Number);
Table->SetNumber(Result,0);
if(ParamCount<2||Table->GetType(Params[0])!=T_Number) return 0;
int n=Table->GetNumber(Params[0]);
if(n<0) return 0;
srand(GetTickCount());           <============ вот она засада!!!
Table->SetNumber(Result,rand()%n);
return 0;}

В связи с этим получается необходимо между двумя последовательными запусками функции Uo.random() делать wait(), причем довольно большой. Пойду попробую. :)

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/