Ir para conteúdo

Featured Replies

Postado

Boa noite alguem consegue atualizar pra mim por favor



local config = {
    protectZone = "sim", -- Precisa estar em PZ para usar o comando?

    skill = {
        item = 9971, -- Item removido
        quantidade = 10, -- Quantidade
        quantidadeskill = 10, -- Skill adicionada
        limiteskill = 350 -- Limite
    },

    magicLevel = {
        item = 9971, -- Item removido
        quantidade = 15, -- Quantidade
        quantidademl = 5, -- Magic level adicionado
        limitedeml = 200 -- Limite
    },

    skillID = { -- ID das skills
        ["club"] = SKILL_CLUB,
        ["sword"]= SKILL_SWORD,
        ["axe"] = SKILL_AXE,
        ["distance"] = SKILL_DISTANCE,
        ["shielding"] = SKILL_SHIELD
    },

    vocationSkill = { -- Vocações que pode comprar x skill
        ["club"] = {4, 8},
        ["sword"] = {4, 8},
        ["axe"] = {4, 8},
        ["distance"] = {3, 7},
        ["shielding"] = {4, 8}
    },

    vocationMagicLevel = {1, 2, 5, 6}, -- Vocações que pode comprar magic level

    delay = {
        skill = {
            storage = 45,
            duration = 5 -- Tempo para comprar skill novamente
        },

        magicLevel = {
            storage = 97,
            duration = 5 -- Tempo para comprar magic level novamente
        }
    }
}

function onSay(player, words, param)
    if config.protectZone == "sim" and not Tile(player:getPosition()):hasFlag(TILESTATE_PROTECTIONZONE) then
        return player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você precisa estar em protection zone para comprar.")
    end

    if param == "magiclevel" then
        if player:getMagicLevel() < config.magicLevel.limitedeml then
            if isInArray(config.vocationMagicLevel, player:getVocation():getId()) then
                if player:removeItem(config.magicLevel.item, config.magicLevel.quantidade) then
                    if (os.time() - player:getStorageValue(config.delay.magicLevel.storage)) >= config.delay.magicLevel.duration then
                        player:setStorageValue(config.delay.magicLevel.storage, os.time())
                        local playerId = player:getGuid()
                        player:remove()
                        db.query("UPDATE `players` SET `maglevel` = `maglevel` + " .. config.magicLevel.quantidademl .. " WHERE `id` = " .. playerId)
                    else
                        player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Espere " .. config.delay.magicLevel.duration .. " segundos para comprar novamente.")
                    end
                else
                    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você não tem o item requerido.")
                end
            else
                player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Voce não pode comprar magic level.")
            end
        else
            player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você chegou no limite de magic level.")
        end
    elseif config.skillID[param:lower()] then
        if getPlayerSkill(cid, config.skillID[param:lower()]) < config.skill.limiteskill then
            if isInArray(config.vocationSkill[param:lower()], player:getVocation():getId()) then
                if player:removeItem(config.skill.item, config.skill.quantidade) then
                    if (os.time() - player:getStorageValue(config.delay.skill.storage)) >= config.delay.skill.duration then
                        player:setStorageValue(config.delay.skill.storage, os.time())
                        local playerId = player:getGuid()
                        player:remove()
                        db.query("UPDATE `player_skills` SET `value` = `value` + " .. config.skill.quantidadeskill .. " WHERE `player_id` = " .. playerId .. " and `skillid` = " .. config.skillID[param:lower()])
                    else
                        player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Espere " .. config.delay.skill.duration .. " segundos para comprar novamente.")
                    end
                else
                    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você não tem o item requerido.")
                end
            else
                player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Voce não pode comprar este skill.")
            end
        else
            player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você chegou no limite de skill.")
        end
    else
        player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Possíveis parâmetros: club, sword, axe, distance, shielding, magiclevel.")
    end
    return true
end

tentei mas não sem nem por onde começar otx 3.10

  • Respostas 19
  • Visualizações 1.5k
  • Created
  • Última resposta

Top Posters In This Topic

Posted Images

Postado
10 horas atrás, Cleiton Felipi disse:

Boa noite alguem consegue atualizar pra mim por favor

 

  Mostrar conteúdo oculto

 

 


