mirror of
https://github.com/araxiaonline/ClassScrolls.git
synced 2026-06-13 02:42:20 -04:00
Add files via upload
This commit is contained in:
@@ -1,75 +1,95 @@
|
||||
local ITEM_ENTRY = 500500 -- Aquamancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
frostbolt = 8675300,
|
||||
summon_aqua_guardian = 8675303
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
frostbolt = 8675301,
|
||||
summon_aqua_guardian = 8675304
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
frostbolt = 8675302,
|
||||
summon_aqua_guardian = 8675305
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseAquamancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have learned the secrets of the Aquamancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot use this scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseAquamancerScroll)
|
||||
local ITEM_ENTRY = 500500 -- Aquamancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
frostbolt = 8675300,
|
||||
summon_aqua_guardian = 8675303,
|
||||
water_bolt = 8675306,
|
||||
aqua_jet = 8675309
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372,
|
||||
water_bolt = 71686,
|
||||
aqua_jet = 13586
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372,
|
||||
water_bolt = 71686,
|
||||
aqua_jet = 13586
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
frostbolt = 8675301,
|
||||
summon_aqua_guardian = 8675304,
|
||||
water_bolt = 8675307,
|
||||
aqua_jet = 8675310
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372,
|
||||
water_bolt = 71686,
|
||||
aqua_jet = 13586
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
frostbolt = 8675302,
|
||||
summon_aqua_guardian = 8675305,
|
||||
water_bolt = 8675308,
|
||||
aqua_jet = 8675311
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372,
|
||||
water_bolt = 71686,
|
||||
aqua_jet = 13586
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372,
|
||||
water_bolt = 71686,
|
||||
aqua_jet = 13586
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372,
|
||||
water_bolt = 71686,
|
||||
aqua_jet = 13586
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
frostbolt = 9672,
|
||||
summon_aqua_guardian = 8372,
|
||||
water_bolt = 71686,
|
||||
aqua_jet = 13586
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseAquamancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have learned the secrets of the Aquamancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the power of the Aquamancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseAquamancerScroll)
|
||||
|
||||
95
LUA/ArcanistScroll.lua
Normal file
95
LUA/ArcanistScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500503 -- Arcanist Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
arcane_missiles = 8675336,
|
||||
energy_surge = 8675339,
|
||||
force_blast = 8675342,
|
||||
der_izu_forces = 8675345
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
arcane_missiles = 33832,
|
||||
energy_surge = 36508,
|
||||
force_blast = 39039,
|
||||
der_izu_forces = 32936
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
arcane_missiles = 33832,
|
||||
energy_surge = 36508,
|
||||
force_blast = 39039,
|
||||
der_izu_forces = 32936
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
arcane_missiles = 8675337,
|
||||
energy_surge = 8675340,
|
||||
force_blast = 8675343,
|
||||
der_izu_forces = 8675346
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
arcane_missiles = 33832,
|
||||
energy_surge = 36508,
|
||||
force_blast = 39039,
|
||||
der_izu_forces = 32936
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
arcane_missiles = 8675338,
|
||||
energy_surge = 8675341,
|
||||
force_blast = 8675344,
|
||||
der_izu_forces = 8675347
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
arcane_missiles = 33832,
|
||||
energy_surge = 36508,
|
||||
force_blast = 39039,
|
||||
der_izu_forces = 32936
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
arcane_missiles = 33832,
|
||||
energy_surge = 36508,
|
||||
force_blast = 39039,
|
||||
der_izu_forces = 32936
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
arcane_missiles = 33832,
|
||||
energy_surge = 36508,
|
||||
force_blast = 39039,
|
||||
der_izu_forces = 32936
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
arcane_missiles = 33832,
|
||||
energy_surge = 36508,
|
||||
force_blast = 39039,
|
||||
der_izu_forces = 32936
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseArcanistScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have unlocked the arcane secrets of the Arcanist!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the power of the Arcanist Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseArcanistScroll)
|
||||
@@ -1,95 +1,95 @@
|
||||
local ITEM_ENTRY = 500501 -- Astromancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
astral_focus = 8675306,
|
||||
fiery_intellect = 8675309,
|
||||
scorch = 8675312,
|
||||
rain_of_fire = 8675315
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
astral_focus = 8675307,
|
||||
fiery_intellect = 8675310,
|
||||
scorch = 8675313,
|
||||
rain_of_fire = 8675316
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
astral_focus = 8675308,
|
||||
fiery_intellect = 8675311,
|
||||
scorch = 8675314,
|
||||
rain_of_fire = 8675317
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseAstromancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have learned the secrets of the Astromancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot use this scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseAstromancerScroll)
|
||||
local ITEM_ENTRY = 500501 -- Astromancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
astral_focus = 8675312,
|
||||
fiery_intellect = 8675315,
|
||||
scorch = 8675318,
|
||||
rain_of_fire = 8675321
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
astral_focus = 8675313,
|
||||
fiery_intellect = 8675316,
|
||||
scorch = 8675319,
|
||||
rain_of_fire = 8675322
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
astral_focus = 8675314,
|
||||
fiery_intellect = 8675317,
|
||||
scorch = 8675320,
|
||||
rain_of_fire = 8675323
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
astral_focus = 35914,
|
||||
fiery_intellect = 35917,
|
||||
scorch = 38391,
|
||||
rain_of_fire = 37279
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseAstromancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have learned the secrets of the Astromancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the power of the Astromancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseAstromancerScroll)
|
||||
95
LUA/CenturionScroll.lua
Normal file
95
LUA/CenturionScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500504 -- Centurion Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
arcane_flurry = 8675348,
|
||||
blood_heal = 8675351,
|
||||
spellbreaker = 35871, -- Warriors use default Spellbreaker
|
||||
sonic_strike = 8675357
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
arcane_flurry = 37268,
|
||||
blood_heal = 36476,
|
||||
spellbreaker = 8675354, -- Corrected Spellbreaker for Mana users
|
||||
sonic_strike = 41168
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
arcane_flurry = 37268,
|
||||
blood_heal = 36476,
|
||||
spellbreaker = 8675354, -- Corrected Spellbreaker for Mana users
|
||||
sonic_strike = 41168
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
arcane_flurry = 8675349,
|
||||
blood_heal = 8675352,
|
||||
spellbreaker = 8675355, -- Rogues use Energy version
|
||||
sonic_strike = 8675358
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
arcane_flurry = 37268,
|
||||
blood_heal = 36476,
|
||||
spellbreaker = 8675354, -- Corrected Spellbreaker for Mana users
|
||||
sonic_strike = 41168
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
arcane_flurry = 8675350,
|
||||
blood_heal = 8675353,
|
||||
spellbreaker = 8675356, -- Death Knights use Runic Power version
|
||||
sonic_strike = 8675359
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
arcane_flurry = 37268,
|
||||
blood_heal = 36476,
|
||||
spellbreaker = 8675354, -- Corrected Spellbreaker for Mana users
|
||||
sonic_strike = 41168
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
arcane_flurry = 37268,
|
||||
blood_heal = 36476,
|
||||
spellbreaker = 8675354, -- Corrected Spellbreaker for Mana users
|
||||
sonic_strike = 41168
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
arcane_flurry = 37268,
|
||||
blood_heal = 36476,
|
||||
spellbreaker = 8675354, -- Corrected Spellbreaker for Mana users
|
||||
sonic_strike = 41168
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
arcane_flurry = 37268,
|
||||
blood_heal = 36476,
|
||||
spellbreaker = 8675354, -- Corrected Spellbreaker for Mana users
|
||||
sonic_strike = 41168
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseCenturionScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have unlocked the battle-hardened techniques of the Centurion!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the power of the Centurion Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseCenturionScroll)
|
||||
95
LUA/ChaplainScroll.lua
Normal file
95
LUA/ChaplainScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500502 -- Chaplain Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
inner_fire = 8675324,
|
||||
power_word_shield = 8675327,
|
||||
renew = 8675330,
|
||||
power_of_prayer = 8675333
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
inner_fire = 1006,
|
||||
power_word_shield = 6066,
|
||||
renew = 8362,
|
||||
power_of_prayer = 323267
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
inner_fire = 1006,
|
||||
power_word_shield = 6066,
|
||||
renew = 8362,
|
||||
power_of_prayer = 323267
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
inner_fire = 8675325,
|
||||
power_word_shield = 8675328,
|
||||
renew = 8675331,
|
||||
power_of_prayer = 8675334
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
inner_fire = 1006,
|
||||
power_word_shield = 6066,
|
||||
renew = 8362,
|
||||
power_of_prayer = 323267
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
inner_fire = 8675326,
|
||||
power_word_shield = 8675329,
|
||||
renew = 8675332,
|
||||
power_of_prayer = 8675335
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
inner_fire = 1006,
|
||||
power_word_shield = 6066,
|
||||
renew = 8362,
|
||||
power_of_prayer = 323267
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
inner_fire = 1006,
|
||||
power_word_shield = 6066,
|
||||
renew = 8362,
|
||||
power_of_prayer = 323267
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
inner_fire = 1006,
|
||||
power_word_shield = 6066,
|
||||
renew = 8362,
|
||||
power_of_prayer = 323267
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
inner_fire = 1006,
|
||||
power_word_shield = 6066,
|
||||
renew = 8362,
|
||||
power_of_prayer = 323267
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseChaplainScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have learned the divine teachings of the Chaplain!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the blessings this scroll provides.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the power of the Chaplain Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseChaplainScroll)
|
||||
95
LUA/CryomancerScroll.lua
Normal file
95
LUA/CryomancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500505 -- Cryomancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
frost_mist = 8675360,
|
||||
frost_armor = 8675363,
|
||||
frost_nova = 8675366,
|
||||
frost_shock = 8675369
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
frost_mist = 29292,
|
||||
frost_armor = 31256,
|
||||
frost_nova = 36989,
|
||||
frost_shock = 37865
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
frost_mist = 29292,
|
||||
frost_armor = 31256,
|
||||
frost_nova = 36989,
|
||||
frost_shock = 37865
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
frost_mist = 8675361,
|
||||
frost_armor = 8675364,
|
||||
frost_nova = 8675367,
|
||||
frost_shock = 8675370
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
frost_mist = 29292,
|
||||
frost_armor = 31256,
|
||||
frost_nova = 36989,
|
||||
frost_shock = 37865
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
frost_mist = 8675362,
|
||||
frost_armor = 8675365,
|
||||
frost_nova = 8675368,
|
||||
frost_shock = 8675371
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
frost_mist = 29292,
|
||||
frost_armor = 31256,
|
||||
frost_nova = 36989,
|
||||
frost_shock = 37865
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
frost_mist = 29292,
|
||||
frost_armor = 31256,
|
||||
frost_nova = 36989,
|
||||
frost_shock = 37865
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
frost_mist = 29292,
|
||||
frost_armor = 31256,
|
||||
frost_nova = 36989,
|
||||
frost_shock = 37865
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
frost_mist = 29292,
|
||||
frost_armor = 31256,
|
||||
frost_nova = 36989,
|
||||
frost_shock = 37865
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseCryomancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have mastered the chilling arts of the Cryomancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the icy power of the Cryomancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseCryomancerScroll)
|
||||
95
LUA/GeomancerScroll.lua
Normal file
95
LUA/GeomancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500506 -- Geomancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
quick_flame_ward = 8675372,
|
||||
razor_mane = 8675375,
|
||||
lightning_bolt = 8675378,
|
||||
summon_earth_rumbler = 8675381
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
quick_flame_ward = 4979,
|
||||
razor_mane = 5280,
|
||||
lightning_bolt = 9532,
|
||||
summon_earth_rumbler = 8270
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
quick_flame_ward = 4979,
|
||||
razor_mane = 5280,
|
||||
lightning_bolt = 9532,
|
||||
summon_earth_rumbler = 8270
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
quick_flame_ward = 8675373,
|
||||
razor_mane = 8675376,
|
||||
lightning_bolt = 8675379,
|
||||
summon_earth_rumbler = 8675382
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
quick_flame_ward = 4979,
|
||||
razor_mane = 5280,
|
||||
lightning_bolt = 9532,
|
||||
summon_earth_rumbler = 8270
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
quick_flame_ward = 8675374,
|
||||
razor_mane = 8675377,
|
||||
lightning_bolt = 8675380,
|
||||
summon_earth_rumbler = 8675383
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
quick_flame_ward = 4979,
|
||||
razor_mane = 5280,
|
||||
lightning_bolt = 9532,
|
||||
summon_earth_rumbler = 8270
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
quick_flame_ward = 4979,
|
||||
razor_mane = 5280,
|
||||
lightning_bolt = 9532,
|
||||
summon_earth_rumbler = 8270
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
quick_flame_ward = 4979,
|
||||
razor_mane = 5280,
|
||||
lightning_bolt = 9532,
|
||||
summon_earth_rumbler = 8270
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
quick_flame_ward = 4979,
|
||||
razor_mane = 5280,
|
||||
lightning_bolt = 9532,
|
||||
summon_earth_rumbler = 8270
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseGeomancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have mastered the elemental forces of the Geomancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the power of the Geomancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseGeomancerScroll)
|
||||
95
LUA/HarpoonerScroll.lua
Normal file
95
LUA/HarpoonerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500507 -- Harpooner Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
hooked_net = 8675384, -- Intercept (20 Rage)
|
||||
poisoned_harpoon = 8675387, -- Shockwave (25 Rage)
|
||||
olufs_harpoon = 8675390, -- Heroic Throw (20 Rage)
|
||||
net = 8675393 -- Hamstring (15 Rage)
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
hooked_net = 40082,
|
||||
poisoned_harpoon = 5208,
|
||||
olufs_harpoon = 43325,
|
||||
net = 38661
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
hooked_net = 40082,
|
||||
poisoned_harpoon = 5208,
|
||||
olufs_harpoon = 43325,
|
||||
net = 38661
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
hooked_net = 8675385, -- Shadowstep (35 Energy)
|
||||
poisoned_harpoon = 8675388, -- Cheap Shot (40 Energy)
|
||||
olufs_harpoon = 8675391, -- Shiv (35 Energy)
|
||||
net = 8675394 -- Crippling Poison (25 Energy)
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
hooked_net = 40082,
|
||||
poisoned_harpoon = 5208,
|
||||
olufs_harpoon = 43325,
|
||||
net = 38661
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
hooked_net = 8675386, -- Death Grip (30 RP)
|
||||
poisoned_harpoon = 8675389, -- Chains of Ice (35 RP)
|
||||
olufs_harpoon = 8675392, -- Icy Touch (30 RP)
|
||||
net = 8675395 -- (Specify equivalent for DK if needed)
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
hooked_net = 40082,
|
||||
poisoned_harpoon = 5208,
|
||||
olufs_harpoon = 43325,
|
||||
net = 38661
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
hooked_net = 40082,
|
||||
poisoned_harpoon = 5208,
|
||||
olufs_harpoon = 43325,
|
||||
net = 38661
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
hooked_net = 40082,
|
||||
poisoned_harpoon = 5208,
|
||||
olufs_harpoon = 43325,
|
||||
net = 38661
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
hooked_net = 40082,
|
||||
poisoned_harpoon = 5208,
|
||||
olufs_harpoon = 43325,
|
||||
net = 38661
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseHarpoonerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have mastered the lethal precision of the Harpooner!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the techniques of the Harpooner Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseHarpoonerScroll)
|
||||
95
LUA/HydromancerScroll.lua
Normal file
95
LUA/HydromancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500508 -- Hydromancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
water_nova = 8675396,
|
||||
tidal_burst = 39878, -- Warriors don't have a custom version, defaulting to mana-based
|
||||
watery_grave = 8675402,
|
||||
water_blast = 8675405
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
water_nova = 38237,
|
||||
tidal_burst = 39878,
|
||||
watery_grave = 38049,
|
||||
water_blast = 54237
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
water_nova = 38237,
|
||||
tidal_burst = 39878,
|
||||
watery_grave = 38049,
|
||||
water_blast = 54237
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
water_nova = 8675397,
|
||||
tidal_burst = 8675400,
|
||||
watery_grave = 8675403,
|
||||
water_blast = 8675406
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
water_nova = 38237,
|
||||
tidal_burst = 39878,
|
||||
watery_grave = 38049,
|
||||
water_blast = 54237
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
water_nova = 8675398,
|
||||
tidal_burst = 8675401,
|
||||
watery_grave = 8675404,
|
||||
water_blast = 8675407
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
water_nova = 38237,
|
||||
tidal_burst = 39878,
|
||||
watery_grave = 38049,
|
||||
water_blast = 54237
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
water_nova = 38237,
|
||||
tidal_burst = 39878,
|
||||
watery_grave = 38049,
|
||||
water_blast = 54237
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
water_nova = 38237,
|
||||
tidal_burst = 39878,
|
||||
watery_grave = 38049,
|
||||
water_blast = 54237
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
water_nova = 38237,
|
||||
tidal_burst = 39878,
|
||||
watery_grave = 38049,
|
||||
water_blast = 54237
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseHydromancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have mastered the flowing power of the Hydromancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the spells this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the power of the Hydromancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseHydromancerScroll)
|
||||
95
LUA/MonkScroll.lua
Normal file
95
LUA/MonkScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500509 -- Monk Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
kick = 8675408,
|
||||
storm_punch = 8675411,
|
||||
ringing_slap = 8675414,
|
||||
head_butt = 8675417
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
kick = 8675409,
|
||||
storm_punch = 56352,
|
||||
ringing_slap = 59606,
|
||||
head_butt = 8675418
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
kick = 8675409,
|
||||
storm_punch = 56352,
|
||||
ringing_slap = 59606,
|
||||
head_butt = 8675418
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
kick = 29586, -- Default Kick for Rogues
|
||||
storm_punch = 8675412,
|
||||
ringing_slap = 8675415,
|
||||
head_butt = 25788 -- Default Head Butt for Rogues
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
kick = 8675409,
|
||||
storm_punch = 56352,
|
||||
ringing_slap = 59606,
|
||||
head_butt = 8675418
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
kick = 8675410,
|
||||
storm_punch = 8675413,
|
||||
ringing_slap = 8675416,
|
||||
head_butt = 8675419
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
kick = 8675409,
|
||||
storm_punch = 56352,
|
||||
ringing_slap = 59606,
|
||||
head_butt = 8675418
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
kick = 8675409,
|
||||
storm_punch = 56352,
|
||||
ringing_slap = 59606,
|
||||
head_butt = 8675418
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
kick = 8675409,
|
||||
storm_punch = 56352,
|
||||
ringing_slap = 59606,
|
||||
head_butt = 8675418
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
kick = 8675409,
|
||||
storm_punch = 56352,
|
||||
ringing_slap = 59606,
|
||||
head_butt = 8675418
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseMonkScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have embraced the martial techniques of the Monk!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the skills of the Monk Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseMonkScroll)
|
||||
95
LUA/NecromancerScroll.lua
Normal file
95
LUA/NecromancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500510 -- Necromancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
cripple = 8675420,
|
||||
bone_armor = 8675423,
|
||||
power_release = 8675426,
|
||||
summon_skeleton = 8675429
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
cripple = 20812,
|
||||
bone_armor = 50324,
|
||||
power_release = 51431,
|
||||
summon_skeleton = 8853
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
cripple = 20812,
|
||||
bone_armor = 50324,
|
||||
power_release = 51431,
|
||||
summon_skeleton = 8853
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
cripple = 8675421,
|
||||
bone_armor = 8675424,
|
||||
power_release = 8675427,
|
||||
summon_skeleton = 8675430
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
cripple = 20812,
|
||||
bone_armor = 50324,
|
||||
power_release = 51431,
|
||||
summon_skeleton = 8853
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
cripple = 8675422,
|
||||
bone_armor = 8675425,
|
||||
power_release = 8675428,
|
||||
summon_skeleton = 8675431
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
cripple = 20812,
|
||||
bone_armor = 50324,
|
||||
power_release = 51431,
|
||||
summon_skeleton = 8853
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
cripple = 20812,
|
||||
bone_armor = 50324,
|
||||
power_release = 51431,
|
||||
summon_skeleton = 8853
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
cripple = 20812,
|
||||
bone_armor = 50324,
|
||||
power_release = 51431,
|
||||
summon_skeleton = 8853
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
cripple = 20812,
|
||||
bone_armor = 50324,
|
||||
power_release = 51431,
|
||||
summon_skeleton = 8853
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseNecromancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have mastered the forbidden arts of the Necromancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the powers of the Necromancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseNecromancerScroll)
|
||||
95
LUA/NethermancerScroll.lua
Normal file
95
LUA/NethermancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500511 -- Nethermancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
bloodcrystal_surge = 8675432,
|
||||
drain_life = 8675435,
|
||||
nether_shock = 8675438,
|
||||
netherbreath = 8675441
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
bloodcrystal_surge = 35778,
|
||||
drain_life = 17173,
|
||||
nether_shock = 35334,
|
||||
netherbreath = 36631
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
bloodcrystal_surge = 35778,
|
||||
drain_life = 17173,
|
||||
nether_shock = 35334,
|
||||
netherbreath = 36631
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
bloodcrystal_surge = 8675433,
|
||||
drain_life = 8675436,
|
||||
nether_shock = 8675439,
|
||||
netherbreath = 8675442
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
bloodcrystal_surge = 35778,
|
||||
drain_life = 17173,
|
||||
nether_shock = 35334,
|
||||
netherbreath = 36631
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
bloodcrystal_surge = 8675434,
|
||||
drain_life = 8675437,
|
||||
nether_shock = 8675440,
|
||||
netherbreath = 8675443
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
bloodcrystal_surge = 35778,
|
||||
drain_life = 17173,
|
||||
nether_shock = 35334,
|
||||
netherbreath = 36631
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
bloodcrystal_surge = 35778,
|
||||
drain_life = 17173,
|
||||
nether_shock = 35334,
|
||||
netherbreath = 36631
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
bloodcrystal_surge = 35778,
|
||||
drain_life = 17173,
|
||||
nether_shock = 35334,
|
||||
netherbreath = 36631
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
bloodcrystal_surge = 35778,
|
||||
drain_life = 17173,
|
||||
nether_shock = 35334,
|
||||
netherbreath = 36631
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseNethermancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have unlocked the secrets of the Nethermancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the powers of the Nethermancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseNethermancerScroll)
|
||||
95
LUA/PyromancerScroll.lua
Normal file
95
LUA/PyromancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500512 -- Pyromancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
ancient_fire = 8675444,
|
||||
flame_shock = 8675447,
|
||||
mark_of_flames = 8675450,
|
||||
summon_fire_elemental = 8675453
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
ancient_fire = 37986,
|
||||
flame_shock = 15096,
|
||||
mark_of_flames = 15128,
|
||||
summon_fire_elemental = 63774
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
ancient_fire = 37986,
|
||||
flame_shock = 15096,
|
||||
mark_of_flames = 15128,
|
||||
summon_fire_elemental = 63774
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
ancient_fire = 8675445,
|
||||
flame_shock = 8675448,
|
||||
mark_of_flames = 8675451,
|
||||
summon_fire_elemental = 8675454
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
ancient_fire = 37986,
|
||||
flame_shock = 15096,
|
||||
mark_of_flames = 15128,
|
||||
summon_fire_elemental = 63774
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
ancient_fire = 8675446,
|
||||
flame_shock = 8675449,
|
||||
mark_of_flames = 8675452,
|
||||
summon_fire_elemental = 8675455
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
ancient_fire = 37986,
|
||||
flame_shock = 15096,
|
||||
mark_of_flames = 15128,
|
||||
summon_fire_elemental = 63774
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
ancient_fire = 37986,
|
||||
flame_shock = 15096,
|
||||
mark_of_flames = 15128,
|
||||
summon_fire_elemental = 63774
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
ancient_fire = 37986,
|
||||
flame_shock = 15096,
|
||||
mark_of_flames = 15128,
|
||||
summon_fire_elemental = 63774
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
ancient_fire = 37986,
|
||||
flame_shock = 15096,
|
||||
mark_of_flames = 15128,
|
||||
summon_fire_elemental = 63774
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUsePyromancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have mastered the blazing arts of the Pyromancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the fiery powers of the Pyromancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUsePyromancerScroll)
|
||||
95
LUA/ShadowmancerScroll.lua
Normal file
95
LUA/ShadowmancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500513 -- Shadowmancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
dark_mending = 8675456,
|
||||
shadow_blast = 8675459,
|
||||
shadowguard = 8675462,
|
||||
shadow_nova = 8675465
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
dark_mending = 19775,
|
||||
shadow_blast = 38085,
|
||||
shadowguard = 38379,
|
||||
shadow_nova = 33846
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
dark_mending = 19775,
|
||||
shadow_blast = 38085,
|
||||
shadowguard = 38379,
|
||||
shadow_nova = 33846
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
dark_mending = 8675457,
|
||||
shadow_blast = 8675460,
|
||||
shadowguard = 8675463,
|
||||
shadow_nova = 8675466
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
dark_mending = 19775,
|
||||
shadow_blast = 38085,
|
||||
shadowguard = 38379,
|
||||
shadow_nova = 33846
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
dark_mending = 8675458,
|
||||
shadow_blast = 8675461,
|
||||
shadowguard = 8675464,
|
||||
shadow_nova = 8675467
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
dark_mending = 19775,
|
||||
shadow_blast = 38085,
|
||||
shadowguard = 38379,
|
||||
shadow_nova = 33846
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
dark_mending = 19775,
|
||||
shadow_blast = 38085,
|
||||
shadowguard = 38379,
|
||||
shadow_nova = 33846
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
dark_mending = 19775,
|
||||
shadow_blast = 38085,
|
||||
shadowguard = 38379,
|
||||
shadow_nova = 33846
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
dark_mending = 19775,
|
||||
shadow_blast = 38085,
|
||||
shadowguard = 38379,
|
||||
shadow_nova = 33846
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseShadowmancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have embraced the shadows of the Shadowmancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the dark powers of the Shadowmancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseShadowmancerScroll)
|
||||
95
LUA/SirenScroll.lua
Normal file
95
LUA/SirenScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500514 -- Siren Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
banshee_shriek = 8675468,
|
||||
enveloping_winds = 8675471,
|
||||
ribbon_of_souls = 8675474,
|
||||
viscous_shield = 8675477
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
banshee_shriek = 29505,
|
||||
enveloping_winds = 15535,
|
||||
ribbon_of_souls = 16243,
|
||||
viscous_shield = 38026
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
banshee_shriek = 29505,
|
||||
enveloping_winds = 15535,
|
||||
ribbon_of_souls = 16243,
|
||||
viscous_shield = 38026
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
banshee_shriek = 8675469,
|
||||
enveloping_winds = 8675472,
|
||||
ribbon_of_souls = 8675475,
|
||||
viscous_shield = 8675478
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
banshee_shriek = 29505,
|
||||
enveloping_winds = 15535,
|
||||
ribbon_of_souls = 16243,
|
||||
viscous_shield = 38026
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
banshee_shriek = 8675470,
|
||||
enveloping_winds = 8675473,
|
||||
ribbon_of_souls = 8675476,
|
||||
viscous_shield = 8675479
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
banshee_shriek = 29505,
|
||||
enveloping_winds = 15535,
|
||||
ribbon_of_souls = 16243,
|
||||
viscous_shield = 38026
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
banshee_shriek = 29505,
|
||||
enveloping_winds = 15535,
|
||||
ribbon_of_souls = 16243,
|
||||
viscous_shield = 38026
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
banshee_shriek = 29505,
|
||||
enveloping_winds = 15535,
|
||||
ribbon_of_souls = 16243,
|
||||
viscous_shield = 38026
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
banshee_shriek = 29505,
|
||||
enveloping_winds = 15535,
|
||||
ribbon_of_souls = 16243,
|
||||
viscous_shield = 38026
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseSirenScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have unlocked the enchanting powers of the Siren!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the mystical powers of the Siren Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseSirenScroll)
|
||||
95
LUA/SoothsayerScroll.lua
Normal file
95
LUA/SoothsayerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500515 -- Soothsayer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
darkened_vision = 8675480,
|
||||
dark_whispers = 8675483,
|
||||
impending_coma = 8675486,
|
||||
time_lapse = 8675489
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
darkened_vision = 5514,
|
||||
dark_whispers = 16587,
|
||||
impending_coma = 34800,
|
||||
time_lapse = 51020
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
darkened_vision = 5514,
|
||||
dark_whispers = 16587,
|
||||
impending_coma = 34800,
|
||||
time_lapse = 51020
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
darkened_vision = 8675481,
|
||||
dark_whispers = 8675484,
|
||||
impending_coma = 8675487,
|
||||
time_lapse = 8675490
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
darkened_vision = 5514,
|
||||
dark_whispers = 16587,
|
||||
impending_coma = 34800,
|
||||
time_lapse = 51020
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
darkened_vision = 8675482,
|
||||
dark_whispers = 8675485,
|
||||
impending_coma = 8675488,
|
||||
time_lapse = 8675491
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
darkened_vision = 5514,
|
||||
dark_whispers = 16587,
|
||||
impending_coma = 34800,
|
||||
time_lapse = 51020
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
darkened_vision = 5514,
|
||||
dark_whispers = 16587,
|
||||
impending_coma = 34800,
|
||||
time_lapse = 51020
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
darkened_vision = 5514,
|
||||
dark_whispers = 16587,
|
||||
impending_coma = 34800,
|
||||
time_lapse = 51020
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
darkened_vision = 5514,
|
||||
dark_whispers = 16587,
|
||||
impending_coma = 34800,
|
||||
time_lapse = 51020
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseSoothsayerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have unlocked the prophetic powers of the Soothsayer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the visions of the Soothsayer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseSoothsayerScroll)
|
||||
95
LUA/SurveyorScroll.lua
Normal file
95
LUA/SurveyorScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500516 -- Surveyor Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
edwards_insight = 8675492,
|
||||
sand_breath = 8675495,
|
||||
crypt_scarabs = 8675498,
|
||||
stasis_field = 8675501
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
edwards_insight = 60318,
|
||||
sand_breath = 20717,
|
||||
crypt_scarabs = 54311,
|
||||
stasis_field = 40835
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
edwards_insight = 60318,
|
||||
sand_breath = 20717,
|
||||
crypt_scarabs = 54311,
|
||||
stasis_field = 40835
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
edwards_insight = 8675493,
|
||||
sand_breath = 8675496,
|
||||
crypt_scarabs = 8675499,
|
||||
stasis_field = 8675502
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
edwards_insight = 60318,
|
||||
sand_breath = 20717,
|
||||
crypt_scarabs = 54311,
|
||||
stasis_field = 40835
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
edwards_insight = 8675494,
|
||||
sand_breath = 8675497,
|
||||
crypt_scarabs = 8675500,
|
||||
stasis_field = 8675503
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
edwards_insight = 60318,
|
||||
sand_breath = 20717,
|
||||
crypt_scarabs = 54311,
|
||||
stasis_field = 40835
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
edwards_insight = 60318,
|
||||
sand_breath = 20717,
|
||||
crypt_scarabs = 54311,
|
||||
stasis_field = 40835
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
edwards_insight = 60318,
|
||||
sand_breath = 20717,
|
||||
crypt_scarabs = 54311,
|
||||
stasis_field = 40835
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
edwards_insight = 60318,
|
||||
sand_breath = 20717,
|
||||
crypt_scarabs = 54311,
|
||||
stasis_field = 40835
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseSurveyorScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have unlocked the ancient knowledge of the Surveyor!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the wisdom of the Surveyor Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseSurveyorScroll)
|
||||
95
LUA/TimeBenderScroll.lua
Normal file
95
LUA/TimeBenderScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500517 -- Time Bender Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
haste_other = 8675504,
|
||||
slow = 8675507,
|
||||
time_shock = 8675510,
|
||||
time_stop = 8675513
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
haste_other = 34186,
|
||||
slow = 6146,
|
||||
time_shock = 60076,
|
||||
time_stop = 47736
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
haste_other = 34186,
|
||||
slow = 6146,
|
||||
time_shock = 60076,
|
||||
time_stop = 47736
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
haste_other = 8675505,
|
||||
slow = 8675508,
|
||||
time_shock = 8675511,
|
||||
time_stop = 8675514
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
haste_other = 34186,
|
||||
slow = 6146,
|
||||
time_shock = 60076,
|
||||
time_stop = 47736
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
haste_other = 8675506,
|
||||
slow = 8675509,
|
||||
time_shock = 8675512,
|
||||
time_stop = 8675515
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
haste_other = 34186,
|
||||
slow = 6146,
|
||||
time_shock = 60076,
|
||||
time_stop = 47736
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
haste_other = 34186,
|
||||
slow = 6146,
|
||||
time_shock = 60076,
|
||||
time_stop = 47736
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
haste_other = 34186,
|
||||
slow = 6146,
|
||||
time_shock = 60076,
|
||||
time_stop = 47736
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
haste_other = 34186,
|
||||
slow = 6146,
|
||||
time_shock = 60076,
|
||||
time_stop = 47736
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseTimeBenderScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have unlocked the mysterious powers of the Time Bender!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the powers of the Time Bender Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseTimeBenderScroll)
|
||||
95
LUA/VenomancerScroll.lua
Normal file
95
LUA/VenomancerScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500518 -- Venomancer Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
poison_bolt = 8675516,
|
||||
poison_shield = 8675519,
|
||||
poisoned_thrust = 8675522,
|
||||
leech_poison = 8675525
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
poison_bolt = 30917,
|
||||
poison_shield = 39027,
|
||||
poisoned_thrust = 30822,
|
||||
leech_poison = 31288
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
poison_bolt = 30917,
|
||||
poison_shield = 39027,
|
||||
poisoned_thrust = 30822,
|
||||
leech_poison = 31288
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
poison_bolt = 8675517,
|
||||
poison_shield = 8675520,
|
||||
poisoned_thrust = 8675523,
|
||||
leech_poison = 8675526
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
poison_bolt = 30917,
|
||||
poison_shield = 39027,
|
||||
poisoned_thrust = 30822,
|
||||
leech_poison = 31288
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
poison_bolt = 8675518,
|
||||
poison_shield = 8675521,
|
||||
poisoned_thrust = 8675524,
|
||||
leech_poison = 8675527
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
poison_bolt = 30917,
|
||||
poison_shield = 39027,
|
||||
poisoned_thrust = 30822,
|
||||
leech_poison = 31288
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
poison_bolt = 30917,
|
||||
poison_shield = 39027,
|
||||
poisoned_thrust = 30822,
|
||||
leech_poison = 31288
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
poison_bolt = 30917,
|
||||
poison_shield = 39027,
|
||||
poisoned_thrust = 30822,
|
||||
leech_poison = 31288
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
poison_bolt = 30917,
|
||||
poison_shield = 39027,
|
||||
poisoned_thrust = 30822,
|
||||
leech_poison = 31288
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseVenomancerScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have embraced the toxic power of the Venomancer!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the venomous magic of the Venomancer Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseVenomancerScroll)
|
||||
95
LUA/WitchDoctorScroll.lua
Normal file
95
LUA/WitchDoctorScroll.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
local ITEM_ENTRY = 500519 -- Witch Doctor Scroll Item ID
|
||||
|
||||
-- Map of class IDs to their specific spells
|
||||
local SPELLS_BY_CLASS = {
|
||||
[1] = { -- Warrior (Rage)
|
||||
hex = 8675528,
|
||||
healing_ward = 8675531,
|
||||
ward_of_laze = 8675534,
|
||||
voodoo_doll = 8675537
|
||||
},
|
||||
[2] = { -- Paladin (Mana)
|
||||
hex = 11641,
|
||||
healing_ward = 11899,
|
||||
ward_of_laze = 3827,
|
||||
voodoo_doll = 52695
|
||||
},
|
||||
[3] = { -- Hunter (Mana/Focus)
|
||||
hex = 11641,
|
||||
healing_ward = 11899,
|
||||
ward_of_laze = 3827,
|
||||
voodoo_doll = 52695
|
||||
},
|
||||
[4] = { -- Rogue (Energy)
|
||||
hex = 8675529,
|
||||
healing_ward = 8675532,
|
||||
ward_of_laze = 8675535,
|
||||
voodoo_doll = 8675538
|
||||
},
|
||||
[5] = { -- Priest (Mana)
|
||||
hex = 11641,
|
||||
healing_ward = 11899,
|
||||
ward_of_laze = 3827,
|
||||
voodoo_doll = 52695
|
||||
},
|
||||
[6] = { -- Death Knight (Runic Power)
|
||||
hex = 8675530,
|
||||
healing_ward = 8675533,
|
||||
ward_of_laze = 8675536,
|
||||
voodoo_doll = 8675539
|
||||
},
|
||||
[7] = { -- Shaman (Mana)
|
||||
hex = 11641,
|
||||
healing_ward = 11899,
|
||||
ward_of_laze = 3827,
|
||||
voodoo_doll = 52695
|
||||
},
|
||||
[8] = { -- Mage (Mana)
|
||||
hex = 11641,
|
||||
healing_ward = 11899,
|
||||
ward_of_laze = 3827,
|
||||
voodoo_doll = 52695
|
||||
},
|
||||
[9] = { -- Warlock (Mana)
|
||||
hex = 11641,
|
||||
healing_ward = 11899,
|
||||
ward_of_laze = 3827,
|
||||
voodoo_doll = 52695
|
||||
},
|
||||
[11] = { -- Druid (Mana)
|
||||
hex = 11641,
|
||||
healing_ward = 11899,
|
||||
ward_of_laze = 3827,
|
||||
voodoo_doll = 52695
|
||||
}
|
||||
}
|
||||
|
||||
-- Function triggered when the item is used
|
||||
local function OnUseWitchDoctorScroll(event, player, item, target)
|
||||
local class = player:GetClass() -- Get player's class ID
|
||||
local spells = SPELLS_BY_CLASS[class] -- Get spell list for the class
|
||||
|
||||
if spells then
|
||||
local learned = false -- Track if any new spells are learned
|
||||
|
||||
-- Loop through the spell list for the class
|
||||
for _, spell in pairs(spells) do
|
||||
if not player:HasSpell(spell) then
|
||||
player:LearnSpell(spell) -- Teach the spell
|
||||
learned = true
|
||||
end
|
||||
end
|
||||
|
||||
if learned then
|
||||
player:RemoveItem(item:GetEntry(), 1) -- Consume the item
|
||||
player:SendBroadcastMessage("You have embraced the dark magic of the Witch Doctor!")
|
||||
else
|
||||
player:SendBroadcastMessage("You already know all the abilities this scroll teaches.")
|
||||
end
|
||||
else
|
||||
player:SendBroadcastMessage("Your class cannot harness the dark magic of the Witch Doctor Scroll.")
|
||||
end
|
||||
end
|
||||
|
||||
-- Register the script to the item
|
||||
RegisterItemEvent(ITEM_ENTRY, 2, OnUseWitchDoctorScroll)
|
||||
Reference in New Issue
Block a user