Module:GetRandomCreature: Difference between revisions

From Caves of Qud Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 8: Line 8:
local subtypetable = {['A'] = "Truekin", ['B'] = "Mutant"}
local subtypetable = {['A'] = "Truekin", ['B'] = "Mutant"}
local statstable = {
local statstable = {
['A'] = 6,
['A'] = "6",
['B'] = 7,
['B'] = "7",
['C'] = 8,
['C'] = "8",
['D'] = 9,
['D'] = "9",
['E'] = 10,
['E'] = "10",
['F'] = 11,
['F'] = "11",
['G'] = 12,
['G'] = "12",
['H'] = 13,
['H'] = "13",
['I'] = 14,
['I'] = "14",
['J'] = 15,
['J'] = "15",
['K'] = 16,
['K'] = "16",
['L'] = 17,
['L'] = "17",
['M'] = 18,
['M'] = "18",
['N'] = 19,
['N'] = "19",
['O'] = 20,
['O'] = "20",
['P'] = 21,
['P'] = "21",
['Q'] = 22,
['Q'] = "22",
['R'] = 23,
['R'] = "23",
['S'] = 24,
['S'] = "24",
['T'] = 25,
['T'] = "25",
['U'] = 26,
['U'] = "26",
['V'] = 27}
['V'] = "27"}


for i=0,5,1
for i=0,5,1

Revision as of 15:43, 14 July 2019

Documentation for this module may be created at Module:GetRandomCreature/doc

local p = {}
local cargo = mw.ext.cargo

function p.parse(frame)
local subtype = string.sub(frame.args[1],0,1)
local stats = string.sub(frame.args[1],2,8)
local statsstring = ""
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,5,1
do
statsstring = statsstring .. " " .. statstable[string.sub(stats,i,1+i)]
end

return subtypetable[subtype] .. ' stats: ' .. 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

return p