Ir para conteúdo

Featured Replies

Postado

Fala galera, blz?

É o seguinte, meu servidor tem uma função diferente de atk speed, e eu queria coloca-la na spell de uma forma que ela terminasse depois de "x" tempo, porém não consegui fazer isso, alguém pode me ajudar?

local storageCoolDown = 75555 -- 
local storageTime = 40 -- 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, 46)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, 30000)
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCEPERCENT, 145)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setCombatCondition(combat, condition)

function onCastSpell(creature, var)
    local player = Player(creature:getId())
    if player:getStorageValue(storageCoolDown) < os.time() then
        player:setStorageValue(storageCoolDown, os.time() + storageTime * 1)
						player:setAttackSpeed(500)
        combat:execute(creature, var)
    else
        player:sendTextMessage(MESSAGE_STATUS_SMALL, "You must wait the cooldown: " .. player:getStorageValue(storageCoolDown) - os.time())
        return false
    end
    return true
end

A função é essa;

                 

Citar

   player:setAttackSpeed(500)

@edit

O atk speed fica infinito e não termina, ele só termina caso o player relogue de alguma forma.

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

  • Respostas 7
  • Visualizações 1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • addEvent(player, tempo, setAttackSpeed(valor original do atk speed)) Não mexo com tfs 1.2 Testa se isso aí resolve, coloca embaixo do "player:setAttackSpeed(500)"  

  • addEvent(player:setAttackSpeed, tempo, valor_original_do_atk_speed) Tenta assim, se não for, eu não faço idéia.

Postado
  • Autor
25 minutos atrás, 139 disse:

addEvent(player, tempo, setAttackSpeed(valor original do atk speed))


Não mexo com tfs 1.2
Testa se isso aí resolve, coloca embaixo do "player:setAttackSpeed(500)"

 

Infelizmente deu erro amigo, a spell saiu sem efeito de mensagem na tela e não retornou o atk speed

Lua Script Error: [Spell Interface]
data/spells/scripts/Force Archer/sharpshooter.lua:onCastSpell
data/spells/scripts/Force Archer/sharpshooter.lua:20: attempt to call global 'setAttackSpeed' (a nil value)
stack traceback:
        [C]: in function 'setAttackSpeed'
        data/spells/scripts/Force Archer/sharpshooter.lua:20: in function <data/spells/scripts/Force Archer/sharpshooter.lua:14>

 

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