Jump to content

dalvorsn

Conde
  • Posts

    750
  • Joined

  • Last visited

  • Days Won

    8

dalvorsn last won the day on May 23

dalvorsn had the most liked content!

About dalvorsn

Perfil

  • Gênero
    Masculino

Informações

  • Forma que conheci o xTibia
    Amigos
  • Sou
    Scripter

Recent Profile Visitors

6278 profile views

dalvorsn's Achievements

  1. O mano, tem como pegar sprites de cliente que usa a dll de extender ?

  2. Primeira coisa que tu deveria fazer é melhorar esse uso do opcode, isso de dar split com algum caracter é pessimo e fica muito porco o codigo, tu pode fazer diversas implementações e da ate pra jogar o codigo lua comprimido numa string e enviar como opcode(lembrando que o popString de server é bem porco e não aceita caracter não representavel, então pra isso tu precisa dar um base64 encode nelas antes). Quanto a duvida em si, eu geralmente faço da seguinte, eu envio um opcode para o servidor fazendo a requisição da informação, e ele me volta outro opcode com as infos, quando eu recebo esse opcode, eu populo os elementos da interface e ai sim dou o show, lembrando que não é só show, tu tem que dar show() focus() e raise() para que a janela fique acima de qualquer outra que esteja aberta
  3. Troca isso: cid = getCreatureByName(getPlayerNameByGUID(tonumber(result:getDataInt("player")))) Por isso: local guid = tonumber(result:getDataInt("player")) cid = getPlayerByGUID(guid) E confere o schemaSQL dessa tabela `shop_history`, para ver se o campo é player mesmo e etc
  4. Você não vai 'criar', ele ja existe e é open-source e se chama OTClient: https://github.com/edubart/otclient
  5. Seu primeiro e pior erro é estar rodando isso em windows kk brincadeiras a parte Tem dois erros ai, um é que você está passando um boolean para a função pairs, que espera uma tabela para fazer iteração, e o outro é container not found, na função getContainerSize(uid), o uid provavelmente está nil ou não existe mais no jogo(pode ter sido removido ou qualquer coisa do genero, mas basicamente ele perdeu a referencia)
  6. A source é o código fonte do projeto, ou comumente chamado de core. No caso do opentibia esse código fonte é feito em c++ e nele está toda a estrutura base do servidor. E por questões de agilidade e praticidade esse código é extendido através de scripts na linguagem lua. C++ é uma linguagem compilada, então não basta copiar e colar como lua, tu tem que compilar o código após fazer a alteração, e jogar esse executavel gerado na compilação na pasta do servidor, e abrir o servidor por ele. Se atente sobre qual source deve pegar, pois cada servidor é feito com base em uma source especifica, e a mesma pode ainda ter sofrido alterações, usar qualquer source sem saber se é a correta poderá lhe trazer diversos problemas de compatibilidade e possivelmente crashs.
  7. Você está usando uma HorizontalList: https://github.com/edubart/otclient/blob/a6a50fa1624f38fc173f79abdfcafcb29c42c354/data/styles/10-listboxes.otui#L9-L13 Ela usa o layout horizontalBox para ajustar isso terá que trocar para VerticalList e ajustar os tamanhos da janela para alocar os widgets, além disso terá que ajustar o scrollBar, que agora deve passar a ser um scrollbar vertical
  8. Cara, não tem um tutorial descente disso, mas também não tem nada muito absurdo de entender. Primeira coisa tu tem que entender a estrutura, o otclient é todo modularizado, otmod é o primeiro cara a ser lido, ele que diz todas as infos iniciais de load, então comece vendo os otmods e entendendo como ele funciona. entendido isso tu vai passar para o scripts lua dele. No arquivo de load dele tu vai encontrar duas funções primordiais, 'init' e 'terminate'(pode ser diferente os nomes se tu alterar no otmod, mas não aconselho a mudar pois já é convencionado assim). init é executado ao dar load no module, e terminate ao dar unload no module (lembrando que reload é unload + load) além disso o otclient usa o conceito de signals and slots, que é o mesmo adotado pelo qt e outras bibliotecas graficas, através deles tu consegue fazer connect em diversos eventos e etc, é essencial que entenda isso para não ter que fazer esforços desnecessários graficamente falando tu pode criar interface por duas maneiras, por lua através de funções que manipulam widgets e pelo otui, o otui é como se fosse um CSS, porém proprio do otclient, inclusive por isso ele tem seu proprio loader, que tu pode encontrar na source https://github.com/edubart/otclient/tree/master/src/framework/ui se você não entende de c++, tudo bem, você pode aprender vendo exemplos dentros os inumeros módulos que ja existem e na pasta de styles https://github.com/edubart/otclient/tree/master/data/styles a maioria das coisas que tu precisa pra fazer a maioria dos modulos ja tem em algum modulo feito no cliente, então seu melhor professor será o proprio cliente, basta tu entender e quebrar a cabeça tentando no geral e pra maioria dos casos você não irá precisar de alterar as sources pra praticamente nada, existe bind para quase todas as funções que tu precisa, tu pode encontra-los em: https://github.com/edubart/otclient/blob/master/src/framework/luafunctions.cpp -- no que se refere a coisas do framework (widgets e etc) https://github.com/edubart/otclient/blob/master/src/client/luafunctions.cpp -- no que se refere a coisas do jogo duvidas pontuais tu pergunta no forum que irão te responder, mas é preferível que tente sozinho antes, porque o aprendizado está justamente ai
  9. Ola dalvorsn.

     

    Fiz  uma alteração no meu pedido de suporte poderia me ajudar?

     

    Desde já agradeço sua atenção.

     

     

     

  10. Remove o select de genero e altera o script de submissão. function createCharacter() { $('.loader').show(); var form = $('#createCharacter').serialize(); form.sex = 0; if($.inArray(parseInt(form.vocation), [1,2,3]) != -1 ) { form.sex = 1; } $.ajax({ url: '<?php echo WEBSITE; ?>/index.php/character/create_character/1', type: 'post', data: form, success: function(data) { $('.errors').html(data); $('.loader').hide(); } }); } Supondo que as vocações que são masculinas sejam 1, 2 e 3
  11. Substitui esse if: if(in_array(strtolower($unit), $config['invalidNameTags'])) Por esse: if(in_array(strtolower($unit), $config['invalidNameTags']) || preg_match('/[\W+]/', $unit)) /[\W+]/ - regex para non-words
  12. Erro mega genérico esse, tenta jogar o codigo todo dentro de um try catch pra ver se tem alguma exception escondida ai
  13. Foi erro de tag, você não abriu a <ul> apos o noticias: <div id="naglowek">Noticias</div> <ul>
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...