Tile que upa skill | TFS 0.4 REV 3996

Nightstar
em Scripts

Nightstar

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 23/08/17Posts: 14

Alguém possui um script de move que quando um jogador se mover em certo tile, uma skill dele upa como se tivesse treinando com os dummy.

 

Exemplo: Vou em um tile equipado com algum item e ao andar naquele tile, minha skill vai subindo como se tivesse treinando. Para mais detalhes, será um item para equipar nas mãos e será a skill de fishing

eu tentei usar um script que encontrei, mas ele não funciona por ser de outra versão: 

 

function onStepIn(creature, item, position, fromPosition)
    local skillToTrain = SKILL_SWORD -- Substitua SKILL_SWORD pela habilidade que você deseja treinar
    local minSkill = 10 -- Substitua 10 pelo valor mínimo da habilidade para começar a treinar
    local gainChance = 50 -- Chance de ganhar skill, em porcentagem
    local requiredItemID = 1234 -- Substitua 1234 pelo ID do item necessário para treinar

    if creature:isPlayer() then
        local player = creature:getPlayer()
        
        -- Verifica se o jogador está equipado com o item necessário
        if player:getSlotItem(CONST_SLOT_RIGHT) and player:getSlotItem(CONST_SLOT_RIGHT):getId() == requiredItemID then
            local skillLevel = player:getSkillLevel(skillToTrain)

            if skillLevel >= minSkill then
                -- Verifica se o jogador ganha skill
                if math.random(100) <= gainChance then
                    player:addSkillTries(skillToTrain, 1)
                    player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você ganhou experiência em " .. getSkillName(skillToTrain) .. ".")
                else
                    player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você não ganhou experiência em " .. getSkillName(skillToTrain) .. ".")
                end
            else
                player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você não tem a habilidade necessária para treinar aqui.")
            end
        else
            player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você precisa estar equipado com o item necessário para treinar aqui.")
        end
    end
    return true
end

 

El Rusher

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 05/10/17Posts: 185Gênero: Masculino
function onStepIn(creature, item, position, fromPosition)
    local skillToTrain = SKILL_FISHING -- Substitua SKILL_FISHING pela habilidade que você deseja treinar
    local minSkill = 10 -- Substitua 10 pelo valor mínimo da habilidade para começar a treinar
    local gainChance = 50 -- Chance de ganhar skill, em porcentagem
    local requiredItemID = 1234 -- Substitua 1234 pelo ID do item necessário para treinar (por exemplo, uma vara de pescar)

    if creature:isPlayer() then
        local player = creature:getPlayer()
        
        -- Verifica se o jogador está equipado com o item necessário
        if player:getSlotItem(CONST_SLOT_RIGHT) and player:getSlotItem(CONST_SLOT_RIGHT):getId() == requiredItemID then
            local skillLevel = player:getSkillLevel(skillToTrain)

            if skillLevel >= minSkill then
                -- Verifica se o jogador ganha skill
                if math.random(100) <= gainChance then
                    player:addSkillTries(skillToTrain, 1)
                    player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você ganhou experiência em " .. getSkillName(skillToTrain) .. ".")
                else
                    player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você não ganhou experiência em " .. getSkillName(skillToTrain) .. ".")
                end
            else
                player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você não tem a habilidade necessária para treinar aqui.")
            end
        else
            player:sendTextMessage(MESSAGE_EVENT_DEFAULT, "Você precisa estar equipado com o item necessário para treinar aqui.")
        end
    end
    return true
end

Certifique-se de substituir SKILL_FISHING, 10 e 1234 pelos valores apropriados para a habilidade que deseja treinar, o nível mínimo de habilidade para começar a treinar e o ID do item necessário para treinar, respectivamente.

Este script irá verificar se o jogador está equipado com o item correto e se ele atende aos requisitos mínimos de habilidade antes de aumentar a habilidade de pesca do jogador com uma certa chance de sucesso. Se o jogador atender a esses critérios, ele receberá uma mensagem informando se ganhou ou não experiência na habilidade de pesca.