mirror of
https://github.com/araxiaonline/RandomScriptsforAzerothCore.git
synced 2026-06-13 10:22:22 -04:00
Add files via upload
This commit is contained in:
45
Faction_Shared/Necrofiend.lua
Normal file
45
Faction_Shared/Necrofiend.lua
Normal file
@@ -0,0 +1,45 @@
|
||||
local Necrofiend = {}
|
||||
|
||||
function Necrofiend.OnEnterCombat(event, creature, target)
|
||||
creature:RegisterEvent(Necrofiend.WebSpray, 15000, 0, creature)
|
||||
creature:RegisterEvent(Necrofiend.CastBanefulPoison, 7000, 0, creature)
|
||||
creature:RegisterEvent(Necrofiend.SpecialSpell, 1000, 0, creature)
|
||||
end
|
||||
|
||||
function Necrofiend.SpecialSpell(eventId, delay, calls, creature)
|
||||
local victim = creature:GetVictim()
|
||||
if not victim then
|
||||
return
|
||||
end
|
||||
if victim:GetEntry() == 32666 or victim:GetEntry() == 32667 or victim:GetEntry() == 31144 or victim:GetEntry() == 31146 then
|
||||
creature:CastSpell(victim, 5, true)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
function Necrofiend.WebSpray(event, delay, calls, creature)
|
||||
creature:CastSpell(creature:GetVictim(), 55508, true)
|
||||
end
|
||||
|
||||
function Necrofiend.CastBanefulPoison(event, delay, calls, creature)
|
||||
local targets = creature:GetAITargets(10)
|
||||
if #targets == 0 then
|
||||
return
|
||||
end
|
||||
local target = targets[math.random(#targets)]
|
||||
creature:CastSpell(target, 15475, true)
|
||||
end
|
||||
|
||||
function Necrofiend.OnLeaveCombat(event, creature)
|
||||
creature:RemoveEvents()
|
||||
end
|
||||
|
||||
function Necrofiend.OnDied(event, creature, killer)
|
||||
creature:DespawnOrUnsummon(5000)
|
||||
creature:RemoveEvents()
|
||||
end
|
||||
|
||||
RegisterCreatureEvent(400055, 1, Necrofiend.OnEnterCombat)
|
||||
RegisterCreatureEvent(400055, 2, Necrofiend.OnLeaveCombat)
|
||||
RegisterCreatureEvent(400055, 4, Necrofiend.OnDied)
|
||||
Reference in New Issue
Block a user