Funciones de Efectos¶
GetMaxEffect(aIndex)¶
Retorna el número máximo de slots de efectos que un objeto puede tener.
AddEffect(lpObj, type, index, count, v1, v2, v3, v4, v5, v6, buffSendValue, attackerIndex, rmv)¶
Agrega un efecto de buff/debuff a un objeto.
- Parámetros:
lpObj(GameObject) — objeto objetivotype(number) — tipo de efecto (0 o 1)index(number) — ID del efectocount(number) — duración en segundos o cantidad de cargasv1..v6(number) — valores del efecto (daño, defensa, etc.)buffSendValue(number) — valor del icono de buff en el clienteattackerIndex(number) — índice de la fuente del efectormv(number) — probabilidad de éxito (0-100), o -1 para siempre- Retorna:
number— 1 en éxito, 0 en fallo
-- 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)¶
Elimina un efecto específico por su ID.
- Retorna:
boolean
DelEffectByGroup(lpObj, group)¶
Elimina todos los efectos pertenecientes a un grupo.
- Retorna:
boolean
GetEffect(lpObj, index)¶
Retorna el objeto GameCEffect para el ID de efecto dado, o nil si no se encuentra.
local eff = GetEffect(player, 1)
if eff then
LogAdd(LOG_RED, "Poison remaining: " .. eff.m_time .. "s")
end
GetEffectByGroup(lpObj, group)¶
Retorna el primer GameCEffect en el grupo dado, o nil.
local scroll = GetEffectByGroup(player, 20)
if scroll then
LogAdd(LOG_BLUE, "Scroll value: " .. scroll.m_value[1])
end
CheckEffect(lpObj, index)¶
Retorna true si el objeto tiene el efecto activo.
if CheckEffect(target, 16) then -- Mana Shield
LogAdd(LOG_BLUE, "Target has Mana Shield active.")
end
CheckEffectByGroup(lpObj, group)¶
Retorna true si el objeto tiene algun efecto del grupo dado.
if CheckEffectByGroup(player, 35) then
GCNoticeSend(player.Index, 1, "You already have an event buff.")
end
CheckStunEffect(lpObj)¶
Retorna true si el objeto está aturdido.
CheckImmobilizeEffect(lpObj)¶
Retorna true si el objeto está inmovilizado.
if CheckImmobilizeEffect(player) then
GCNoticeSend(player.Index, 1, "You are frozen and cannot move!")
end
CheckDebuffSend(index)¶
Retorna true si el índice de efecto dado está clasificado como debuff para la visualización del cliente.
ClearAllEffect(lpObj)¶
Elimina todos los efectos del objeto.
ClearDebuffEffect(lpObj, count)¶
Elimina hasta count efectos de debuff del objeto.
UpgradeDamageByClass(lpObj)¶
Calcula y retorna el daño bonus basado en la clase y estadísticas del personaje.
- Retorna:
number
Help