Jump to content
  • 0
Sign in to follow this  
Wend Jr

OTClient Dúvida em adiciona HealthBar no OTClient

Question

Wend Jr    9
Wend Jr

Olá pessoal da OTBr, estou aqui hoje para tira uma dúvida sobre OTClient!


 


estou querendo sabe como que posso adiciona uma HealthBar nas skills do OTClient 


as skills estão assim: 141012032228376539.png


 


ai eu queria colocar uma HealthBar nesse Meio ai :)


Share this post


Link to post

54 answers to this question

Recommended Posts

  • 0
Elwyn    106
Elwyn

Não tem nada faltando. Desculpa, eu não sei muito sobre OTC então isso é o máximo que eu consigo ajudar. ):

Dalvo-senpai, pls

Share this post


Link to post
  • 0
Wend Jr    9
Wend Jr

kk tentei uma coisa +ou. assim;

 

function onHealthChange(localPlayer, health, maxHealth, percent)
  setSkillValue('health', health)
  checkAlert('health', health, maxHealth, 30)
  local widget = skillsWindow:recursiveGetChildById('health')
  local progressBar = widget:getChildById('percent')
  progressBar:setMinimum(0)
  progressBar:setMaximum(100)
  progressBar:setValue(percent)

end

mais não foi dessa vez :)

Share this post


Link to post
  • 0
dalvorsn    46
dalvorsn

kk tentei uma coisa +ou. assim;

function onHealthChange(localPlayer, health, maxHealth, percent)
  setSkillValue('health', health)
  checkAlert('health', health, maxHealth, 30)
  local widget = skillsWindow:recursiveGetChildById('health')
  local progressBar = widget:getChildById('percent')
  progressBar:setMinimum(0)
  progressBar:setMaximum(100)
  progressBar:setValue(percent)

end

mais não foi dessa vez :)

Cheguei, vou testar esse bagulho aqui, ver qual misterio disso kk

 

Edit: cheio dos erros mesmo, amanha eu quando eu acordar olho isso, vou pegar um otc direto do repo e fazer a barra nele, dai posto pra tu no gist e tu faz no seu

Edited by dalvorsn

Share this post


Link to post
  • 0
Wend Jr    9
Wend Jr

Ok, esperando você responde :) 

Edited by Wend Jr

Share this post


Link to post
  • 0
dalvorsn    46
dalvorsn

 

 

 

Ve so como e simples:

 

- no otui remover o tamanho do widget do health, e adicionar o percentlabel

 

   SkillButton
      id: health
      SkillNameLabel
        !text: tr('Hit Points')
      SkillValueLabel
      SkillPercentPanel

- no lua basicamente precisa setar o skillpercent, como foi feito no gist

 

function onHealthChange(localPlayer, health, maxHealth, percent)
  setSkillValue('health', health)
  checkAlert('health', health, maxHealth, 30)
  setSkillPercent('health', (health * 100)/maxHealth, "")
end
Edited by dalvorsn

Share this post


Link to post
  • 0
Wend Jr    9
Wend Jr

