Tag Board
500
Our poll
Rate my site
Total of answers: 8
Statistics
Thursday, 2025-01-30, 5:36 PM
Welcome Guest

First Custom Boss Script - Forum

[ New messages · Members · Forum rules · Search · RSS ]
  • Page 1 of 1
  • 1
Forum moderator: hells-labrinth  
First Custom Boss Script
hells-labrinthDate: Wednesday, 2009-04-15, 5:18 AM | Message # 1
Admin
Group: Administrators
Messages: 20
Reputation: 0
Status: Offline
Code
function vyl_oncombat(pUnit, event)
pUnit:SendChatMessage(14, 0, "Who dares challenge the mighty Vyloger!")
pUnit:CastSpell(41105) -- def stance
pUnit:CastSpell(53790) -- def aura
pUnit:RegisterEvent("vyl_p2", 500, 0)
end

function vyl_p2(pUnit, event)
   if pUnit:GetHealthPct() <= 80 then
pUnit:RemoveEvents()
pUnit:RemoveAura(41105) -- def stance
pUnit:RemoveAura(53790) -- def aura
pUnit:SendChatMessage(14, 0, "I see how it is... then lets continue.")
   pUnit:SetCombatMeleeCapable(1)
pUnit:RegisterEvent("vyl_fireball", 3600, 0)
pUnit:RegisterEvent("vyl_p3", 500, 0)
pUnit:RegisterEvent("vyl_pyro", math.random(25000, 30000), 0)
else
end
end

function vyl_pyro(pUnit, event)
   pUnit:CastSpell(45230)
end

function vyl_fireball(pUnit, event)
local firetarget = pUnit:GetRandomPlayer(0)
   if (firetarget ~= nil) then
pUnit:StopMovement(3600)
pUnit:FullCastSpellOnTarget(9613, firetarget)
          else
      end
      end

function vyl_p3(pUnit, event)
   if pUnit:GetHealthPct() <= 40 then
pUnit:RemoveEvents()
pUnit:CastSpell(53792) -- battle stance
pUnit:CastSpell(41106) -- battle aura
   pUnit:SetCombatMeleeCapable(0)
pUnit:SendChatMessage(14, 0, "Ok... I didn't want to have to summon these minions of mine.")
pUnit:RegisterEvent("vyl_minions", 2000, 1)
pUnit:RegisterEvent("vyl_p4", 500, 0)
else
end
end

function vyl_minions(pUnit, event)
local choose = math.random(1, 2)
local x = pUnit:GetX()
local y = pUnit:GetY()
local z = pUnit:GetZ()
local o = pUnit:GetO()
--pUnit:PlaySpellVisual(tank:GetGUID(), 24776)--
pUnit:RegisterEvent("vyl_minions", 120000, 0)
   if choose == 1 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
end
   if choose == 2 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y-1, z, o, 14, 0)
end
end

function vyl_p4(pUnit, event)
   if pUnit:GetHealthPct() <= 30 then
   pUnit:RemoveEvents()
   pUnit:RemoveAura(53792)
   pUnit:RemoveAura(41106)
   pUnit:CastSpell(53791) -- berserker
   pUnit:CastSpell(41107) -- berserker
   pUnit:SetCombatMeleeCapable(1)
   pUnit:RegisterEvent("vyl_chargeplr", 3000, 1)
   pUnit:RegisterEvent("vyl_combon", 2000, 1)
else
end
end

function vyl_combon(pUnit, event)
   pUnit:SetCombatMeleeCapable(0)
end

function vyl_chargeplr(pUnit, event)
   local chargetarg = pUnit:GetMainTank()
   if (chargetarg ~= nil) then
pUnit:FullCastSpellOnTarget(41272, chargetarg)
pUnit:RegisterEvent("vyl_chargeplr", math.random(15000, 20000), 0)
          else
      end
end

function vyl_onleave(pUnit,event)
    pUnit:RemoveEvents()
    pUnit:RemoveAura(53790)
       pUnit:RemoveAura(53791)
       pUnit:RemoveAura(53792)
       p Unit:RemoveAura(41105)
       pUnit:RemoveAura(41106)
       pUnit:RemoveAura(41107)
    local tbl = pUnit:GetInRangeFriends()
    for k,v in pairs(tbl) do
    if v:GetEntry() == 95996 then
     v:Despawn(100, 0)
    end
   end
