Ir para conteúdo
Propaganda

Posts Recomendados

  • Moderador

1: Crie um arquivo Lua para o sistema de reset 1.1. Crie um novo arquivo Lua, por exemplo, "reset_system.lua", na pasta data/scripts/custom do seu servidor TFS 1.2. Abra o arquivo e insira o seguinte código

Spoiler

local resetConfig = {
    maxResets = 5,        -- Limite de resets
    minLevelForReset = 50, -- Nível mínimo para reset
    diamondReward = 5,    -- Quantidade de Diamonds como recompensa por reset
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local playerLevel = getPlayerLevel(cid)
    local playerResets = getPlayerStorageValue(cid, 12345) -- Substitua pelo ID de storage correto.

    if playerResets >= resetConfig.maxResets then
        return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você atingiu o limite de resets.")
    end

    if playerLevel < resetConfig.minLevelForReset then
        return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você precisa estar pelo menos no nível " .. resetConfig.minLevelForReset .. " para resetar.")
    end

    doPlayerSetStorageValue(cid, 12345, playerResets + 1) -- Substitua pelo ID de storage correto.
    doPlayerAddItem(cid, 2148, resetConfig.diamondReward) -- Substitua pelo ID do Diamond.
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você resetou e recebeu " .. resetConfig.diamondReward .. " Diamonds como recompensa.")
    doPlayerSetLevel(cid, 1) -- Define o nível do jogador para 1 após o reset.
    return TRUE
end
 

 

Aqui, definimos um limite de 5 resets, um nível mínimo de 50 e uma recompensa de 5 Diamonds após cada reset. Certifique-se de ajustar esses valores conforme necessário.

Passo 2: Registre o script no actions.xml 2.1. Abra o arquivo actions.xml localizado na pasta data/XML do seu servidor TFS 1.2. Adicione a seguinte entrada dentro da seção <items>:

 

Spoiler

<item id="ID_DO_ITEM_DE_RESET" name="Reset Stone" actionid="5000" script="custom/reset_system.lua"/>
 

 

Link para o comentário
https://tibiadevs.com/forums/topic/145-reset-system-tfs-12-basic-script/
Compartilhar em outros sites

Peguei este script e adaptei para o RevScripts, para quem quiser usar à vontade. xD

 

local resetConfig = {
    maxResets = 5,        -- Limite de resets
    minLevelForReset = 50, -- Nível mínimo para reset
    diamondReward = 5,    -- Quantidade de Diamonds como recompensa por reset
}

local ResetAction = Action()

function ResetAction.onUse(player, item, fromPosition, itemEx, toPosition)
    local playerLevel = player:getLevel()
    local playerResets = player:getStorageValue(12345) -- Substitua pelo ID de storage correto.

    if playerResets >= resetConfig.maxResets then
        player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Você atingiu o limite de resets.")
        return true
    end

    if playerLevel < resetConfig.minLevelForReset then
        player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Você precisa estar pelo menos no nível " .. resetConfig.minLevelForReset .. " para resetar.")
        return true
    end

    player:setStorageValue(12345, playerResets + 1) -- Substitua pelo ID de storage correto.
    player:addItem(2148, resetConfig.diamondReward) -- Substitua pelo ID do Diamond.
    player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Você resetou e recebeu " .. resetConfig.diamondReward .. " Diamonds como recompensa.")
    player:setLevel(1) -- Define o nível do jogador para 1 após o reset.
    return true
end

ResetAction:id(2550) -- id do item
ResetAction:register()

 

Link para o comentário
https://tibiadevs.com/forums/topic/145-reset-system-tfs-12-basic-script/#findComment-643
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
  • Criar Novo...