Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Deu o seguinte erro: 

 

 
data/npc/scripts/dicer.lua:39: attempt to call global 'getThingPosition' (a nil value)
stack traceback:
        [C]: in function 'getThingPosition'
        data/npc/scripts/dicer.lua:39: in function 'callback'
        data/npc/lib/npcsystem/npchandler.lua:430: in function 'onCreatureSay'
        data/npc/scripts/dicer.lua:8: in function <data/npc/scripts/dicer.lua:8>
 
(Tfs 1.1)
 
Se souber de alguma solução por favor .. rs obrigado
Link para o post
Compartilhar em outros sites
  • 2 months later...
  • Respostas 22
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Bom dia jovens, graças ao grande Omega eu consegui terminar o código do NPC Dicer, a função para checar o gold foi feita por ele então deem um beijo nele O NPC é parecido com aqueles BOTS que ficam no tibia global em yalahar normalmente, você joga uma quantia em gold e fala L ou H também pode ser Low ou High e com sorte pode ganhar o dobro da quantia apostada, exemplo:   Eu vou lá jogo 20k na mesa e falo Low, caso caia nos números 1, 2 ou 3 eu irei ganhar o dobro da quantia que eu apostei qu

arrumei o erro que dava:   local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCall

gostei, agora entendi oque ele quis dizer mas acho q vc deveria colocar um if pra verificar uma quantidade máxima e após ganhar, a quantidade máxima (para aquele player) se tornasse igual ao maior valor já ganho. Podia começar com 10k e a cada vez que ganhasse ele retornasse o valor do premio e salvasse num storage, daí se o valor do storage fosse maior que 10k, o máximo que ele poderia apostar é igual ao valor do storage.

Para resolver o problema de triplicar a quantia ganha, eu mudei apenas 1 linha do código e aqui funcionou direitinho.

 

Primeiro: Para resolver todos os problemas eu usei o código passado pelo xWhiteWolf.

Aqui ficou perfeito, não deu nenhum problema, apenas o erro de triplicar a quantia de gold.

 

Segundo: Altere a linha: 

  Citar
local posNpc = {x = 126, y = 47, z = 5} -- POSIÇÃO DO NPC
local pos = getPosByDir(getThingPos(cid), getCreatureLookDirection(cid), 1) -- NÃO ALTERAR
 
if msgcontains(msg, 'l') or msgcontains(msg, 'L') or msgcontains(msg, 'low') or msgcontains(msg, 'Low') then
if countMoneyOnPos(pos) > 0 then
if math.random(1, 6) <= 3 then
doPlayerAddMoney(cid, countMoneyOnPos(pos)*2)
doSendMagicEffect(posNpc, 26)
doSendMagicEffect(posNpc, 28)
doCreatureSay(getNpcId(), getCreatureName(cid)..' tirou o numero '..math.random(1, 3)..', parabéns!', TALKTYPE_ORANGE_1)
 
Mostrar mais  

 

Ficando assim:

  Citar
local posNpc = {x = 126, y = 47, z = 5} -- POSIÇÃO DO NPC
local pos = getPosByDir(getThingPos(cid), getCreatureLookDirection(cid), 1) -- NÃO ALTERAR
 
if msgcontains(msg, 'l') or msgcontains(msg, 'L') or msgcontains(msg, 'low') or msgcontains(msg, 'Low') then
if countMoneyOnPos(pos) > 0 then
if math.random(1, 6) <= 3 then
doPlayerAddMoney(cid, countMoneyOnPos(pos)*1)
doSendMagicEffect(posNpc, 26)
doSendMagicEffect(posNpc, 28)
doCreatureSay(getNpcId(), getCreatureName(cid)..' tirou o numero '..math.random(1, 3)..', parabéns!', TALKTYPE_ORANGE_1)
Expand   Mostrar mais  

 

Só não me pergunte como fiz kkk. Testei e funcionou!

 

Espero ter ajudado!

Editado por nemseihein (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 2 weeks later...

queria esse npc para seguinte forma tipo meu ot tem evento q ser o cara falar 2 numero e ele acerta ele ganha um premio q seria item aleatório tem como fazer ???  eu faço eu mesmo na mão com adm mais e chato -.- dasiodjsaiod os premio eu coloco os id dos item.

 

ex e baixo de perdendo

 

jogador:oi

npc: diga 2 numero se você acerta ganhara um premeio

jogador: 1.2

npc: a que pena errou 

 

agora ganhado

 

jogador:oi

npc: diga 2 numero se você acerta ganhara um premeio

jogador:5,6

npc: opa acerto aki esta seu premio 

Editado por diego.tonioti (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 3 months later...
  • 1 month later...

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96851
    Tópicos
    519617
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo