Начали с того, чтобы каждый пользователь мог убедиться в отсутствии "злого умысла", а сейчас "время по Гринвичу UTC и не нужно публиковать ничего". Используйте doRandomize и компьютерные тики вместо Гринвича
Проблема равномерности решается удалением из розыгрыша уже выигравших пользователей
равномерность
Add(MainForm,2953706,161,112)
{
link(onCreate,11048054:doEvent1,[])
}
Add(ListBox,8405097,322,126)
{
Left=10
Top=5
Width=140
Height=250
DataType=1
}
Add(MultiElement,13530796,245,126)
{
link(onEvent1,8405097:doAdd,[])
}
BEGIN_SDK
Add(EditMulti,7908364,21,21)
{
EventCount=1
WorkCount=1
link(doWork1,8498706:doFor,[(74,27)(74,48)])
}
Add(For,8498706,84,42)
{
End=99
link(onEvent,7085669:doOperation,[])
}
Add(Math,7085669,147,42)
{
Op1=1
ResultType=0
link(onResult,13330600:doString,[])
}
Add(FormatStr,13330600,196,42)
{
Mask="Игрок №%1"
link(onFString,7908364:onEvent1,[(235,48)(235,27)])
}
END_SDK
Add(Button,5888757,98,182)
{
Left=165
Top=60
Width=135
Caption="Выбрать победителя"
link(onClick,4119673:doOperation,[])
}
Add(Random,4707942,238,189)
{
Max=0
Point(doRandSeed)
Point(Max)
Point(doMax)
link(onRandom,10464415:doEvent1,[])
link(Max,4119673:Result,[(244,173)(187,173)(187,222)(153,222)])
}
Add(ArrayRW,15170466,322,189)
{
link(onRead,6321611:doText,[])
link(Array,8405097:Array,[(328,173)(342,173)])
}
Add(Label,6321611,378,189)
{
Left=175
Top=170
Width=4
Height=4
Font=[MS Sans Serif,12,1,0,1]
Caption=""
}
Add(Math,4119673,147,182)
{
OpType=1
Op2=1
ResultType=0
link(onResult,16732158:doEvent1,[])
link(Op1,8405097:Count,[(153,166)(335,166)])
}
Add(Hub,10464415,280,189)
{
link(onEvent1,15170466:doRead,[])
link(onEvent2,8405097:doDelete,[(305,202)(305,146)])
}
Add(Hub,16732158,196,182)
{
link(onEvent1,4707942:doMax,[(219,188)(219,216)])
link(onEvent2,4707942:doRandom,[])
}
Add(Hub,11048054,203,126)
{
link(onEvent1,13530796:doWork1,[])
link(onEvent2,4707942:doRandomize,[(228,139)(228,202)])
}