Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Sistema funciona da seguinte forma, ao digitar : !aura on, a aura do player vai ligar, enquanto ela estiver ligada o player vai ficar regenerando a vida dele, ao digitar : !aura off, ela vai desligar e o player vai parar de regenerar a vida dele, vou estar deixando um video aqui em baixo 

 
Agora vamos colocar o codigo

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

local config_aurea = {
    effect = 4; -- 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 = 100; -- tempo da aurea para passar em cada posição
}

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

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

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

    player:setStorageValue(config_aurea.storage_pos, player:getStorageValue(config_aurea.storage_pos) + 1)
    return(player:getStorageValue(config_aurea.storage_pos))
end

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

    if(player:getStorageValue(config_aurea.storage) <= 0)then
        return(nil)
    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(nil)
    end
   return(pos)
end

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

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

    player:addHealth(config_aurea.health)
    player:getPosition():sendMagicEffect(config_aurea.effect_health)

    local position = posAurea(player_uid)
    position:sendMagicEffect(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
        return(not(player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " seu level(" .. player:getLevel() .. ") precisa ser maior(" .. config_aurea.level_use.max)))
    end

    if(player:getLevel() < config_aurea.level_use.min)then
        return(not(player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " seu level(" .. player:getLevel() .. ") precisa ser menor(" .. config_aurea.level_use.max)))
    end

    if(player:getStorageValue(config_aurea.storage) >= 1)then
        return(not(player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " Você ja esta com a aurea ligada")))
    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)


 

Creditos : Sr. Naja

 

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

Postado
10 minutos atrás, peitiolate disse:

Consegue adaptar essa aura pro 0.X?

 

Mais especificamente, 860.

 

function onLove()
if getPlayerTrueLove(girlfriend) then
doPlayerBeHappy(cid, true)
doRemoveVirginity(cid, true)
else
doSendCancel(cid,"you do not know how good it feels to be loved")
end end

;)

 

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo