Модуль:ItemData/getter
Данная группа модулей хранит информацию обо всех предметах из Крушителей подземелий. Перечень модулей:
- Модуль:ItemData - основные функции
- Модуль:ItemData/data - массив данных о предметах
- Модуль:ItemData/getter - сборщик данных о предметах
- Модуль:ItemData/rarities - массив данных c редкостями предметов
- Модуль:ItemData/types - массив данных c типами предметов
- Модуль:ItemData/subtypes - массив данных c подтипами предметов
- Модуль:ItemData/abilities - массив данных с активными способностями для рун
- Модуль:ItemData/loot - массив данных с добычей сундуков
- Модуль:ItemData/loot/types - массив данных с типами добычи сундуков
- Модуль:ItemData/keys - массив данных с ключами от сундуков
- Модуль:ItemData/source - массив данных с типами источника получения предметов
- Модуль:ItemData/categories - массив данных с категориями предметов
Информация из Модуль:ItemData/doc
Данный модуль содержит все основные функции для получения определенных данных по предмету.
local p = {} local data = require('Module:ItemData/data') local rarity = require('Module:ItemData/rarities') local type = require('Module:ItemData/types') local subtype = require('Module:ItemData/subtypes') local ability = require('Module:ItemData/abilities') local loot = require('Module:ItemData/loot') local loot_type = require('Module:ItemData/loot/types') local key = require('Module:ItemData/keys') local source = require('Module:ItemData/source') local category = require('Module:ItemData/categories') function p.name(item) return data[item].name or item end function p.icon(item) return data[item].icon end function p.rarity(item) return rarity[data[item].rarity] end function p.description(item) return data[item].description end function p.type(item) return type[data[item].type] end function p.subtype(item) return subtype[data[item].subtype] end -- Table: [abilities] function p.abilities(item) local tbl = {} for _, v in ipairs(data[item].abilities) do table.insert(tbl, p.ability(v)) end return tbl end function p.ability(ability_value) return ability[ability_value] end function p.min_cost(item) return data[item].min_cost end function p.deposit(item) return data[item].deposit end function p.min_lvl(item) return data[item].min_lvl end -- Table: [loot] function p.loot(item) local tbl = {} for _, v in ipairs(data[item].loot) do table.insert(tbl, p.items(v[1], v[2], v[3])) end return tbl end function p.items(loot_id, count, type) local tbl = {} for _, v in ipairs(loot[loot_id]) do if v[2] == nil then v[2] = "" end table.insert(tbl, v) end return tbl end function p.loot_count(item) return table.maxn(data[item].loot) end function p.loot_data(item) local tbl = {} for _, v in ipairs(data[item].loot) do table.insert(tbl, v) end return tbl end function p.key(item) return key[data[item].key] end function p.source(item) return source[data[item].source] end function p.summon(item) return data[item].summon end function p.used_in_craft(item) return data[item].used_in_craft end -- Table: [categories] function p.categories(item) local tbl = {} if data[item].categories ~= nil then for k, v in pairs(data[item].categories) do table.insert(tbl, category[v]) end end return tbl end return p