local config = {
    protectZone = "sim", -- Precisa estar em PZ para usar o comando?

    skill = {
        item = 9971, -- Item removido
        quantidade = 10, -- Quantidade
        quantidadeskill = 10, -- Skill adicionada
        limiteskill = 350 -- Limite
    },

    magicLevel = {
        item = 9971, -- Item removido
        quantidade = 15, -- Quantidade
        quantidademl = 5, -- Magic level adicionado
        limitedeml = 200 -- Limite
    },

    skillID = { -- ID das skills
        ["club"] = SKILL_CLUB,
        ["sword"]= SKILL_SWORD,
        ["axe"] = SKILL_AXE,
        ["distance"] = SKILL_DISTANCE,
        ["shielding"] = SKILL_SHIELD
    },

    vocationSkill = { -- Vocações que pode comprar x skill
        ["club"] = {4, 8},
        ["sword"] = {4, 8},
        ["axe"] = {4, 8},
        ["distance"] = {3, 7},
        ["shielding"] = {4, 8}
    },

    vocationMagicLevel = {1, 2, 5, 6}, -- Vocações que pode comprar magic level

    delay = {
        skill = {
            storage = 45,
            duration = 5 -- Tempo para comprar skill novamente
        },

        magicLevel = {
            storage = 97,
            duration = 5 -- Tempo para comprar magic level novamente
        }
    }
}

function onSay(player, words, param)
    if config.protectZone == "sim" and not Tile(player:getPosition()):hasFlag(TILESTATE_PROTECTIONZONE) then
        return player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você precisa estar em protection zone para comprar.")
    end

    if param == "magiclevel" then
        if player:getMagicLevel() < config.magicLevel.limitedeml then
            if isInArray(config.vocationMagicLevel, player:getVocation():getId()) then
                if player:removeItem(config.magicLevel.item, config.magicLevel.quantidade) then
                    if (os.time() - player:getStorageValue(config.delay.magicLevel.storage)) >= config.delay.magicLevel.duration then
                        player:setStorageValue(config.delay.magicLevel.storage, os.time())
                        local playerId = player:getGuid()
                        player:remove()
                        db.query("UPDATE `players` SET `maglevel` = `maglevel` + " .. config.magicLevel.quantidademl .. " WHERE `id` = " .. playerId)
                    else
                        player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Espere " .. config.delay.magicLevel.duration .. " segundos para comprar novamente.")
                    end
                else
                    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você não tem o item requerido.")
                end
            else
                player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Voce não pode comprar magic level.")
            end
        else
            player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você chegou no limite de magic level.")
        end
    elseif config.skillID[param:lower()] then
        if getPlayerSkill(cid, config.skillID[param:lower()]) < config.skill.limiteskill then
            if isInArray(config.vocationSkill[param:lower()], player:getVocation():getId()) then
                if player:removeItem(config.skill.item, config.skill.quantidade) then
                    if (os.time() - player:getStorageValue(config.delay.skill.storage)) >= config.delay.skill.duration then
                        player:setStorageValue(config.delay.skill.storage, os.time())
                        local playerId = player:getGuid()
                        player:remove()
                        db.query("UPDATE `player_skills` SET `value` = `value` + " .. config.skill.quantidadeskill .. " WHERE `player_id` = " .. playerId .. " and `skillid` = " .. config.skillID[param:lower()])
                    else
                        player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Espere " .. config.delay.skill.duration .. " segundos para comprar novamente.")
                    end
                else
                    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você não tem o item requerido.")
                end
            else
                player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Voce não pode comprar este skill.")
            end
        else
            player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Você chegou no limite de skill.")
        end
    else
        player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Possíveis parâmetros: club, sword, axe, distance, shielding, magiclevel.")
    end
    return true
end

 

tentei mas não sem nem por onde começar otx 3.10

 

Como assim cara?Não entendi o problema.

Postado
6 horas atrás, Rayo disse:

Como assim cara?Não entendi o problema.

 

Ele quer tornar o script compatível com o OTX 3.10 !! 

@Cleiton Felipi, depois eu faço pra vc...

 

Editado por King Jhow (veja o histórico de edições)

Postado

Ainda não testei, teste aí, qualquer erro pode reportar.

 

Citar

function onSay(cid, words, param)
if(param == "skillshielding10") then
if getPlayerSkillLevel(cid, SKILL_SHIELD, true) >= 341 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode ter skill acima de 350.")
return true
end
if(not isKnight(cid) and not isDrunou(cid)) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Somente Knights e Drunous podem comprar skill de shield.")
return true
end
if getPlayerItemCount(cid, 9971) >= 10 then
local pid = getPlayerGUID(cid)
local shield = getPlayerSkillLevel(cid, SKILL_SHIELD, true)
doPlayerRemoveItem(cid, 9971, 10)
setPlayerStorageValue(cid,11548,os.time()+5)
doRemoveCreature(cid)
db.executeQuery("UPDATE `player_skills` SET `value` = " .. (shield + 10) .. ", `count` = 0 WHERE `skillid` = 5 and `player_id` = " .. pid .. ";")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
end
end
return true
end

 

Editado por Wesley Bueno (veja o histórico de edições)

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.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo