[ame=http://www.youtube.com/watch?v=i1JI-yhaqaI]YouTube - Renjue1[/ame]
Alright, so first there's a cinematic... In wich the boss mostly talks about death. After the cinematic wich is about 30 - 40 seconds the fight itself will start...
Phase 1, Holy phase:
Holy Fire: Deals about 1,5k damage per second, and the spell itself deals about 3k damage.
Smite: Deals about 3k damage.
Holy Nova: deals about 4k damage and heals the boss for about 2 - 3 k.
Shield: Absorbs 25k damage, and the boss will also use a heal that heals for about 70k named "Eternal Affection" at the same time as shield.
Phase 2, Shadow phase:
At 50% the boss will transform into shadow phase and start using shadow spells ofcourse.
Amplify Damage: Increases shadowdamage taken by 60%.
Shadow Word Pain: Deals about 1,5k each 2 or 3 seconds.
Mind Blast: Deals about 6k damage.
Mind Flay: Deals 3k damage each second for 3 seconds.
Note also: If it kills a target, it gets an enrage that increases damage / attackspeed by 5%, but it stacks.
Thats basicly the whole fight.. Really simple, but fun.
Code:
--[[ Re'Njue ]]--
--[[ Smurfen© Original ]]--
--[[_____________________]]--
function Njue_OnTalk(Unit, event, player)
Unit:GossipCreateMenu(100, player, 0)
Unit:GossipMenuAddItem(0, "I challenge you Re'njue!", 10, 0)
Unit:GossipMenuAddItem(0, "I need some more time to prepare.", 20, 0)
Unit:GossipSendMenu(player)
end
function Njue_Select(Unit, event, player, id, intid, code)
if (intid == 10) then
local name = player
Unit:RegisterEvent("Njue_CinematicStart", 1, 1)
player:GossipComplete()
end
if (intid == 20) then
local name = player:GetName()
Unit:SendChatMessage(12, 0, "Very well "..name..", Take all the time you need.")
player:GossipComplete()
end
end
function Njue_CinematicStart(Unit, event)
Unit:RemoveEvents()
Unit:SendChatMessage(12, 0, "Alright, i accept your challenge, Just let me do my winner speech!")
Unit:RegisterEvent("Njue_Talk2", 7000, 1)
end
function Njue_Talk2(Unit, event)
Unit:SendChatMessage(12, 0, "Death is a call to heaven or hell, Death is an eternal mansion or cell!")
Unit:RegisterEvent("Njue_Talk3", 7000, 1)
end
function Njue_Talk3(Unit, event)
Unit:SendChatMessage(12, 0, "Death Is The End.")
Unit:RegisterEvent("Njue_Talk4", 7000, 1)
end
function Njue_Talk4(Unit, event)
Unit:SendChatMessage(12, 0, "Death is forever, Death is painful, Death is not for me.")
Unit:RegisterEvent("Njue_Talk5", 7000, 1)
end
function Njue_Talk5(Unit, event)
Unit:SendChatMessage(12, 0, "Death is a lingering crow always overhead, Death is a soul, done being fed.")
Unit:RegisterEvent("Njue_Start", 12000, 1)
end
function Njue_Start(Unit, event)
Unit:SendChatMessage(14, 0, "Alright, Lets fight!")
Unit:SetFaction(14)
end
function Njue_Shield(Unit, event)
Unit:CastSpell(33147)
end
function Njue_Heal(Unit, event)
Unit:FullCastSpell(30878)
Unit:SendChatMessage(14,0,"You cannot stop me!")
end
function Njue_Nova(Unit, event)
Unit:CastSpell(59701)
end
function Njue_Smite(Unit, event)
local SpellTarget = Unit:GetRandomPlayer(0)
if (SpellTarget ~= nil) then
Unit:FullCastSpellOnTarget(38582,SpellTarget)
else
end
end
function Njue_HolyFire(Unit, event)
local SpellTarget = Unit:GetRandomPlayer(0)
if (SpellTarget ~= nil) then
Unit:FullCastSpellOnTarget(38585,SpellTarget)
else
end
end
function Njue_MindFlay(Unit, event)
local SpellTarget = Unit:GetRandomPlayer(0)
if (SpellTarget ~= nil) then
Unit:FullCastSpellOnTarget(59367,SpellTarget)
else
end
end
function Njue_MindBlast(Unit, event)
local SpellTarget = Unit:GetRandomPlayer(0)
if (SpellTarget ~= nil) then
Unit:FullCastSpellOnTarget(52722,SpellTarget)
else
end
end
function Njue_PlusDamage(Unit, event)
Unit:CastSpell(40243)
end
function Njue_Word(Unit, event)
local SpellTarget = Unit:GetRandomPlayer(0)
if (SpellTarget ~= nil) then
Unit:FullCastSpellOnTarget(59864,SpellTarget)
else
end
end
--[[ Register Events ]]--
function Njue_OnCombat(Unit, event)
Unit:RegisterEvent("Njue_Heal",30000,3)
Unit:RegisterEvent("Njue_Shield",29000,0)
Unit:RegisterEvent("Njue_Nova",15000,0)
Unit:RegisterEvent("Njue_Smite",10000,0)
Unit:RegisterEvent("Njue_HolyFire",11000,0)
Unit:RegisterEvent("Njue_Phase2",1000,0)
end
function Njue_Phase2(Unit, event)
if Unit:GetHealthPct() < 50 then
Unit:CastSpell(16592)
Unit:RemoveEvents()
Unit:SetModel(25452)
Unit:SendChatMessage(14,0,"You're really pissing me off, time to die!")
Unit:RegisterEvent("Njue_MindBlast",12000,0)
Unit:RegisterEvent("Njue_MindFlay",20000,0)
Unit:RegisterEvent("Njue_PlusDamage",29000,0)
Unit:RegisterEvent("Njue_Word",8000,0)
end
end
function Njue_OnSpawn(Unit, event)
Unit:SetFaction(35)
end
function Njue_LeaveCombat(Unit, event)
Unit:RemoveEvents()
Unit:RemoveAura(16592)
Unit:RemoveAura(39674)
Unit:SetModel(25193)
Unit:RemoveAura(42705)
Unit:SetFaction(35)
end
function Njue_Died(Unit, event)
Unit:RemoveEvents()
Unit:RemoveAura(16592)
Unit:RemoveAura(39674)
Unit:SetModel(25193)
Unit:SendChatMessage(14, 0, "I was to self confident, This is not what i expected!")
end
function Njue_KilledTarget(Unit, event)
Unit:SendChatMessage(14,0,"There goes one, now the rest of you shall die aswell!")
Unit:CastSpell(42705)
end
RegisterUnitEvent(60003,1,"Njue_OnCombat")
RegisterUnitEvent(60003,2,"Njue_LeaveCombat")
RegisterUnitEvent(60003,3,"Njue_KilledTarget")
RegisterUnitEvent(60003,4,"Njue_Died")
RegisterUnitEvent(60003,18,"Njue_OnSpawn")
RegisterUnitGossipEvent(60003, 1, "Njue_OnTalk")
RegisterUnitGossipEvent(60003, 2, "Njue_Select")
Here's the SQL aswell
Code:
insert into `creature_names` (`entry`, `name`, `subname`, `info_str`, `Flags1`, `type`, `family`, `rank`, `unk4`, `spelldataid`, `male_displayid`, `female_displayid`, `male_displayid2`, `female_displayid2`, `unknown_float1`, `unknown_float2`, `civilian`, `leader`)
values ('60003', "Re'njue", "High Priestess", '', '1', '10', '0', '3', '0', '0', '25193', '0', '0', '0', '1', '1', '0', '0');
insert into `creature_proto` (`entry`, `minlevel`, `maxlevel`, `faction`, `minhealth`, `maxhealth`, `mana`, `scale`, `npcflags`, `attacktime`, `attacktype`, `mindamage`, `maxdamage`, `can_ranged`, `rangedattacktime`, `rangedmindamage`, `rangedmaxdamage`, `respawntime`, `armor`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `combat_reach`, `bounding_radius`, `auras`, `boss`, `money`, `invisibility_type`, `death_state`, `walk_speed`, `run_speed`, `fly_speed`, `extra_a9_flags`, `spell1`, `spell2`, `spell3`, `spell4`, `spell_flags`, `modImmunities`)
values ('60003', '80', '80', '35', '560000', '560000', '150000', '3', '1', '1500', '0', '10000', '20000', '0', '0', '0', '0', '0', '4000', '0', '0', '0', '0', '0', '0', '0', '0', "0", '1', '150000', '0', '0', '14.00', '14.00', '14.00', '0', '0', '0', '0', '0', '0', '34815');