Перейти к содержанию

Модуль:Случайные числа: различия между версиями

Материал из LemonCraft Wiki
м AttemptToCallNil переименовал страницу Модуль:Random в Модуль:Случайные числа без оставления перенаправления
 
м 1 версия импортирована
 
(не показана 1 промежуточная версия этого же участника)
(нет различий)

Текущая версия от 10:41, 26 марта 2025

Для документации этого модуля может быть создана страница Модуль:Случайные числа/doc

local p = {}
local seeded
local randomseed = math.randomseed
local random = math.random

function p.random( m, n )
	if not seeded then
		p.seed()
	end
	
	return random( n and m or m and 1 or 0, n or m or 1 )
end

function p.seed( seed )
	randomseed( seed or ( os.time() + os.clock() * 1000000000 ) )
	
	-- На некоторых платформах при изменении зерна нет гарантий на случайность первых нескольких чисел
	random()
	random()
	
	seeded = true
end

return p