Ir para conteúdo
  • Cadastre-se

Derivado erro ao passar com o pokemon em cima do piso premium


Posts Recomendados

pessoal estou com um script bom, funciona 100% mais quando o pokemon passa em cima do piso aparece esse erro:

 

  Citar

[02/08/2016 22:36:46] [Error - MoveEvents Interface] 
[02/08/2016 22:36:46] data/movements/scripts//pisopremium/pisopremium3.lua:onStepIn
[02/08/2016 22:36:46] Description: 
[02/08/2016 22:36:46] data/movements/scripts//pisopremium/pisopremium3.lua:3: attempt to compare number with boolean
[02/08/2016 22:36:46] stack traceback:
[02/08/2016 22:36:46]     data/movements/scripts//pisopremium/pisopremium3.lua:3: in function <data/movements/scripts//pisopremium/pisopremium3.lua:1>

Mostrar mais  


o script que tenho é esse:

  Citar


function onStepIn(cid, item, position, fromPosition)
    
        if getPlayerPremiumDays(cid) >= 1 then
        doSendMagicEffect(getThingPos(cid), 12)
        doPlayerSendTextMessage(cid, 25, "Seja Bem-vindo ".. getPlayerName(cid) .." !")
     
     else
        
        doTeleportThing(cid, fromPosition, true)
        doSendMagicEffect(getThingPos(cid), 2)
        doPlayerSendTextMessage(cid, 25, "Apenas Players Vip's podem passa.")
    
    end
        
            return true
        
    end

 

Mostrar mais  

 

Link para o post
Compartilhar em outros sites
  • Respostas 7
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true end if getPlayerPremiumDays(cid) >= 1 then doSendMagicEffect(getThingPos(cid), 12) doPlayerSendTextMessage(cid, 25, "Seja Bem-vindo ".. getPlayerName(cid) .." !") else doTeleportThing(cid, fromPosition, true) doSendMagicEffect(getThingPos(cid), 2) doPlayerSendTextMessage(cid, 25, "Apenas Players Vip's podem passa.") end return true end

Então brother, não sou ele mas acho que posso te ajudar, apesar de ser iniciante ;p Toda função exerce uma série de comandos qnd é chamada. Junto com isso, ela retorna um valor. Em C++ nós dizemos se o retorno vai ser um número inteiro, um quebrado, um quebrado com vários números após virgula, uma string, e uma variável (desse último não tenho ctz). Isso tmb vale pro que as variáveis vão alocar em C++. Já em lua nós n precisamos declarar o tipo da função antes de chamá-las, ent tu pode por o q

Você fez uma explica +- ashahs   Tipo, quando é creatureevent o return true/false fazem bastante diferença, por exemplo, se por return false ele cancela o evento e ele não ocorre, caso for em uma function por exempl function ehSummon(cid)     if isMonster(cid) and not getCreatureMaster(cid) then         return true     end     return false end Essa função é para verificar se é um summon, se for summon, retorna verdadeiro se não retorna false Então, se eu por as

function onStepIn(cid, item, position, fromPosition)
if not isPlayer(cid) then return true end    
        if getPlayerPremiumDays(cid) >= 1 then
        doSendMagicEffect(getThingPos(cid), 12)
        doPlayerSendTextMessage(cid, 25, "Seja Bem-vindo ".. getPlayerName(cid) .." !")
     else
        doTeleportThing(cid, fromPosition, true)
        doSendMagicEffect(getThingPos(cid), 2)
        doPlayerSendTextMessage(cid, 25, "Apenas Players Vip's podem passa.")
    end      
return true  
end

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites
  Em 03/08/2016 em 20:04, Vodkart disse:
function onStepIn(cid, item, position, fromPosition)
if not isPlayer(cid) then return true end    
        if getPlayerPremiumDays(cid) >= 1 then
        doSendMagicEffect(getThingPos(cid), 12)
        doPlayerSendTextMessage(cid, 25, "Seja Bem-vindo ".. getPlayerName(cid) .." !")
     else
        doTeleportThing(cid, fromPosition, true)
        doSendMagicEffect(getThingPos(cid), 2)
        doPlayerSendTextMessage(cid, 25, "Apenas Players Vip's podem passa.")
    end      
