Ir para conteúdo

Featured Replies

Postado

Ola, Boa noite, tou precisando de uma spells que funcione mais o menos assim

o player usa a magia , ai cria um portal em baixo dele e esse portal irar levar para "X" position, (esse portal some em "X" segundos).

sendo que la no destino vai ter um portal para voltar pro mesmo lugar em que a magia foi usada! porem para voltar teria que esperar "X"

segundos para poder atravessar o portal de volta. E tipo um kamui no jutso de Nto. Agradeço a quem tentar ajudar.

 

Resolvido por Roy

Ir para solução
  • Respostas 16
  • Visualizações 2.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • É o seguinte o portal será criado Ok, mas o tempo do outro portal deve ser maior senão o player irá voltar para o local onde ele foi teleportado ou seja, não o local onde o portal foi criado, a partir

  • Poxa cara. Tudo bem então Você vai fazer o seguinte, vai criar a  Spell e colocar o script dela acima Ok. Agora você vai adicionar essas duas linhas no seu movements.xml <movevent typ

  • É o seguinte ele irá castar a Spell em alguém tipo. Exiva Black Fenix E ambos terá que está em party(somente em party) e então  serão teleportado para o local. O portal criado não irá funcionar

Posted Images

Postado
  • Solução

É o seguinte o portal será criado Ok, mas o tempo do outro portal deve ser maior senão o player irá voltar para o local onde ele foi teleportado ou seja, não o local onde o portal foi criado, a partir do momento em que o portal criado for removido ao ele usar o outro portal ele será teleportado para o Removido, Acho que deu para entender.

 

Spell

local config = {storage = 8001}--Seleciona a storage 8001 e separa entre 3, exemplo - "8001, 8002, 8003", Entao nao use nenhuma dessas 3 storages em outros scripts.
local cfg = {storage = 8000, Tempo = 1*60}  --1 minuto. Tempo que poderá passar no piso ao redor do Teleport.
local function doSavePlayerPos(uid, storage, pos)
doCreatureSetStorage(uid, storage, pos.x)
doCreatureSetStorage(uid, storage+1, pos.y)
doCreatureSetStorage(uid, storage+2, pos.z)
end

function onCastSpell(cid, var)
----------------------------------------------------------------------------------------------------------------------------------------------------------------
local TeleportID = 1387
local Teleport = {
config = {
ToPos = {x = 309, y = 287, z = 7}, -- Local onde o jogador será teleportado
Pos = getCreaturePosition(cid),
Time = 10, --Quanto tempo irá durar o Teleport
},
}

function removeTeleport(Teleport)
local t = getTileItemById(Teleport.config.Pos, TeleportID)
if t then
doRemoveItem(t.uid, 1)
doSendMagicEffect(Teleport.config.Pos, CONST_ME_POFF)
end
end

doCreateTeleport(TeleportID, Teleport.config.ToPos,Teleport.config.Pos)
addEvent(removeTeleport, Teleport.config.Time * 1000, Teleport)
setPlayerStorageValue(cid, cfg.storage, os.time()+cfg.Tempo)
doSavePlayerPos(cid, config.storage, getThingPos(cid))
----------------------------------------------------------------------------------------------------------------------------------------------------------------
return TRUE
end

Movements.xml

<movevent type="StepIn" actionid="9000" event="script" value="piso.lua"/>
<movevent type="StepIn" actionid="9001" event="script" value="teleport.lua"/>

 

piso.lua

function onStepIn(cid, item, position, fromPosition)
local config = {storage = 8000}
if (getPlayerStorageValue(cid, config.storage) <= os.time()) then
return true
else
doTeleportThing(cid, fromPosition, false)
doPlayerSendCancel(cid, "Você deve aguardar " ..getPlayerStorageValue(cid, config.storage) - os.time().." para poder entrar nesse portal!")
end
return true 
end

 

Teleport.lua

function onStepIn(cid, item, position, fromPosition)
local config = {storage = 8001}
local function getSavedPlayerPos(uid, storage)
return {x = getCreatureStorage(uid, storage), y = getCreatureStorage(uid, storage+1), z = getCreatureStorage(uid, storage+2)}
end
if (getPlayerStorageValue(cid, config.storage) <= os.time()) then
doTeleportThing(cid, getSavedPlayerPos(cid, config.storage))
else
doTeleportThing(cid, fromPosition, false)
doPlayerSendCancel(cid, "Você deve aguardar " ..getPlayerStorageValue(cid, config.storage) - os.time().." para poder entrar nesse portal!")
end
return true 
end

Editado por Roy (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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo