Module:GetRandomCreature
Jump to navigation
Jump to search
Documentation for this module may be created at Module:GetRandomCreature/doc
local p = {}
local cargo = mw.ext.cargo
function p.decode(frame)
local subtype = string.sub(frame.args[1],0,1)
local stats = string.sub(frame.args[1],2,8)
local statsstring = "U"
local subtypetable = {['A'] = "Truekin", ['B'] = "Mutant"}
local statstable = {
['A'] = "6",
['B'] = "7",
['C'] = "8",
['D'] = "9",
['E'] = "10",
['F'] = "11",
['G'] = "12",
['H'] = "13",
['I'] = "14",
['J'] = "15",
['K'] = "16",
['L'] = "17",
['M'] = "18",
['N'] = "19",
['O'] = "20",
['P'] = "21",
['Q'] = "22",
['R'] = "23",
['S'] = "24",
['T'] = "25",
['U'] = "26",
['V'] = "27"}
for i=0,4,1
do
statsstring = statsstring .. " " .. statstable[string.sub(stats,i,1+i)]
end
return statsstring
end
function p.nonxmlparse(frame)
local a = string.gsub(frame.args[1],"(&)(%w)([^&\n]*)", function(_,color,text)
local luatable = {
['r'] = "#a64a2e",
['R'] = "#d74200",
['g'] = "#009403",
['G'] = "#00c420",
['b'] = "#0048bd",
['B'] = "#0096ff",
['c'] = "#40a4b9",
['C'] = "#77bfcf",
['m'] = "#b154cf",
['M'] = "#da5bd6",
['w'] = "#98875f",
['W'] = "#cfc041",
['k'] = "#0f3b3a",
['K'] = "#155352",
['y'] = "#b1c9c3",
['Y'] = "#FFFFFF",
['o'] = "#f15f22",
['O'] = "#e99f10"
}
return "<span style=\"color: " .. luatable[color] .. ";\">" .. text .. "</span>"
end)
return a
end
function p.parse(frame)
local b = string.gsub(frame.args[1],"([{}])", "")
local b = string.gsub(b,"(~J211)", "")
local a = string.gsub(b,"(&)(%w)([%^%w]?)([^&\n]*)", function(_,color,background,text)
local luatable = {
['r'] = "#a64a2e",
['R'] = "#d74200",
['g'] = "#009403",
['G'] = "#00c420",
['b'] = "#0048bd",
['B'] = "#0096ff",
['c'] = "#40a4b9",
['C'] = "#77bfcf",
['m'] = "#b154cf",
['M'] = "#da5bd6",
['w'] = "#98875f",
['W'] = "#cfc041",
['k'] = "#0f3b3a",
['K'] = "#155352",
['y'] = "#b1c9c3",
['Y'] = "#FFFFFF",
['o'] = "#f15f22",
['O'] = "#e99f10"
}
local bgluatable = {
["^r"] = "#a64a2e",
["^R"] = "#d74200",
["^g"] = "#009403",
["^G"] = "#00c420",
["^b"] = "#0048bd",
["^B"] = "#0096ff",
["^c"] = "#40a4b9",
["^C"] = "#77bfcf",
["^m"] = "#b154cf",
["^M"] = "#da5bd6",
["^w"] = "#98875f",
["^W"] = "#cfc041",
["^k"] = "#0f3b3a",
["^K"] = "#155352",
["^y"] = "#b1c9c3",
["^Y"] = "#FFFFFF",
["^o"] = "#f15f22",
["^O"] = "#e99f10",
}
local c = bgluatable[background]
if (c == nil or c == '')
then
c = "transparent"
end
return "<span style=\"color: " .. luatable[color] .. "; background: " .. c ..";\">" .. text .. "</span>"
end)
return a
end
return p