return true  
end

 

Mostrar mais  

 

Vodkart , tem como me dar uma explicação? Sou iniciante em lua e esses return true e return false ainda me confundem um pouco...

 

Vi que a solução foi fazer uma checagem se o que for passar pelo piso é um Player ou não, até ai ok, só não entendo como funciona o uso de return true ou false:

 

  se  NÃO for um Player  faça  return true  fim 

 

 o que esse return true faz e como exatamente ele faz/funciona? O que aconteceria se trocasse por return false? Assim: 

if not isPlayer(cid) then return false end

 

 

 

 

 

 

 

 

Link para o post
Compartilhar em outros sites
  Em 06/08/2016 em 13:56, samlecter disse:

 

Vodkart , tem como me dar uma explicação? Sou iniciante em lua e esses return true e return false ainda me confundem um pouco...

 

Vi que a solução foi fazer uma checagem se o que for passar pelo piso é um Player ou não, até ai ok, só não entendo como funciona o uso de return true ou false:

 

  se  NÃO for um Player  faça  return true  fim 

 

 o que esse return true faz e como exatamente ele faz/funciona? O que aconteceria se trocasse por return false? Assim: 

if not isPlayer(cid) then return false end

 

Expand   Mostrar mais  

Então brother, não sou ele mas acho que posso te ajudar, apesar de ser iniciante ;p
Toda função exerce uma série de comandos qnd é chamada. Junto com isso, ela retorna um valor. Em C++ nós dizemos se o retorno vai ser um número inteiro, um quebrado, um quebrado com vários números após virgula, uma string, e uma variável (desse último não tenho ctz). Isso tmb vale pro que as variáveis vão alocar em C++. Já em lua nós n precisamos declarar o tipo da função antes de chamá-las, ent tu pode por o que quiser dps do return sem nenhum problema, apesar do mais comum ser um booleano. Na maioria das funções não vai mudar muito o  return, mas em algumas como onKill (creatureevent). se tu por return false, o target não vai morrer, só vai zerar a vida e vai poder recuperar com qlqr magia de regeneração. Se for uma onLogout com return false o player não vai conseguir deslogar, mas se for uma onLogin não muda nd heauehau.
Pra saber o que cada booleano faz em cada retorno tu vai ter que estudar as funções nas sources ou lib

Editado por Gabriel Netto (veja o histórico de edições)

De onde eu venho se dizia, que o chorar não é do homem, e o homem o que sente guarda bem no coração...
 

Link para o post
Compartilhar em outros sites

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.

  • Conteúdo Similar

    • Por LeoTK
      Salve galera neste tópico irei postar algumas prints do mapa do servidor para quem queira acompanhar e quem sabe até utilizar de inspiração para mapear o seu NTO.
       
      #Att 11/08/2022

       
       
       
       
      Konoha (Em Desenvolvimento)
       
       
       
       
    • Por DiigooMix
      Como o título já diz, será que alguém possui sprite do hitto e se possível as transformações dele?
    • Por OmegaZero
      Olá gostaria que alguém me ajudasse com uma "scripting" não sei se é pela mesma, seria o seguinte uma determinada arma teria a chance de dar double hit e não sei oque fazer alguem poderia ajudar?

      OBS:não sei se é o local correto se não for mova, desculpe
    • Por Madarasenju
      Olá galera do Tibia King, queria por uns npc's no meu server que não tem função de trade nem nada do tipo, queria que eles só andassem como enfeite, Rep+ Pra quem me ajudar... grato desde já.
    • Por SilenceRoot
      A magia é assim o você usa a a magia e ela ficará ativado por 10 segundos, até que o inimigo lance a primeira magia ou todos de uma vez, quando ele lançar a primeira magia, ele não lhe acertará ou seja esquivando dela, e logo em seguida será teletransportado aleatoriamente ao redor do inimigo que usou.
  • Estatísticas dos Fóruns

    96842
    Tópicos
    519598
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo