outfit looktype change
This commit is contained in:
parent
591f8c2c7c
commit
b7125738d8
|
@ -2,6 +2,8 @@ Outfit = {}
|
||||||
|
|
||||||
-- private variables
|
-- private variables
|
||||||
local window = nil
|
local window = nil
|
||||||
|
local outfits = nil
|
||||||
|
local currentOutfit = 1
|
||||||
|
|
||||||
-- public functions
|
-- public functions
|
||||||
function Outfit.test()
|
function Outfit.test()
|
||||||
|
@ -18,9 +20,13 @@ end
|
||||||
function Outfit.create(creature, outfitList)
|
function Outfit.create(creature, outfitList)
|
||||||
Outfit.destroy()
|
Outfit.destroy()
|
||||||
window = loadUI("/outfit/outfit.otui", UI.root)
|
window = loadUI("/outfit/outfit.otui", UI.root)
|
||||||
|
window:lock()
|
||||||
|
|
||||||
local creatureWidget = window:getChildById('creature')
|
local creatureWidget = window:getChildById('creature')
|
||||||
creatureWidget:setCreature(creature)
|
creatureWidget:setCreature(creature)
|
||||||
|
|
||||||
|
outfits = outfitList
|
||||||
|
currentOutfit = 1
|
||||||
end
|
end
|
||||||
|
|
||||||
function Outfit.destroy()
|
function Outfit.destroy()
|
||||||
|
@ -30,6 +36,30 @@ function Outfit.destroy()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function Outfit.nextType()
|
||||||
|
local creatureWidget = window:getChildById('creature')
|
||||||
|
currentOutfit = currentOutfit + 1
|
||||||
|
if currentOutfit > #outfits then
|
||||||
|
currentOutfit = 1
|
||||||
|
end
|
||||||
|
|
||||||
|
creatureWidget:setOutfitType(outfits[currentOutfit][1])
|
||||||
|
|
||||||
|
-- TODO: update addons
|
||||||
|
end
|
||||||
|
|
||||||
|
function Outfit.previousType()
|
||||||
|
local creatureWidget = window:getChildById('creature')
|
||||||
|
currentOutfit = currentOutfit - 1
|
||||||
|
if currentOutfit <= 0 then
|
||||||
|
currentOutfit = #outfits
|
||||||
|
end
|
||||||
|
|
||||||
|
creatureWidget:setOutfitType(outfits[currentOutfit][1])
|
||||||
|
|
||||||
|
-- TODO: update addons
|
||||||
|
end
|
||||||
|
|
||||||
-- private functions
|
-- private functions
|
||||||
|
|
||||||
-- hooked events
|
-- hooked events
|
||||||
|
|
|
@ -10,6 +10,22 @@ Window
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
margin.top: 30
|
margin.top: 30
|
||||||
margin.left: 20
|
margin.left: 20
|
||||||
|
|
||||||
|
Button
|
||||||
|
onClick: Outfit.previousType()
|
||||||
|
text: <<
|
||||||
|
width: 32
|
||||||
|
margin.top: 3
|
||||||
|
anchors.top: creature.bottom
|
||||||
|
anchors.left: creature.left
|
||||||
|
|
||||||
|
Button
|
||||||
|
onClick: Outfit.nextType()
|
||||||
|
text: >>
|
||||||
|
width: 32
|
||||||
|
margin.top: 3
|
||||||
|
anchors.top: creature.bottom
|
||||||
|
anchors.right: creature.right
|
||||||
|
|
||||||
HorizontalSeparator
|
HorizontalSeparator
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
|
|
|
@ -77,6 +77,8 @@ void OTClient::registerLuaFunctions()
|
||||||
g_lua.bindClassStaticFunction<UICreature>("create", &UICreature::create<UICreature>);
|
g_lua.bindClassStaticFunction<UICreature>("create", &UICreature::create<UICreature>);
|
||||||
g_lua.bindClassMemberFunction<UICreature>("getCreature", &UICreature::getCreature);
|
g_lua.bindClassMemberFunction<UICreature>("getCreature", &UICreature::getCreature);
|
||||||
g_lua.bindClassMemberFunction<UICreature>("setCreature", &UICreature::setCreature);
|
g_lua.bindClassMemberFunction<UICreature>("setCreature", &UICreature::setCreature);
|
||||||
|
g_lua.bindClassMemberFunction<UICreature>("setOutfitType", &UICreature::setOutfitType);
|
||||||
|
|
||||||
|
|
||||||
g_lua.registerClass<UIMap, UIWidget>();
|
g_lua.registerClass<UIMap, UIWidget>();
|
||||||
g_lua.bindClassStaticFunction<UIMap>("create", &UIWidget::create<UIMap>);
|
g_lua.bindClassStaticFunction<UIMap>("create", &UIWidget::create<UIMap>);
|
||||||
|
|
|
@ -50,3 +50,12 @@ void UICreature::onStyleApply(const OTMLNodePtr& styleNode)
|
||||||
|
|
||||||
UIWidget::onStyleApply(styleNode);
|
UIWidget::onStyleApply(styleNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void UICreature::setOutfitType(int outfitType)
|
||||||
|
{
|
||||||
|
if(m_creature) {
|
||||||
|
Outfit outfit = m_creature->getOutfit();
|
||||||
|
outfit.setType(outfitType);
|
||||||
|
m_creature->setOutfit(outfit);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -34,6 +34,8 @@ public:
|
||||||
void render();
|
void render();
|
||||||
|
|
||||||
void setCreature(const CreaturePtr& creature) { m_creature = creature; }
|
void setCreature(const CreaturePtr& creature) { m_creature = creature; }
|
||||||
|
void setOutfitType(int outfitType);
|
||||||
|
|
||||||
CreaturePtr getCreature() { return m_creature; }
|
CreaturePtr getCreature() { return m_creature; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
Loading…
Reference in New Issue