mirror of
https://github.com/araxiaonline/RandomScriptsforAzerothCore.git
synced 2026-06-13 02:22:19 -04:00
Add files via upload
This commit is contained in:
2037
MiscTools/ChromieEventScripts.lua
Normal file
2037
MiscTools/ChromieEventScripts.lua
Normal file
File diff suppressed because it is too large
Load Diff
102
MiscTools/DinkleStone1.lua
Normal file
102
MiscTools/DinkleStone1.lua
Normal file
@@ -0,0 +1,102 @@
|
||||
local ItemEntry = 65000 -- Hearthstone. You can change this item ID to whatever.
|
||||
|
||||
local T = {
|
||||
[1] = { "|TInterface\\icons\\achievement_pvp_h_h:37:37:-23|t|cff610B0BHorde Cities|r", 1,
|
||||
{"|TInterface\\icons\\achievement_zone_durotar:37:37:-23|t|cff610B0BOrgrimmar|r", 1, 1503, -4415.5, 22, 0},
|
||||
{"|TInterface\\icons\\achievement_zone_tirisfalglades_01:37:37:-23|t|cff610B0BUndercity|r", 0, 1831, 238.5, 61.6, 0},
|
||||
{"|TInterface\\icons\\achievement_zone_mulgore_01:37:37:-23|t|cff610B0BThunderbluff|r", 1, -1278, 122, 132, 0},
|
||||
{"|TInterface\\icons\\achievement_zone_bloodmystisle_01:37:37:-23|t|cff610B0BSilvermoon|r", 530, 9487.69, -7279.2, 14.2866, 0},
|
||||
{"|TInterface\\icons\\achievement_reputation_wyrmresttemple:37:37:-23|t|cff642EFEShattrath|r", 530, -1838.16, 5301.79, -12.428, 0},
|
||||
{"|TInterface\\icons\\achievement_reputation_kirintor:37:37:-23|t|cff642EFEDalaran|r", 571, 5804.15, 624.771, 647.767, 0},
|
||||
},
|
||||
[2] = {"|TInterface\\icons\\achievement_pvp_a_a:37:37:-23|t|cff0101DFAlliance Cities|r", 0,
|
||||
{"|TInterface\\icons\\achievement_zone_elwynnforest:37:37:-23|t|cff0101DFStormwind|r", 0, -8905, 560, 94, 0.62},
|
||||
{"|TInterface\\icons\\achievement_zone_dunmorogh:37:37:-23|t|cff0101DFIronforge|r", 0, -4795, -1117, 499, 0},
|
||||
{"|TInterface\\icons\\achievement_zone_ashenvale_01:37:37:-23|t|cff0101DFDarnassus|r", 1, 9952, 2280.5, 1342, 1.6},
|
||||
{"|TInterface\\icons\\achievement_zone_zangarmarsh:37:37:-23|t|cff0101DFThe Exodar|r", 530, -3965.7, -11653.6, -138.844, 0},
|
||||
{"|TInterface\\icons\\achievement_reputation_wyrmresttemple:37:37:-23|t|cff642EFEShattrath|r", 530, -1838.16, 5301.79, -12.428, 0},
|
||||
{"|TInterface\\icons\\achievement_reputation_kirintor:37:37:-23|t|cff642EFEDalaran|r", 571, 5804.15, 624.771, 647.767, 0},
|
||||
},
|
||||
[3] = { "|TInterface\\icons\\achievement_bg_winwsg:37:37:-23|t|cffC41F3BPvP Locations|r", 2,
|
||||
{"Gurubashi Arena", 0, -13229, 226, 33, 1},
|
||||
{"Dire Maul Arena", 1, -3669, 1094, 160, 3},
|
||||
{"Nagrand Arena", 530, -1983, 6562, 12, 2},
|
||||
{"Blade's Edge Arena", 530, 2910, 5976, 2, 4},
|
||||
},
|
||||
[4] = {"|TInterface\\icons\\achievement_zone_elwynnforest:37:37:-23|t|cff0101DFAlliance Starter Areas|r", 0,
|
||||
{"Northshire Valley", 0, -8921.09, -119.13, 82.2, 6},
|
||||
{"Coldridge", 0, -6231.77, 333, 383.17, 0},
|
||||
{"Shadowglen", 1, 10322.26, 831.4, 1326.37, 0},
|
||||
{"Ammen Vale", 530, -3961.64, -13931.2, 100.615, 0},
|
||||
},
|
||||
[5] = { "|TInterface\\icons\\achievement_zone_durotar:37:37:-23|t|cff610B0BHorde Starter Areas|r", 1,
|
||||
{"Valley of Trials", 1, -618.518, -4251.67, 38.718, 0},
|
||||
{"Camp Narache", 1, -2917.58, -257.98, 52.9968, 0},
|
||||
{"Death Knell", 0, 1676.71, 1678.31, 121.67, 0},
|
||||
{"Sunstrider Isle", 530, 10349.6, -6357.29, 33.4026, 0},
|
||||
},
|
||||
[6] = {"|TInterface\\icons\\achievement_boss_ragnaros:37:37:-23|t|cff0101DFRaids|r", 2,
|
||||
{"Molten Core", 230, 1126.64, -459.94, -102.535, 3.46095},
|
||||
{"Onyxia's Lair", 1, -4708.27, -3727.64, 54.5589, 3.72786},
|
||||
{"Blackwing Lair", 469, -7664.76, -1100.87,399.679, 0},
|
||||
{"Zul'Gurub", 309, -11916.9, -1248.36, 92.5334, 4.72417},
|
||||
{"Ahn'Qiraj", 1, -8253.067, 1538.91, -4.797, 3.065894},
|
||||
{"Naxx 40", 0, 3082.924316, -3746.725830, 133.52, 0},
|
||||
{"Karazhan", 0, -11118.9, -2010.33,47.0819, 0.649895},
|
||||
{"Magtheridon's Lair", 530, -312.7, 3087.26, -116.52, 5.19026},
|
||||
{"Gruul's Lair", 530, 3530.06, 5104.08, 3.50861, 5.51117},
|
||||
{"Zul'Aman", 530, 6851.78, -7972.57, 179.242, 4.64691},
|
||||
{"Serpentshrine Caverns", 530, 748.984436, 6870.443359, -68, 6.246},
|
||||
{"Tempest Keep", 530, 3088.49, 1381.57, 184.863, 4.61973},
|
||||
{"Hyjal Summit", 1, -8177.5, -4183, -168, 1},
|
||||
{"Black Temple", 530, -3649.92, 317.469, 35.2827, 2.94285},
|
||||
{"Sunwell Plateau", 530, 12574.1, -6774.81, 15.0904, 3.13788},
|
||||
{"Naxx Wotlk", 571, 3670.268066, -1263.276367, 243.52, 4.61},
|
||||
{"Obsidian Sanctum", 571, 3457.11, 262.394, -113.819, 3.28258},
|
||||
{"Eye of Eternity", 571, 3859.44, 6989.85, 152.041, 5.79635},
|
||||
{"Vault of Archavon", 571, 5453.72, 2840.79, 421.28, 0},
|
||||
{"Ulduar", 571, 9251.101562, -1112.424072, 1216.115479, 6.26},
|
||||
{"Trial of the Crusader", 571, 8515.68, 716.982, 558.248, 1.57315},
|
||||
{"Icecrown Citadel", 571, 5873.82, 2110.98, 636.011, 3.5523},
|
||||
{"Ruby Sanctum", 571, 3600.5, 197.34, -113.76, 5.29905},
|
||||
},
|
||||
}
|
||||
|
||||
local function OnGossipHello(event, player, item)
|
||||
-- Show main menu
|
||||
for i, v in ipairs(T) do
|
||||
if (v[2] == 2 or v[2] == player:GetTeam()) then
|
||||
player:GossipMenuAddItem(0, v[1], i, 0)
|
||||
end
|
||||
end
|
||||
player:GossipSendMenu(1, item)
|
||||
end
|
||||
|
||||
local function OnGossipSelect(event, player, item, sender, intid, code)
|
||||
if (sender == 0) then
|
||||
-- return to main menu
|
||||
OnGossipHello(event, player, item)
|
||||
return
|
||||
end
|
||||
|
||||
if (intid == 0) then
|
||||
-- Show teleport menu
|
||||
for i, v in ipairs(T[sender]) do
|
||||
if (i > 2) then
|
||||
player:GossipMenuAddItem(0, v[1], sender, i)
|
||||
end
|
||||
end
|
||||
player:GossipMenuAddItem(0, "Back", 0, 0)
|
||||
player:GossipSendMenu(1, item)
|
||||
return
|
||||
else
|
||||
-- teleport
|
||||
local name, map, x, y, z, o = table.unpack(T[sender][intid])
|
||||
player:Teleport(map, x, y, z, o)
|
||||
end
|
||||
|
||||
player:GossipComplete()
|
||||
end
|
||||
|
||||
RegisterItemGossipEvent(ItemEntry, 1, OnGossipHello)
|
||||
RegisterItemGossipEvent(ItemEntry, 2, OnGossipSelect)
|
||||
51
MiscTools/Dinklestone2.lua
Normal file
51
MiscTools/Dinklestone2.lua
Normal file
@@ -0,0 +1,51 @@
|
||||
function OnGossipHello(event, player, item)
|
||||
if player:GetLevel() < 15 then
|
||||
player:SendBroadcastMessage("You need to be level 15 or higher to use this item.")
|
||||
return
|
||||
end
|
||||
player:GossipMenuAddItem(0, "|TInterface\\icons\\achievement_boss_lichking:37:37:-23|t|cff007d45Scourge Event|r", 150, 0)
|
||||
player:GossipSendMenu(1, item)
|
||||
end
|
||||
|
||||
local function OnGossipSelect(event, player, item, sender, intid, code)
|
||||
if (sender == 150) then
|
||||
-- Show Scourge Event menu
|
||||
player:GossipMenuAddItem(0, "|TInterface\\icons\\spell_misc_emotionhappy:37:37:-23|t|cff007d45Start Event for Bonus Lich Runes|r", 100, 0)
|
||||
player:GossipMenuAddItem(0, "|TInterface\\icons\\spell_misc_emotionsad:37:37:-23|t|cffC41F3BStop Event but Suffer|r", 101, 0)
|
||||
player:GossipMenuAddItem(0, "Back", 0, 0)
|
||||
player:GossipSendMenu(1, item)
|
||||
return
|
||||
elseif (sender == 100) then
|
||||
-- Start the event
|
||||
if IsGameEventActive(17) then
|
||||
player:SendBroadcastMessage("The Scourge event is already active.")
|
||||
else
|
||||
player:AddItem(43949, 2)
|
||||
StartGameEvent(17, true)
|
||||
player:PlayDirectSound(14797)
|
||||
end
|
||||
player:GossipComplete()
|
||||
elseif (sender == 101) then
|
||||
-- Stop the event
|
||||
if not IsGameEventActive(17) then
|
||||
player:SendBroadcastMessage("The Scourge event is not currently active.")
|
||||
else
|
||||
StopGameEvent(17, true)
|
||||
player:CastSpell(player, 15007, true)
|
||||
player:RemoveItem(43949, 2)
|
||||
player:SetLevel(player:GetLevel())
|
||||
player:SendBroadcastMessage("2 Lich Runes have been removed, you've been given Resurrection Sickness and have lost your current level's experience progress. So sad :(")
|
||||
player:PlayDirectSound(14776)
|
||||
end
|
||||
player:GossipComplete()
|
||||
elseif (sender == 0) then
|
||||
-- return to main menu
|
||||
OnGossipHello(event, player, item)
|
||||
return
|
||||
end
|
||||
|
||||
player:GossipComplete()
|
||||
end
|
||||
|
||||
RegisterItemGossipEvent(65001, 1, OnGossipHello)
|
||||
RegisterItemGossipEvent(65001, 2, OnGossipSelect)
|
||||
12
MiscTools/FelRushSoundFix.lua
Normal file
12
MiscTools/FelRushSoundFix.lua
Normal file
@@ -0,0 +1,12 @@
|
||||
local SPELL_ID = 100207
|
||||
local SOUND_ID = 53774
|
||||
local ADDITIONAL_SPELL_ID = 200181
|
||||
|
||||
function OnSpellCast(event, player, spell)
|
||||
if spell:GetEntry() == SPELL_ID then
|
||||
player:PlayDirectSound(SOUND_ID, player)
|
||||
player:CastSpell(player, ADDITIONAL_SPELL_ID, true)
|
||||
end
|
||||
end
|
||||
|
||||
RegisterPlayerEvent(5, OnSpellCast)
|
||||
8
MiscTools/FlyableWaypoints.lua
Normal file
8
MiscTools/FlyableWaypoints.lua
Normal file
@@ -0,0 +1,8 @@
|
||||
local Waypoint = {};
|
||||
|
||||
function Waypoint.OnSpawn(event, creature)
|
||||
creature:CanFly(true)
|
||||
creature:SetDisableGravity(true)
|
||||
end
|
||||
|
||||
RegisterCreatureEvent(1, 5, Waypoint.OnSpawn)
|
||||
28
MiscTools/Murky.lua
Normal file
28
MiscTools/Murky.lua
Normal file
@@ -0,0 +1,28 @@
|
||||
function MurkyOnSpawn(event, creature)
|
||||
local playerName = creature:GetOwner():GetName()
|
||||
local dialogue = {
|
||||
"Mrglglglgl! Murky here, reporting for duty!",
|
||||
"Mrrrrrrrglglglgl! Murky happy to serve you, " .. playerName .. "!",
|
||||
"Mrglgl! Murloc Murky at your service! Let's conquer Azeroth together!",
|
||||
"Mrrrglglgl! Murky ready to take on any challenge with you, " .. playerName .. "!",
|
||||
"Mrglglglglgl! Reporting for duty! Let's make some waves, " .. playerName .. "!",
|
||||
"Mrrglglgl! Murky is excited to join your team, " .. playerName .. "! Let's show everyone what we're made of!",
|
||||
"Mrglglgl! Murloc warrior Murky at your command, " .. playerName .. "! Let's make our enemies quake with fear!",
|
||||
"Mrrrglglgl! Murky is eager to prove his worth to you, " .. playerName .. "! Let's take on the world together!",
|
||||
"Mrglglglgl! This Murloc is ready to make some noise with you, " .. playerName .. "! Let's show them who's boss!",
|
||||
"Mrrrglgl! Murky honored to be your loyal companion, " .. playerName .. "! Let's take on any challenge that comes our way!",
|
||||
"Greetings, adventurer! The one and only Murky has arrived to join you on your quest!",
|
||||
"Mrglgl! Murky is here to lend a fin and help you conquer the land, " .. playerName .. "!",
|
||||
"Mrrglgl! Murky is thrilled to serve such a worthy leader as yourself, " .. playerName .. "!",
|
||||
"Mrglglglgl! Murky reporting for duty! Let's make some mischief and have some fun, " .. playerName .. "!",
|
||||
"Mrrglgl! Murky is honored to be fighting by your side, " .. playerName .. "! Let's take on our foes with all we've got!",
|
||||
"Mrglglgl! Murky is eager to explore the land and see what adventures await us, " .. playerName .. "!",
|
||||
"Mrrrglglgl! Murky is always up for a challenge, " .. playerName .. "! Let's go forth and conquer!",
|
||||
"Mrglglglgl! Murky is ready to make some waves and take on the world, " .. playerName .. "! Let's do this!",
|
||||
"Mrrrglgl! Murky will be your trusty sidekick on this journey, " .. playerName .. "! Let's make some memories!",
|
||||
"Mrglglglgl! Murky is thrilled to be part of your team, " .. playerName .. "! Let's show them what we're made of and come out on top!"
|
||||
}
|
||||
creature:SendUnitSay(dialogue[math.random(#dialogue)], 0)
|
||||
end
|
||||
|
||||
RegisterCreatureEvent(15186, 5, MurkyOnSpawn) -- register the function to be called on Murky's spawn
|
||||
46
MiscTools/SmolderingEmberRestrict.lua
Normal file
46
MiscTools/SmolderingEmberRestrict.lua
Normal file
@@ -0,0 +1,46 @@
|
||||
local ALLOWED_MAPS = {
|
||||
0,
|
||||
1,
|
||||
}
|
||||
|
||||
local ALLOWED_SPELLS = {100150, 100160, 100161, 100177, 100186, 100168,}
|
||||
|
||||
function table.indexOf(t, value)
|
||||
for k, v in ipairs(t) do
|
||||
if v == value then
|
||||
return k
|
||||
end
|
||||
end
|
||||
return -1
|
||||
end
|
||||
|
||||
function OnPlayerCastSpell(event, player, spell)
|
||||
local spellId = spell:GetEntry()
|
||||
local mapId = player:GetMapId()
|
||||
|
||||
if table.indexOf(ALLOWED_SPELLS, spellId) ~= -1 then
|
||||
if table.indexOf(ALLOWED_MAPS, mapId) == -1 then
|
||||
spell:Cancel()
|
||||
player:SendBroadcastMessage("You can't use that here.")
|
||||
else
|
||||
if spellId == 100150 then
|
||||
player:PlayDirectSound(20428)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function OnPlayerZoneChange(event, player, newZone, newArea)
|
||||
local mapId = player:GetMapId()
|
||||
if table.indexOf(ALLOWED_MAPS, mapId) == -1 then
|
||||
for i, allowedSpell in ipairs(ALLOWED_SPELLS) do
|
||||
local aura = player:GetAura(allowedSpell)
|
||||
if aura then
|
||||
player:RemoveAura(allowedSpell)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
RegisterPlayerEvent(27, OnPlayerZoneChange)
|
||||
RegisterPlayerEvent(5, OnPlayerCastSpell)
|
||||
12
MiscTools/SoL.lua
Normal file
12
MiscTools/SoL.lua
Normal file
@@ -0,0 +1,12 @@
|
||||
-- AzerothCore Eluna script by Dinkledork
|
||||
local SPELL_SURGE_OF_LIGHT_1 = 33151
|
||||
local SPELL_CUSTOM = 100205
|
||||
|
||||
local function OnSpellCast(event, player, spell, skipCheck)
|
||||
local spellId = spell:GetEntry()
|
||||
if spellId == SPELL_SURGE_OF_LIGHT_1 then
|
||||
player:CastSpell(player, SPELL_CUSTOM, true)
|
||||
end
|
||||
end
|
||||
|
||||
RegisterPlayerEvent(5, OnSpellCast)
|
||||
7
MiscTools/reload_scripts.lua
Normal file
7
MiscTools/reload_scripts.lua
Normal file
@@ -0,0 +1,7 @@
|
||||
function reloadElunaEngine(event, player, command)
|
||||
if command == "reload scripts" or command == "reloadscripts" then
|
||||
ReloadEluna()
|
||||
end
|
||||
end
|
||||
|
||||
RegisterPlayerEvent(42, reloadElunaEngine)
|
||||
Reference in New Issue
Block a user