Wenas me uno al tema de la funciones , aqui os dejo una que utilize hace poco para complementar el math.random, con ella haces random de una secuencia de numeros y devuelve una tbla con todos los numeros de la secuencia sin repetirlos pero en orden aleatorio:
Seguro se puede mejorar , espero os sirva
function Math.NotRepeatRandom(num1,num2)
local tblNumbers = {}
local low=num1
local upp=num2
local num;
local exists
for c=low, upp do
repeat
num=Math.Random(low, upp)
exists=false
for index,item in pairs (tblNumbers) do
if item==num then exists=true end
end
until not exists
tblNumbers[c]=num
end
return tblNumbers
end