Ir para conteúdo
  • Cadastre-se

(Resolvido)[Ajuda] Desert Quest Bugada


Ir para solução Resolvido por Dwarfer,

Posts Recomendados

@Joaoafp 

local config = {
    -- level needed to make the quest
    level = 130,
 
    -- if players should be able to do the quest unlimited amount of times (not conflicting quest rewards)
    redo = {
        status = false, -- true = unlimited, false = once
        storageValue = 61111 -- only if status is false this will be used
    },
 
    -- vocation requirement, positions and item configuration
    {
        vocations = {1, 5},
        itemId = 2190,
        playerPos = {x=1117, y=1150, z=6}, -- Initial position in the Stone tile
        newPos = {x=1122, y=1153, z=6}, -- Position of the reward room.
        itemPos = {x=1117, y=1151, z=6}  -- Position of Spellbook "Sorcerer".
    },
 
    {
        vocations = {2, 6},
        itemId = 2182,
        playerPos = {x=1123, y=1157, z=6}, -- Initial position in the Stone tile
        newPos = {x=1122, y=1153, z=6}, -- Position of the reward room.
        itemPos = {x=1122, y=1157, z=6} -- Position of Red apple "Druid".
    },
 
    {
        vocations = {3, 7},
        itemId = 2399,
        playerPos = {x=1127, y=1155, z=6}, -- Initial position in the Stone tile
        newPos = {x=1122, y=1153, z=6}, -- Position of the reward room.
        itemPos = {x=1127, y=1154, z=6} -- Position of Crossbow "Paladin".
    },
 
    {
        vocations = {4, 8},
        itemId = 8602,
        playerPos = {x=1123, y=1147, z=6}, -- Initial position in the Stone tile
        newPos = {x=1122, y=1153, z=6}, --Position of the reward room.
        itemPos = {x=1122, y=1147, z=6} --Position of Sword "Knight".
    }
}
 
function onUse(cid)
    local players = {}
    for _, v in ipairs(config) do
 
        v.playerPos.stackpos = 253
        local player = getThingfromPos(v.playerPos).uid
 
        if isPlayer(player) == FALSE then
            return doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Não há jogadores suficiente.")
        elseif getPlayerLevel(player) < config.level then
            players.level = true
        elseif isInArray(v.vocations, getPlayerVocation(player)) == FALSE then
            players.vocation = true
        elseif config.redo.status == false and getPlayerStorageValue(cid, config.redo.storageValue) == 1 then
            players.done = true
        else
            v.itemPos.stackpos = 1
            local item = getThingfromPos(v.itemPos)
 
            if item.itemid ~= v.itemId then
                players.item = true
            else
                table.insert(players, player)
            end
        end
    end
 
    if players.level then
        doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Todos os jogadores devem ser level " .. config.level .. " ou mais.")
    elseif players.vocation then
        doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Todos os jogadores devem estar em seus respectivo piso!")
    elseif players.done then
        doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Um jogador em seu time ja fez a Fishing Rod and Pick Quest!")
    elseif players.item then
        doPlayerSendTextMessage(cid,MESSAGE_STATUS_CONSOLE_ORANGE, "Todos os items devem estar na posição correta!")
    else
        for k, player in ipairs(players) do
            doSendMagicEffect(getCreaturePosition(player), CONST_ME_POFF)
            doTeleportThing(player, config[k].newPos)
            doSendMagicEffect(getCreaturePosition(player), CONST_ME_TELEPORT)
        end
    end
 
    return TRUE
end 

Deixe false que é para que só possa fazer 1x vez.

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
  • Respostas 12
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

@Joaoafp    

Posted Images

@KotZletY

Deu errado, quando coloca false os jogadores podem fazer quantas vezes quiser :(

mas obg pela ajuda !

 

 

@xWhiteWolf

Wolf tenta me ajudar nessa ai? pfv? +REP

Link para o post
Compartilhar em outros sites
  Em 27/10/2017 em 01:55, Joaoafp disse:

quando coloca false os jogadores podem fazer quantas vezes quiser

Expand   Mostrar mais  

Ué ? A descrição do script diz que se tiver falso só faz uma vez(once) e se tiver true que pode fazer várias vezes(unlimited).

 

  Mostrar conteúdo oculto

 

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites

@KotZletY

Eu sei manow, mas esta errada a descrição, não consigo resolver esse problema de jeito nenhum :(

crio os 4 chares e coloco td lá, e ja fala qe eles fizeram, mesmo o time quem nunca fez.

:'(

Link para o post
Compartilhar em outros sites

@Joaoafp 

 

  Mostrar conteúdo oculto

 

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.

  • Estatísticas dos Fóruns

    96844
    Tópicos
    519603
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo