Ir para conteúdo
  • 0

Portão Que Fecha Sozinho


NewAge

Pergunta

Quero um portao que feche sozinho depois de 10 segundos, quando o player puxar a alavanca

To usando esse script

 

gate.lua

function onUse(cid, item, toPosition)
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra
if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
elseif item.uid == UniID and item.itemid == 1946 then
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(rock1pos, 2)
end
return TRUE
end

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

Nao testei .

 

function onUse(cid, item, toPosition)
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra
if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
elseif item.uid == UniID and item.itemid == 1946 then
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(rock1pos, 2)
return TRUE
end
segundos = 10
addEvent(doCreateItem(rockid,rock1pos) ,segundos*10*1000)
doPlayerSendTextMessage(cid,22,"O Portao fechara daki 10 segundos")
return true
end

Link para o comentário
Compartilhar em outros sites

  • 0

Seu script tava dando um erro nessa linha

addEvent(doCreateItem(rockid,rock1pos) ,segundos*10*1000)

 

Ai troquei por essa e parou de dar o erro

addEvent(doCreateItem(9485,rock1pos,segundos*10*1000))

 

Só que agora ta dando outro erro, ai troquei o script e botei esse:

 

function onUse(cid, item, toPosition)
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra
if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
elseif item.uid == UniID and item.itemid == 1946 then
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(rock1pos, 2)
return TRUE
end
addEvent(doCreateItem, rockID, 1, rock1pos, 10*1000)
doPlayerSendTextMessage(cid,22,"O Portao fechara daki 10 segundos")
return true
end

 

Só que agora ta dando outro erro:

 

In a timer event called from

data/gate.lua:OnUse

description:

Attempt to index a number vallue

Stack traceback:

[C]: ?

Editado por NewAge
Link para o comentário
Compartilhar em outros sites

  • 0

Tó.

 

 

function onUse(cid, item, toPosition)
local segundos = 10 -- Segundos até o portão se fechar
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra

if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
addEvent(doCreateItem, segundos*10*1000, 9485, rock1pos, 1)
doPlayerSendTextMessage(cid, 22, "O portão se fechará em "..segundos.." segundos.")
elseif item.itemid == 1946 then
doTransformItem(item.uid,item.itemid-1)
end
return true
end

 

Editado por LuckOake
Link para o comentário
Compartilhar em outros sites

  • 0

Não funcionou, eu uso a alavanca, o portão abre, mas depois não fecha sozinho. Só da pra fechar usando a alavanca, mas quando eu fecho pela alavanca, não da mais pra abrir, a alavanca trava.E não aparece nenhum erro no console

Editado por NewAge
Link para o comentário
Compartilhar em outros sites

  • 0

tente assim .

 

function onUse(cid, item, toPosition)
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra
if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
elseif item.uid == UniID and item.itemid == 1946 then
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(rock1pos, 2)
addEvent(doCreateItem, segundos*10*1000, 9485, 1, rock1pos)
doPlayerSendTextMessage(cid,22,"O Portao fechara daki 10 segundos")
end
return true
end

Link para o comentário
Compartilhar em outros sites

  • 0

Tenta agr:

 


                          function onUse(cid, item, toPosition)
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra
if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
elseif item.uid == UniID and item.itemid == 1946 then
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(rock1pos, 2)
addEvent(doCreateItem, segundos*10*1000, 9485, 1, rock1pos)
doPlayerSendTextMessage(cid,22,"O Portao fechara daki 10 segundos")
end
end

Link para o comentário
Compartilhar em outros sites

  • 0

tente dnv .

 

function onUse(cid, item, toPosition)
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra
if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
elseif item.uid == UniID and item.itemid == 1946 then
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(rock1pos, 2)
addEvent(doCreateItem, segundos*10*1000,cid,rockid,rock1pos,1)
doPlayerSendTextMessage(cid,22,"O Portao fechara daki 10 segundos")
end
return true
end

Link para o comentário
Compartilhar em outros sites

  • 0

Tenta agr:

 


					   function onUse(cid, item, toPosition)
rock1pos = {x=1352, y=1666, z=5, stackpos=1} -- Posição da Pedra
getrock1 = getThingfromPos(rock1pos)
UniID = 15231 -- UniqueID que vai ser adicionado na alavanca
rockID = 9485 -- ID da pedra
if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(rock1pos, 2)
setPlayerStorageValue(cid, 4005, 2)
setPlayerStorageValue(cid, 4006, 1)
elseif item.uid == UniID and item.itemid == 1946 then
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(rock1pos, 2)
addEvent(doCreateItem, segundos*10*1000, 9485, 1, rock1pos)
doPlayerSendTextMessage(cid,22,"O Portao fechara daki 10 segundos")
end
end

 

Ta dando esse erro

 

[/code]

Attempt to perform arithmetic on global 'segundos' <a nil vallue>

stack traceback: data/gate.lua:1>

[/code]

 

E o script do Sky tb não funciona, o portão abre, mas não fecha sozinho e trava, ai não da mais pra usar ele

Editado por NewAge
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...