Модуль:Элементы игры
Материал из Playzone Minecraft Wiki
Для документации этого модуля может быть создана страница Модуль:Элементы игры/doc
-- Текстовые идентификаторы элементов игры.
local p = {}
local rettypes = {["тип"] = "type", ["type"] = "type", ["идентификатор"] = "id", ["ид"] = "id", ["id"] = "id", [""] = "id"}
-- Получение данных (вариант для внутреннего использования; именно его нужно использовать в модулях)
function p._get(name)
local thing = mw.ustring.gsub(mw.ustring.lower(mw.text.trim(name or "")), "[_%(%)%s]+", "-")
local database = mw.loadData("Модуль:Элементы игры/Данные")
return database[thing]
end
-- Получение данных (вариант для общего использования за пределами модулей).
function p.get(f)
local args = f
if f == mw.getCurrentFrame() then
args = require("Модуль:ProcessArgs").merge(true)
end
local fullretval = p._get(args[1])
local _rettype = mw.text.trim(args[2] or "")
local rettype = rettypes[_rettype]
if rettype == "id" then -- текстовый идентификатор, значение по умолчанию
retval = fullretval.id
elseif rettype == "type" then -- тип предмета
retval = fullretval.type
else
error("Непонятный тип запрашиваемых данных: " .. _rettype)
end
return retval
end