end

RegisterUnitEvent(95999, 1, "vyl_oncombat")
RegisterUnitEvent(95999, 2, "vyl_onleave")
RegisterUnitEvent(95999, 4, "vyl_onleave")
function vyl_oncombat(pUnit, event)
pUnit:SendChatMessage(14, 0, "Who dares challenge the mighty Vyloger!")
pUnit:CastSpell(41105) -- def stance
pUnit:CastSpell(53790) -- def aura
pUnit:RegisterEvent("vyl_p2", 500, 0)
end

function vyl_p2(pUnit, event)
   if pUnit:GetHealthPct() <= 80 then
pUnit:RemoveEvents()
pUnit:RemoveAura(41105) -- def stance
pUnit:RemoveAura(53790) -- def aura
pUnit:SendChatMessage(14, 0, "I see how it is... then lets continue.")
   pUnit:SetCombatMeleeCapable(1)
pUnit:RegisterEvent("vyl_fireball", 3600, 0)
pUnit:RegisterEvent("vyl_p3", 500, 0)
pUnit:RegisterEvent("vyl_pyro", math.random(25000, 30000), 0)
else
end
end

function vyl_pyro(pUnit, event)
   pUnit:CastSpell(45230)
end

function vyl_fireball(pUnit, event)
local firetarget = pUnit:GetRandomPlayer(0)
   if (firetarget ~= nil) then
pUnit:StopMovement(3600)
pUnit:FullCastSpellOnTarget(9613, firetarget)
          else
      end
      end

function vyl_p3(pUnit, event)
   if pUnit:GetHealthPct() <= 40 then
pUnit:RemoveEvents()
pUnit:CastSpell(53792) -- battle stance
pUnit:CastSpell(41106) -- battle aura
   pUnit:SetCombatMeleeCapable(0)
pUnit:SendChatMessage(14, 0, "Ok... I didn't want to have to summon these minions of mine.")
pUnit:RegisterEvent("vyl_minions", 2000, 1)
pUnit:RegisterEvent("vyl_p4", 500, 0)
else
end
end

function vyl_minions(pUnit, event)
local choose = math.random(1, 2)
local x = pUnit:GetX()
local y = pUnit:GetY()
local z = pUnit:GetZ()
local o = pUnit:GetO()
--pUnit:PlaySpellVisual(tank:GetGUID(), 24776)--
pUnit:RegisterEvent("vyl_minions", 120000, 0)
   if choose == 1 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
end
   if choose == 2 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y-1, z, o, 14, 0)
end
end

function vyl_p4(pUnit, event)
   if pUnit:GetHealthPct() <= 30 then
   pUnit:RemoveEvents()
   pUnit:RemoveAura(53792)
   pUnit:RemoveAura(41106)
   pUnit:CastSpell(53791) -- berserker
   pUnit:CastSpell(41107) -- berserker
   pUnit:SetCombatMeleeCapable(1)
   pUnit:RegisterEvent("vyl_chargeplr", 3000, 1)
   pUnit:RegisterEvent("vyl_combon", 2000, 1)
else
end
end

function vyl_combon(pUnit, event)
   pUnit:SetCombatMeleeCapable(0)
end

function vyl_chargeplr(pUnit, event)
   local chargetarg = pUnit:GetMainTank()
   if (chargetarg ~= nil) then
pUnit:FullCastSpellOnTarget(41272, chargetarg)
pUnit:RegisterEvent("vyl_chargeplr", math.random(15000, 20000), 0)
          else
      end
end

function vyl_onleave(pUnit,event)
    pUnit:RemoveEvents()
    pUnit:RemoveAura(53790)
       pUnit:RemoveAura(53791)
       pUnit:RemoveAura(53792)
       p Unit:RemoveAura(41105)
       pUnit:RemoveAura(41106)
       pUnit:RemoveAura(41107)
    local tbl = pUnit:GetInRangeFriends()
    for k,v in pairs(tbl) do
    if v:GetEntry() == 95996 then
     v:Despawn(100, 0)
    end
   end
end

RegisterUnitEvent(95999, 1, "vyl_oncombat")
RegisterUnitEvent(95999, 2, "vyl_onleave")
RegisterUnitEvent(95999, 4, "vyl_onleave")

