Module:AbnormalityPage
Jump to navigation
Jump to search
Documentation for this module may be created at Module:AbnormalityPage/doc
local getArgs = require('Module:Arguments').getArgs
local p = {}
local AbnormalityPageData = mw.loadData('Module:AbnoPageData/Data')
function p.abnormalitypageMain(frame)
local res = ''
local args = getArgs(frame)
local data = {} --All AbnormalityPage Data
local name = '' --AbnormalityPage Name
local level = ''
local ID = ''
local color = '' --AbnormalityPage color
name = args['1']
--All Data
data = AbnormalityPageData[name]
ID = name
if data == nil then return '[[Category:AbnormalityPageTemplateError]]<b style="color: red;">(Template:AbnormalityPage)non-existing Abnormalitypage,please check if you enabled CAPS LOCK.</b>' end--Might needs to be adjust.I'm not good at EN:(
--Color
if data['state'] == 'Awakening' then color = 'green'
elseif data['state'] == 'Breakdown' then color = 'red'
end
if data['emotion_level'] == '1' then level = 'Ⅰ'
elseif data['emotion_level'] == '2' then level = 'Ⅱ'
elseif data['emotion_level'] == '3' then level = 'Ⅲ'
end
local navbox = args['navbox']
local link = ''
if navbox == 'true' then
link = link .. '[[' .. (name) .. '|' .. '<span style="color: '
if color == 'green' then link = link .. '#ADFEA3'
elseif color == 'red' then link = link .. 'red'
end
link = link .. ';"><b>' .. (level) .. ' ' .. (args['2'] or name) .. '</b></span>]]'
else
link = link .. '[[' .. (name) .. '|' .. '<span style="color: '
if color == 'green' then link = link .. '#ADFEA3'
elseif color == 'red' then link = link .. 'red'
end
link = link .. ';">' .. (args['2'] or name) .. '</span>]]'
end
res = res .. '<span class="abnormalitypage-main" data-pageid="' .. ID .. '">'
res = res .. '<span class="abnormalitypage-responder">' .. link .. '</span>'
res = res .. '</span>'
return res
end
function p.textTrans(text)
local art = text
art = string.gsub(art, '%s', '')
return art
end
function p.abnormalitypageTooltip(frame)
local res = ''
local args = getArgs(frame)
local data = {} --All data of abn page
local name = '' --abn name
local color = '' --abn color
local level = '' --abn level
local desc = '' --abn desc
local flavortext = '' --abn flavortext
local art = '' --abn art
--All data
data = AbnormalityPageData[args['ID']]
name = args['ID']
--level
if data['emotion_level'] == '1' then level = 'Ⅰ'
elseif data['emotion_level'] == '2' then level = 'Ⅱ'
elseif data['emotion_level'] == '3' then level = 'Ⅲ'
end
desc = data['desc']
flavortext = data['flavortext']
--color
if data['state'] == 'Awakening' then color = 'green'
elseif data['state'] == 'Breakdown' then color = 'red'
end
art = p.textTrans(args['ID'])
res = res .. '<span class="abnormalitypage-tooltip-main abnormalitypage-color-' .. color .. '">'
res = res .. '<span class="abnormalitypage-color-background"></span>'
res = res .. '<span class="abnormalitypage-tooltip-left">'
res = res .. '<span class="abnormalitypage-level">' .. level .. '</span>'
res = res .. '<span class="abnormalitypage-name">' .. name .. '</span>'
res = res .. '<span class="abnormalitypage-image">[[File:Abnopage ' .. art .. '.png|250px|link=]]</span>'
res = res .. '<span class="abnormalitypage-cover"></span>'
res = res .. '<span class="abnormalitypage-desc">' .. flavortext .. '</span>'
res = res .. '</span>'
res = res .. '<span class="abnormalitypage-tooltip-right">'
res = res .. '<span class="abnormalitypage-tooltip-right-content">' .. desc .. '</span>'
res = res .. '</span>'
res = res .. '</span>'
return res
end
return p