Ir para conteúdo

maykeldoido

Campones
  • Total de itens

    5
  • Registro em

  • Última visita

1 Seguidor

Sobre maykeldoido

Informações

  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    Programador

Últimos Visitantes

899 visualizações

maykeldoido's Achievements

  1. Resolvido! Se alguém tiver o mesmo problema, é uma mensagem de aviso normal da UIWidget, quando ela ja possui um "Child" e você adicionar outro, está configurado para mandar esse aviso.. Para corrigir basta ir em modules/cliente_terminal/terminal.lua, e onde está: Dê um enter e adicione: Pronto, essa mensagem não vai mais aparecer e em casos de spam dela como era o meu, vai deixar de travar o cliente! Pode fechar o tópico.
  2. Bom Dia gente, estou configurando os filtros de ordenação na BattleWindow do OTClient, porém por algum motivo está gerando muito erros consecutivos quando ele tenta adicionar o pokemon na BattleWindow, abaixo da pra ver na imagem, o problema é que isso se acumula e trava o cliente! Segue aqui o código da função addCreature(): Ele aponta erro na linha 444, está que está destacada: battlePanel:insertChild(i, battleButton) É justamente o momento que ele tenta inserir um filho na BattleWindow, provavelmente a lógica que invoca essa inserção está errada e entrando em loop, porém não consegui identificar.. Será que alguém pode me ajudar? Imagem de erros no Terminal: Desde já, agradeço!
  3. Olá galera tudo bem? Vi um usuário perguntando no fórum sobre Opcodes, como no começo eu tive bastante dificuldade de entender, estou fazendo este tutorial básico para que fique claro! Opcodes são a comunicação entre o cliente e o servidor sem fazer alterações na source.. Na source você poderia usar sockets, que são pacotes de informação, diretamente sem usar funcionalidades do jogo como meio de transmissão, já o opCode utiliza recursos in game para fazer essa comunicação, entendeu? Exemplo: No módulo game_skills, no arquivo skills.lua, você pode notar a utilização do seguinte código: Essa linha, serve para registrar o uso do opCode número 102, estamos dizendo ali, que quando recebermos uma solicitação por opCode, sentido Servidor > Cliente, sendo essa de número 102, deverá ser acionada a função onPokemonSkillChange. em outra parte do mesmo skills.lua, temos o seguinte código: Repare que a parte destaca: g_game.getProtocolGame():sendExtendedOpcode(102, 'refresh'), faz o envio de uma solicitação de sentido Cliente > Servidor, com o número 102 que é o id de identificação da opCode e na frente a string 'refresh', ou seja, um valor para o servidor conseguir enxergar o que deve ser feito.. Para entender melhor vamos ao Servidor e olhar onde é tratada essa chamada do Cliente. No Servidor, em data/creaturescripts/scripts/opcodes/opcode.lua, temos o seguinte código: Repare nas partes que eu destaquei, irei explica-las abaixo: Vamos ver o que essa função faz? em data/lib/106-main functions.lua, temos a definição daquela função, que é: Basicamente, está função preenche uma tabela com as informações sobre insígneas, coins, qtd capturas do player e envia de volta ao Cliente através do comando: return doSendPlayerExtendedOpcode(cid, opcodes.OPCODE_SKILL_BAR, table.concat(str)) lembrando que o opcodes.OPCODE_SKILL_BAR nada mais que que o número 102 e o table.concat(str) é o buffer, ou seja, um parâmetro da função doSendPlayerExtendedOpcode com os dados que serão enviados ao Cliente. Espero que todos tenham entendido, qualquer dúvida deixe nos comentários e se for preciso estarei arrumando qualquer erro que reportem no tutorial.
  4. Amigo, fiz um tópico para responder sua dúvida, segue o link. Att, Maykel Lodi.
  5. 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 playerinfo.otui playerinfo.otmod 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?
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...