Ir para conteúdo

Gengo

Artesão
  • Total de itens

    147
  • Registro em

  • Última visita

  • Dias Ganhos

    22

Gengo venceu a última vez em Junho 25

Gengo had the most liked content!

10 Seguidores

Sobre Gengo

Perfil

  • Gênero
    Masculino

Informações

  • Char no Tibia
    stor akia
  • Forma que conheci o xTibia
    Otservs
  • Sou
    Programador

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

  1. Posta aqui seu arquivo textmessage.lua e seu broadcast.lua
  2. Segue o descrito no tutorial: /bc green | O torneio mundial da Elite Four se iniciará em 15min. → Onde /bc é o comando broadcast → green é a cor que deseja personalizar, pode ser tanto em hexa como o nome da cor → mensagem qualquer → É necessário colocar o pipeline | caso queira colocar uma outra cor, senão ele assumirá como padrão a cor vermelha do broadcast.
  3. Só utilizar a função abaixo para que toda vez que for resetar ele ganhe o item. doPlayerAddItem(cid, itemId, count)
  4. Sim é possível, o céu e o limite do qu3 pode ser feito kkkk.
  5. Hoje venho trazer um sistema que pode deixar seu servidor com um diferencial dos demais, espero que vocês possam aprender algo com esse sistema e criar outros tipos de personalização nas mensagens. O que seria essa personalização? Seria uma personalização da mensagem do broadcast, em vez de ficar aquela mensagem vermelha no meio da tela, você pode escolher sua própria cor para a mensagem, no fim do tópico demonstrarei com imagens para que você possa entender melhor. Script: Procure pela pasta no seu otclient em modules/game_textmessage e abra o arquivo textmessage.otui e substitua por esse: Agora na mesma pasta abra o arquivo textmessage.lua e procure pela função displayMessage e debaixo de: if msgtype == MessageSettings.none then return end Coloque o seguinte script: Feito essas alterações a personalização já deve estar funcionando, para testar você pode utilizar o seguinte comando: /bc green | O torneio mundial da Elite Four se iniciará em 15min. → Onde /bc é o comando broadcast → green é a cor que deseja personalizar, pode ser tanto em hexa como o nome da cor → mensagem qualquer → É necessário colocar o pipeline | caso queira colocar uma outra cor, senão ele assumirá como padrão a cor vermelha do broadcast. Caso você não tenha o script do broadcast, porem é impossivel não ter já que é padrão nos servidores, vou deixar disponível aqui: Imagens de como fica in-game: Eai, vai ficar de fora? Implemente já essa personalização e torne-se um servidor diferenciado dos demais.
  6. Eu só adicionei a função que você mesmo citou, não fiz nenhuma alteração a mais, agora esse erro ai é relacionado ao sistema de points.
  7. É como você mesmo disse, é só adicionar essa função doPlayerAddPoints(cid, quant) ao seu script, porem creio que sua duvida seria onde exatamente colocar, pois bem você coloca onde faz o reset na função addReset e toda vez que resetar ela chama essa função e adiciona o pontos, segue o script: Obs: Atente-se ao copiar o código, pois pode haver caracteres especiais vindo do editor de código do fórum, assim como veio pra mim quando eu fui analisar seu script.
  8. Gengo

    [OtClient] Auto-Loot

    É possível sim fazer sem opcodes, então vamos fazer umas pequenas alterações para que seja possível. Acrescente as seguintes funções no arquivo do modulo: Obs: Atente-se ao comentário feito. connect(g_game, { onTextMessage = onTextMessage }) -- Utilize dentro da função init disconnect(g_game, { onTextMessage = onTextMessage }) -- Utilize dentro da função terminate Debaixo da função init coloque a seguinte função: function onTextMessage(mode, text) if not g_game.isOnline() then return end if mode == MessageModes.Failure then if string.find(text, 'AutoLoot>') then createListLoot(text:explode('>')[2]) end end end Agora para enviar para o otclient utilize o mesmo conceito apresentado no tutorial, porem com uma alteração minima, em vez de utilizar doSendPlayerExtendedOpcode, utilizamos a função doPlayerSendCancel, ficando assim: doPlayerSendCancel(cid, "AutoLoot>"..loot)
  9. Essa função em c++ não tem parâmetros de entrada como o cid que fica no parenteses, logo se vc deseja usar-la vc deve fazer do jeito mencionado
  10. Sei lá, quando olhei também vi um exagero de código que poderia ser otimizado, mas está ai oque o cara procurava.
  11. Hoje em dia se tem muitos por ai, basta dar uma boa pesquisada que deve achar. Link: Npc Addon
  12. Esse erro ai é que vc tenta passar uma string no 1º parâmetro do tmpPlayer->getStorage e no caso o 1º parâmetro é um tipo inteiro e não string, removendo as aspas deve para de ocorrer esse erro que você está tendo, veja a forma correta: if ( tmpPlayer->getStorage(58678, strValue) )
  13. Gengo

    [OtClient] Auto-Loot

    Não é que eu não queira resolver ou não o problema, a questão é que se não seguir direto o tutorial, vai ocorrer esses erro mesmo. 1º O erro dá no getName linha 185, se você não seguir o passo 1 e 2 do tutorial apresentado que é para carregar os items, esse metodo do getName do item realmente não vai funcionar e retornara como nulo conforme descrito no erro que você apresentou. Você pode criar outro tópico de suporte apresentando o erro, porem alguem que também entenda de OTC vai dizer que o getName dos items ele retornará nulo, ao menos que vc altere nas sources ou você carregue os itens com g_things.loadOtb e g_things.loadXml
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...