Модуль:Песочница/Pok: различия между версиями
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
| Строка 34: | Строка 34: | ||
end | end | ||
local | -- Определяем дополнительный урон для двуручного хвата: | ||
-- проверяем поля IncreaseDamageOnWield или DamageOtherOnHit | |||
local additionalDamage = nil | |||
if entry.IncreaseDamageOnWield and entry.IncreaseDamageOnWield.damage then | |||
additionalDamage = entry.IncreaseDamageOnWield.damage.types | |||
elseif entry.DamageOtherOnHit and entry.DamageOtherOnHit.damage then | |||
additionalDamage = entry.DamageOtherOnHit.damage.types | |||
end | |||
local lines = {} | local lines = {} | ||
-- Секция одноручного хвата | |||
table.insert(lines, "В одноручном хвате:") | |||
for dmgType, value in pairs(oneHandDamage) do | |||
table.insert(lines, value .. " " .. dmgType) | |||
end | |||
-- Если дополнительный урон присутствует, суммируем его с базовым | |||
if additionalDamage then | |||
local twoHandDamage = {} | |||
-- Копируем базовые повреждения | |||
for dmgType, value in pairs(oneHandDamage) do | for dmgType, value in pairs(oneHandDamage) do | ||
twoHandDamage[dmgType] = value | |||
end | |||
-- Добавляем дополнительный урон | |||
for dmgType, addValue in pairs(additionalDamage) do | |||
if twoHandDamage[dmgType] then | |||
twoHandDamage[dmgType] = twoHandDamage[dmgType] + addValue | |||
else | |||
twoHandDamage[dmgType] = addValue | |||
end | |||
end | end | ||
table.insert(lines, "В двуручном хвате:") | table.insert(lines, "В двуручном хвате:") | ||
for dmgType, value in pairs(twoHandDamage) do | for dmgType, value in pairs(twoHandDamage) do | ||
table.insert(lines, value .. " " .. dmgType) | table.insert(lines, value .. " " .. dmgType) | ||
end | end | ||