é Uma coisa tão simples e que deu tanta dor de cabeça :)  
Obrigado por tudo Dalvo (--

 

Só que ainda tem um problema :(

quando você entra no OT ai a barra de health fica na metade, só fica normal depois que algum pokemon ataca você 

mais quando desloga que vai loga de novo a barr fica na metade precisa leva algum hit de outro pokemon para a barra fica normal (-- tem algum modo de arruma isso?

 

Imagem quando entra no OT;

141023023511135817.png

 

imagem quando leva hit de um pokemon;

141023023512507640.png

Edited by Wend Jr

Share this post


Link to post
  • 0
dalvorsn    46
dalvorsn

Estranho, porque ele ta dando o connect no gameStart pra função refresh e ela chama o onHealthChange, teoricamente deveria ir

Porque a atualização da barra ve junto com a do player

manda de novo ai o arquivos do module, pra eu dar uma olhada, deve ta faltando alguma coisa, deve haver alguma diferença do que eu testei pro que tu usa

Share this post


Link to post
  • 0
Wend Jr    9
Wend Jr

 

Estranho, porque ele ta dando o connect no gameStart pra função refresh e ela chama o onHealthChange, teoricamente deveria ir

Porque a atualização da barra ve junto com a do player

manda de novo ai o arquivos do module, pra eu dar uma olhada, deve ta faltando alguma coisa, deve haver alguma diferença do que eu testei pro que tu usa

Aqui >> https://www.4shared.com/rar/CQkEtDhiba/game_skills.html

 

 

@@dalvorsn estava mexendo nas coisa e encontrei isso;

     if characterInfo.health then        widget:getChildById("health"):setText(characterInfo.health .. ' / ' .. characterInfo.healthMax)        widget:getChildById("health"):setValue(characterInfo.health, 0, characterInfo.healthMax)      end

tem alguma coisa a ver ou não? estou desesperado tentando terminar isso kk

Share this post


Link to post
  • 0
dalvorsn    46
dalvorsn

@@dalvorsn estava mexendo nas coisa e encontrei isso;

     if characterInfo.health then
        widget:getChildById("health"):setText(characterInfo.health .. ' / ' .. characterInfo.healthMax)
        widget:getChildById("health"):setValue(characterInfo.health, 0, characterInfo.healthMax)
      end

tem alguma coisa a ver ou não? estou desesperado tentando terminar isso kk 

Isso parece um progressbar sim, cheguei em casa hoje, vou testar aqui o module que tu mandou

Share this post


Link to post
  • 0
Wend Jr    9
Wend Jr

Isso parece um progressbar sim, cheguei em casa hoje, vou testar aqui o module que tu mandou

Beleza, por enquanto estou tentando achar uma solução aqui também ^_^

Share this post


Link to post
  • 0
Wend Jr    9
Wend Jr
@@dalvorsn, Isto é na função connect, la no Init do script.

 

Você precisa colocar, pra quando conectar, ele atualizar a barra de acordo com o life :)

 

mais como farei isso? 

 

function init()
  connect(LocalPlayer, {
    onExperienceChange = onExperienceChange,
    onLevelChange = onLevelChange,
    onHealthChange = onHealthChange,
    onManaChange = onManaChange,
    onSoulChange = onSoulChange,
    onFreeCapacityChange = onFreeCapacityChange,
    onTotalCapacityChange = onTotalCapacityChange,
    onStaminaChange = onStaminaChange,
    onOfflineTrainingChange = onOfflineTrainingChange,
    onRegenerationChange = onRegenerationChange,
    onSpeedChange = onSpeedChange,
    onBaseSpeedChange = onBaseSpeedChange,
    onMagicLevelChange = onMagicLevelChange,
    onBaseMagicLevelChange = onBaseMagicLevelChange,
    onSkillChange = onSkillChange,
    onBaseSkillChange = onBaseSkillChange
  })
  connect(g_game, {
    onGameStart = refresh,
    onGameEnd = offline
  })
  connect(g_game, 'onTextMessage', getParams)
  connect(g_game, {onGameStart = changeImg})
 
  skillsButton = modules.client_topmenu.addCustomRightButton('skillsButton', tr('skills') .. ' (Ctrl+S)', '/modules/game_skills/img/perfil_icon', toggle, true)
  skillsButton:setOn(true)
  skillsWindow = g_ui.loadUI('skills', modules.game_interface.getRightPanel()) -- skills
 
  g_keyboard.bindKeyDown('Ctrl+S', toggle)
 
  refresh()
  skillsWindow:setup()
end

Share this post


Link to post
  • 0
dalvorsn    46
dalvorsn

 

@@dalvorsn, Isto é na função connect, la no Init do script.
 
Você precisa colocar, pra quando conectar, ele atualizar a barra de acordo com o life :)
 
mais como farei isso? 
 
function init()
  connect(LocalPlayer, {
    onExperienceChange = onExperienceChange,
    onLevelChange = onLevelChange,
    onHealthChange = onHealthChange,
    onManaChange = onManaChange,
    onSoulChange = onSoulChange,
    onFreeCapacityChange = onFreeCapacityChange,
    onTotalCapacityChange = onTotalCapacityChange,
    onStaminaChange = onStaminaChange,
    onOfflineTrainingChange = onOfflineTrainingChange,
    onRegenerationChange = onRegenerationChange,
    onSpeedChange = onSpeedChange,
    onBaseSpeedChange = onBaseSpeedChange,
    onMagicLevelChange = onMagicLevelChange,
    onBaseMagicLevelChange = onBaseMagicLevelChange,
    onSkillChange = onSkillChange,
    onBaseSkillChange = onBaseSkillChange
  })
  connect(g_game, {
    onGameStart = refresh,
    onGameEnd = offline
  })
  connect(g_game, 'onTextMessage', getParams)
  connect(g_game, {onGameStart = changeImg})
 
  skillsButton = modules.client_topmenu.addCustomRightButton('skillsButton', tr('skills') .. ' (Ctrl+S)', '/modules/game_skills/img/perfil_icon', toggle, true)
  skillsButton:setOn(true)
  skillsWindow = g_ui.loadUI('skills', modules.game_interface.getRightPanel()) -- skills
 
  g_keyboard.bindKeyDown('Ctrl+S', toggle)
 
  refresh()
  skillsWindow:setup()
end

 

joga na funçao onHealthChange

Share this post


Link to post
  • 0
Wend Jr    9
Wend Jr

joga na funçao onHealthChange

Tentei e não deu certo poderia adiciona na função onHealthChange?

Share this post


Link to post
  • 0
dalvorsn    46
dalvorsn

Tentei e não deu certo poderia adiciona na função onHealthChange?

Embarco hoje, dificil ter tempo agora

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
  • Recently Browsing   0 members

    No registered users viewing this page.

×