Модуль:Entity Sprite: различия между версиями
Pok (обсуждение | вклад) Нет описания правки |
Pok (обсуждение | вклад) Нет описания правки |
||
| Строка 21: | Строка 21: | ||
end | end | ||
-- Функция получения пути спрайта | |||
-- Функция получения пути спрайта | |||
local function getSpritePath(entry) | local function getSpritePath(entry) | ||
return entry.sprite | |||
end | end | ||
| Строка 84: | Строка 50: | ||
local spritePath = getSpritePath(entry) | local spritePath = getSpritePath(entry) | ||
if | if entry.layers then | ||
for _, layer in ipairs(entry.layers) do | |||
if layer.state and isLayerVisibleAndShaded(layer) then | |||
if | |||
local s = layer.sprite or spritePath | local s = layer.sprite or spritePath | ||
addState(layer.state, s) | addState(layer.state, s) | ||
| Строка 136: | Строка 75: | ||
end | end | ||
for | for entityId, entry in pairs(spriteData) do | ||
if | if entityId == id then | ||
if mode == "image" then | if mode == "image" then | ||
local sprite = getSpritePath(entry) | local sprite = getSpritePath(entry) | ||
| Строка 143: | Строка 82: | ||
elseif mode == "path" then | elseif mode == "path" then | ||
if getSpritePath(entry) == id then | if getSpritePath(entry) == id then | ||
return | return entityId | ||
end | end | ||
elseif mode == "state" then | elseif mode == "state" then | ||