Exp bar on healthinfo module
This commit is contained in:
parent
b08d0ff157
commit
9c0c19b5b2
|
@ -20,15 +20,18 @@ Icons[65536] = { tooltip = tr('You are hungry'), path = '/images/game/states/hun
|
|||
healthInfoWindow = nil
|
||||
healthBar = nil
|
||||
manaBar = nil
|
||||
experienceBar = nil
|
||||
soulBar = nil
|
||||
healthLabel = nil
|
||||
manaLabel = nil
|
||||
experienceLabel = nil
|
||||
soulLabel = nil
|
||||
capLabel = nil
|
||||
|
||||
function init()
|
||||
connect(LocalPlayer, { onHealthChange = onHealthChange,
|
||||
onManaChange = onManaChange,
|
||||
onLevelChange = onLevelChange,
|
||||
onStatesChange = onStatesChange,
|
||||
onSoulChange = onSoulChange,
|
||||
onFreeCapacityChange = onFreeCapacityChange })
|
||||
|
@ -42,8 +45,10 @@ function init()
|
|||
healthInfoWindow:disableResize()
|
||||
healthBar = healthInfoWindow:recursiveGetChildById('healthBar')
|
||||
manaBar = healthInfoWindow:recursiveGetChildById('manaBar')
|
||||
experienceBar = healthInfoWindow:recursiveGetChildById('experienceBar')
|
||||
healthLabel = healthInfoWindow:recursiveGetChildById('healthLabel')
|
||||
manaLabel = healthInfoWindow:recursiveGetChildById('manaLabel')
|
||||
experienceLabel = healthInfoWindow:recursiveGetChildById('experienceLabel')
|
||||
soulBar = healthInfoWindow:recursiveGetChildById('soulBar')
|
||||
soulLabel = healthInfoWindow:recursiveGetChildById('soulLabel')
|
||||
capLabel = healthInfoWindow:recursiveGetChildById('capLabel')
|
||||
|
@ -52,6 +57,7 @@ function init()
|
|||
local localPlayer = g_game.getLocalPlayer()
|
||||
onHealthChange(localPlayer, localPlayer:getHealth(), localPlayer:getMaxHealth())
|
||||
onManaChange(localPlayer, localPlayer:getMana(), localPlayer:getMaxMana())
|
||||
onLevelChange(localPlayer, localPlayer:getLevel(), localPlayer:getLevelPercent())
|
||||
onStatesChange(localPlayer, localPlayer:getStates(), 0)
|
||||
onSoulChange(localPlayer, localPlayer:getSoul())
|
||||
onFreeCapacityChange(localPlayer, localPlayer:getFreeCapacity())
|
||||
|
@ -63,6 +69,7 @@ end
|
|||
function terminate()
|
||||
disconnect(LocalPlayer, { onHealthChange = onHealthChange,
|
||||
onManaChange = onManaChange,
|
||||
onLevelChange = onLevelChange,
|
||||
onStatesChange = onStatesChange,
|
||||
onSoulChange = onSoulChange,
|
||||
onFreeCapacityChange = onFreeCapacityChange })
|
||||
|
@ -90,6 +97,13 @@ function hideLabels()
|
|||
healthInfoWindow:setHeight(math.max(healthInfoWindow.minimizedHeight, healthInfoWindow:getHeight() - removeHeight))
|
||||
end
|
||||
|
||||
function hideExperience()
|
||||
experienceBar:hide()
|
||||
experienceLabel:hide()
|
||||
local removeHeight = experienceBar:getHeight() + experienceBar:getMarginTop() + experienceBar:getMarginBottom()
|
||||
healthInfoWindow:setHeight(math.max(healthInfoWindow.minimizedHeight, healthInfoWindow:getHeight() - removeHeight))
|
||||
end
|
||||
|
||||
function onMiniWindowClose()
|
||||
healthInfoButton:setOn(false)
|
||||
end
|
||||
|
@ -116,6 +130,11 @@ function onManaChange(localPlayer, mana, maxMana)
|
|||
manaBar:setPercent(percent)
|
||||
end
|
||||
|
||||
function onLevelChange(localPlayer, value, percent)
|
||||
experienceLabel:setText(percent .. "%")
|
||||
experienceBar:setPercent(percent)
|
||||
end
|
||||
|
||||
function onSoulChange(localPlayer, soul)
|
||||
soulLabel:setText(tr('Soul') .. ': ' .. soul)
|
||||
end
|
||||
|
@ -152,4 +171,3 @@ function toggleIcon(bitChanged)
|
|||
icon:setTooltip(Icons[bitChanged].tooltip)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -15,6 +15,15 @@ ManaBar < ProgressBar
|
|||
anchors.right: parent.right
|
||||
margin-top: 4
|
||||
|
||||
ExperienceBar < ProgressBar
|
||||
id: experienceBar
|
||||
height: 15
|
||||
background-color: yellow
|
||||
anchors.top: prev.bottom
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
margin-top: 4
|
||||
|
||||
HealthLabel < GameLabel
|
||||
id: healthLabel
|
||||
color: white
|
||||
|
@ -33,6 +42,15 @@ ManaLabel < GameLabel
|
|||
margin-top: 2
|
||||
text: 0 / 0
|
||||
|
||||
ExperienceLabel < GameLabel
|
||||
id: experienceLabel
|
||||
color: white
|
||||
text-align: center
|
||||
font: verdana-11px-rounded
|
||||
anchors.fill: experienceBar
|
||||
margin-top: 2
|
||||
text: 0 / 0
|
||||
|
||||
SoulLabel < GameLabel
|
||||
id: soulLabel
|
||||
text-align: right
|
||||
|
@ -66,7 +84,7 @@ MiniWindow
|
|||
icon: /images/topbuttons/healthinfo
|
||||
id: healthInfoWindow
|
||||
!text: tr('Health Info')
|
||||
height: 102
|
||||
height: 117
|
||||
@onClose: modules.game_healthinfo.onMiniWindowClose()
|
||||
&save: true
|
||||
|
||||
|
@ -75,6 +93,8 @@ MiniWindow
|
|||
HealthLabel
|
||||
ManaBar
|
||||
ManaLabel
|
||||
ExperienceBar
|
||||
ExperienceLabel
|
||||
Panel
|
||||
id: conditionPanel
|
||||
layout:
|
||||
|
|
Loading…
Reference in New Issue