Ir para conteúdo

Featured Replies

  • Respostas 16
  • Visualizações 2.2k
  • 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
  Em 01/01/2019 em 21:54, Roy disse:

É 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

 

Tem como coloca um efeito ao entrar no teleporte criado no chão. Fica aparecendo um efeito de fumaça. 

Postado
  Em 02/01/2019 em 00:03, Black Fenix disse:

@Roy poderia fazer isso para mim ?

 

 

É 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 mais até porque somente ambos irá poder passar pelo portal do outro lado no caso.

 

adicionar na tag xml da spell:

needtarget="1" params="1" range="1" 

range="1" = distância necessária para poder castar a spell. 1 = Player próximo um do outro.

 

E irá ficar assim:

<instant name="test" words="test" lvl="0" needtarget="1" params="1" range="1" maglv="0" manapercent="0" soul="0" exhaustion="1000" prem="0" enabled="1" script="test.lua"/>

 

Spell .lua

Mostrar conteúdo oculto

 

-------------------------------------------------------------------------------------------------------------------

 

  Em 02/01/2019 em 13:04, BangxD disse:

Tem como coloca um efeito ao entrar no teleporte criado no chão. Fica aparecendo um efeito de fumaça. 

 

Sim tem sim, mas você vai adicionar uma action no piso para onde o Player irá ser teleportado.

 

Tag Movements.xml

<movevent type="StepIn" actionid="9002" event="script" value="Piso-TPos.lua"/>

Piso-TPos.lua

Mostrar conteúdo oculto

 

-------------------------------------------------------------------------------------------------------------------

 

  Em 03/01/2019 em 10:52, DEKU KUNNNN disse:

@Roy  Script muito boa, mas pq só a vocação que usou a magia do teleporte pode sair ? tem como resolver isso ?

 

Porque só salva a posição do Jogador que usou a spell.

doSavePlayerPos(cid, config.storage, getThingPos(cid))

Eu acho que tive uma solução para todos que entrarem no portal criado.

 

Substituir esse no lugar do outro spell .lua

Mostrar conteúdo oculto

 

 

Movements.xml adicionar essa tag.

<movevent type="StepIn" actionid="9003" event="script" value="teleport2.lua"/>

 

em Movements/scripts criar um arquivo com nome. Teleport2.lua e adicionar isso dentro.

Mostrar conteúdo oculto

 

OBS: Lembrando que o tempo do teleport criado tem que ser menor que o tempo para entrar no outro Teleport assim o player(s) voltará para o local de onde o Teleport foi criado.

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

Postado
  • Autor
  Em 03/01/2019 em 21:40, Roy disse:

É 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 mais até porque somente ambos irá poder passar pelo portal do outro lado no caso.

 

adicionar na tag xml da spell:


needtarget="1" params="1" range="1" 

range="1" = distância necessária para poder castar a spell. 1 = Player próximo um do outro.

 

E irá ficar assim:


<instant name="test" words="test" lvl="0" needtarget="1" params="1" range="1" maglv="0" manapercent="0" soul="0" exhaustion="1000" prem="0" enabled="1" script="test.lua"/>

 

Spell .lua

Mostrar conteúdo oculto

 

-------------------------------------------------------------------------------------------------------------------

 

Sim tem sim, mas você vai adicionar uma action no piso para onde o Player irá ser teleportado.

 

Tag Movements.xml


<movevent type="StepIn" actionid="9002" event="script" value="Piso-TPos.lua"/>

Piso-TPos.lua

Mostrar conteúdo oculto

 

-------------------------------------------------------------------------------------------------------------------

 

Porque só salva a posição do Jogador que usou a spell.


doSavePlayerPos(cid, config.storage, getThingPos(cid))

Eu acho que tive uma solução para todos que entrarem no portal criado.

 

Substituir esse no lugar do outro spell .lua

Mostrar conteúdo oculto

 

 

Movements.xml adicionar essa tag.


<movevent type="StepIn" actionid="9003" event="script" value="teleport2.lua"/>

 

em Movements/scripts criar um arquivo com nome. Teleport2.lua e adicionar isso dentro.

Mostrar conteúdo oculto

 

OBS: Lembrando que o tempo do teleport criado tem que ser menor que o tempo para entrar no outro Teleport assim o player(s) voltará para o local de onde o Teleport foi criado.

 

a.thumb.png.ed4b273b11cee105d399d3cad047f5a2.png

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.8k

Informação Importante

Confirmação de Termo