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