Ir para conteúdo
  • Cadastre-se

Normal SCRIPT para CheckPoint de teleports


Posts Recomendados

Olá amigos,

Estou com um grande problema e não achei nada parecido aqui no TK.

Segue o exemplo da imagem, o player vai ter um tp no templo e outro na quest, quando ele passar pelo tp1 ele vai ser teleportado para o X na direita do player salvando a sua posição de checkpoint, ao passar pelo tp2 ele irá ser teleportado para o X que será sua posição de checkpoint, o tp2 se encontrará no templo.

 

Consistência:

                    *só pode salvar uma vez, se ele entrar em outro checkpoint ele resetará sua posição para a ultima;

                    *se não houver checkpoint, o player receberá uma mensagem de que não há checkpoint;

                    *em cada tp ao teleportar o player recebe uma mensagem, com qualquer efeito, só pra saber como é o código do efeito;

 

 

12571287_555245157978603_988990226_n.png

 

 

Editado por Shabba (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

"Data/movements/scripts", checkTeleport.lua:

local t = {
mainTP = 20000, -- Aqui é o uniqueID do teleport que levará ao check point.
resetTP = 20001, -- Caso queira resetar o checkPoint, coloque esse uniqueID e edite a position normalmente pelo RME.
storage = 40945, -- Storage para salvar a position, só mexa se necessário!
    checks = { -- [uniqueid] = {pos = {position do checkPoint}}
        [20002] = {pos = {x = 162, y = 55, z = 7}},
        [20003] = {pos = {x = 163, y = 55, z = 7}},
        [20004] = {pos = {x = 164, y = 55, z = 7}},
},
}

function onStepIn(cid, item, position, fromPosition)
    if not isPlayer(cid) then
        return true
    end

    local checkPos = t.checks[item.uid]
    if checkPos then
        doTeleportThing(cid, checkPos.pos)
        setPlayerStorageValue(cid, t.storage, "{x = ".. checkPos.pos.x ..", y = ".. checkPos.pos.y ..", z = ".. checkPos.pos.z .."}")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Check point! Agora você pode voltar a esse local pelo teleport localizado no templo.')
        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
    elseif item.uid == t.mainTP then
        if getPlayerStorageValue(cid, t.storage) == -1 then
            doTeleportThing(cid, fromPosition)
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você não chegou a nenhum check point ainda.')
            doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
        else
            local nPos = "return ".. getPlayerStorageValue(cid, t.storage)
             doTeleportThing(cid, loadstring(nPos)())
            doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
        end
    elseif item.uid == t.resetTP then
        setPlayerStorageValue(cid, t.storage, -1)
    end
  return true
end

"Data/movements", movements.xml:

<movevent type="StepIn" uniqueid="20000-20004" event="script" value="checkTeleport.lua"/> 

Não esqueça de aumentar o valor na tag caso adicione mais checks!

Se tiver alguma dúvida ou der algum problema, me avise.

Editado por Wakon (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Jaurez
      .
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por danilo belato
      Fala Galera To Com um problema aki 
       
      quero exporta umas sprites de um server para colocar em outro 
       
      eu clico na sprites ai aparece tds a forma delas do lado de la >>
       
      ai eu clico nela e ponho a opiçao de export mais quando salvo a sprite ela n abri 
       
      aparece isso quando tento vê-la 
       
      visualização não disponível ( no formatos png e bitmap)
       
      Agora no formato idc fala que o paint n pode ler 
       
      me ajudem ae...
    • Por Vitor Bicaleto
      Galera to com o script do addon doll aqui, quando eu digito apenas "!addon" ele aparece assim: Digite novamente, algo está errado!"
      quando digito por exemplo: "!addon citizen" ele não funciona e não da nenhum erro
       
      mesma coisa acontece com o mount doll.. 
    • Por Ayron5
      Substitui uma stone no serve, deu tudo certo fora  esse  erro ajudem  Valendo  Rep+  Grato  

      Erro: data/actions/scripts/boost.lua:557: table index is nil
       [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua)

      Script:
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo