From 2c5becabb6cb08798575ab5f703d8b1050162467 Mon Sep 17 00:00:00 2001 From: Xaver-DaRed Date: Wed, 8 May 2024 21:11:52 +0200 Subject: [PATCH 1/2] Correct Immunity enum and apply it where it belongs --- .../actions/abilities/pets/mewing_lullaby.lua | 2 +- scripts/actions/abilities/pets/nightmare.lua | 2 +- scripts/actions/abilities/pets/sleepga.lua | 2 +- scripts/enum/immunity.lua | 38 ++--- scripts/globals/spells/enfeebling_spell.lua | 158 +++++++++--------- 5 files changed, 101 insertions(+), 101 deletions(-) diff --git a/scripts/actions/abilities/pets/mewing_lullaby.lua b/scripts/actions/abilities/pets/mewing_lullaby.lua index 405a9d54c2d..7aa0e471872 100644 --- a/scripts/actions/abilities/pets/mewing_lullaby.lua +++ b/scripts/actions/abilities/pets/mewing_lullaby.lua @@ -21,7 +21,7 @@ abilityObject.onPetAbility = function(target, pet, skill, master, action) duration = duration * resm if - target:hasImmunity(1) or + target:hasImmunity(xi.immunity.LIGHT_SLEEP) or target:hasStatusEffect(xi.effect.SLEEP_I) or target:hasStatusEffect(xi.effect.SLEEP_II) or target:hasStatusEffect(xi.effect.LULLABY) diff --git a/scripts/actions/abilities/pets/nightmare.lua b/scripts/actions/abilities/pets/nightmare.lua index 3a169cbfc92..d699751643c 100644 --- a/scripts/actions/abilities/pets/nightmare.lua +++ b/scripts/actions/abilities/pets/nightmare.lua @@ -27,7 +27,7 @@ abilityObject.onPetAbility = function(target, pet, petskill, summoner, action) duration = duration * resm if - target:hasImmunity(1) or + target:hasImmunity(xi.immunity.DARK_SLEEP) or target:hasStatusEffect(xi.effect.SLEEP_I) or target:hasStatusEffect(xi.effect.SLEEP_II) or target:hasStatusEffect(xi.effect.LULLABY) diff --git a/scripts/actions/abilities/pets/sleepga.lua b/scripts/actions/abilities/pets/sleepga.lua index 5a70f71f74a..2b0bd30e426 100644 --- a/scripts/actions/abilities/pets/sleepga.lua +++ b/scripts/actions/abilities/pets/sleepga.lua @@ -23,7 +23,7 @@ abilityObject.onPetAbility = function(target, pet, petskill, summoner, action) duration = duration * resm if - target:hasImmunity(1) or + target:hasImmunity(xi.immunity.DARK_SLEEP) or target:hasStatusEffect(xi.effect.SLEEP_I) or target:hasStatusEffect(xi.effect.SLEEP_II) or target:hasStatusEffect(xi.effect.LULLABY) diff --git a/scripts/enum/immunity.lua b/scripts/enum/immunity.lua index fbbc162b67f..6973aaf74b5 100644 --- a/scripts/enum/immunity.lua +++ b/scripts/enum/immunity.lua @@ -1,23 +1,23 @@ xi = xi or {} -xi.IMMUNITY = +xi.immunity = { - IMMUNITY_NONE = 0x00000000, - IMMUNITY_SLEEP = 0x00000001, - IMMUNITY_GRAVITY = 0x00000002, - IMMUNITY_BIND = 0x00000004, - IMMUNITY_STUN = 0x00000008, - IMMUNITY_SILENCE = 0x00000010, -- 16 - IMMUNITY_PARALYZE = 0x00000020, -- 32 - IMMUNITY_BLIND = 0x00000040, -- 64 - IMMUNITY_SLOW = 0x00000080, -- 128 - IMMUNITY_POISON = 0x00000100, -- 256 - IMMUNITY_ELEGY = 0x00000200, -- 512 - IMMUNITY_REQUIEM = 0x00000400, -- 1024 - IMMUNITY_LIGHT_SLEEP = 0x00000800, -- 2048 - IMMUNITY_DARK_SLEEP = 0x00001000, -- 4096 - IMMUNITY_ASPIR = 0x00002000, -- 8192 - IMMUNITY_TERROR = 0x00004000, -- 16384 - IMMUNITY_DISPEL = 0x00008000, -- 32768 - IMMUNITY_PETRIFY = 0x00010000, -- 65536 + NONE = 0x00000000, + SLEEP = 0x00000001, -- Stop using this. TODO: Nuke. Replace with ADDLE. + GRAVITY = 0x00000002, + BIND = 0x00000004, + STUN = 0x00000008, + SILENCE = 0x00000010, -- 16 + PARALYZE = 0x00000020, -- 32 + BLIND = 0x00000040, -- 64 + SLOW = 0x00000080, -- 128 + POISON = 0x00000100, -- 256 + ELEGY = 0x00000200, -- 512 + REQUIEM = 0x00000400, -- 1024 + LIGHT_SLEEP = 0x00000800, -- 2048 + DARK_SLEEP = 0x00001000, -- 4096 + ASPIR = 0x00002000, -- 8192 + TERROR = 0x00004000, -- 16384 + DISPEL = 0x00008000, -- 32768 + PETRIFY = 0x00010000, -- 65536 } diff --git a/scripts/globals/spells/enfeebling_spell.lua b/scripts/globals/spells/enfeebling_spell.lua index 0e98a94eaf5..ca2df2f61b1 100644 --- a/scripts/globals/spells/enfeebling_spell.lua +++ b/scripts/globals/spells/enfeebling_spell.lua @@ -16,91 +16,91 @@ local pTable = { -- 1 2 3 4 5 6 7 8 9 10 11 12 -- [Spell ID ] = { Effect, Stat-Used, Resist-Mod, MEVA-Mod, pBase, DoT, Duration, Resist, msg, immunity, pSaboteur, mAcc }, -- Black Magic - [xi.magic.spell.BIND ] = { xi.effect.BIND, xi.mod.INT, xi.mod.BINDRES, xi.mod.BIND_MEVA, 0, 0, 60, 2, 0, 4, false, 0 }, - [xi.magic.spell.BINDGA ] = { xi.effect.BIND, xi.mod.INT, xi.mod.BINDRES, xi.mod.BIND_MEVA, 0, 0, 60, 2, 0, 4, false, 0 }, - [xi.magic.spell.BLIND ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 0, 0, 180, 2, 0, 64, true, 0 }, - [xi.magic.spell.BLIND_II ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 0, 0, 180, 2, 0, 64, true, 0 }, - [xi.magic.spell.BLINDGA ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 0, 0, 180, 2, 0, 64, true, 0 }, - [xi.magic.spell.BREAK ] = { xi.effect.PETRIFICATION, xi.mod.INT, xi.mod.PETRIFYRES, xi.mod.PETRIFY_MEVA, 1, 0, 30, 2, 0, 0, false, 0 }, - [xi.magic.spell.BREAKGA ] = { xi.effect.PETRIFICATION, xi.mod.INT, xi.mod.PETRIFYRES, xi.mod.PETRIFY_MEVA, 1, 0, 30, 2, 0, 0, false, 0 }, - [xi.magic.spell.BURN ] = { xi.effect.BURN, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, 0, true, 0 }, - [xi.magic.spell.CHOKE ] = { xi.effect.CHOKE, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, 0, true, 0 }, - [xi.magic.spell.CURSE ] = { xi.effect.CURSE_I, xi.mod.INT, xi.mod.CURSERES, xi.mod.CURSE_MEVA, 50, 0, 300, 2, 0, 0, false, 0 }, - [xi.magic.spell.DISPEL ] = { xi.effect.NONE, xi.mod.INT, 0, 0, 0, 0, 0, 4, 0, 0, false, 175 }, - [xi.magic.spell.DISPELGA ] = { xi.effect.NONE, xi.mod.INT, 0, 0, 0, 0, 0, 4, 0, 0, false, 0 }, - [xi.magic.spell.DISTRACT ] = { xi.effect.EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, 0, true, 150 }, - [xi.magic.spell.DISTRACT_II ] = { xi.effect.EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, 0, true, 150 }, - [xi.magic.spell.DISTRACT_III ] = { xi.effect.EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, 0, true, 150 }, - [xi.magic.spell.DROWN ] = { xi.effect.DROWN, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, 0, true, 0 }, - [xi.magic.spell.FRAZZLE ] = { xi.effect.MAGIC_EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, 0, true, 150 }, - [xi.magic.spell.FRAZZLE_II ] = { xi.effect.MAGIC_EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, 0, true, 150 }, - [xi.magic.spell.FRAZZLE_III ] = { xi.effect.MAGIC_EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, 0, true, 150 }, - [xi.magic.spell.FROST ] = { xi.effect.FROST, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, 0, true, 0 }, - [xi.magic.spell.GRAVITY ] = { xi.effect.WEIGHT, xi.mod.INT, xi.mod.GRAVITYRES, xi.mod.GRAVITY_MEVA, 26, 0, 120, 2, 0, 2, true, 0 }, - [xi.magic.spell.GRAVITY_II ] = { xi.effect.WEIGHT, xi.mod.INT, xi.mod.GRAVITYRES, xi.mod.GRAVITY_MEVA, 32, 0, 180, 2, 0, 2, true, 0 }, - [xi.magic.spell.GRAVIGA ] = { xi.effect.WEIGHT, xi.mod.INT, xi.mod.GRAVITYRES, xi.mod.GRAVITY_MEVA, 50, 0, 120, 2, 0, 2, true, 0 }, - [xi.magic.spell.POISON ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 90, 2, 0, 256, true, 0 }, - [xi.magic.spell.POISON_II ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 120, 2, 0, 256, true, 30 }, - [xi.magic.spell.POISON_III ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 150, 2, 0, 256, true, 0 }, - [xi.magic.spell.POISONGA ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 90, 2, 0, 256, true, 0 }, - [xi.magic.spell.POISONGA_II ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 120, 2, 0, 256, true, 0 }, - [xi.magic.spell.POISONGA_III ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 150, 2, 0, 256, true, 0 }, - [xi.magic.spell.RASP ] = { xi.effect.RASP, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, 0, true, 0 }, - [xi.magic.spell.SHOCK ] = { xi.effect.SHOCK, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, 0, true, 0 }, - [xi.magic.spell.SLEEP ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 1, 0, 60, 2, 0, 1, false, 0 }, - [xi.magic.spell.SLEEP_II ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 2, 0, 90, 2, 0, 1, false, 0 }, - [xi.magic.spell.SLEEPGA ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 1, 0, 60, 2, 0, 1, false, 0 }, - [xi.magic.spell.SLEEPGA_II ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 2, 0, 90, 2, 0, 1, false, 0 }, - [xi.magic.spell.STUN ] = { xi.effect.STUN, xi.mod.INT, xi.mod.STUNRES, xi.mod.STUN_MEVA, 1, 0, 5, 4, 0, 8, false, 200 }, - [xi.magic.spell.VIRUS ] = { xi.effect.PLAGUE, xi.mod.INT, xi.mod.VIRUSRES, xi.mod.VIRUS_MEVA, 5, 3, 60, 2, 0, 0, false, 0 }, + [xi.magic.spell.BIND ] = { xi.effect.BIND, xi.mod.INT, xi.mod.BINDRES, xi.mod.BIND_MEVA, 0, 0, 60, 2, 0, xi.immunity.BIND, false, 0 }, + [xi.magic.spell.BINDGA ] = { xi.effect.BIND, xi.mod.INT, xi.mod.BINDRES, xi.mod.BIND_MEVA, 0, 0, 60, 2, 0, xi.immunity.BIND, false, 0 }, + [xi.magic.spell.BLIND ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 0, 0, 180, 2, 0, xi.immunity.BLIND, true, 0 }, + [xi.magic.spell.BLIND_II ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 0, 0, 180, 2, 0, xi.immunity.BLIND, true, 0 }, + [xi.magic.spell.BLINDGA ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 0, 0, 180, 2, 0, xi.immunity.BLIND, true, 0 }, + [xi.magic.spell.BREAK ] = { xi.effect.PETRIFICATION, xi.mod.INT, xi.mod.PETRIFYRES, xi.mod.PETRIFY_MEVA, 1, 0, 30, 2, 0, xi.immunity.PETRIFY, false, 0 }, + [xi.magic.spell.BREAKGA ] = { xi.effect.PETRIFICATION, xi.mod.INT, xi.mod.PETRIFYRES, xi.mod.PETRIFY_MEVA, 1, 0, 30, 2, 0, xi.immunity.PETRIFY, false, 0 }, + [xi.magic.spell.BURN ] = { xi.effect.BURN, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, xi.immunity.NONE, true, 0 }, + [xi.magic.spell.CHOKE ] = { xi.effect.CHOKE, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, xi.immunity.NONE, true, 0 }, + [xi.magic.spell.CURSE ] = { xi.effect.CURSE_I, xi.mod.INT, xi.mod.CURSERES, xi.mod.CURSE_MEVA, 50, 0, 300, 2, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.DISPEL ] = { xi.effect.NONE, xi.mod.INT, 0, 0, 0, 0, 0, 4, 0, xi.immunity.NONE, false, 175 }, + [xi.magic.spell.DISPELGA ] = { xi.effect.NONE, xi.mod.INT, 0, 0, 0, 0, 0, 4, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.DISTRACT ] = { xi.effect.EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, xi.immunity.NONE, true, 150 }, + [xi.magic.spell.DISTRACT_II ] = { xi.effect.EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, xi.immunity.NONE, true, 150 }, + [xi.magic.spell.DISTRACT_III ] = { xi.effect.EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, xi.immunity.NONE, true, 150 }, + [xi.magic.spell.DROWN ] = { xi.effect.DROWN, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, xi.immunity.NONE, true, 0 }, + [xi.magic.spell.FRAZZLE ] = { xi.effect.MAGIC_EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, xi.immunity.NONE, true, 150 }, + [xi.magic.spell.FRAZZLE_II ] = { xi.effect.MAGIC_EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, xi.immunity.NONE, true, 150 }, + [xi.magic.spell.FRAZZLE_III ] = { xi.effect.MAGIC_EVASION_DOWN, xi.mod.MND, 0, 0, 0, 0, 120, 2, 0, xi.immunity.NONE, true, 150 }, + [xi.magic.spell.FROST ] = { xi.effect.FROST, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, xi.immunity.NONE, true, 0 }, + [xi.magic.spell.GRAVITY ] = { xi.effect.WEIGHT, xi.mod.INT, xi.mod.GRAVITYRES, xi.mod.GRAVITY_MEVA, 26, 0, 120, 2, 0, xi.immunity.GRAVITY, true, 0 }, + [xi.magic.spell.GRAVITY_II ] = { xi.effect.WEIGHT, xi.mod.INT, xi.mod.GRAVITYRES, xi.mod.GRAVITY_MEVA, 32, 0, 180, 2, 0, xi.immunity.GRAVITY, true, 0 }, + [xi.magic.spell.GRAVIGA ] = { xi.effect.WEIGHT, xi.mod.INT, xi.mod.GRAVITYRES, xi.mod.GRAVITY_MEVA, 50, 0, 120, 2, 0, xi.immunity.GRAVITY, true, 0 }, + [xi.magic.spell.POISON ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 90, 2, 0, xi.immunity.POISON, true, 0 }, + [xi.magic.spell.POISON_II ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 120, 2, 0, xi.immunity.POISON, true, 30 }, + [xi.magic.spell.POISON_III ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 150, 2, 0, xi.immunity.POISON, true, 0 }, + [xi.magic.spell.POISONGA ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 90, 2, 0, xi.immunity.POISON, true, 0 }, + [xi.magic.spell.POISONGA_II ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 120, 2, 0, xi.immunity.POISON, true, 0 }, + [xi.magic.spell.POISONGA_III ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 0, 3, 150, 2, 0, xi.immunity.POISON, true, 0 }, + [xi.magic.spell.RASP ] = { xi.effect.RASP, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, xi.immunity.NONE, true, 0 }, + [xi.magic.spell.SHOCK ] = { xi.effect.SHOCK, xi.mod.INT, 0, 0, 0, 3, 90, 3, 1, xi.immunity.NONE, true, 0 }, + [xi.magic.spell.SLEEP ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 1, 0, 60, 2, 0, xi.immunity.DARK_SLEEP, false, 0 }, + [xi.magic.spell.SLEEP_II ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 2, 0, 90, 2, 0, xi.immunity.DARK_SLEEP, false, 0 }, + [xi.magic.spell.SLEEPGA ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 1, 0, 60, 2, 0, xi.immunity.DARK_SLEEP, false, 0 }, + [xi.magic.spell.SLEEPGA_II ] = { xi.effect.SLEEP_I, xi.mod.INT, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 2, 0, 90, 2, 0, xi.immunity.DARK_SLEEP, false, 0 }, + [xi.magic.spell.STUN ] = { xi.effect.STUN, xi.mod.INT, xi.mod.STUNRES, xi.mod.STUN_MEVA, 1, 0, 5, 4, 0, xi.immunity.STUN, false, 200 }, + [xi.magic.spell.VIRUS ] = { xi.effect.PLAGUE, xi.mod.INT, xi.mod.VIRUSRES, xi.mod.VIRUS_MEVA, 5, 3, 60, 2, 0, xi.immunity.NONE, false, 0 }, -- Black magic Helixes - [xi.magic.spell.GEOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.GEOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.HYDROHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.HYDROHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.ANEMOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.ANEMOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.PYROHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.PYROHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.CRYOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.CRYOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.IONOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.IONOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.NOCTOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.NOCTOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.LUMINOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, - [xi.magic.spell.LUMINOHELIX_II] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, 0, false, 0 }, + [xi.magic.spell.GEOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.GEOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.HYDROHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.HYDROHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.ANEMOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.ANEMOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.PYROHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.PYROHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.CRYOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.CRYOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.IONOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.IONOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.NOCTOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.NOCTOHELIX_II ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.LUMINOHELIX ] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.LUMINOHELIX_II] = { xi.effect.HELIX, xi.mod.INT, 0, 0, 0, 10, 30, 0, 0, xi.immunity.NONE, false, 0 }, -- White Magic - [xi.magic.spell.ADDLE ] = { xi.effect.ADDLE, xi.mod.MND, 0, 0, 30, 0, 180, 2, 0, 0, true, 0 }, - [xi.magic.spell.FLASH ] = { xi.effect.FLASH, xi.mod.MND, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 300, 0, 12, 4, 0, 0, true, 200 }, - [xi.magic.spell.INUNDATION ] = { xi.effect.INUNDATION, xi.mod.MND, 0, 0, 1, 0, 300, 5, 0, 0, false, 0 }, - [xi.magic.spell.PARALYZE ] = { xi.effect.PARALYSIS, xi.mod.MND, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 0, 0, 120, 2, 0, 32, true, -10 }, - [xi.magic.spell.PARALYZE_II ] = { xi.effect.PARALYSIS, xi.mod.MND, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 0, 0, 120, 2, 0, 32, true, 0 }, - [xi.magic.spell.PARALYGA ] = { xi.effect.PARALYSIS, xi.mod.MND, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 0, 0, 120, 2, 0, 32, true, 0 }, - [xi.magic.spell.REPOSE ] = { xi.effect.SLEEP_II, xi.mod.MND, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 2, 0, 90, 2, 1, 1, false, 0 }, - [xi.magic.spell.SILENCE ] = { xi.effect.SILENCE, xi.mod.MND, xi.mod.SILENCERES, xi.mod.SILENCE_MEVA, 1, 0, 120, 2, 0, 16, false, 0 }, - [xi.magic.spell.SILENCEGA ] = { xi.effect.SILENCE, xi.mod.MND, xi.mod.SILENCERES, xi.mod.SILENCE_MEVA, 1, 0, 120, 2, 0, 16, false, 0 }, - [xi.magic.spell.SLOW ] = { xi.effect.SLOW, xi.mod.MND, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 0, 0, 180, 2, 0, 128, true, 10 }, - [xi.magic.spell.SLOW_II ] = { xi.effect.SLOW, xi.mod.MND, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 0, 0, 180, 2, 0, 128, true, 10 }, - [xi.magic.spell.SLOWGA ] = { xi.effect.SLOW, xi.mod.MND, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 0, 0, 180, 2, 0, 128, true, 0 }, + [xi.magic.spell.ADDLE ] = { xi.effect.ADDLE, xi.mod.MND, 0, 0, 30, 0, 180, 2, 0, xi.immunity.NONE, true, 0 }, + [xi.magic.spell.FLASH ] = { xi.effect.FLASH, xi.mod.MND, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 300, 0, 12, 4, 0, xi.immunity.NONE, true, 200 }, + [xi.magic.spell.INUNDATION ] = { xi.effect.INUNDATION, xi.mod.MND, 0, 0, 1, 0, 300, 5, 0, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.PARALYZE ] = { xi.effect.PARALYSIS, xi.mod.MND, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 0, 0, 120, 2, 0, xi.immunity.PARALYZE, true, -10 }, + [xi.magic.spell.PARALYZE_II ] = { xi.effect.PARALYSIS, xi.mod.MND, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 0, 0, 120, 2, 0, xi.immunity.PARALYZE, true, 0 }, + [xi.magic.spell.PARALYGA ] = { xi.effect.PARALYSIS, xi.mod.MND, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 0, 0, 120, 2, 0, xi.immunity.PARALYZE, true, 0 }, + [xi.magic.spell.REPOSE ] = { xi.effect.SLEEP_I, xi.mod.MND, xi.mod.SLEEPRES, xi.mod.SLEEP_MEVA, 2, 0, 90, 2, 1, xi.immunity.LIGHT_SLEEP, false, 0 }, + [xi.magic.spell.SILENCE ] = { xi.effect.SILENCE, xi.mod.MND, xi.mod.SILENCERES, xi.mod.SILENCE_MEVA, 1, 0, 120, 2, 0, xi.immunity.SILENCE, false, 0 }, + [xi.magic.spell.SILENCEGA ] = { xi.effect.SILENCE, xi.mod.MND, xi.mod.SILENCERES, xi.mod.SILENCE_MEVA, 1, 0, 120, 2, 0, xi.immunity.SILENCE, false, 0 }, + [xi.magic.spell.SLOW ] = { xi.effect.SLOW, xi.mod.MND, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 0, 0, 180, 2, 0, xi.immunity.SLOW, true, 10 }, + [xi.magic.spell.SLOW_II ] = { xi.effect.SLOW, xi.mod.MND, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 0, 0, 180, 2, 0, xi.immunity.SLOW, true, 10 }, + [xi.magic.spell.SLOWGA ] = { xi.effect.SLOW, xi.mod.MND, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 0, 0, 180, 2, 0, xi.immunity.SLOW, true, 0 }, -- Ninjutsu - [xi.magic.spell.AISHA_ICHI ] = { xi.effect.ATTACK_DOWN, xi.mod.INT, 0, 0, 15, 0, 120, 4, 1, 0, false, 0 }, - [xi.magic.spell.DOKUMORI_ICHI ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 3, 3, 60, 2, 0, 256, false, 0 }, - [xi.magic.spell.DOKUMORI_NI ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 10, 3, 120, 2, 0, 256, false, 0 }, - [xi.magic.spell.DOKUMORI_SAN ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 20, 3, 360, 2, 0, 256, false, 0 }, - [xi.magic.spell.HOJO_ICHI ] = { xi.effect.SLOW, xi.mod.INT, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 1465, 0, 180, 2, 0, 128, false, 0 }, - [xi.magic.spell.HOJO_NI ] = { xi.effect.SLOW, xi.mod.INT, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 1953, 0, 300, 2, 0, 128, false, 0 }, - [xi.magic.spell.HOJO_SAN ] = { xi.effect.SLOW, xi.mod.INT, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 2930, 0, 420, 2, 0, 128, false, 0 }, - [xi.magic.spell.JUBAKU_ICHI ] = { xi.effect.PARALYSIS, xi.mod.INT, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 20, 0, 180, 2, 1, 32, false, 0 }, - [xi.magic.spell.JUBAKU_NI ] = { xi.effect.PARALYSIS, xi.mod.INT, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 30, 0, 300, 2, 1, 32, false, 0 }, - [xi.magic.spell.JUBAKU_SAN ] = { xi.effect.PARALYSIS, xi.mod.INT, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 35, 0, 420, 2, 1, 32, false, 0 }, - [xi.magic.spell.KURAYAMI_ICHI ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 20, 0, 180, 2, 0, 64, false, 0 }, - [xi.magic.spell.KURAYAMI_NI ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 30, 0, 300, 2, 0, 64, false, 0 }, - [xi.magic.spell.KURAYAMI_SAN ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 40, 0, 420, 2, 0, 64, false, 0 }, - [xi.magic.spell.YURIN_ICHI ] = { xi.effect.INHIBIT_TP, xi.mod.INT, 0, 0, 10, 0, 180, 3, 1, 0, false, 0 }, + [xi.magic.spell.AISHA_ICHI ] = { xi.effect.ATTACK_DOWN, xi.mod.INT, 0, 0, 15, 0, 120, 4, 1, xi.immunity.NONE, false, 0 }, + [xi.magic.spell.DOKUMORI_ICHI ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 3, 3, 60, 2, 0, xi.immunity.POISON, false, 0 }, + [xi.magic.spell.DOKUMORI_NI ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 10, 3, 120, 2, 0, xi.immunity.POISON, false, 0 }, + [xi.magic.spell.DOKUMORI_SAN ] = { xi.effect.POISON, xi.mod.INT, xi.mod.POISONRES, xi.mod.POISON_MEVA, 20, 3, 360, 2, 0, xi.immunity.POISON, false, 0 }, + [xi.magic.spell.HOJO_ICHI ] = { xi.effect.SLOW, xi.mod.INT, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 1465, 0, 180, 2, 0, xi.immunity.SLOW, false, 0 }, + [xi.magic.spell.HOJO_NI ] = { xi.effect.SLOW, xi.mod.INT, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 1953, 0, 300, 2, 0, xi.immunity.SLOW, false, 0 }, + [xi.magic.spell.HOJO_SAN ] = { xi.effect.SLOW, xi.mod.INT, xi.mod.SLOWRES, xi.mod.SLOW_MEVA, 2930, 0, 420, 2, 0, xi.immunity.SLOW, false, 0 }, + [xi.magic.spell.JUBAKU_ICHI ] = { xi.effect.PARALYSIS, xi.mod.INT, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 20, 0, 180, 2, 1, xi.immunity.PARALYZE, false, 0 }, + [xi.magic.spell.JUBAKU_NI ] = { xi.effect.PARALYSIS, xi.mod.INT, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 30, 0, 300, 2, 1, xi.immunity.PARALYZE, false, 0 }, + [xi.magic.spell.JUBAKU_SAN ] = { xi.effect.PARALYSIS, xi.mod.INT, xi.mod.PARALYZERES, xi.mod.PARALYZE_MEVA, 35, 0, 420, 2, 1, xi.immunity.PARALYZE, false, 0 }, + [xi.magic.spell.KURAYAMI_ICHI ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 20, 0, 180, 2, 0, xi.immunity.BLIND, false, 0 }, + [xi.magic.spell.KURAYAMI_NI ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 30, 0, 300, 2, 0, xi.immunity.BLIND, false, 0 }, + [xi.magic.spell.KURAYAMI_SAN ] = { xi.effect.BLINDNESS, xi.mod.INT, xi.mod.BLINDRES, xi.mod.BLIND_MEVA, 40, 0, 420, 2, 0, xi.immunity.BLIND, false, 0 }, + [xi.magic.spell.YURIN_ICHI ] = { xi.effect.INHIBIT_TP, xi.mod.INT, 0, 0, 10, 0, 180, 3, 1, xi.immunity.NONE, false, 0 }, } local immunobreakTable = From ae025d16159288ee195cd665b624326f7038bfff Mon Sep 17 00:00:00 2001 From: Xaver-DaRed Date: Wed, 8 May 2024 22:21:30 +0200 Subject: [PATCH 2/2] Replace uses of xi.immunity.SLEEP to use light and dark Also move to onMobInitialize --- scripts/zones/Nyzul_Isle/mobs/Adamantoise.lua | 12 +++++++++--- scripts/zones/Nyzul_Isle/mobs/Amikiri.lua | 6 +++++- scripts/zones/Nyzul_Isle/mobs/Behemoth.lua | 10 ++++++++-- scripts/zones/Nyzul_Isle/mobs/Cargo_Crab_Colin.lua | 8 ++++++-- scripts/zones/Nyzul_Isle/mobs/Cerberus.lua | 10 ++++++++-- scripts/zones/Nyzul_Isle/mobs/Fafnir.lua | 9 +++++++-- scripts/zones/Nyzul_Isle/mobs/Hydra.lua | 12 ++++++++---- scripts/zones/Nyzul_Isle/mobs/Khimaira.lua | 9 +++++++-- scripts/zones/Nyzul_Isle/mobs/Vile_Ineef.lua | 3 ++- scripts/zones/Nyzul_Isle/mobs/Vouivre.lua | 5 ++++- 10 files changed, 64 insertions(+), 20 deletions(-) diff --git a/scripts/zones/Nyzul_Isle/mobs/Adamantoise.lua b/scripts/zones/Nyzul_Isle/mobs/Adamantoise.lua index 683d0197931..6ed24bd4778 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Adamantoise.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Adamantoise.lua @@ -7,16 +7,22 @@ mixins = { require('scripts/mixins/nyzul_boss_drops') } ----------------------------------- local entity = {} -entity.onMobSpawn = function(mob) +entity.onMobInitialize = function(mob) + -- Set Immunities. -- mob:addImmunity(xi.immunity.STUN) -- mob:addImmunity(xi.immunity.SLOW) + -- mob:addImmunity(xi.immunity.POISON) -- mob:addImmunity(xi.immunity.ELEGY) + -- mob:addImmunity(xi.immunity.LIGHT_SLEEP) + -- mob:addImmunity(xi.immunity.DARK_SLEEP) -- mob:addImmunity(xi.immunity.TERROR) - -- mob:addImmunity(xi.immunity.SLEEP) - -- mob:addImmunity(xi.immunity.POISON) +end + +entity.onMobSpawn = function(mob) mob:setMod(xi.mod.MAIN_DMG_RATING, 36) mob:addMod(xi.mod.DEF, 200) mob:addMod(xi.mod.ATT, 150) + mob:setMobMod(xi.mobMod.ROAM_DISTANCE, 15) end diff --git a/scripts/zones/Nyzul_Isle/mobs/Amikiri.lua b/scripts/zones/Nyzul_Isle/mobs/Amikiri.lua index e4ae0216125..4b5f25b276b 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Amikiri.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Amikiri.lua @@ -6,8 +6,12 @@ local entity = {} entity.onMobInitialize = function(mob) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.LIGHT_SLEEP) + -- mob:addImmunity(xi.immunity.DARK_SLEEP) + + -- Set Mob Modifiers. mob:setMobMod(xi.mobMod.ADD_EFFECT, 1) - -- mob:addImmunity(xi.immunity.SLEEP) end entity.onAdditionalEffect = function(mob, target, damage) diff --git a/scripts/zones/Nyzul_Isle/mobs/Behemoth.lua b/scripts/zones/Nyzul_Isle/mobs/Behemoth.lua index eb3f3b4a866..03ed709f0aa 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Behemoth.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Behemoth.lua @@ -7,11 +7,17 @@ mixins = { require('scripts/mixins/nyzul_boss_drops') } ----------------------------------- local entity = {} -entity.onMobSpawn = function(mob) +entity.onMobInitialize = function(mob) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.LIGHT_SLEEP) + -- mob:addImmunity(xi.immunity.DARK_SLEEP) -- mob:addImmunity(xi.immunity.TERROR) - -- mob:addImmunity(xi.immunity.SLEEP) +end + +entity.onMobSpawn = function(mob) mob:setMod(xi.mod.MAIN_DMG_RATING, 42) mob:addMod(xi.mod.ATT, 150) + mob:setMobMod(xi.mobMod.NO_MP, 1) mob:setMobMod(xi.mobMod.ROAM_DISTANCE, 15) end diff --git a/scripts/zones/Nyzul_Isle/mobs/Cargo_Crab_Colin.lua b/scripts/zones/Nyzul_Isle/mobs/Cargo_Crab_Colin.lua index 05e505c546b..8736e360629 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Cargo_Crab_Colin.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Cargo_Crab_Colin.lua @@ -6,10 +6,14 @@ local entity = {} entity.onMobInitialize = function(mob) - mob:setMobMod(xi.mobMod.ADD_EFFECT, 1) - -- mob:addImmunity(xi.immunity.SLEEP) + -- Set Immunities. -- mob:addImmunity(xi.immunity.BIND) -- mob:addImmunity(xi.immunity.POISON) + -- mob:addImmunity(xi.immunity.LIGHT_SLEEP) + -- mob:addImmunity(xi.immunity.DARK_SLEEP) + + -- Set Mob Modifiers. + mob:setMobMod(xi.mobMod.ADD_EFFECT, 1) end entity.onAdditionalEffect = function(mob, target, damage) diff --git a/scripts/zones/Nyzul_Isle/mobs/Cerberus.lua b/scripts/zones/Nyzul_Isle/mobs/Cerberus.lua index 1e7f051f21a..6b3d7cc447c 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Cerberus.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Cerberus.lua @@ -7,6 +7,13 @@ mixins = { require('scripts/mixins/nyzul_boss_drops') } ----------------------------------- local entity = {} +entity.onMobInitialize = function(mob) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.LIGHT_SLEEP) + -- mob:addImmunity(xi.immunity.DARK_SLEEP) + -- mob:addImmunity(xi.immunity.TERROR) +end + entity.onMobSpawn = function(mob) mob:setMod(xi.mod.DOUBLE_ATTACK, 20) mob:setMod(xi.mod.REGEN, 10) -- validate @@ -19,8 +26,7 @@ entity.onMobSpawn = function(mob) mob:addMod(xi.mod.ATT, 75) mob:setMod(xi.mod.DEFP, 48) mob:setMod(xi.mod.MAIN_DMG_RATING, 40) - -- mob:addImmunity(xi.immunity.SLEEP) - -- mob:addImmunity(xi.immunity.TERROR) + mob:setMobMod(xi.mobMod.ROAM_DISTANCE, 15) end diff --git a/scripts/zones/Nyzul_Isle/mobs/Fafnir.lua b/scripts/zones/Nyzul_Isle/mobs/Fafnir.lua index f0686c738ff..55fcfecb163 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Fafnir.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Fafnir.lua @@ -8,16 +8,21 @@ mixins = { require('scripts/mixins/nyzul_boss_drops') } local entity = {} entity.onMobInitialize = function(mob) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.LIGHT_SLEEP) + -- mob:addImmunity(xi.immunity.DARK_SLEEP) + -- mob:addImmunity(xi.immunity.TERROR) + + -- Set Mob Modifiers. -- mob:setMobMod(xi.mobMod.NO_MP, 1) end entity.onMobSpawn = function(mob) - -- mob:addImmunity(xi.immunity.SLEEP) - -- mob:addImmunity(xi.immunity.TERROR) mob:addMod(xi.mod.ATT, 150) mob:addMod(xi.mod.DEF, 90) mob:setMod(xi.mod.MAIN_DMG_RATING, 33) mob:setMod(xi.mod.DOUBLE_ATTACK, 25) + mob:setMobMod(xi.mobMod.ROAM_DISTANCE, 15) end diff --git a/scripts/zones/Nyzul_Isle/mobs/Hydra.lua b/scripts/zones/Nyzul_Isle/mobs/Hydra.lua index d0be800957b..e545a571357 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Hydra.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Hydra.lua @@ -13,15 +13,18 @@ local function handleRegen(mob, broken) mob:setMod(xi.mod.REGAIN, math.floor(25 * multiplier)) end +entity.onMobInitialize = function(mob) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.GRAVITY) + -- mob:addImmunity(xi.immunity.BIND) + -- mob:addImmunity(xi.immunity.PARALYZE) +end + entity.onMobSpawn = function(mob) mob:setMod(xi.mod.DOUBLE_ATTACK, 10) mob:setMod(xi.mod.UDMGMAGIC, -90) mob:setMod(xi.mod.POISON_MEVA, 100) mob:setMod(xi.mod.BLIND_MEVA, 100) - -- mob:addImmunity(xi.immunity.BIND) - -- mob:addImmunity(xi.immunity.GRAVITY) - -- mob:addImmunity(xi.immunity.PARALYZE) - -- mob:addImmunity(xi.immunity.TERROR) mob:setMod(xi.mod.SILENCE_MEVA, 100) mob:setMod(xi.mod.SLOW_MEVA, 100) mob:setMod(xi.mod.STUN_MEVA, 175) @@ -29,6 +32,7 @@ entity.onMobSpawn = function(mob) mob:setMod(xi.mod.DEFP, 35) mob:addMod(xi.mod.EVA, 15) mob:setMod(xi.mod.MAIN_DMG_RATING, 40) + mob:setMobMod(xi.mobMod.ROAM_DISTANCE, 15) end diff --git a/scripts/zones/Nyzul_Isle/mobs/Khimaira.lua b/scripts/zones/Nyzul_Isle/mobs/Khimaira.lua index 180fff50f2b..89b0a2bd4e6 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Khimaira.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Khimaira.lua @@ -7,9 +7,14 @@ mixins = { require('scripts/mixins/nyzul_boss_drops') } ----------------------------------- local entity = {} -entity.onMobSpawn = function(mob) - -- mob:addImmunity(xi.immunity.SLEEP) +entity.onMobInitialize = function(mob) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.LIGHT_SLEEP) + -- mob:addImmunity(xi.immunity.DARK_SLEEP) -- mob:addImmunity(xi.immunity.TERROR) +end + +entity.onMobSpawn = function(mob) mob:setMod(xi.mod.MEVA, 25) mob:setMod(xi.mod.MAIN_DMG_RATING, 33) mob:setMod(xi.mod.DOUBLE_ATTACK, 15) diff --git a/scripts/zones/Nyzul_Isle/mobs/Vile_Ineef.lua b/scripts/zones/Nyzul_Isle/mobs/Vile_Ineef.lua index 8b055d9d93b..e9557061ef5 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Vile_Ineef.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Vile_Ineef.lua @@ -6,7 +6,8 @@ local entity = {} entity.onMobInitialize = function(mob) - -- mob:addImmunity(xi.immunity.DARKSLEEP) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.DARK_SLEEP) end entity.onMobDeath = function(mob, player, optParams) diff --git a/scripts/zones/Nyzul_Isle/mobs/Vouivre.lua b/scripts/zones/Nyzul_Isle/mobs/Vouivre.lua index 694932e79fb..460646c11bb 100644 --- a/scripts/zones/Nyzul_Isle/mobs/Vouivre.lua +++ b/scripts/zones/Nyzul_Isle/mobs/Vouivre.lua @@ -6,10 +6,13 @@ local entity = {} entity.onMobInitialize = function(mob) + -- Set Immunities. + -- mob:addImmunity(xi.immunity.TERROR) + + -- Set Modifiers. mob:setMod(xi.mod.REGEN, 5) mob:setMod(xi.mod.DOUBLE_ATTACK, 40) mob:setMod(xi.mod.TRIPLE_ATTACK, 35) - -- mob:addImmunity(xi.immunity.TERROR) end entity.onMobDeath = function(mob, player, optParams)