Module:Sprite: Difference between revisions

Jump to navigation Jump to search
It would help if EffectSprite aliases were accessed
(add else? maybe it set it once and wouldn't set it back? IDK (double alias attempt #2))
(It would help if EffectSprite aliases were accessed)
(19 intermediate revisions by 2 users not shown)
Line 5: Line 5:
local aliasData = {
local aliasData = {
vanillaAliases = [[Module:InventorySlot/Aliases]],
vanillaAliases = [[Module:InventorySlot/Aliases]],
gm4Aliases = [[Module:Gm4Sprite/Aliases]]
gm4Aliases = [[Module:Gm4Sprite/Aliases]],
effectAliases = [[Module:EffectSprite/Aliases]]
}
}


Line 11: Line 12:
local vanillaAliases = mw.loadData( aliasData.vanillaAliases )
local vanillaAliases = mw.loadData( aliasData.vanillaAliases )
local gm4Aliases = mw.loadData( aliasData.gm4Aliases )
local gm4Aliases = mw.loadData( aliasData.gm4Aliases )
local effectAliases = mw.loadData( aliasData.effectAliases )
local aliases
local aliases


Line 66: Line 68:
if not(source) then
if not(source) then
error("Unknown type: " .. tostring(type))
error("Unknown type: " .. tostring(type))
end
if tostring(type) == "gm4" then
aliases = gm4Aliases
    else
        aliases = vanillaAliases
end
end


Line 130: Line 126:
end
end


function Sprite:setItem(item)
function Sprite:setItem(item, type)
    -- set aliases
    if type == "gm4" then
        aliases = gm4Aliases
elseif type == "effect" then
aliases = effectAliases
    else
        aliases = vanillaAliases
    end
-- js-less plaintext title
-- js-less plaintext title
self.__settings.name = item
self.__settings.name = item
Line 149: Line 153:
elseif aliases[item].name then
elseif aliases[item].name then
self.__settings.title = aliases[item].name
self.__settings.title = aliases[item].name
end
if aliases[item].name ~= nil then
local itemName = aliases[item].name
self:setPosition(self.__source.ids[itemName].pos)
if self.__source.ids[itemName].spriteSheet then
self.__settings.image = getSpriteSheet(self.__source.ids[itemName].spriteSheet)
end
end
end
     else
     else
         self.__settings.title = item;
         self.__settings.title = item;
if self.__source.ids[item] then
self:setPosition(self.__source.ids[item].pos)
if self.__source.ids[item].spriteSheet then
            self.__settings.image = getSpriteSheet(self.__source.ids[item].spriteSheet)
        end
else
self:setPosition(nil) --will use default
end
end
end


if self.__source.ids[item] then
self:setPosition(self.__source.ids[item].pos)
else
self:setPosition(nil) --will use default
end
return self
return self
end
end


function Sprite:Item(item)
function Sprite:Item(item, type)
local sprite = {}
local sprite = {}
setmetatable(sprite, {__index = self})
setmetatable(sprite, {__index = self})
Line 168: Line 184:
setmetatable(settings, {__index = self.__settings})
setmetatable(settings, {__index = self.__settings})
sprite.__settings = settings
sprite.__settings = settings
return sprite:setItem(item)
return sprite:setItem(item, type)
end
end


Line 183: Line 199:
function Sprite:SetSize(size)
function Sprite:SetSize(size)
self.__settings.scale = size / self.__settings.size
self.__settings.scale = size / self.__settings.size
return self
end
function Sprite:SetTitle(name)
self.__settings.title = name
return self
end
function Sprite:SetLore(text)
self.__settings.lore = text
return self
end
function Sprite:HideTooltip()
self.__settings.hideTooltip = true
return self
return self
end
end
Line 226: Line 257:


sprite:addClass("sprite")
sprite:addClass("sprite")
sprite:addClass("masterTooltip")
 
if self.__settings.hideTooltip ~= true then
sprite:addClass("masterTooltip")
end


local source = self.__source
local source = self.__source
sprite:addClass(source.settings.classname)
sprite:addClass(source.settings.classname)
sprite:attr( "title", self.__settings.name )
 
if self.__settings.hideTooltip ~= true then
sprite:attr( "title", self.__settings.name )
end


sprite:attr( "data-title", self.__settings.title )
sprite:attr( "data-title", self.__settings.title )
Bureaucrats, Check users, emailconfirmed, Interface administrators, staff, Administrators, translation-admin, Widget editors
1,633

edits

Navigation menu