Ir para conteúdo
  • Cadastre-se

[Dúvida/Pedido] BP Exclusiva 1 tipo de ITEM.


Posts Recomendados

Bom dia galera.

Gostaria de saber se alguém conhece ou sabe se é possível criar uma backpack, no qual só poderá por um tipo de item dentro.

Ou até mesmo os items que eu pré-estipular no Script.lua.

Fico no aguardo de alguma resposta.

Desde já muito grato.

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
  • Respostas 43
  • Created
  • Última resposta

Top Posters In This Topic

@UP?

Alguém sabe algo sobre este script?

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Você vai ter que fazer uma função nas sources do seu servidor para indentificar o local que você vai mover o item, é meio dificil.

A função onmoveItem não daria certo pra isso?

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Ok, estou adicionando em minhas sources, após fazer isto, poderia me ajudar a criar o script?

@EDIT

Pronto, adicionei esta função a minha source.

Editado por Adriano SwaTT (veja o histórico de edições)

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Acho que é algo mais ou menos assim

function onmoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

-- Se para onde mover for igual ao ID 100 e o item for diferente de 99

if (toItem.itemid = 100 and item.itemid ~= 99) then

-- Retorna a mensagem de erro

return doPlayerSendCancel(cid, "Voce não pode mover este item para ca") and true

end

return true

end

Link para o post
Compartilhar em outros sites

Acho que é algo mais ou menos assim

function onmoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

-- Se para onde mover for igual ao ID 100 e o item for diferente de 99

if (toItem.itemid = 100 and item.itemid ~= 99) then

-- Retorna a mensagem de erro

return doPlayerSendCancel(cid, "Voce não pode mover este item para ca") and true

end

return true

end
De início deu erro no console, por causa de faltar 1 "=" na primeira comparação, no entanto, arrumei isso adicionando mais um "=", sem erros no console, porém, ainda não funcionou. Só pra constar, a tag no xml ficaria como? @@EDIT Tenho este script em mãos, caso consiga pegar ele como base.

De qualquer forma, muito obrigado.

local bagID = 1999 --id da bag

local allowed = {2160, 2152, 2148} --items q podem ir para dentro da bag


function onmoveItem(cid, item, fromPosition, toPosition, fromItem, toItem, fromGround, toGround, move)

if toItem.itemid == bagID and not isInArray({allowed}, item.itemid) then


return false

end

return true

end

Editado por Adriano SwaTT (veja o histórico de edições)

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

É, eu acabei esquecendo de algumas coisas.

Teste isso:

local backpackID = 2000

local itemID = 99


function onmoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

if (toItem.itemid == backpackID and item.itemid == itemID) then

return true

else

return doPlayerSendCancel(cid, "Voce não pode colocar items aqui.")

end

end
Creio que a tag fique assim:
 <event type="move" name="NOME" event="script" value="SCRIPT_PATH.lua"/>

Link para o post
Compartilhar em outros sites

local backpackID = 2000

local itemID = 99

-- Tira o espaço entre on e Move, deixa escrito onmoveItem, com o M maiúsculo

function on MoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

   if (toItem.itemid == backpackid and item.itemid == itemID) then

      return true

   end

   doPlayerSendCancel(cid, "Voce não pode colocar items aqui.")

end

-"Supra Omnes Lux Lucis"

- Acima de todos brilha a Luz -

5VGnDyBz.png

Link para o post
Compartilhar em outros sites

Galera, tentei os 2 acima e também não funcionaram'

:T

Precisa registrar no login.lua?

Mas obrigado assim mesmo.

Editado por Adriano SwaTT (veja o histórico de edições)

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Coloquei em login.lua.

Ahh, a função "onmoveItem" da erro na distro por causa do "M" estar minusculo, porém, fora isso não da mais erros.

Pegando como base o script:


local backpackID = 2000

local itemID = 99


function onmoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

if (toItem.itemid == backpackid and item.itemid == itemID) then

                return true

else

                return doPlayerSendCancel(cid, "Voce não pode colocar items aqui.")

end

end

No lugar de "return doPlayerSendCancel(cid, "Voce não pode colocar items aqui.")"

Eu coloquei, "return false" pra testar, aí nenhum item pode ser colocado dentro da BP.

