Bugfix add random generation
Add a file that holds all the random generation for things like usernames and posts.
This commit is contained in:
parent
37a9bbd63d
commit
de76d31fe8
|
@ -0,0 +1,44 @@
|
||||||
|
local rng = {}
|
||||||
|
function rng.markup() return math.random() > 0.5 and "plain" or "imageboard" end
|
||||||
|
function rng.generate_str(length,characters)
|
||||||
|
return function()
|
||||||
|
local t = {}
|
||||||
|
local rnglength = math.random(2,length)
|
||||||
|
for i = 1,rnglength do
|
||||||
|
local rngpos = math.random(#characters)
|
||||||
|
local rngchar = string.sub(characters,rngpos,rngpos)
|
||||||
|
table.insert(t,rngchar)
|
||||||
|
end
|
||||||
|
local ret = table.concat(t)
|
||||||
|
return ret
|
||||||
|
end
|
||||||
|
end
|
||||||
|
function rng.characters(mask)
|
||||||
|
local t = {}
|
||||||
|
for i = 1,255 do
|
||||||
|
if string.match(string.char(i), mask) then
|
||||||
|
table.insert(t,string.char(i))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return table.concat(t)
|
||||||
|
end
|
||||||
|
function rng.maybe(input,chance)
|
||||||
|
chance = chance or 0.5
|
||||||
|
if math.random() < chance then
|
||||||
|
return input
|
||||||
|
end
|
||||||
|
end
|
||||||
|
rng.any = rng.generate_str(1024,rng.characters("."))
|
||||||
|
rng.subdomain = rng.generate_str(30,rng.characters("[0-9a-z]"))
|
||||||
|
rng.storyname = rng.generate_str(10,"[a-zA-Z0-9$+!*'(),-]")
|
||||||
|
rng.storyid = function() return tostring(math.random(1,10)) end
|
||||||
|
rng.tags = function()
|
||||||
|
local tag_gen = rng.generate_str(10,"[%w%d ]")
|
||||||
|
local t = {}
|
||||||
|
for i = 1,10 do
|
||||||
|
table.insert(t,tag_gen())
|
||||||
|
end
|
||||||
|
return table.concat(t,";")
|
||||||
|
end
|
||||||
|
|
||||||
|
return rng
|
Loading…
Reference in New Issue