mirror of
https://github.com/araxiaonline/RandomScriptsforAzerothCore.git
synced 2026-06-13 02:22:19 -04:00
43 lines
1.3 KiB
Lua
43 lines
1.3 KiB
Lua
CoreRager = {}
|
|
|
|
function CoreRager.CastMangle(eventId, delay, calls, creature)
|
|
creature:CastSpell(creature:GetVictim(), 19820, true)
|
|
end
|
|
|
|
function CoreRager.OnDamageTaken(event, creature, attacker, damage)
|
|
if creature:GetHealthPct() < 50 then
|
|
creature:CastSpell(creature, 17683, true)
|
|
creature:SendUnitEmote("Core Rager refuses to die while its master is in trouble.", 0)
|
|
end
|
|
end
|
|
|
|
function CoreRager.OnEnterCombat(event, creature, target)
|
|
creature:RegisterEvent(CoreRager.CastMangle, 7000, 0)
|
|
end
|
|
|
|
function CoreRager.OnLeaveCombat(event, creature)
|
|
creature:RemoveEvents()
|
|
end
|
|
|
|
function CoreRager.OnDied(event, creature, killer)
|
|
creature:RemoveEvents()
|
|
end
|
|
|
|
function CoreRager.OnSpawn(event, creature)
|
|
creature:SetMaxHealth(200000)
|
|
end
|
|
|
|
function CoreRager.OnGolemaggDeath(event, creature, boss)
|
|
local coreRagers = creature:GetCreaturesInRange(100, 11672)
|
|
for _, coreRager in pairs(coreRagers) do
|
|
coreRager:CastSpell(coreRager, 13520, true)
|
|
end
|
|
end
|
|
|
|
RegisterCreatureEvent(11672, 1, CoreRager.OnEnterCombat)
|
|
RegisterCreatureEvent(11672, 2, CoreRager.OnLeaveCombat)
|
|
RegisterCreatureEvent(11672, 4, CoreRager.OnDied)
|
|
RegisterCreatureEvent(11672, 5, CoreRager.OnSpawn)
|
|
RegisterCreatureEvent(11672, 9, CoreRager.OnDamageTaken)
|
|
|
|
RegisterCreatureEvent(11988, 4, CoreRager.OnGolemaggDeath) |