← 모듈:궤적시리즈/하늘의 궤적/캐릭터 스테이터스문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자. 문서의 원본을 보거나 복사할 수 있습니다. local p = {} -- 쉼표로 구분된 문자열을 숫자 배열로 변환 local function parseValues(str) local values = {} for val in string.gmatch(str or "", "([^,]+)") do table.insert(values, val) end return values end function p.renderCharacterStats(frame) local stats = { {name="HP", vals=parseValues(frame.args.HP)}, {name="STR", vals=parseValues(frame.args.STR)}, {name="DEF", vals=parseValues(frame.args.DEF)}, {name="ATS", vals=parseValues(frame.args.ATS)}, {name="ADF", vals=parseValues(frame.args.ADF)}, {name="DEX", vals=parseValues(frame.args.DEX)}, {name="AGL", vals=parseValues(frame.args.AGL)}, {name="MOV", vals=parseValues(frame.args.MOV)}, {name="RNG", vals=parseValues(frame.args.RNG)}, {name="SPD", vals=parseValues(frame.args.SPD)}, {name="명중률+", vals=parseValues(frame.args.HIT)}, {name="필살률+", vals=parseValues(frame.args.CRT)}, {name="회피율+", vals=parseValues(frame.args.EVA)}, {name="마법회피율+", vals=parseValues(frame.args.MEVA)} } local html = mw.html.create("div") :css("display","flex") :css("flex-wrap","wrap") :css("gap","10px") :css("justify-content","center") :css("align-items","flex-start") local function makeTable(tblStats) local tbl = mw.html.create("table") :addClass("wikitable") :css("flex","1") :css("min-width","300px") :css("text-align","center") :css("border-collapse","separate") :css("border-spacing","0") :css("margin","0") :css("border-radius","8px") :css("overflow","hidden") -- 헤더 local tr = tbl:tag("tr") local headers = {"능력치", "성장치", "Lv1", "Lv50", "Lv120"} local widths = {"30%", "17.5%", "17.5%", "17.5%", "17.5%"} for i, header in ipairs(headers) do tr:tag("th") :css("background-color","#2E3B84") :css("color","white") :css("font-weight","bold") :css("padding","8px") :css("width",widths[i]) :wikitext(header) end -- 행 for i, stat in ipairs(tblStats) do local tr = tbl:tag("tr") -- 능력치 이름 tr:tag("td") :css("background-color","#446DFF") :css("color","white") :css("font-weight","bold") :css("text-align","left") :css("padding","6px") :wikitext(stat.name) -- 입력값: 홀짝행 배경색 local bg = (i % 2 == 1) and "#EDF3FF" or "" for j=1,4 do tr:tag("td") :css("background-color",bg) :css("padding","6px") :css("width","17.5%") :wikitext(stat.vals[j] or "") end end return tbl end html:node(makeTable({unpack(stats,1,7)})) -- 왼쪽 html:node(makeTable({unpack(stats,8,14)})) -- 오른쪽 return tostring(html) end return p 이 문서에서 사용한 틀: 모듈:궤적시리즈/하늘의 궤적/캐릭터 스테이터스/설명문서 (원본 보기) 모듈:궤적시리즈/하늘의 궤적/캐릭터 스테이터스 문서로 돌아갑니다.