Ir para conteúdo
  • Cadastre-se

(Resolvido)[SCRIPT] Porta após fazer quest!


Ir para solução Resolvido por Caronte,

Posts Recomendados

Pessoal, boa noite!

 

Eu tenho um script baseado em uma porta Vip, onde o player só pode passar se tiver a storage de vip!

 

Estou adaptando este script pra uma porta onde o player só pode passar se tiver terminado uma quest, porém, quando eu clico na porta (mesmo tendo feito essa quest) continua aparecendo a msg de que precisa fazer a quest! Alguém poderia me ajudar?

 

Segue o script!

local str = 2215 -- storage
 
function onUse(cid, item, frompos, item2, topos)
    local pos = getCreaturePosition(cid)
        if getPlayerStorageValue(cid, str) - os.time() < 1 then
            return doPlayerSendCancel(cid, "Voce precisa terminar anihilator quest!")
        end
        
            if pos.x == topos.x then
                if pos.y < topos.y then
                    pos.y = topos.y + 1
                else
                    pos.y = topos.y - 1
                end
            elseif pos.y == topos.y then
                if pos.x < topos.x then
                    pos.x = topos.x + 1
                else
                    pos.x = topos.x - 1
                end
            else
                doPlayerSendCancel(cid, "Fique em frente a porta.")
                return true
            end
        
    doTeleportThing(cid, pos)
    doSendMagicEffect(topos, CONST_ME_MAGIC_BLUE)
    return true
end

 
Desde já eu agradeço!

60cb89cab929e5d4179b538c4176ab11a2e58de6.gif

Link para o post
Compartilhar em outros sites
  • Solução

Não mexi na sua gambiarra:

local str = 2215 -- storage

function onUse(cid, item, frompos, item2, topos)
    local pos = getCreaturePosition(cid)
    if getPlayerStorageValue(cid, str) < 1 then
        return doPlayerSendCancel(cid, "Voce precisa terminar anihilator quest!")
    end
    
    if pos.x == topos.x then
        if pos.y < topos.y then
            pos.y = topos.y + 1
        else
            pos.y = topos.y - 1
        end
    elseif pos.y == topos.y then
        if pos.x < topos.x then
            pos.x = topos.x + 1
        else
            pos.x = topos.x - 1
        end
    else
        doPlayerSendCancel(cid, "Fique em frente a porta.")
        return true
    end
    
    doTeleportThing(cid, pos)
    doSendMagicEffect(topos, CONST_ME_MAGIC_BLUE)
    return true
end

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Passa o script do baú da quest.

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

estou criando meu primeiro ot agora, mas ja estou salvando alguns bons scripts.. vc pode me passar todo este script de porta por quest e porta por vip ?

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

cara a script la e da porta, pra adicionar a storage use qualquer uma, exemplo:

 

action.xml

<action actionid="5986" event="script" value="quests/liberaporta.lua"/>

 

 

/quests/liberaporta.lua

sem item V

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerStorageValue(cid, 27000) == EMPTY_STORAGE) then
doPlayerSendTextMessage(cid,22,"Acesso recebido.") 
setPlayerStorageValue(cid, 27000, 1)
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_HOLYDAMAGE)
else
doPlayerSendTextMessage(cid,22,"Seu acesso ja esta liberado!.")
end
return true
end

 

com itens

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerStorageValue(cid, 27000) == EMPTY_STORAGE) then
doPlayerSendTextMessage(cid,22,"Acesso recebido.")

doPlayerAddItem(cid,2466,1) -- 2466 id do item , 1 quantidade
setPlayerStorageValue(cid, 27000, 1)
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_HOLYDAMAGE)
else
doPlayerSendTextMessage(cid,22,"Seu acesso ja esta liberado!.")
end
return true
end

 

 

 

cara a script la e da porta, pra adicionar a storage use qualquer uma, exemplo:

a action id 5986 vc coloca qual vc quiser

action.xml

<action actionid="5986" event="script" value="quests/liberaporta.lua"/>

 

a store 27000 vc coloca qual vc quiser

/quests/liberaporta.lua

sem item V

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerStorageValue(cid, 27000) == EMPTY_STORAGE) then
doPlayerSendTextMessage(cid,22,"Acesso recebido.") 
setPlayerStorageValue(cid, 27000, 1)
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_HOLYDAMAGE)
else
doPlayerSendTextMessage(cid,22,"Seu acesso ja esta liberado!.")
end
return true
end

 

com itens V

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerStorageValue(cid, 27000) == EMPTY_STORAGE) then
doPlayerSendTextMessage(cid,22,"Acesso recebido.")

doPlayerAddItem(cid,2466,1) -- 2466 id do item , 1 quantidade
setPlayerStorageValue(cid, 27000, 1)
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_HOLYDAMAGE)
else
doPlayerSendTextMessage(cid,22,"Seu acesso ja esta liberado!.")
end
return true
end

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo