Модуль:BossData/getter
Данная группа модулей хранит информацию обо всех боссах из Крушителей подземелий. Перечень модулей:
- Модуль:BossData - основные функции
- Модуль:BossData/data - массив данных о боссах
- Модуль:BossData/getter - сборщик данных о боссах
- Модуль:BossData/types - массив данных c типами боссов
Информация из Модуль:BossData/doc
Данный модуль содержит все основные функции для получения определенных данных по боссу.
local p = {}
local lib = require('Module:Feature')
local data = require('Module:BossData/data')
local race = require('Module:HeroData/races')
local type = require('Module:BossData/types')
function p.name(boss)
return data[boss].name or boss
end
function p.icon(boss)
return data[boss].icon
end
function p.race(boss)
return race[data[boss].race]
end
function p.type(boss)
return type[data[boss].type]
end
function p.time(boss)
return data[boss].time
end
function p.members(boss)
return data[boss].members
end
function p.hp_boss(boss)
return lib.comma_value(data[boss].hp)
end
function p.feature(boss)
return data[boss].feature
end
function p.points(boss)
return lib.comma_value(data[boss].points)
end
function p.points_mvp(boss)
return lib.comma_value(math.ceil(data[boss].points * 0.3))
end
function p.points_other(boss)
return lib.comma_value(math.ceil(data[boss].points * 0.05))
end
function p.summon(boss)
if data[boss].summon == nil then
data[boss].summon = ""
end
return data[boss].summon
end
function p.info(boss)
return data[boss].info
end
-- Table: [loot]
function p.loot(boss)
local tbl = {}
for _, v in ipairs(data[boss].loot) do
if v[2] == nil then
v[2] = ""
end
table.insert(tbl, v)
end
return tbl
end
-- Table: [guards]
function p.guards(boss)
local tbl = {}
for _, v in ipairs(data[boss].guards) do
table.insert(tbl, v)
end
return tbl
end
return p