m (Dounford moved page Module:Random Text to Module:RandomText without leaving a redirect) |
Tag: Undo |
||
| (9 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
inspect = require("Module:InspectLua") | |||
local p = {} | local p = {} | ||
| Line 8: | Line 9: | ||
local args = frame:getParent().args | local args = frame:getParent().args | ||
local textArray = {} | local textArray = {} | ||
local allText = | local allText = args[1] | ||
for word in string.gmatch(allText, ' | for word in string.gmatch(allText, '[^\r\n]+') do | ||
table.insert(textArray, word) | table.insert(textArray, word) | ||
end | end | ||
| Line 15: | Line 16: | ||
math.randomseed(os.time()) | math.randomseed(os.time()) | ||
local randomIndex = math.random(table.getn(textArray)) | local randomIndex = math.random(table.getn(textArray)) | ||
return textArray[randomIndex] | return p.pp(textArray[randomIndex]) | ||
end | end | ||
return p | return p | ||
Latest revision as of 21:28, 5 December 2024
Template:RandomText is used like this:
{{RandomText <-- Template Name
|option 1 <-- You need to use a | before the first option
option 2 <-- Options are separated by new line
option n <-- There are no limit of options
}} <-- Don't forget to close the template
inspect = require("Module:InspectLua")
local p = {}
function p.pp(text)
return mw.getCurrentFrame():preprocess(text)
end
function p.randomizeText (frame)
local args = frame:getParent().args
local textArray = {}
local allText = args[1]
for word in string.gmatch(allText, '[^\r\n]+') do
table.insert(textArray, word)
end
math.randomseed(os.time())
local randomIndex = math.random(table.getn(textArray))
return p.pp(textArray[randomIndex])
end
return p