--[[本模塊中的《少女前線:雲圖計劃》內的描述文本,
其文字著作權屬於上海暗冬網絡科技有限公司/上海散爆網絡科技有限公司,
萌娘百科僅以介紹為目的引用]]
local effects = {
--[[
按第一個字的拼音排序,第一個字拼音相同時,比較後一個字,以此類推
每行格式:
['效果名'] = { '描述' },
['效果名'] = { '描述', '+/-', icon = '字符' }, --增益為'+',減益為'-'
增益/減益、icon為可選
每行最後一個逗號很關鍵!如果不是最後一個表項,請務必帶上逗號
]]
--A
--B
['霸體'] = { '移除當前已有控制類效果,免疫控制類效果(除驅逐、壓制、強制位移外)', '+' },
['冰凍'] = { '移速降低50%,每層攻速降低2點,上限10層,持續5秒', '-' },
--C
['嘲諷'] = { '使目標強制攻擊嘲諷釋放者,嘲諷期間無法釋放技能,控制效果,減益', '-' },
['持續技能'] = { '技能持續期間,技能充能暫停' },
['傳導傷害'] = { '傷害值不受物理防禦和算量防禦影響,不會觸發反傷,生命偷取等傷害相關效果,也不會作為觸發函數和技能的傷害條件,也不會受到傷害加成和傷害減免的影響' },
--D
['定身'] = { '無法移動,控制效果,減益', '-' },
--E
--F
['防禦'] = { '防禦提升5%,可疊加5層,增益', '+' },
--G
['鼓樂僚機'] = { '召喚物,繼承溫蒂妮75%攻擊和算力,100%物理防禦和算量防禦,60%最大生命值。近戰戰士,普攻對自身周圍1格敵人造成50%算力的算量傷害' },
['管樂僚機'] = { '召喚物,繼承溫蒂妮75%攻擊和算力,50%物理防禦和算量防禦,40%最大生命值。遠程射手,普攻發射穿透子彈,造成50%算力的算量傷害,若目標生命值低於50%,則造成75%算力的算量傷害' },
--H
['護盾'] = { '受傷時優先對護盾造成傷害,護盾值不享受治療效果', '+', icon = nil },
--I
--J
['擊飛'] = { '強制目標浮空,無法行動,打斷普攻和技能,控制效果,減益', '-' },
['集火'] = { '所有角色強制攻擊該目標,近戰角色將會自動尋路攻擊,結束後重新檢索攻擊目標', '-' },
['汲取'] = { '降低目標某屬性,自身受到對應的提升,不可疊加', '+' },
['擊退'] = { '打斷並強制目標向某方向位移一段距離,控制效果,減益', '-' },
['繳械'] = { '打斷普攻和技能施放,持續期間無法普攻且無法釋放技能,控制效果,減益', '-' },
['禁錮'] = { '無法行動,打斷普攻和技能,控制效果,減益', '-' },
--K
['看護'] = { '每層提供16%減傷,每次受傷時,看護效果移除一層,增益', '+' },
['抗菌層'] = { '在最低持續時間內免疫減益效果,最低持續時間後抵擋1次減益效果消失' },
['控制'] = { '影響目標行為的減益效果,包括但不限於眩暈,沉默,嘲諷,繳械,擊退,擊飛等', '-' },
['狂歡'] = { '無法成為敵方目標並且攻速提升50點,本狀態中技能充能暫停,增益', '+' },
--L
['烈灼'] = { '疊加至4層時引爆,每層提供添加者40%算力的真實傷害,引爆後留下【燒傷】印記,最高疊加5層', '-', icon = nil },
['黎明加護'] = { '對於熵化怪物造成傷害額外提升15%,受到淨化者怪物的傷害降低15%', '+' },
--M
['魅惑'] = { '攻擊目標變為友方單位,打斷技能釋放並暫停自動技能充能,控制效果,減益', '-' },
['面具特性'] = { '造成的傷害無法閃避以及被傷害屏障抵消,但可以通過函數等特殊手段進行暴擊' },
['木馬'] = { '攻速降低10點,減益', '-' },
--N
--O
--P
--Q
--R
['燃解'] = { '每秒每層造成基於釋放者10%算力的燃解傷害「衍生」「狀態傷害」,持續8秒,上限5層', '-' },
['燃解傷害'] = { '特殊傷害類型,能夠被增加或減少' },
--S
['失血'] = { '每秒受到目標最大生命0.2%的<span class="pnc-red">物理傷害「衍生」</span>,最高不超過場中人形最高攻擊力/算力的10%,持續5秒,上限10層,狀態傷害,減益', '-', icon = nil },
['屬性轉換'] = { '末宵的暴擊率和額外暴擊傷害會轉化為加快充能速度,轉化後將不再擁有該屬性:每1%暴擊率加快0.8%充能速度,每1%額外暴擊傷害加快0.4%充能速度' },
--T
--U
--V
--W
['無法暴擊'] = { '該傷害無法通過常規手段暴擊,但可以通過函數等特殊手段暴擊' },
--X
['效果抵抗'] = { '減少減益效果持續時間', '+' },
['眩暈'] = { '無法行動,打斷技能釋放並暫停自動技能充能,控制效果,減益', '-' },
['曉光澄澈'] = { '自身的源生技能造成傷害時,傷害倍率按照攻擊力和算力中更高的一方結算;傷害類型按照造成更高的傷害類型進行結算(包含計算對應類型的防禦、易傷、穿透等)', '+' },
--Y
['衍生傷害'] = { '傷害值受到物理防禦和算量防禦影響,不會觸發反傷、生命偷取等傷害相關效果,也不會作為觸發函數和技能的傷害條件' }, --刻意改正標點
['隱身'] = { '無法成為敵方目標,增益', '+' },
['引導'] = { '引導期間無法普攻;引導會因自身被控制、位移、丟失目標或釋放終極技所打斷' },
['源生技能'] = { '角色天生自帶的技能,不包含函數技能、算法技能、協議技能等' },
--Z
['召喚物'] = { '召喚物僅受到角色屬性的加成,不會直接受到函數或者協議的效果' },
['真實傷害'] = { '傷害值不受物理防禦和算量防禦的影響,不會觸發反傷、生命偷取等傷害相關效果,也不會作為觸發函數和技能的傷害條件,但會受到傷害加成和傷害減免的影響' }, --刻意改正標點
['直接傷害'] = { '由技能或普攻造成的非狀態傷害' },
['致盲'] = { '普攻有80%的概率被閃避,減益', '-', icon = nil },
['致傷'] = { '無法移動,攻擊力和算力下降10%,控制效果,減益', '-' },
['重傷'] = { '受到治療效果降低5%,上限10層,減益', '-' },
['狀態傷害'] = { '由流血、反傷,或者地格等造成的傷害' }, --刻意改正標點
}
-------- 分割線 --------
--下面的代碼,若只是補充效果描述,則不要動它
local p = { effects = effects }
function p.main(frame)
local wrappers = { ['Template:雲圖計劃效果'] = true }
local parent = frame:getParent()
if parent and wrappers[parent:getTitle()] then
frame = parent
end
return p._main(frame.args)
end
function p._main(args)
local dlInner = {}
for _, effectName in ipairs(args) do
effectName = mw.text.trim(effectName)
if effectName ~= '' then
local effect = effects[effectName]
if effect then
--div
local divClass = ''
if (effect[2] == '+') then
divClass = ' class="pnc-pEffect"'
elseif (effect[2] == '-') then
divClass = ' class="pnc-nEffect"'
end
--dt
local dt = effectName
if effect.icon then
dt = '<span class="pnc-icon" data-icChar="'..effect.icon..'"></span>'..dt
end
--dd
local dd = effect[1]
table.insert(dlInner, string.format('<div%s><dt>%s</dt><dd>%s</dd></div>', divClass, dt, dd))
else --未匹配到效果
table.insert(dlInner, '<div><dt><strong class="error">錯誤</strong></dt><dd>效果“'..effectName..'”不在預設中,可能是輸入錯誤或預設缺失</dd></div>')
end
end
end
if not dlInner[1] then
dlInner[1] = '<div><dt><strong class="warning">警告</strong></dt><dd>未輸入有效內容</dd></div>'
end
return '<dl class="pnc-effects" style="gap:.5em">'..table.concat(dlInner)..'</dl>'
end
return p