Ir para conteúdo
  • 0

Scroll


ScythePhantom

Pergunta

Olá, gostaria de pedir um "teleport" scroll, ele funcionaria da seguinte maneira, o player iria clicar no item e seria teleportado para a cidade que reside, algo assim; function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)

doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), true), e que para ser teleportado ele não estiver pz ou pk, algo assim; if getPlayerSkullType(cid) == SKULL_WHITE or isPlayerPzLocked(cid) then e que ele só pudesse usar este item em 5 minutos em 5 minutos.


Muito Obrigado, REP+


Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

@@ScythePhantom,

Tente assim:

local config = {
	storage = 10520, -- use uma storage não utilizada
	tempo = 5, -- em minutos
	remItem = false -- remove item ao usar
}

function onUse(cid, item)
	if getPlayerSkullType(cid) == SKULL_WHITE or isPlayerPzLocked(cid) then
		return false, doPlayerSendCancel(cid, "Voce nao pode usar o teleport estando pk ou pz lock.")
	end
	local pos, temple = getCreaturePosition(cid), getTownTemplePosition(getPlayerTown(cid), false)
	if getPlayerStorageValue(cid, config.storage) < os.time () then
		doTeleportThing(cid, temple, true)
		setPlayerStorageValue(cid, config.storage, os.time() + (config.tempo * 60))
		doSendMagicEffect(pos, CONST_ME_TELEPORT)
		doSendMagicEffect(getClosestFreeTile(cid, temple), CONST_ME_POFF)
		if config.remItem then doPlayerRemoveItem(cid, item.itemid, 1) end
	else
		return false, doPlayerSendCancel(cid, "Voce so pode usar o teleport a cada " .. (config.tempo / 60) .. " minutos.")
	end
end
Editado por Bruno Minervino
Link para o comentário
Compartilhar em outros sites

  • 0

sleep.png

local time, storage = 5, 74540
function onUse(cid)
  if getPlayerSkullType(cid) >= SKULL_WHITE or isPlayerPzLocked(cid) then
    doPlayerSendTextMessage(cid, 19, "Não pode estar em pz ou estar pk para usar o item")
    return true
  end
  if getPlayerStorageValue(cid, storage) >= os.time() then
    doPlayerSendTextMessage(cid, 19, "O item só pode ser usado a cada 5 minutos falta" .. getPlayerStorageValue(cid, storage) - os.time() .. " segundos."
    return true
  end
  doRemoveItem(item.uid, 1)
  doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
  setPlayerStorageValue(cid, storage, os.time() + (time*60))
  return true
end
Link para o comentário
Compartilhar em outros sites

  • 0

Perfeito, os dois funcionaram perfeitamente! (não sei qual coloco como "resolvido", então deixo a critério de vocês) Obrigado.

Fica a seu critério amigo :) coloque o que você preferir, só preciso que coloque para resolver o tópico rs

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...