maykeldoido 4 Postado Abril 27, 2017 Share Postado Abril 27, 2017 (editado) Boa Noite galera, Por favor, será que alguém poderia me ajudar? Estava testando tudo que aprendi lendo todos os tutoriais do fórum, então fui por na prática para testar. Eu queria colocar o Player Health Bar em uma janela separada, com fundo praticamente invisível, então notei que a MiniWindow e a MainWindow, por padrão não deixam você alterar a opacidade, porém vi que em alguns lugares a galera herda o UIWindow que é a raiz de toda window certo? então fiz o código para brincar, porém no jogo não adiciona o botão no top menu, nem a bindKey chama a tela, será um problema no módulo em geral ou só na bind/button top menu? segue o código: playerinfo.lua Spoiler playerinfoWindow = nilplayerHpBar = nilfunction init() connect(LocalPlayer, { onHealthChange = onHealthChange}) connect(g_game, { onGameStart = refresh}) ProtocolGame.registerExtendedOpcode(104, function(protocol, opcode, buffer) onPokeHealthChange(protocol, opcode, buffer) end) g_keyboard.bindKeyDown('Ctrl+A', toggle) playerinfoButton = modules.client_topmenu.addRightGameToggleButton('playerinfoButton', tr('Player') .. ' (Ctrl+A)', '/images/topbuttons/guide', toggle) playerinfoButton:setWidth(35) playerinfoButton:setOn(true) playerWindow = g_ui.loadUI('playerinfo.otui', modules.game_interface.getRightPanel()) playerWindow:disableResize() playerHpBar = playerWindow:recursiveGetChildById('playerHpBar') refresh() playerWindow:setup()endfunction terminate() disconnect(LocalPlayer, { onHealthChange = onHealthChange}) disconnect(g_game, { onGameStart = refresh}) ProtocolGame.unregisterExtendedOpcode(104) g_keyboard.unbindKeyDown('Ctrl+A', toggle) playerWindow:destroy() playerinfoButton:destroy()endfunction refresh() local player = g_game.getLocalPlayer() if g_game.isOnline() then onHealthChange(player, player:getHealth(), player:getMaxHealth()) g_game.getProtocolGame():sendExtendedOpcode(104, 'refresh') endendfunction toggle() if playerinfoButton:isOn() then playerWindow:close() playerinfoButton:setOn(false) else playerWindow:open() playerinfoButton:setOn(true) endendfunction onHealthChange(localPlayer, health, maxHealth) playerHpBar:setText(health .. ' / ' .. maxHealth) playerHpBar:setValue(health, 0, maxHealth)end playerinfo.otui Spoiler PlayerInfoWindow < UIWindow id: playerinfoWindow size: 40 416 focusable: false &save: true opacity: 0.2 image-source: /images/ui/miniwindow PlayerHP < ProgressBar id: playerHpBar background-color: #c02020 width: 118 image-color: alpha icon: /images/game/pokemon/health_bar icon-align: right icon-offset: 7 0 border-width: 0 anchors.top: parent.top anchors.right: parent.right margin-top: 1 margin-right: 8 playerinfo.otmod Spoiler Module name: game_playerinfo description: Displays of your character author: mkldoido website: www.otclient.info sandboxed: true scripts: [ playerinfo ] @onLoad: init() @onUnload: terminate() Por tudo que estudei antes de fazer, concluo que a única coisa que pode estar errada ai é o otui, não sei se é bem assim que se usa a UIWindow... Alguma dica/sugestão/ajuda? Editado Abril 27, 2017 por maykeldoido Link para o comentário Compartilhar em outros sites More sharing options...
Stigal 584 Postado Novembro 29, 2017 Share Postado Novembro 29, 2017 A questão neste tópico de suporte foi encerrada por falta de resposta. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. Link para o comentário Compartilhar em outros sites More sharing options...
Stigal 584 Postado Novembro 29, 2017 Share Postado Novembro 29, 2017 A questão neste tópico de suporte foi encerrada por falta de resposta. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados