Ir para conteúdo

Featured Replies

Postado

Estava editando meu servidor e queria que um determinado teleport só fosse possível ser utilizado caso o jogador tenha level 300 por exemplo, creio que preciso criar uma action e colocar no teleport mas não sei como fazê-la.

  • Respostas 5
  • Visualizações 2.6k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Vá em "Data/movements/scripts", copie e cole um arquivo.lua, renomeie para nomedoscript.lua, apague tudo e cole: local t = { pos = {x = 160, y = 54, z = 7}, level = 300 } function onStepIn(

  • @Morphred, pra usar em uma porta é necessário uma action. Em "Data/actions/scripts", copie e cole um arquivo.lua, renomeie para nomedoscript.lua, apague tudo e cole: local level = 300 functi

Postado
  • Este é um post popular.

Vá em "Data/movements/scripts", copie e cole um arquivo.lua, renomeie para nomedoscript.lua, apague tudo e cole:

local t = {
   pos = {x = 160, y = 54, z = 7},
   level = 300
}

function onStepIn(cid, item, position, fromPosition)
    if getPlayerLevel(cid) < t.level then
        doPlayerSendCancel(cid, 'Apenas jogadores level '.. t.level ..' podem passar aqui.')
        doTeleportThing(cid, fromPosition)
    else
        doTeleportThing(cid, t.pos)
    end
   return true
end

Depois volte na pasta "Data/movements", abra o arquivo movements.xml e adicione a TAG:

<movevent type="StepIn" actionid="XXXX" event="script" value="nomedoscript.lua"/>

Em pos você coloca a posição que será teleportado caso seja level 300 ou mais e na tag em actionid="XXXX" você coloca a actionID desejada, depois é só colocar ela no teleport.

Lembrando que você deve deixar o teleporte sem nenhuma posição lá no map editor, pois o script já faz a parte de teleportar.

  • 3 weeks later...
Postado
Em 12/02/2016 20:28:19, Wakon disse:

Vá em "Data/movements/scripts", copie e cole um arquivo.lua, renomeie para nomedoscript.lua, apague tudo e cole:


local t = {
   pos = {x = 160, y = 54, z = 7},
   level = 300
}

function onStepIn(cid, item, position, fromPosition)
    if getPlayerLevel(cid) < t.level then
        doPlayerSendCancel(cid, 'Apenas jogadores level '.. t.level ..' podem passar aqui.')
        doTeleportThing(cid, fromPosition)
    else
        doTeleportThing(cid, t.pos)
    end
   return true
end

Depois volte na pasta "Data/movements", abra o arquivo movements.xml e adicione a TAG:


<movevent type="StepIn" actionid="XXXX" event="script" value="nomedoscript.lua"/>

Em pos você coloca a posição que será teleportado caso seja level 300 ou mais e na tag em actionid="XXXX" você coloca a actionID desejada, depois é só colocar ela no teleport.

Lembrando que você deve deixar o teleporte sem nenhuma posição lá no map editor, pois o script já faz a parte de teleportar.

:D se eu por o actionid numa porta ele funfa? ou devo por o teleport no piso da porta caso keira assim? .-.  (base cyan pega neh?! '-' )

 

Postado

@Morphred, pra usar em uma porta é necessário uma action.

Em "Data/actions/scripts", copie e cole um arquivo.lua, renomeie para nomedoscript.lua, apague tudo e cole:

local level = 300

function onUse(cid, item, position)
    if getPlayerLevel(cid) >= level then
        doTeleportThing(cid, position)
        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Apenas jogadores level '.. level ..' ou mais podem passar.')
        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
    end
   return true
end

Agora em "Data/actions", abra o arquivo actions.xml e adicione:

<action actionid="XXXX" event="script" value="nomedoscript.lua"/>

Ai é só colocar a action em XXXX e configurar na porta.

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