Add files via upload

This commit is contained in:
Dinkledork
2023-03-21 02:26:56 -06:00
committed by GitHub
parent 2b50ae9df0
commit bd7b2fd4bb
26 changed files with 3354 additions and 0 deletions

File diff suppressed because it is too large Load Diff

102
MiscTools/DinkleStone1.lua Normal file
View 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)

View 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)

View 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)

View 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
View 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

View 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
View 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)

View File

@@ -0,0 +1,7 @@
function reloadElunaEngine(event, player, command)
if command == "reload scripts" or command == "reloadscripts" then
ReloadEluna()
end
end
RegisterPlayerEvent(42, reloadElunaEngine)