Postado Agosto 3, 2016 8 anos 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> 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
Postado Agosto 3, 2016 8 anos 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
Postado Agosto 6, 2016 8 anos Em 03/08/2016 ás 17: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 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
Postado Agosto 6, 2016 8 anos 4 hours ago, samlecter said: 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 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 Agosto 6, 2016 8 anos por Gabriel Netto (veja o histórico de edições)
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.