Ir para conteúdo
  • Cadastre-se

xWhiteWolf

Héroi
  • Total de itens

    3605
  • Registro em

  • Última visita

  • Dias Ganhos

    159

Tudo que xWhiteWolf postou

  1. dá algum erro ou só não funciona? que versões que vcs tão usando?
  2. eu sempre uso onLogin, por isso te aconselhei. O onLogout dá pra burlar, o onLogin não
  3. mesmo sendo ao deslogar, vc pode usar onLogin.. dessa forma se ele logar e tiver com o storage ele é enviado pro templo. O efeito é o mesmo.
  4. 1- vc tá usando um valor muito grande pro storage.. tenta algo no máximo com 5 digitos. 2- faltou um return true antes do ultimo end 3- Por que fazer onLogout e não onLogin?
  5. rapaz, edita seu tópico e refaz ele sem falar coisa que vc não sabe. Faz o pedido do jeito que vc quer.. se vc ficar usando termos como global storage, player storage fica muito confuso. Eu li duas vezes e ainda não entendi oque vc quer...
  6. eu corrigi, na linha 18 tá GRANTOWER.GRANTOWER.SAVEWINNERGUILD, era pra ser só GRANTOWER.SAVEWINNERGUILD, saiu duas vezes o GRANTOWER., desatenção minha. Agora essa mudança q vc pediu, bem. Não parece algo muito complicado só q eu to a muito tempo sem mexer nele e eu não sei que tipos de consequencias essa mudança teria. Não me leve a mal mas é muito coisa pra testar e eu não tenho um servidor com players pra me ajudar nisso, então acho melhor mantermos assim do que eu tentar fazer qlqer besteira aí e acabar bugando tudo no seu servidor...
  7. salva numa variável se ele ja foi executado kk, é bem simples até.
  8. ^ isso vai dar errado porque a função math.random está fora do callback (function onCastSpell), logo, ela será chamada uma única vez ao abrir o servidor e isso implica q ela será sempre o valor até que seja dado reload ou que o servidor feche e abra novamente. O jeito de fazer isso é criar dois combats iguais e controlar dentro do escopo do callback qual dos dois combats vc irá utilizar na spell, se a chance for <= X então usa o segundo (que estará vinculado com a condition)
  9. eu não faço idéia de onde configura isso, mas te garanto q não é nesse script aí. Provavelmente no xml, config.lua ou alguma lib do npchandler.. desculpa não poder te ajudar mais.
  10. troca if canEffect (cPos) and mob ~= 0 and isMonster(mob) then por if canEffect (cPos) and mob ~= 0 and isCreature(mob) then
  11. data/xml/quests.xml. Lá você configura as missions pelo storage
  12. só duplicar essa parte aqui e editar o texto, a posição e o valor local travelNode = keywordHandler:addKeyword({'premmy'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer mesmo viajar?'})travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 0, cost = 2200, destination = {x=1058, y=1046, z=5} })travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'Too expensive, eh?'}) a frase 'premmy' tb tem que ser diferente pra não conflitar. aí nessa parte
  13. global events é onThink, ou seja, a cada 500 milisegundos ele vai checar se X condições são satisfeitas e executar. Se vc tá usando um horário programado (12:00:00) por ex, ele vai virar 12:00:00 e executar a primeira vez, dps de 500 milisegundos ele vai olhar pro 12:00:00 e perguntar, é 12:00:00? e executar de novo. Muito provavelmente seja isso, vc tem que fazer ele ignorar a outra execução via código ou mexendo nas tags.
  14. no github oficial do theforgotten server existe um pull request pra transformar exiva pra spell.. vai ser dificil de adaptar pra 0.4.. mas é um começo https://github.com/otland/forgottenserver/pull/1505/commits/3268de1dc0aa5e2d40b2c4810615a02dae58623b
  15. tenho quase certeza q vc deletou o campo custom flags/flags de players, aí ele não consegue saber se o player é gm e mostra o exiva como não online
  16. Isso é o exiva na source do tfs 1.2, como vc não especificou.. espero q ajude. bool InstantSpell::SearchPlayer(const InstantSpell*, Creature* creature, const std::string& param) { //a. From 1 to 4 sq's [Person] is standing next to you. //b. From 5 to 100 sq's [Person] is to the south, north, east, west. //c. From 101 to 274 sq's [Person] is far to the south, north, east, west. //d. From 275 to infinite sq's [Person] is very far to the south, north, east, west. //e. South-west, s-e, n-w, n-e (corner coordinates): this phrase appears if the player you're looking for has moved f
  17. dificilmente eu defendo alguém nesse fórum mas você foi o único aqui que demonstrou não saber nada de programação. Pedindo pra comentar função? que coisa absurda.. essa função é chamada em vários lugares da source, só comentar iria crashar seu server. Sem falar que o caronte modificou o return true para return false. Não sei se vc notou.. e isso realmente resolve.
  18. faltou só dizer a versão.. function onLogin() -- pega numero de players online -- se o numero for maior que X e o numero for maior que um globalstorage q salva o record: -- pra todos os players online, dar item correspondente ao index de X fim
  19. é uma boa idéia, mas por que manter por talkactions se vc pode automatizar pra funcionar pra quantidades pré definidas: 50, 60, 80, 100, 120, 150? aí vc nao tem q estar online pra dar !record
  20. ele disse q o evento onThink não foi encontrado.. vc tá usando function onTime() troca por function onThink()
  21. Usa a função getCreaturePath do Elwyn, ela é a melhor solução (via source) q vc pode encontrar pra esse tipo de situação. Rola conversar também com o Skulls do xtibia, ele tá desenvolvendo um servidor de tibia MOBA e ele usa esse sistema pros minions. A função q eu desenvolvi foi apenas uma gambiarra, tentei melhorar ela mas não rolou, ficava muito pesado analisar a árvore de possibilidades.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo