Hello guys, first sorry for my bad english. Thank you for share, i have just one reservation.
Its a centering of string.
Your centering is not good because if i have lenght > 1, i have the result more left.
Here is my proposal to improvement
startNumber = 0
for slot in self.quickslot:
for i in xrange(4):
slotNumber = i+startNumber
(Type, Position) = player.GetLocalQuickSlot(slotNumber)
if player.IsSkillCoolTime(Position):
(coolTime, elapsedTime) = player.GetSkillCoolTime(Position)
slot.SetSlotCoolTime(slotNumber, coolTime, elapsedTime)
cooldownDelay = 0
cooldown = int(coolTime-elapsedTime+cooldownDelay)
self.cooldownText[slotNumber].SetOutline()
self.cooldownText[slotNumber].SetText("%d" % cooldown)
cooldown = str(cooldown)
if len(cooldown) <= 1:
self.cooldownText[slotNumber].SetPosition(8,0)
else:
self.cooldownText[slotNumber].SetPosition(8 - (len(cooldown) + 2), 0)
self.cooldownText[slotNumber].Show()
else:
self.cooldownText[slotNumber].Hide()
startNumber += 4
if len(cooldown) <= 1:
self.cooldownText[slotNumber].SetPosition(8,0)
else:
self.cooldownText[slotNumber].SetPosition(8 - (len(cooldown) + 2),0)
self.cooldownText[slotNumber].Show()
EDIT:
This is good if i have bold:16. If you use more bold, u must change SetPosition(8 - (len(cooldown) + 2), 0)
to SetPosition(8 - (len(cooldown) + x), 0).
If your bold is highest, x is highest too. How much? You must try.