Things that are going to be Fixed
--------------------------------------
1. Casts the Wrong Spell
2. Charges every second which means the Main Tank is Stunned Every Second


 
KazakaiDate: Wednesday, 2009-04-15, 5:23 AM | Message # 2
Hell's Death
Group: Administrators
Messages: 1
Reputation: 0
Status: Offline
The following should fix your charge timing and shadowbolt mixup :P

_________________________________________________

function vyl_oncombat(pUnit, event)
pUnit:SendChatMessage(14, 0, "Who dares challenge the mighty Vyloger!")
pUnit:CastSpell(41105) -- def stance
pUnit:CastSpell(53790) -- def aura
pUnit:RegisterEvent("vyl_p2", 500, 0)
end

function vyl_p2(pUnit, event)
if pUnit:GetHealthPct() <= 80 then
pUnit:RemoveEvents()
pUnit:RemoveAura(41105) -- def stance
pUnit:RemoveAura(53790) -- def aura
pUnit:SendChatMessage(14, 0, "I see how it is... then lets continue.")
pUnit:SetCombatMeleeCapable(1)
pUnit:RegisterEvent("vyl_fireball", 3600, 0)
pUnit:RegisterEvent("vyl_p3", 500, 0)
pUnit:RegisterEvent("vyl_pyro", math.random(25000, 30000), 0)
else
end
end

function vyl_pyro(pUnit, event)
pUnit:CastSpell(45230)
end

function vyl_fireball(pUnit, event)
local firetarget = pUnit:GetRandomPlayer(0)
if (firetarget ~= nil) then
pUnit:StopMovement(3600)
pUnit:FullCastSpellOnTarget(42833, firetarget)
else
end
end

function vyl_p3(pUnit, event)
if pUnit:GetHealthPct() <= 40 then
pUnit:RemoveEvents()
pUnit:CastSpell(53792) -- battle stance
pUnit:CastSpell(41106) -- battle aura
pUnit:SetCombatMeleeCapable(0)
pUnit:SendChatMessage(14, 0, "Ok... I didn't want to have to summon these minions of mine.")
pUnit:RegisterEvent("vyl_minions", 2000, 1)
pUnit:RegisterEvent("vyl_p4", 500, 0)
else
end
end

function vyl_minions(pUnit, event)
local choose = math.random(1, 2)
local x = pUnit:GetX()
local y = pUnit:GetY()
local z = pUnit:GetZ()
local o = pUnit:GetO()
--pUnit:PlaySpellVisual(tank:GetGUID(), 24776)--
pUnit:RegisterEvent("vyl_minions", 120000, 0)
if choose == 1 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
end
if choose == 2 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y-1, z, o, 14, 0)
end
end

function vyl_p4(pUnit, event)
if pUnit:GetHealthPct() <= 30 then
pUnit:RemoveEvents()
pUnit:RemoveAura(53792)
pUnit:RemoveAura(41106)
pUnit:CastSpell(53791) -- berserker
pUnit:CastSpell(41107) -- berserker
pUnit:SetCombatMeleeCapable(1)
pUnit:RegisterEvent("vyl_chargeplr", 3000, 1)
pUnit:RegisterEvent("vyl_combon", 2000, 1)
else
end
end

function vyl_combon(pUnit, event)
pUnit:SetCombatMeleeCapable(0)
end

function vyl_chargeplr(pUnit, event)
local chargetarg = pUnit:GetMainTank()
if (chargetarg ~= nil) then
pUnit:FullCastSpellOnTarget(41272, chargetarg)
pUnit:RegisterEvent("vyl_chargeplr", math.random(15000, 20000), 0)
else
end
end

function vyl_onleave(pUnit,event)
pUnit:RemoveEvents()
pUnit:RemoveAura(53790)
pUnit:RemoveAura(53791)
pUnit:RemoveAura(53792)
p Unit:RemoveAura(41105)
pUnit:RemoveAura(41106)
pUnit:RemoveAura(41107)
local tbl = pUnit:GetInRangeFriends()
for k,v in pairs(tbl) do
if v:GetEntry() == 95996 then
v:Despawn(100, 0)
end
end
end