E do jeito que vocês me passaram, todos items entram na BP, porém, exibe a mensagem de CANCEL para todos eles.

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Kimos, o IPB tá bugando o onmoveItem, ele tá escrevendo minúsculo, ai tá dando erro lá por isso '-'. Eu vim perceber agora e editei o post alí novamente. Adriano copia o de cima e faz o que eu falei lá.

-"Supra Omnes Lux Lucis"

- Acima de todos brilha a Luz -

5VGnDyBz.png

Link para o post
Compartilhar em outros sites

Que IPB lazarento

Toma:

local backpackID = 2000

local itemID = 99

-- Tira o espaço entre on e Move, deixa escrito onmoveItem, com o M maiúsculo

function on MoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

 if (toItem.itemid == backpackid and item.itemid == itemID) then

  return true

else

 return doPlayerSendCancel(cid, "Voce não pode colocar items aqui.") and false

end

end

Link para o post
Compartilhar em outros sites

Kimos, o IPB tá bugando o onmoveItem, ele tá escrevendo minúsculo, ai tá dando erro lá por isso '-'. Eu vim perceber agora e editei o post alí novamente. Adriano copia o de cima e faz o que eu falei lá.

Eu estava arrumando o "onmoveItem" já, e testei o que me mandou, deu erro no distro.

[25/01/2013 14:35:45] [Error - LuaScriptInterface::loadFile] data/creaturescripts/scripts/ResidentEvil/bp_money.lua:4: '(' expected near 'MoveItem'

[25/01/2013 14:35:45] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/ResidentEvil/bp_money.lua)

[25/01/2013 14:35:45] data/creaturescripts/scripts/ResidentEvil/bp_money.lua:4: '(' expected near 'MoveItem'

Tentei unir e testar novamente o script em si, e nenhum item pode ser colocado na BP.

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Eu estava arrumando o "onmoveItem" já, e testei o que me mandou, deu erro no distro.

Tentei unir e testar novamente o script em si, e nenhum item pode ser colocado na BP.

Você leu o que eu escreví lá? Talvez não, o erro está dando porque o que eu escrevi lá não foi feito.

-"Supra Omnes Lux Lucis"

- Acima de todos brilha a Luz -

5VGnDyBz.png

Link para o post
Compartilhar em outros sites

Que IPB lazarento

Toma:

local backpackID = 2000

local itemID = 99

-- Tira o espaço entre on e Move, deixa escrito onmoveItem, com o M maiúsculo

function on MoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

if (toItem.itemid == backpackid and item.itemid == itemID) then

return true

else

return doPlayerSendCancel(cid, "Voce não pode colocar items aqui.") and false

end

end
Fiz isso, copiei e colei aqui do tópico e deu este erro.
[25/01/2013 14:57:37] [Error - LuaScriptInterface::loadFile] data/creaturescripts/scripts/ResidentEvil/bp_money.lua:4: '(' expected near 'MoveItem' [25/01/2013 14:57:37] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/ResidentEvil/bp_money.lua) [25/01/2013 14:57:37] data/creaturescripts/scripts/ResidentEvil/bp_money.lua:4: '(' expected near 'MoveItem'

local backpackID = 2000

local itemID = 99

-- Tira o espaço entre on e Move, deixa escrito onmoveItem, com o M maiúsculo

function on MoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

if (toItem.itemid == backpackid and item.itemid == itemID) then

return true

end

doPlayerSendCancel(cid, "Voce não pode colocar items aqui.")

end

Tentei deste jeito e também e deu o mesmo erro acima.

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Cara, você não leu o que eu escreví alí?

local backpackID = 2000

local itemID = 99

-- Tira o espaço entre on e Move, deixa escrito onmoveItem, com o M maiúsculo

function on MoveItem(cid, item, formPosition, toPosition, fromItem, toItem, fromGround, toGround, status)

if (toItem.itemid == backpackid and item.itemid == itemID) then

return true

end

doPlayerSendCancel(cid, "Voce não pode colocar items aqui.")

end

-"Supra Omnes Lux Lucis"

- Acima de todos brilha a Luz -

5VGnDyBz.png

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.




×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo