DA
action

Ajuda com Action de teleporte

Por Daezzyr, 14 de mar. de 2014 em Scripts

resolvido
script
7
1.5k
DaezzyrD
14 de março de 2014 às 20:14

eu achei esse script, mas gostaria q ele tivesse um tempo de "exausted" para ser usado denovo....

também gostaria que só desse para usar essa action caso o item esteja equipado na mão, teria como alguém me ajudar ?

segue a script :

 

function onUse(cid, item, frompos, item2, topos, item3)
local pos = getThingPos(item2.uid)
local effect = 12 ------Coloque aki o efeito que saira quando usar o item--------

if getTilePzInfo(getCreaturePosition(cid)) then
return doPlayerSendCancel(cid, "O item nao tem poder em Protection Zones.")
end

doTeleportThing(cid, pos, false)
doSendMagicEffect(pos, effect)
return true
end

14 de março de 2014 às 20:49


function onUse(cid, item, frompos, item2, topos, item3)

local pos = getThingPos(item2.uid)

local effect = 12 ------Coloque aki o efeito que saira quando usar o item--------

 

local time = 1 -- tempo em segundos.

 

if getTilePzInfo(getCreaturePosition(cid)) then

return doPlayerSendCancel(cid, "O item nao tem poder em Protection Zones.")

end

 

if getPlayerStorageValue(cid, 1239870) - os.time() <= 0 then

doTeleportThing(cid, pos, false)

doSendMagicEffect(pos, effect)

setPlayerStorageValue(cid, 1239870, os.time()+time)

else

doPlayerSendCancel(cid, "Você só pode usar esse item a cada "..time.." segundos!")

end

return true

end

DaezzyrD
14 de março de 2014 às 21:03

funcionou perfeitamente a parte do cooldown

 

mas e quanto a parte de só poder ser usado quando equipado na mão ? não tem como ? ;$

 

 

 

@edit

 

se não for pedir muito, como coloca pra poder usar a no maximo 3 sqm de distancia ? ._.

Editado Março 14 por Daezzyr

14 de março de 2014 às 21:15

é assim que você ta falando ? :

function onUse(cid, item, frompos, item2, topos, item3)
local pos = getThingPos(item2.uid)
local effect = 12 ------Coloque aki o efeito que saira quando usar o item--------


local time = 1 -- tempo em segundos.


local itemId = -- id do item --[[ o mesmo que ta na tag ]]--


if getTilePzInfo(getCreaturePosition(cid)) then
return doPlayerSendCancel(cid, "O item nao tem poder em Protection Zones.")
end

if getPlayerItemCount(cid, itemId) >= 1 then
   if getPlayerStorageValue(cid, 1239870) - os.time() <= 0 then
    doTeleportThing(cid, pos, false)
    doSendMagicEffect(pos, effect)
    setPlayerStorageValue(cid, 1239870, os.time()+time)
   else
    doPlayerSendCancel(cid, "Você só pode usar esse item a cada "..time.." segundos!")
   end
elseif getPlayerSlotItem(cid, 5).itemid == itemId or getPlayerSlotItem(cid, 6).itemid == itemId then
   if getPlayerStorageValue(cid, 1239870) - os.time() <= 0 then
    doTeleportThing(cid, pos, false)
    doSendMagicEffect(pos, effect)
    setPlayerStorageValue(cid, 1239870, os.time()+time)
   else
    doPlayerSendCancel(cid, "Você só pode usar esse item a cada "..time.." segundos!")
   end
end

return true
end

tente explicar um pouco melhor .

Editado Março 14 por DuuhCarvalho

DaezzyrD
14 de março de 2014 às 21:19

olha mano, pra falar a verdade essa ficou a mesma coisa da de cima, n mudou absolutamente nada

mas pode deixar do jeito q ta, valeu mesmo,

pedido resolvido, reporte para mover, pf

14 de março de 2014 às 21:45
Melhor resposta

eu não entendi, o primeiro script que postei , já estava podendo usar na mão ;s

mais tudo bem , reportado para que movam ..


bom o membro mandou uma mensagem privada explicando , e o que ele queria era que só desse pra usar o item no tile, se o item estivesse equipado na mão , e só poderia usar o item em uma distancia de 3 sqm ..

fiz o script ...

function onUse(cid, item, frompos, item2, topos, item3)
local pos = getThingPos(item2.uid)
local effect = 12 ------Coloque aki o efeito que saira quando usar o item--------

local time = 1 -- tempo em segundos.

local itemId = 123 -- id do item --[[ o mesmo da tag ]]--

local pos1 = getCreaturePosition(cid)

if getTilePzInfo(getCreaturePosition(cid)) then
return doPlayerSendCancel(cid, "O item nao tem poder em Protection Zones.")
end

if getDistanceBetween(pos1, pos) <= 3 then
   if getPlayerSlotItem(cid, 5).itemid == itemId or getPlayerSlotItem(cid, 6).itemid == itemId then
      if getPlayerStorageValue(cid, 1239870) - os.time() <= 0 then
         doTeleportThing(cid, pos, false)
         doSendMagicEffect(pos, effect)
         setPlayerStorageValue(cid, 1239870, os.time()+time)
      else
         doPlayerSendCancel(cid, "Você só pode usar esse item a cada "..time.." segundos!")
      end
   else
       doPlayerSendCancel(cid, "Você só pode usar o item "..getItemNameById(itemId).." estiver equipado na mão.")
   end
else
    doPlayerSendCancel(cid, "Você só pode usar esse item a 3 sqm longe de você")
end

 return true
end

obs : o membro já testou e funcionou..

 

postando aqui apenas para caso outro membros estejam precisando ..

 

-- pode mover ><

VictorWEBMasterV
14 de março de 2014 às 22:01

Tópico movido para a seção de dúvidas e pedidos resolvidos.