RegisterUnitEvent(95999, 1, "vyl_oncombat")
RegisterUnitEvent(95999, 2, "vyl_onleave")
RegisterUnitEvent(95999, 4, "vyl_onleave")
function vyl_oncombat(pUnit, event)
pUnit:SendChatMessage(14, 0, "Who dares challenge the mighty Vyloger!")
pUnit:CastSpell(41105) -- def stance
pUnit:CastSpell(53790) -- def aura
pUnit:RegisterEvent("vyl_p2", 500, 0)
end

function vyl_p2(pUnit, event)
if pUnit:GetHealthPct() <= 80 then
pUnit:RemoveEvents()
pUnit:RemoveAura(41105) -- def stance
pUnit:RemoveAura(53790) -- def aura
pUnit:SendChatMessage(14, 0, "I see how it is... then lets continue.")
pUnit:SetCombatMeleeCapable(1)
pUnit:RegisterEvent("vyl_fireball", 3600, 0)
pUnit:RegisterEvent("vyl_p3", 500, 0)
pUnit:RegisterEvent("vyl_pyro", math.random(25000, 30000), 0)
else
end
end

function vyl_pyro(pUnit, event)
pUnit:CastSpell(45230)
end

function vyl_fireball(pUnit, event)
local firetarget = pUnit:GetRandomPlayer(0)
if (firetarget ~= nil) then
pUnit:StopMovement(3600)
pUnit:FullCastSpellOnTarget(9613, firetarget)
else
end
end

function vyl_p3(pUnit, event)
if pUnit:GetHealthPct() <= 40 then
pUnit:RemoveEvents()
pUnit:CastSpell(53792) -- battle stance
pUnit:CastSpell(41106) -- battle aura
pUnit:SetCombatMeleeCapable(0)
pUnit:SendChatMessage(14, 0, "Ok... I didn't want to have to summon these minions of mine.")
pUnit:RegisterEvent("vyl_minions", 2000, 1)
pUnit:RegisterEvent("vyl_p4", 500, 0)
else
end
end

function vyl_minions(pUnit, event)
local choose = math.random(1, 2)
local x = pUnit:GetX()
local y = pUnit:GetY()
local z = pUnit:GetZ()
local o = pUnit:GetO()
--pUnit:PlaySpellVisual(tank:GetGUID(), 24776)--
pUnit:RegisterEvent("vyl_minions", 120000, 0)
if choose == 1 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
end
if choose == 2 then
pUnit:SpawnCreature(95996, x+1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x-1, y, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y+1, z, o, 14, 0)
pUnit:SpawnCreature(95996, x, y-1, z, o, 14, 0)
end
end

function vyl_p4(pUnit, event)
if pUnit:GetHealthPct() <= 30 then
pUnit:RemoveEvents()
pUnit:RemoveAura(53792)
pUnit:RemoveAura(41106)
pUnit:CastSpell(53791) -- berserker
pUnit:CastSpell(41107) -- berserker
pUnit:SetCombatMeleeCapable(1)
pUnit:RegisterEvent("vyl_chargeplr", 3000, 1)
pUnit:RegisterEvent("vyl_combon", 2000, 1)
else
end
end

function vyl_combon(pUnit, event)
pUnit:SetCombatMeleeCapable(0)
end

function vyl_chargeplr(pUnit, event)
local chargetarg = pUnit:GetMainTank()
if (chargetarg ~= nil) then
pUnit:FullCastSpellOnTarget(41272, chargetarg)
pUnit:RegisterEvent("vyl_chargeplr", math.random(250000, 300000), 0)
else
end
end

function vyl_onleave(pUnit,event)
pUnit:RemoveEvents()
pUnit:RemoveAura(53790)
pUnit:RemoveAura(53791)
pUnit:RemoveAura(53792)
p Unit:RemoveAura(41105)
pUnit:RemoveAura(41106)
pUnit:RemoveAura(41107)
local tbl = pUnit:GetInRangeFriends()
for k,v in pairs(tbl) do
if v:GetEntry() == 95996 then
v:Despawn(100, 0)
end
end
end

RegisterUnitEvent(95999, 1, "vyl_oncombat")
RegisterUnitEvent(95999, 2, "vyl_onleave")
RegisterUnitEvent(95999, 4, "vyl_onleave")

 
  • Page 1 of 1
  • 1
Search:

Login form
Search
Site friends
  • Create your own site