Ir para conteúdo
  • Cadastre-se

(Resolvido)Clicar na estatua e teleportar


Ir para solução Resolvido por Wakon,

Posts Recomendados

Boa noite pessoas, eu estou precisando de ajuda com um script que funciona da seguinte forma: Clicando em uma estátua, placa, ou algo do tipo, se eu tiver a vocação, level e quantidade de itens corretos (exemplo: 100 hams o.o) eu sou teleportado para um lugar, se não tiver algum dos 3 sou teleportado para tras ou para o templo.

Agradeço muito quem conseguir me ajudar com isso x)

@EDIT

Eu tenho uma noção basica de scripts em geral, se voce me der algum com as variaveis prontas e tal eu posso editar os numeros, thxxxxxx

Editado por yolocaust (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 8 months later...
Em 07/11/2015 at 08:57, Wakon disse:

Em "OT/Data/actions", script.lua:


local cfg = {
    failpos = {x = 161, y = 55, z = 7}, -- Posição caso não tenha um dos requerimentos.
    pos = {x = 160, y = 54, z = 7},     -- Posição caso tenha todos os requerimentos.
    vocations = {1, 8},                 -- ID's das vocations, separe por vírgulas!
    item = {2160, 10},                  -- ID/count.
    level = 50                          -- Level necessário.
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
    if isInArray(cfg.vocations, getPlayerVocation(cid)) then
        if getPlayerLevel(cid) >= cfg.level then
            if doPlayerRemoveItem(cid, cfg.item[1], cfg.item[2]) then
                doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
                doTeleportThing(cid, cfg.pos)
            else
                doSendMagicEffect(getThingPos(item.uid), CONST_ME_MAGIC_RED)
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você não tem os items necessários, consiga '.. cfg.item[2] ..' '.. getItemNameById(cfg.item[1]) ..' para passar.')
                doTeleportThing(cid, cfg.failpos)
            end
        else
            doSendMagicEffect(getThingPos(item.uid), CONST_ME_MAGIC_RED)
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Você precisa ser level '.. cfg.level ..' para passar.')
            doTeleportThing(cid, cfg.failpos)
        end
    else
        doSendMagicEffect(getThingPos(item.uid), CONST_ME_MAGIC_RED)
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Apenas jogadores da vocação X ou X podem passar.')
        doTeleportThing(cid, cfg.failpos)
    end
   return true
end

Em actions.xml, adicione a tag:


<action uniqueid="XXXX" script="script.lua"/>

Coloque o uniqueid XXXX na estatua e configure o script, caso dê algum erro, me avise :).

Muito Bom Sua Script, Obrigado Por Compartilha

Link para o post
Compartilhar em outros sites
  • 9 months later...
  • 1 year later...

@darlandm, qual a versão da distro?

 

Testa com essa tag:

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

 

Link para o post
Compartilhar em outros sites
Em 25/08/2018 em 15:48, Wakon disse:

@darlandm, qual a versão da distro?

 

Testa com essa tag:


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

 

Desculpa mano, tinha adicionado a tag no lugar errado, funcionou certinho com aquela tag mesmo: <action uniqueid="6661" script="teleportfire.lua"/>

Valeu ae!!

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo