Funções de Efeito¶
GetMaxEffect(aIndex)¶
Retorna o número máximo de slots de efeito que um objeto pode ter.
AddEffect(lpObj, type, index, count, v1, v2, v3, v4, v5, v6, buffSendValue, attackerIndex, rmv)¶
Adiciona um efeito de buff/debuff a um objeto.
- Parâmetros:
lpObj(GameObject) — objeto alvotype(number) — tipo de efeito (0 ou 1)index(number) — ID do efeitocount(number) — duração em segundos ou contagem de cargasv1..v6(number) — valores do efeito (dano, defesa, etc.)buffSendValue(number) — valor do ícone de buff no clienteattackerIndex(number) — índice da fonte do efeitormv(number) — chance de sucesso (0-100), ou -1 para garantido- Retorna:
number— 1 em caso de sucesso, 0 em caso de falha
-- Add +50 physical damage buff for 60 seconds, guaranteed
AddEffect(player, 1, 15, 60, 50, 0, 0, 0, 0, 0, 0, player.Index, -1)
DelEffect(lpObj, index)¶
Remove um efeito específico pelo seu ID.
- Retorna:
boolean
DelEffectByGroup(lpObj, group)¶
Remove todos os efeitos pertencentes a um grupo.
- Retorna:
boolean
GetEffect(lpObj, index)¶
Retorna o objeto GameCEffect para o ID de efeito fornecido, ou nil se não encontrado.
local eff = GetEffect(player, 1)
if eff then
LogAdd(LOG_RED, "Poison remaining: " .. eff.m_time .. "s")
end
GetEffectByGroup(lpObj, group)¶
Retorna o primeiro GameCEffect no grupo fornecido, ou nil.
local scroll = GetEffectByGroup(player, 20)
if scroll then
LogAdd(LOG_BLUE, "Scroll value: " .. scroll.m_value[1])
end
CheckEffect(lpObj, index)¶
Retorna true se o objeto possui o efeito ativo.
if CheckEffect(target, 16) then -- Mana Shield
LogAdd(LOG_BLUE, "Target has Mana Shield active.")
end
CheckEffectByGroup(lpObj, group)¶
Retorna true se o objeto possui algum efeito do grupo fornecido.
if CheckEffectByGroup(player, 35) then
GCNoticeSend(player.Index, 1, "You already have an event buff.")
end
CheckStunEffect(lpObj)¶
Retorna true se o objeto está atordoado.
CheckImmobilizeEffect(lpObj)¶
Retorna true se o objeto está imobilizado.
if CheckImmobilizeEffect(player) then
GCNoticeSend(player.Index, 1, "You are frozen and cannot move!")
end
CheckDebuffSend(index)¶
Retorna true se o índice de efeito fornecido é classificado como debuff para exibição no cliente.
ClearAllEffect(lpObj)¶
Remove todos os efeitos do objeto.
ClearDebuffEffect(lpObj, count)¶
Remove até count efeitos de debuff do objeto.
UpgradeDamageByClass(lpObj)¶
Calcula e retorna o bônus de dano baseado na classe e atributos do personagem.
- Retorna:
number
Help