메뉴 여닫기
37
87
11
1.6천
Project ZETA Wiki
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

모듈:CodexData: 두 판 사이의 차이

Project ZETA Wiki
내용 삭제됨 내용 추가됨
고플레이어 (토론 | 기여)
편집 요약 없음
태그: 수동 되돌리기
하나나 (토론 | 기여)
편집 요약 없음
 
(사용자 2명의 중간 판 17개는 보이지 않습니다)
2번째 줄: 2번째 줄:
local codexData = mw.loadData('Module:CodexData/data')
local codexData = mw.loadData('Module:CodexData/data')


local function subd_n(data)
local function dcat(data)
return end
if type(data) ~= 'table' then return data end
local result = {}

local function subd_d(data)
for index, value in ipairs(data) do
return end
if data[index + 1] == nil then
table.insert(result, "'''" .. tostring(value) .. "'''")
else
if i == 4 then table.insert(result, "<span class='t-bold'>..value..</span>")
else table.insert(result, value)
end
end
end
return table.concat(result, ' / ')
end


local funcs = {
local funcs = {
14번째 줄: 25번째 줄:
['cost'] = function(data) return data.cost or '' end,
['cost'] = function(data) return data.cost or '' end,
['stat_n1'] = function(data) return data.stats and data.stats[1] and data.stats[1].name or '' end,
['stat_n1'] = function(data) return data.stats and data.stats[1] and data.stats[1].name or '' end,
['stat_d1'] = function(data) return data.stats and data.stats[1] and table.concat(data.stats[1].data, ' / ') or '' end,
['stat_d1'] = function(data) return data.stats and data.stats[1] and dcat(data.stats[1].data) or '' end,
['stat_n2'] = function(data) return data.stats and data.stats[2] and data.stats[2].name or '' end,
['stat_n2'] = function(data) return data.stats and data.stats[2] and data.stats[2].name or '' end,
['stat_d2'] = function(data) return data.stats and data.stats[2] and table.concat(data.stats[2].data, ' / ') or '' end,
['stat_d2'] = function(data) return data.stats and data.stats[2] and dcat(data.stats[2].data) or '' end,
['unlock_t2'] = function(data) return data.unlocks and data.unlocks.unlock_t2 or '' end,
['unlock_t2'] = function(data) return data.unlocks and data.unlocks.unlock_t2 and string.gsub(data.unlocks.unlock_t2, "{([%w_-]+):(.-)}", "<span class='t-%1'>%2</span>") or '' end,
['unlock_t4'] = function(data) return data.unlocks and data.unlocks.unlock_t4 or '' end,
['unlock_t4'] = function(data) return data.unlocks and data.unlocks.unlock_t4 and string.gsub(data.unlocks.unlock_t4, "{([%w_-]+):(.-)}", "<span class='t-%1'>%2</span>") or '' end,
['subd_n'] = function(data) return data.unlocks and data.unlocks.sub_desc and data.unlocks.sub_desc.name or '' end,
['subd_n'] = function(data) return data.unlocks and data.unlocks.sub_desc and data.unlocks.sub_desc.name or '' end,
['subd_d'] = function(data) return data.unlocks and data.unlocks.sub_desc and data.unlocks.sub_desc.desc or '' end,
['subd_d'] = function(data) return data.unlocks and data.unlocks.sub_desc and string.gsub(data.unlocks.sub_desc.desc, "{([%w_-]+):(.-)}", "<span class='t-%1'>%2</span>") or '' end,
}
}


29번째 줄: 40번째 줄:
function p.get(frame)
function p.get(frame)
local args = frame.args
local args = frame.args
return funcs[args.datatype](getData(args.champname, codexData))
local result = funcs[args.datatype](getData(args.champname, codexData))
return frame:preprocess(result)
end
end



2026년 5월 22일 (금) 07:52 기준 최신판

이 모듈에 대한 설명문서는 모듈:CodexData/설명문서에서 만들 수 있습니다

local p = {}
local codexData = mw.loadData('Module:CodexData/data')

local function dcat(data)
	if type(data) ~= 'table' then return data end
	local result = {}
	
	for index, value in ipairs(data) do
		if data[index + 1] == nil then
			table.insert(result, "'''" .. tostring(value) .. "'''")
		else
			if i == 4 then table.insert(result, "<span class='t-bold'>..value..</span>")
			else table.insert(result, value)
			end
		end
	end
	
	return table.concat(result, ' / ')
end

local funcs = {
    ['name']		= function(data) return data.name or '' end,
    ['title']		= function(data) return data.title or '' end,
    ['type']		= function(data) return data.type or '' end,
    ['cost']		= function(data) return data.cost or '' end,
    ['stat_n1']		= function(data) return data.stats and data.stats[1] and data.stats[1].name or '' end,
    ['stat_d1']		= function(data) return data.stats and data.stats[1] and dcat(data.stats[1].data) or '' end,
    ['stat_n2']		= function(data) return data.stats and data.stats[2] and data.stats[2].name or '' end,
    ['stat_d2']		= function(data) return data.stats and data.stats[2] and dcat(data.stats[2].data) or '' end,
    ['unlock_t2']	= function(data) return data.unlocks and data.unlocks.unlock_t2 and string.gsub(data.unlocks.unlock_t2, "{([%w_-]+):(.-)}", "<span class='t-%1'>%2</span>") or '' end,
    ['unlock_t4']   = function(data) return data.unlocks and data.unlocks.unlock_t4 and string.gsub(data.unlocks.unlock_t4, "{([%w_-]+):(.-)}", "<span class='t-%1'>%2</span>") or '' end,
    ['subd_n']		= function(data) return data.unlocks and data.unlocks.sub_desc and data.unlocks.sub_desc.name or '' end,
    ['subd_d']		= function(data) return data.unlocks and data.unlocks.sub_desc and string.gsub(data.unlocks.sub_desc.desc, "{([%w_-]+):(.-)}", "<span class='t-%1'>%2</span>") or '' end,
}

local function getData(champname, data)
	return data[champname] or {}
end

function p.get(frame)
	local args = frame.args
	local result = funcs[args.datatype](getData(args.champname, codexData))
	
	return frame:preprocess(result)
end

return p