Ir para conteúdo
Propaganda

Posts Recomendados

  • Moderador

Agora vamos colocar o codigo

Em data/talkactions/script/, crie um arquivo chamado aura.lua, e coloque isso dentro dele :

 

local config_aurea = {
    effect = 50; -- efeito que vai ficar girando no player
    effect_health = 162; -- efeito qnd curar o player
    level_use = { -- level que vai ser usado (min/max)
        min = 1,
        max = 600,
    } ;
    health = 10; -- tanto que vai curar por time configurado
    pos_aurea = { -- não mexa
        [1] = {x = 0, y = -1};
        [2] = {x = 1, y = -1};
        [3] = {x = 1, y = 0};
        [4] = {x = 1, y = 1};
        [5] = {x = 0, y = 1};
        [6] = {x = -1, y = 1};
        [7] = {x = -1, y = 0};
        [8] = {x = -1, y = -1};
    };
    storage_pos = 1547637649; -- não mexa e nem repita esse valor em outro script!!
    storage = 165477963; -- não mexa e nem repita esse valor em outro script!!
    tempo_aurea = 1; -- tempo da aurea para passar em cada posição
}

local function calculePosAurea(player_uid)
    local player = Player(player_uid)
    if not player then
        return
    end

    if player:getStorageValue(config_aurea.storage) <= 0 then
        return
    end

    if(player:getStorageValue(config_aurea.storage_pos) >= 8)then
        player:setStorageValue(config_aurea.storage_pos, 0)
    end

    local storage_ = player:getStorageValue(config_aurea.storage_pos)

    player:setStorageValue(config_aurea.storage_pos, storage_ + 1)

    local new_storage_ = player:getStorageValue(config_aurea.storage_pos)
    return new_storage_
end

local function posAurea(player_uid)
    local player = Player(player_uid)
    if not player then
        return 
    end

    if player:getStorageValue(config_aurea.storage) <= 0 then
        return
    end

    local pos_x = player:getPosition().x
    local pos_y = player:getPosition().y
    local pos_z = player:getPosition().z

    local aa = calculePosAurea(player_uid)

    local pos = Position(pos_x + config_aurea.pos_aurea[aa].x, pos_y + config_aurea.pos_aurea[aa].y, pos_z)
    if not pos then
        return
    end

   return pos
end

local function aurea(player_uid)
    local player = Player(player_uid)
    if not player then
        return
    end

    if player:getStorageValue(config_aurea.storage) <= 0 then
        return
    end

    local player_position = player:getPosition()
    player:addHealth(config_aurea.health)
    player_position:sendMagicEffect(config_aurea.effect_health)

    local position = posAurea(player_uid)
    local position_ = posAurea(player_uid)
    position:sendDistanceEffect(position_, config_aurea.effect)
    addEvent(aurea, config_aurea.tempo_aurea, player_uid)
end

function onSay(player, words, param)
    if words == "!aura on" then
        if player:getLevel() > config_aurea.level_use.max then
            player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " seu level(" .. player:getLevel() .. ") precisa ser maior(" .. config_aurea.level_use.max)
            return false
        end
    
        if player:getLevel() < config_aurea.level_use.min then
            player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " seu level(" .. player:getLevel() .. ") precisa ser menor(" .. config_aurea.level_use.max)
            return false
        end
    
        if player:getStorageValue(config_aurea.storage) >= 1 then
            player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " Você ja esta com a aurea ligada")
            return false
        end
    
        player:setStorageValue(config_aurea.storage, 1)
        player:setStorageValue(config_aurea.storage_pos, 0)
        aurea(player.uid)
    elseif words == "!aura off" then
            player:setStorageValue(config_aurea.storage, 0)
        end
  return false 
end


 

Agora em data/talkactions/talkactions.xml, abra ele e coloque :

 

<talkaction words="!aura on;!aura off" script="aura.lua"/>


Agora em data/creaturescript/script/login.lua, abra ele e embaixo de :
 

player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)


Coloque 
 

	player:setStorageValue(165477963, 0)
    player:setStorageValue(1547637649, 0)

  • Like 3
  • Thanks 1
Link para o comentário
https://tibiadevs.com/forums/topic/136-aura-system-character-tfs-1x/
Compartilhar em outros sites

  • Wang mudou o título para [AURA SYSTEM] Character TFS 1x
  • Administrador

Tópico Aprovado!
Somos gratos por sua contribuição, com certeza será útil para toda a comunidade! ❤️  REP+

Link para o comentário
https://tibiadevs.com/forums/topic/136-aura-system-character-tfs-1x/#findComment-583
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...