diff --git a/README.md b/README.md index 7337f65..d73f6b7 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,2 @@ # AzerothCore-Converted-Modules-to-latest-TrinityCore -AzerothCore Converted Modules to latest TrinityCore 3.3.5a WotLK +AzerothCore Converted Modules to latest TrinityCore 3.3.5a WotLK and 9.0.5 Shadowlands diff --git a/SQL/TrinityCorePortalMaster.sql b/SQL/TrinityCorePortalMaster.sql deleted file mode 100644 index 3df6e8c..0000000 --- a/SQL/TrinityCorePortalMaster.sql +++ /dev/null @@ -1,593 +0,0 @@ -/* --- ############################################################################################################# -- --- --- ____ __ ______ __ ____ __ --- /\ _`\ /\ \__ __ /\__ _\/\ \ /\ _`\ /\ \__ --- \ \,\L\_\ \ ,_\ __ __ __ /\_\ __ ___\/_/\ \/\ \ \___ __\ \ \L\ \ __ ____\ \ ,_\ --- \/_\__ \\ \ \/ /\ \/\ \ /'_ `\/\ \ /'__`\ /' _ `\ \ \ \ \ \ _ `\ /'__`\ \ _ <' /'__`\ /',__\\ \ \/ --- /\ \L\ \ \ \_\ \ \_\ \/\ \L\ \ \ \/\ \L\.\_/\ \/\ \ \ \ \ \ \ \ \ \/\ __/\ \ \L\ \/\ __//\__, `\\ \ \_ --- \ `\____\ \__\\/`____ \ \____ \ \_\ \__/.\_\ \_\ \_\ \ \_\ \ \_\ \_\ \____\\ \____/\ \____\/\____/ \ \__\ --- \/_____/\/__/ `/___/> \/___L\ \/_/\/__/\/_/\/_/\/_/ \/_/ \/_/\/_/\/____/ \/___/ \/____/\/___/ \/__/ --- /\___/ /\____/ --- \/__/ \_/__/ http://stygianthebest.github.io --- --- ############################################################################################################# -- --- --- TrinityCore Portal Master --- By Rochet2 (https://rochet2.github.io/) --- --- Ported to AzerothCore by StygianTheBest --- --- ############################################################################################################# -- -*/ - - -USE world; - --- ######################################################-- --- PORTAL MASTER - 601050 --- ######################################################-- -SET -@ENTRY := 601019, -@NAME := "Johnny Lightblink", -@SUBNAME := "Portal Master", -@MODEL := 21572, -@AURA := "30540", -- "35766" = casting -@TEXT_ID := 300000, -@GOSSIP_MENU := 50000, -@RUNE := 194394; - --- Deleting code -DELETE FROM creature_template WHERE entry = @ENTRY; -DELETE FROM creature_template_addon WHERE Entry = @ENTRY ; -DELETE FROM gossip_menu WHERE entry BETWEEN @GOSSIP_MENU AND @GOSSIP_MENU+9; -DELETE FROM npc_text WHERE ID BETWEEN @TEXT_ID AND @TEXT_ID+5; -DELETE FROM gossip_menu_option WHERE menu_id BETWEEN @GOSSIP_MENU AND @GOSSIP_MENU+9; -DELETE FROM smart_scripts WHERE entryorguid = @ENTRY AND source_type = 0; -DELETE FROM conditions WHERE (SourceTypeOrReferenceId = 15 OR SourceTypeOrReferenceId = 14) AND SourceGroup BETWEEN @GOSSIP_MENU AND @GOSSIP_MENU+9; -DELETE from creature WHERE ID = @ENTRY; -DELETE from gameobject WHERE ID = @RUNE AND guid >= 200000; - --- Teleporter -INSERT INTO creature_template (entry, modelid1, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, faction, npcflag, speed_walk, speed_run, scale, rank, unit_class, unit_flags, type, type_flags, RegenHealth, flags_extra, AiName) VALUES -(@ENTRY, @MODEL, @NAME, @SUBNAME, "Directions", @GOSSIP_MENU, 71, 71, 35, 3, 1, 1.14286, 1.25, 1, 1, 2, 7, 138936390, 1, 2, "SmartAI"); - --- Teleporter aura -INSERT INTO creature_template_addon (entry, mount, bytes1, bytes2, emote, path_id, auras) VALUES (@ENTRY, 0, 0, 0, 0, 0, @AURA); - --- Gossip header text link to menus -INSERT INTO gossip_menu (entry, text_id) VALUES -(@GOSSIP_MENU+4, @TEXT_ID+3), -(@GOSSIP_MENU+3, @TEXT_ID+2), -(@GOSSIP_MENU+2, @TEXT_ID+2), -(@GOSSIP_MENU+1, @TEXT_ID+2), -(@GOSSIP_MENU+8, @TEXT_ID+4), -(@GOSSIP_MENU+9, @TEXT_ID+5), -(@GOSSIP_MENU+7, @TEXT_ID+4), -(@GOSSIP_MENU+6, @TEXT_ID+4), -(@GOSSIP_MENU+5, @TEXT_ID+4), -(@GOSSIP_MENU, @TEXT_ID+1), -(@GOSSIP_MENU, @TEXT_ID); - --- Gossip header texts -INSERT INTO npc_text (ID, text0_0, text0_1) VALUES -(@TEXT_ID+5, "$BWhich Moo Portal would you like to take?$B", 0), -(@TEXT_ID+4, "$BWhere would you like to be ported?$B", 0), -(@TEXT_ID+3, "$BBe careful with choosing raids, I won't be there if you wipe!$B", 0), -(@TEXT_ID+2, "$BUp for some dungeon exploring?$B", 0), -(@TEXT_ID+1, "$B For The Alliance!$B", 6), -(@TEXT_ID, "$B For the Horde!$B", 6); - --- Conditions for gossip option and menu factions -INSERT INTO conditions (SourceTypeOrReferenceId, SourceGroup, SourceEntry, ConditionTypeOrReference, ConditionValue1, Comment) VALUES -(15, @GOSSIP_MENU, 1, 6, 469, "Stormwind"), --- (15, @GOSSIP_MENU+5, 2, 6, 469, "Dun Morogh"), --- (15, @GOSSIP_MENU+5, 3, 6, 67, "Tirisfal Glades"), --- (15, @GOSSIP_MENU+5, 4, 6, 67, "Ghostlands"), --- (15, @GOSSIP_MENU+5, 5, 6, 469, "Loch modan"), --- (15, @GOSSIP_MENU+5, 6, 6, 67, "Silverpine Forest"), --- (15, @GOSSIP_MENU+5, 7, 6, 469, "Westfall"), --- (15, @GOSSIP_MENU+5, 8, 6, 469, "Redridge mountains"), --- (15, @GOSSIP_MENU+5, 9, 6, 469, "Duskwood"), --- (15, @GOSSIP_MENU+5, 11, 6, 469, "Wetlands"), --- (15, @GOSSIP_MENU+6, 0, 6, 469, "Azuremyst Isle"), --- (15, @GOSSIP_MENU+6, 1, 6, 469, "Teldrassil"), --- (15, @GOSSIP_MENU+6, 2, 6, 67, "Durotar"), --- (15, @GOSSIP_MENU+6, 3, 6, 67, "Mulgore"), --- (15, @GOSSIP_MENU+6, 4, 6, 469, "Bloodmyst Isle"), --- (15, @GOSSIP_MENU+6, 5, 6, 469, "Darkshore"), --- (15, @GOSSIP_MENU+6, 6, 6, 67, "The Barrens"), --- (15, @GOSSIP_MENU+5, 1, 6, 67, "Eversong Woods"), --- (15, @GOSSIP_MENU+5, 0, 6, 469, "Elwynn Forest"), --- (15, @GOSSIP_MENU+4, 22, 6, 67, "Zul'Aman"), - (15, @GOSSIP_MENU, 2, 6, 67, "Orgrimmar"), - (15, @GOSSIP_MENU, 3, 6, 469, "Darnassus"), - (15, @GOSSIP_MENU, 4, 6, 469, "Ironforge"), - (15, @GOSSIP_MENU, 5, 6, 469, "Exodar"), - (15, @GOSSIP_MENU, 6, 6, 67, "Thunder bluff"), - (15, @GOSSIP_MENU, 7, 6, 67, "Undercity"), - (15, @GOSSIP_MENU, 8, 6, 67, "Silvermoon city"), --- (15, @GOSSIP_MENU+1, 0, 6, 469, "Gnomeregan"), --- (15, @GOSSIP_MENU+1, 1, 6, 469, "The Deadmines"), --- (15, @GOSSIP_MENU+1, 2, 6, 469, "The Stockade"), --- (15, @GOSSIP_MENU+1, 3, 6, 67, "Ragefire Chasm"), --- (15, @GOSSIP_MENU+1, 4, 6, 67, "Razorfen Downs"), --- (15, @GOSSIP_MENU+1, 5, 6, 67, "Razorfen Kraul"), --- (15, @GOSSIP_MENU+1, 6, 6, 67, "Scarlet Monastery"), --- (15, @GOSSIP_MENU+1, 7, 6, 67, "Shadowfang Keep"), --- (15, @GOSSIP_MENU+1, 8, 6, 67, "Wailing Caverns"), --- (15, @GOSSIP_MENU+6, 9, 6, 67, "Thousand Needles"), -(14, @GOSSIP_MENU, @TEXT_ID+1, 6, 469, "For the Alliance"), -(14, @GOSSIP_MENU, @TEXT_ID, 6, 67, "For the Horde"); - --- Conditions for gossip option levels -INSERT INTO conditions (SourceTypeOrReferenceId, SourceGroup, SourceEntry, ConditionTypeOrReference, ConditionValue1, ConditionValue2, ConditionValue3, Comment) VALUES -(15, @GOSSIP_MENU+8, 9, 27, 77, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 8, 27, 77, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 7, 27, 77, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 6, 27, 77, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 5, 27, 76, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 4, 27, 74, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 3, 27, 73, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 2, 27, 71, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 1, 27, 68, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+8, 0, 27, 68, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+7, 6, 27, 67, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+7, 5, 27, 67, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+7, 4, 27, 65, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+7, 3, 27, 64, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+7, 2, 27, 62, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+7, 1, 27, 60, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+7, 0, 27, 58, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 18, 27, 55, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 17, 27, 55, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 16, 27, 48, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 15, 27, 48, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 14, 27, 45, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 13, 27, 40, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 12, 27, 40, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 11, 27, 35, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 10, 27, 30, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 9, 27, 25, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 8, 27, 18, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 7, 27, 15, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 6, 27, 10, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 5, 27, 10, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+6, 4, 27, 15, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 23, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 22, 27, 53, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 21, 27, 51, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 20, 27, 50, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 19, 27, 45, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 18, 27, 43, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 17, 27, 40, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 16, 27, 35, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 15, 27, 35, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 14, 27, 30, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 13, 27, 30, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 12, 27, 30, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 11, 27, 20, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 10, 27, 20, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 9, 27, 18, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 8, 27, 15, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 7, 27, 10, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 6, 27, 10, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 5, 27, 10, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+5, 4, 27, 10, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 22, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 21, 27, 57, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 19, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 18, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 17, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 16, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 15, 27, 60, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 14, 27, 67, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 13, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 12, 27, 60, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 11, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 10, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 9, 27, 60, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 8, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 7, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 6, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 5, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 4, 27, 80, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 3, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 2, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 1, 27, 60, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+4, 0, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 11, 27, 75, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 10, 27, 69, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 9, 27, 77, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 8, 27, 79, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 7, 27, 75, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 6, 27, 71, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 5, 27, 79, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 4, 27, 71, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 3, 27, 74, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 2, 27, 79, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 1, 27, 79, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+3, 0, 27, 73, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+2, 5, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+2, 4, 27, 70, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+2, 3, 27, 59, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+2, 2, 27, 62, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+2, 1, 27, 66, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+2, 0, 27, 64, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 18, 27, 35, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 17, 27, 37, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 16, 27, 47, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 15, 27, 55, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 14, 27, 55, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 13, 27, 45, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 12, 27, 55, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 11, 27, 57, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 10, 27, 53, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 9, 27, 21, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 8, 27, 17, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 7, 27, 18, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 6, 27, 32, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 5, 27, 24, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 4, 27, 34, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 3, 27, 15, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 2, 27, 22, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 1, 27, 17, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU+1, 0, 27, 25, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 20, 27, 57, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 19, 27, 69, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 18, 27, 59, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 17, 27, 15, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 16, 27, 68, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 15, 27, 58, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 12, 27, 30, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 11, 27, 30, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 10, 27, 57, 3, 0, "Portal Master - Level req"), -(15, @GOSSIP_MENU, 9, 27, 67, 3, 0, "Portal Master - Level req"); - -INSERT INTO gossip_menu_option (menu_id, id, option_icon, option_text, option_id, npc_option_npcflag, action_menu_id, action_poi_id, box_coded, box_money, box_text) VALUES - --- MAIN MENU -(@GOSSIP_MENU, 21, 9, "Extra Portals", 1, 1, @GOSSIP_MENU+9, 0, 0, 0, NULL), -(@GOSSIP_MENU, 1, 2, "Stormwind", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Stormwind?"), -(@GOSSIP_MENU, 2, 2, "Orgrimmar", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Orgrimmar?"), -(@GOSSIP_MENU, 3, 2, "Darnassus", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Darnassus?"), -(@GOSSIP_MENU, 4, 2, "Ironforge", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Ironforge?"), -(@GOSSIP_MENU, 5, 2, "Exodar", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Exodar?"), -(@GOSSIP_MENU, 6, 2, "Thunder bluff", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Thunder bluff?"), -(@GOSSIP_MENU, 7, 2, "Undercity", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Undercity?"), -(@GOSSIP_MENU, 8, 2, "Silvermoon city", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Silvermoon city?"), -(@GOSSIP_MENU, 9, 2, "Dalaran", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Dalaran?"), -(@GOSSIP_MENU, 10, 2, "Shattrath", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Shattrath?"), -(@GOSSIP_MENU, 11, 2, "Booty bay", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Booty bay?"), -(@GOSSIP_MENU, 12, 2, "Gurubashi arena", 1, 1, @GOSSIP_MENU, 0, 0, 0, "Are you sure, that you want to go to Arena?"), -(@GOSSIP_MENU, 13, 3, "Eastern Kingdoms", 1, 1, @GOSSIP_MENU+5, 0, 0, 0, NULL), -(@GOSSIP_MENU, 14, 3, "Kalimdor", 1, 1, @GOSSIP_MENU+6, 0, 0, 0, NULL), -(@GOSSIP_MENU, 15, 3, "Outland", 1, 1, @GOSSIP_MENU+7, 0, 0, 0, NULL), -(@GOSSIP_MENU, 16, 3, "Northrend", 1, 1, @GOSSIP_MENU+8, 0, 0, 0, NULL), -(@GOSSIP_MENU, 17, 9, "Classic Dungeons", 1, 1, @GOSSIP_MENU+1, 0, 0, 0, NULL), -(@GOSSIP_MENU, 18, 9, "BC Dungeons", 1, 1, @GOSSIP_MENU+2, 0, 0, 0, NULL), -(@GOSSIP_MENU, 19, 9, "Wrath Dungeons", 1, 1, @GOSSIP_MENU+3, 0, 0, 0, NULL), -(@GOSSIP_MENU, 20, 9, "Raid Teleports", 1, 1, @GOSSIP_MENU+4, 0, 0, 0, NULL), - - - --- CLASSIC DUNGEONS -(@GOSSIP_MENU+1, 0, 2, "Gnomeregan", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Gnomeregan?"), -(@GOSSIP_MENU+1, 1, 2, "The Deadmines", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Deadmines?"), -(@GOSSIP_MENU+1, 2, 2, "The Stockade", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Stockade?"), -(@GOSSIP_MENU+1, 3, 2, "Ragefire Chasm", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Ragefire Chasm?"), -(@GOSSIP_MENU+1, 4, 2, "Razorfen Downs", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Razorfen Downs?"), -(@GOSSIP_MENU+1, 5, 2, "Razorfen Kraul", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Razorfen Kraul?"), -(@GOSSIP_MENU+1, 6, 2, "Scarlet Monastery", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Scarlet Monastery?"), -(@GOSSIP_MENU+1, 7, 2, "Shadowfang Keep", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Shadowfang Keep?"), -(@GOSSIP_MENU+1, 8, 2, "Wailing Caverns", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Wailing Caverns?"), -(@GOSSIP_MENU+1, 9, 2, "Blackfathom Deeps", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Blackfathom Deeps?"), -(@GOSSIP_MENU+1, 10, 2, "Blackrock Depths", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Blackrock Depths?"), -(@GOSSIP_MENU+1, 11, 2, "Blackrock Spire", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Blackrock Spire?"), -(@GOSSIP_MENU+1, 12, 2, "Dire Maul", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Dire Maul?"), -(@GOSSIP_MENU+1, 13, 2, "Maraudon", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Maraudon?"), -(@GOSSIP_MENU+1, 14, 2, "Scholomance", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Scholomance?"), -(@GOSSIP_MENU+1, 15, 2, "Stratholme", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Stratholme?"), -(@GOSSIP_MENU+1, 16, 2, "Sunken Temple", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Sunken Temple?"), -(@GOSSIP_MENU+1, 17, 2, "Uldaman", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Uldaman?"), -(@GOSSIP_MENU+1, 18, 2, "Zul'Farrak", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Zul'Farrak?"), -(@GOSSIP_MENU+1, 19, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- BC DUNGEONS -(@GOSSIP_MENU+2, 0, 2, "Auchindoun", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Auchindoun?"), -(@GOSSIP_MENU+2, 1, 2, "Caverns of Time", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Caverns of Time?"), -(@GOSSIP_MENU+2, 2, 2, "Coilfang Reservoir", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Coilfang Reservoir?"), -(@GOSSIP_MENU+2, 3, 2, "Hellfire Citadel", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Hellfire Citadel?"), -(@GOSSIP_MENU+2, 4, 2, "Magisters' Terrace", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Magisters' Terrace?"), -(@GOSSIP_MENU+2, 5, 2, "Tempest Keep", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Tempest Keep?"), -(@GOSSIP_MENU+2, 6, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- WRATH DUNGEONS -(@GOSSIP_MENU+3, 0, 2, "Azjol-Nerub", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Azjol-Nerub?"), -(@GOSSIP_MENU+3, 1, 2, "The Culling of Stratholme", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Culling of Stratholme?"), -(@GOSSIP_MENU+3, 2, 2, "Trial of the Champion", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Trial of the Champion?"), -(@GOSSIP_MENU+3, 3, 2, "Drak'Tharon Keep", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Drak'Tharon Keep?"), -(@GOSSIP_MENU+3, 4, 2, "Gundrak", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Gundrak?"), -(@GOSSIP_MENU+3, 5, 2, "Icecrown Citadel Dungeons", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Icecrown Citadel Dungeons?"), -(@GOSSIP_MENU+3, 6, 2, "The Nexus Dungeons", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Nexus Dungeons?"), -(@GOSSIP_MENU+3, 7, 2, "The Violet Hold", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Violet Hold?"), -(@GOSSIP_MENU+3, 8, 2, "Halls of Lightning", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Halls of Lightning?"), -(@GOSSIP_MENU+3, 9, 2, "Halls of Stone", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Halls of Stone?"), -(@GOSSIP_MENU+3, 10, 2, "Utgarde Keep", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Utgarde Keep?"), -(@GOSSIP_MENU+3, 11, 2, "Utgarde Pinnacle", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Utgarde Pinnacle?"), -(@GOSSIP_MENU+3, 12, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- RAIDS -(@GOSSIP_MENU+4, 0, 2, "Black Temple", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Black Temple?"), -(@GOSSIP_MENU+4, 1, 2, "Blackwing Lair", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Blackwing Lair?"), -(@GOSSIP_MENU+4, 2, 2, "Hyjal Summit", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Hyjal Summit?"), -(@GOSSIP_MENU+4, 3, 2, "Serpentshrine Cavern", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Serpentshrine Cavern?"), -(@GOSSIP_MENU+4, 4, 2, "Trial of the Crusader", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Trial of the Crusader?"), -(@GOSSIP_MENU+4, 5, 2, "Gruul's Lair", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Gruul's Lair?"), -(@GOSSIP_MENU+4, 6, 2, "Magtheridon's Lair", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Magtheridon's Lair?"), -(@GOSSIP_MENU+4, 7, 2, "Icecrown Citadel", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Icecrown Citadel?"), -(@GOSSIP_MENU+4, 8, 2, "Karazhan", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Karazhan?"), -(@GOSSIP_MENU+4, 9, 2, "Molten Core", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Molten Core?"), -(@GOSSIP_MENU+4, 10, 2, "Naxxramas", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Naxxramas?"), -(@GOSSIP_MENU+4, 11, 2, "Onyxia's Lair", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Onyxia's Lair?"), -(@GOSSIP_MENU+4, 12, 2, "Ruins of Ahn'Qiraj", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Ruins of Ahn'Qiraj?"), -(@GOSSIP_MENU+4, 13, 2, "Sunwell Plateau", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Sunwell Plateau?"), -(@GOSSIP_MENU+4, 14, 2, "The Eye", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Eye?"), -(@GOSSIP_MENU+4, 15, 2, "Temple of Ahn'Qiraj", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Temple of Ahn'Qiraj?"), -(@GOSSIP_MENU+4, 16, 2, "The Eye of Eternity", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Eye of Eternity?"), -(@GOSSIP_MENU+4, 17, 2, "The Obsidian Sanctum", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Obsidian Sanctum?"), -(@GOSSIP_MENU+4, 18, 2, "Ulduar", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Ulduar?"), -(@GOSSIP_MENU+4, 19, 2, "Vault of Archavon", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Vault of Archavon?"), -(@GOSSIP_MENU+4, 21, 2, "Zul'Gurub", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Zul'Gurub?"), -(@GOSSIP_MENU+4, 22, 2, "Zul'Aman", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Zul'Aman?"), -(@GOSSIP_MENU+4, 23, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- EASTERN KINGDOMS -(@GOSSIP_MENU+5, 0, 2, "Elwynn Forest", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Elwynn Forest?"), -(@GOSSIP_MENU+5, 1, 2, "Eversong Woods", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Eversong Woods?"), -(@GOSSIP_MENU+5, 2, 2, "Dun Morogh", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Dun Morogh?"), -(@GOSSIP_MENU+5, 3, 2, "Tirisfal Glades", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Tirisfal Glades?"), -(@GOSSIP_MENU+5, 4, 2, "Ghostlands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Ghostlands?"), -(@GOSSIP_MENU+5, 5, 2, "Loch modan", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Loch modan?"), -(@GOSSIP_MENU+5, 6, 2, "Silverpine Forest", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Silverpine Forest?"), -(@GOSSIP_MENU+5, 7, 2, "Westfall", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Westfall?"), -(@GOSSIP_MENU+5, 8, 2, "Redridge mountains", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Redridge mountains?"), -(@GOSSIP_MENU+5, 9, 2, "Duskwood", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Duskwood?"), -(@GOSSIP_MENU+5, 10, 2, "Hillsbrad Foothills", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Hillsbrad Foothills?"), -(@GOSSIP_MENU+5, 11, 2, "Wetlands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Wetlands?"), -(@GOSSIP_MENU+5, 12, 2, "Alterac Mountains", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Alterac Mountains?"), -(@GOSSIP_MENU+5, 13, 2, "Arathi Highlands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Arathi Highlands?"), -(@GOSSIP_MENU+5, 14, 2, "Stranglethorn Vale", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Stranglethorn Vale?"), -(@GOSSIP_MENU+5, 15, 2, "Badlands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Badlands?"), -(@GOSSIP_MENU+5, 16, 2, "Swamp of Sorrows", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Swamp of Sorrows?"), -(@GOSSIP_MENU+5, 17, 2, "The Hinterlands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Hinterlands?"), -(@GOSSIP_MENU+5, 18, 2, "Searing Gorge", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Searing Gorge?"), -(@GOSSIP_MENU+5, 19, 2, "The Blasted Lands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Blasted Lands?"), -(@GOSSIP_MENU+5, 20, 2, "Burning Steppes", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Burning Steppes?"), -(@GOSSIP_MENU+5, 21, 2, "Western Plaguelands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Western Plaguelands?"), -(@GOSSIP_MENU+5, 22, 2, "Eastern Plaguelands", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Eastern Plaguelands?"), -(@GOSSIP_MENU+5, 23, 2, "Isle of Quel'Danas", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Isle of Quel'Danas?"), -(@GOSSIP_MENU+5, 24, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- KALIMDOR -(@GOSSIP_MENU+6, 0, 2, "Azuremyst Isle", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Azuremyst Isle?"), -(@GOSSIP_MENU+6, 1, 2, "Teldrassil", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Teldrassil?"), -(@GOSSIP_MENU+6, 2, 2, "Durotar", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Durotar?"), -(@GOSSIP_MENU+6, 3, 2, "Mulgore", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Mulgore?"), -(@GOSSIP_MENU+6, 4, 2, "Bloodmyst Isle", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Bloodmyst Isle?"), -(@GOSSIP_MENU+6, 5, 2, "Darkshore", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Darkshore?"), -(@GOSSIP_MENU+6, 6, 2, "The Barrens", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to The Barrens?"), -(@GOSSIP_MENU+6, 7, 2, "Stonetalon Mountains", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Stonetalon Mountains?"), -(@GOSSIP_MENU+6, 8, 2, "Ashenvale Forest", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Ashenvale Forest?"), -(@GOSSIP_MENU+6, 9, 2, "Thousand Needles", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Thousand Needles?"), -(@GOSSIP_MENU+6, 10, 2, "Desolace", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Desolace?"), -(@GOSSIP_MENU+6, 11, 2, "Dustwallow Marsh", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Dustwallow Marsh?"), -(@GOSSIP_MENU+6, 12, 2, "Feralas", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Feralas?"), -(@GOSSIP_MENU+6, 13, 2, "Tanaris Desert", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Tanaris Desert?"), -(@GOSSIP_MENU+6, 14, 2, "Azshara", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Azshara?"), -(@GOSSIP_MENU+6, 15, 2, "Felwood", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Felwood?"), -(@GOSSIP_MENU+6, 16, 2, "Un'Goro Crater", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Un'Goro Crater?"), -(@GOSSIP_MENU+6, 17, 2, "Silithus", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Silithus?"), -(@GOSSIP_MENU+6, 18, 2, "Winterspring", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Winterspring?"), -(@GOSSIP_MENU+6, 19, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- OUTLAND -(@GOSSIP_MENU+7, 0, 2, "Hellfire Peninsula", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Hellfire Peninsula?"), -(@GOSSIP_MENU+7, 1, 2, "Zangarmarsh", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Zangarmarsh?"), -(@GOSSIP_MENU+7, 2, 2, "Terokkar Forest", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Terokkar Forest?"), -(@GOSSIP_MENU+7, 3, 2, "Nagrand", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Nagrand?"), -(@GOSSIP_MENU+7, 4, 2, "Blade's Edge Mountains", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Blade's Edge Mountains?"), -(@GOSSIP_MENU+7, 5, 2, "Netherstorm", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Netherstorm?"), -(@GOSSIP_MENU+7, 6, 2, "Shadowmoon Valley", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Shadowmoon Valley?"), -(@GOSSIP_MENU+7, 7, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- NORTHREND -(@GOSSIP_MENU+8, 0, 2, "Borean Tundra", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Borean Tundra?"), -(@GOSSIP_MENU+8, 1, 2, "Howling Fjord", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Howling Fjord?"), -(@GOSSIP_MENU+8, 2, 2, "Dragonblight", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Dragonblight?"), -(@GOSSIP_MENU+8, 3, 2, "Grizzly Hills", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Grizzly Hills?"), -(@GOSSIP_MENU+8, 4, 2, "Zul'Drak", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Zul'Drak?"), -(@GOSSIP_MENU+8, 5, 2, "Sholazar Basin", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Sholazar Basin?"), -(@GOSSIP_MENU+8, 6, 2, "Crystalsong Forest", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Crystalsong Forest?"), -(@GOSSIP_MENU+8, 7, 2, "Storm Peaks", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Storm Peaks?"), -(@GOSSIP_MENU+8, 8, 2, "Icecrown", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Icecrown?"), -(@GOSSIP_MENU+8, 9, 2, "Wintergrasp", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Wintergrasp?"), -(@GOSSIP_MENU+8, 10, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL), - --- MOO -(@GOSSIP_MENU+9, 0, 2, "Sunrock Retreat", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Sunrock Retreat?"), -(@GOSSIP_MENU+9, 1, 2, "Silithus Camp", 1, 1, 0, 0, 0, 0, "Are you sure, that you want to go to Silithus Camp?"), -(@GOSSIP_MENU+9, 2, 7, "Back..", 1, 1, @GOSSIP_MENU, 0, 0, 0, NULL); - --- Teleport scripts: -INSERT INTO smart_scripts (entryorguid, source_type, id, link, event_type, event_phase_mask, event_chance, event_flags, event_param1, event_param2, event_param3, event_param4, action_type, action_param1, action_param2, action_param3, action_param4, action_param5, action_param6, target_type, target_param1, target_param2, target_param3, target_x, target_y, target_z, target_o, comment) VALUES -(@ENTRY, 0, 1, 0, 62, 0, 100, 0, @GOSSIP_MENU, 1, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -8842.09, 626.358, 94.0867, 3.61363, "Teleporter script"), -(@ENTRY, 0, 2, 0, 62, 0, 100, 0, @GOSSIP_MENU, 2, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1601.08, -4378.69, 9.9846, 2.14362, "Teleporter script"), -(@ENTRY, 0, 3, 0, 62, 0, 100, 0, @GOSSIP_MENU, 11, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -14281.9, 552.564, 8.90422, 0.860144, "Teleporter script"), -(@ENTRY, 0, 4, 0, 62, 0, 100, 0, @GOSSIP_MENU, 10, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -1887.62, 5359.09, -12.4279, 4.40435, "Teleporter script"), -(@ENTRY, 0, 5, 0, 62, 0, 100, 0, @GOSSIP_MENU, 9, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5809.55, 503.975, 657.526, 2.38338, "Teleporter script"), -(@ENTRY, 0, 6, 0, 62, 0, 100, 0, @GOSSIP_MENU, 12, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -13181.8, 339.356, 42.9805, 1.18013, "Teleporter script"), -(@ENTRY, 0, 7, 0, 62, 0, 100, 0, @GOSSIP_MENU, 3, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 9869.91, 2493.58, 1315.88, 2.78897, "Teleporter script"), -(@ENTRY, 0, 8, 0, 62, 0, 100, 0, @GOSSIP_MENU, 4, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -4900.47, -962.585, 501.455, 5.40538, "Teleporter script"), -(@ENTRY, 0, 9, 0, 62, 0, 100, 0, @GOSSIP_MENU, 5, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -3864.92, -11643.7, -137.644, 5.50862, "Teleporter script"), -(@ENTRY, 0, 10, 0, 62, 0, 100, 0, @GOSSIP_MENU, 6, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -1274.45, 71.8601, 128.159, 2.80623, "Teleporter script"), -(@ENTRY, 0, 11, 0, 62, 0, 100, 0, @GOSSIP_MENU, 7, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1633.75, 240.167, -43.1034, 6.26128, "Teleporter script"), -(@ENTRY, 0, 12, 0, 62, 0, 100, 0, @GOSSIP_MENU, 8, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 9738.28, -7454.19, 13.5605, 0.043914, "Teleporter script"), -(@ENTRY, 0, 13, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -5163.54, 925.423, 257.181, 1.57423, "Teleporter script"), -(@ENTRY, 0, 14, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 1, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -11209.6, 1666.54, 24.6974, 1.42053, "Teleporter script"), -(@ENTRY, 0, 15, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 2, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -8799.15, 832.718, 97.6348, 6.04085, "Teleporter script"), -(@ENTRY, 0, 16, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 3, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1811.78, -4410.5, -18.4704, 5.20165, "Teleporter script"), -(@ENTRY, 0, 17, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 4, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -4657.3, -2519.35, 81.0529, 4.54808, "Teleporter script"), -(@ENTRY, 0, 18, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 5, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -4470.28, -1677.77, 81.3925, 1.16302, "Teleporter script"), -(@ENTRY, 0, 19, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 6, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 2873.15, -764.523, 160.332, 5.10447, "Teleporter script"), -(@ENTRY, 0, 20, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 7, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -234.675, 1561.63, 76.8921, 1.24031, "Teleporter script"), -(@ENTRY, 0, 21, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 8, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -731.607, -2218.39, 17.0281, 2.78486, "Teleporter script"), -(@ENTRY, 0, 22, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 9, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 4249.99, 740.102, -25.671, 1.34062, "Teleporter script"), -(@ENTRY, 0, 23, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 10, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -7179.34, -921.212, 165.821, 5.09599, "Teleporter script"), -(@ENTRY, 0, 24, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 11, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -7527.05, -1226.77, 285.732, 5.29626, "Teleporter script"), -(@ENTRY, 0, 25, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 12, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -3520.14, 1119.38, 161.025, 4.70454, "Teleporter script"), -(@ENTRY, 0, 26, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 13, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -1421.42, 2907.83, 137.415, 1.70718, "Teleporter script"), -(@ENTRY, 0, 27, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 14, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1269.64, -2556.21, 93.6088, 0.620623, "Teleporter script"), -(@ENTRY, 0, 28, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 15, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3352.92, -3379.03, 144.782, 6.25978, "Teleporter script"), -(@ENTRY, 0, 29, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 16, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -10177.9, -3994.9, -111.239, 6.01885, "Teleporter script"), -(@ENTRY, 0, 30, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 17, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -6071.37, -2955.16, 209.782, 0.015708, "Teleporter script"), -(@ENTRY, 0, 31, 0, 62, 0, 100, 0, @GOSSIP_MENU+1, 18, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -6801.19, -2893.02, 9.00388, 0.158639, "Teleporter script"), -(@ENTRY, 0, 32, 0, 62, 0, 100, 0, @GOSSIP_MENU+2, 0, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -3324.49, 4943.45, -101.239, 4.63901, "Teleporter script"), -(@ENTRY, 0, 33, 0, 62, 0, 100, 0, @GOSSIP_MENU+2, 1, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -8369.65, -4253.11, -204.272, -2.70526, "Teleporter script"), -(@ENTRY, 0, 34, 0, 62, 0, 100, 0, @GOSSIP_MENU+2, 2, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 738.865, 6865.77, -69.4659, 6.27655, "Teleporter script"), -(@ENTRY, 0, 35, 0, 62, 0, 100, 0, @GOSSIP_MENU+2, 3, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -347.29, 3089.82, 21.394, 5.68114, "Teleporter script"), -(@ENTRY, 0, 36, 0, 62, 0, 100, 0, @GOSSIP_MENU+2, 4, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 12884.6, -7317.69, 65.5023, 4.799, "Teleporter script"), -(@ENTRY, 0, 37, 0, 62, 0, 100, 0, @GOSSIP_MENU+2, 5, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3100.48, 1536.49, 190.3, 4.62226, "Teleporter script"), -(@ENTRY, 0, 38, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 0, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3707.86, 2150.23, 36.76, 3.22, "Teleporter script"), -(@ENTRY, 0, 39, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 1, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -8756.39, -4440.68, -199.489, 4.66289, "Teleporter script"), -(@ENTRY, 0, 40, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 2, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 8590.95, 791.792, 558.235, 3.13127, "Teleporter script"), -(@ENTRY, 0, 41, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 3, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 4765.59, -2038.24, 229.363, 0.887627, "Teleporter script"), -(@ENTRY, 0, 42, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 4, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 6722.44, -4640.67, 450.632, 3.91123, "Teleporter script"), -(@ENTRY, 0, 43, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 5, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5643.16, 2028.81, 798.274, 4.60242, "Teleporter script"), -(@ENTRY, 0, 44, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 6, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3782.89, 6965.23, 105.088, 6.14194, "Teleporter script"), -(@ENTRY, 0, 45, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 7, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5693.08, 502.588, 652.672, 4.0229, "Teleporter script"), -(@ENTRY, 0, 46, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 8, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 9136.52, -1311.81, 1066.29, 5.19113, "Teleporter script"), -(@ENTRY, 0, 47, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 9, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 8922.12, -1009.16, 1039.56, 1.57044, "Teleporter script"), -(@ENTRY, 0, 48, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 10, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1203.41, -4868.59, 41.2486, 0.283237, "Teleporter script"), -(@ENTRY, 0, 49, 0, 62, 0, 100, 0, @GOSSIP_MENU+3, 11, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1267.24, -4857.3, 215.764, 3.22768, "Teleporter script"), -(@ENTRY, 0, 50, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 0, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -3649.92, 317.469, 35.2827, 2.94285, "Teleporter script"), -(@ENTRY, 0, 51, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 1, 0, 0, 62, 229, 0, 0, 0, 0, 0, 7, 0, 0, 0, 152.451, -474.881, 116.84, 0.001073, "Teleporter script"), -(@ENTRY, 0, 52, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 2, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -8177.89, -4181.23, -167.552, 0.913338, "Teleporter script"), -(@ENTRY, 0, 53, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 3, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 797.855, 6865.77, -65.4165, 0.005938, "Teleporter script"), -(@ENTRY, 0, 54, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 4, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 8515.61, 714.153, 558.248, 1.57753, "Teleporter script"), -(@ENTRY, 0, 55, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 5, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3530.06, 5104.08, 3.50861, 5.51117, "Teleporter script"), -(@ENTRY, 0, 56, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 6, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -336.411, 3130.46, -102.928, 5.20322, "Teleporter script"), -(@ENTRY, 0, 57, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 7, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5855.22, 2102.03, 635.991, 3.57899, "Teleporter script"), -(@ENTRY, 0, 58, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 8, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -11118.9, -2010.33, 47.0819, 0.649895, "Teleporter script"), -(@ENTRY, 0, 59, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 9, 0, 0, 62, 230, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1126.64, -459.94, -102.535, 3.46095, "Teleporter script"), -(@ENTRY, 0, 60, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 10, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3668.72, -1262.46, 243.622, 4.785, "Teleporter script"), -(@ENTRY, 0, 61, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 11, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -4708.27, -3727.64, 54.5589, 3.72786, "Teleporter script"), -(@ENTRY, 0, 62, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 12, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -8409.82, 1499.06, 27.7179, 2.51868, "Teleporter script"), -(@ENTRY, 0, 63, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 13, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 12574.1, -6774.81, 15.0904, 3.13788, "Teleporter script"), -(@ENTRY, 0, 64, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 14, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3088.49, 1381.57, 184.863, 4.61973, "Teleporter script"), -(@ENTRY, 0, 65, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 15, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -8240.09, 1991.32, 129.072, 0.941603, "Teleporter script"), -(@ENTRY, 0, 66, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 16, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3784.17, 7028.84, 161.258, 5.79993, "Teleporter script"), -(@ENTRY, 0, 67, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 17, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3472.43, 264.923, -120.146, 3.27923, "Teleporter script"), -(@ENTRY, 0, 68, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 18, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 9222.88, -1113.59, 1216.12, 6.27549, "Teleporter script"), -(@ENTRY, 0, 69, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 19, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5453.72, 2840.79, 421.28, 0, "Teleporter script"), -(@ENTRY, 0, 70, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 21, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -11916.7, -1215.72, 92.289, 4.72454, "Teleporter script"), -(@ENTRY, 0, 71, 0, 62, 0, 100, 0, @GOSSIP_MENU+4, 22, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 6851.78, -7972.57, 179.242, 4.64691, "Teleporter script"), -(@ENTRY, 0, 72, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -9449.06, 64.8392, 56.3581, 3.07047, "Teleporter script"), -(@ENTRY, 0, 73, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 1, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 9024.37, -6682.55, 16.8973, 3.14131, "Teleporter script"), -(@ENTRY, 0, 74, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 2, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -5603.76, -482.704, 396.98, 5.23499, "Teleporter script"), -(@ENTRY, 0, 75, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 3, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 2274.95, 323.918, 34.1137, 4.24367, "Teleporter script"), -(@ENTRY, 0, 76, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 4, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 7595.73, -6819.6, 84.3718, 2.56561, "Teleporter script"), -(@ENTRY, 0, 77, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 5, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -5405.85, -2894.15, 341.972, 5.48238, "Teleporter script"), -(@ENTRY, 0, 78, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 6, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 505.126, 1504.63, 124.808, 1.77987, "Teleporter script"), -(@ENTRY, 0, 79, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 7, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -10684.9, 1033.63, 32.5389, 6.07384, "Teleporter script"), -(@ENTRY, 0, 80, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 8, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -9447.8, -2270.85, 71.8224, 0.283853, "Teleporter script"), -(@ENTRY, 0, 81, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 9, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -10531.7, -1281.91, 38.8647, 1.56959, "Teleporter script"), -(@ENTRY, 0, 82, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 10, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -385.805, -787.954, 54.6655, 1.03926, "Teleporter script"), -(@ENTRY, 0, 83, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 11, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -3517.75, -913.401, 8.86625, 2.60705, "Teleporter script"), -(@ENTRY, 0, 84, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 12, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 275.049, -652.044, 130.296, 0.502032, "Teleporter script"), -(@ENTRY, 0, 85, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 13, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -1581.45, -2704.06, 35.4168, 0.490373, "Teleporter script"), -(@ENTRY, 0, 86, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 14, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -11921.7, -59.544, 39.7262, 3.73574, "Teleporter script"), -(@ENTRY, 0, 87, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 15, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -6782.56, -3128.14, 240.48, 5.65912, "Teleporter script"), -(@ENTRY, 0, 88, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 16, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -10368.6, -2731.3, 21.6537, 5.29238, "Teleporter script"), -(@ENTRY, 0, 89, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 17, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 112.406, -3929.74, 136.358, 0.981903, "Teleporter script"), -(@ENTRY, 0, 90, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 18, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -6686.33, -1198.55, 240.027, 0.916887, "Teleporter script"), -(@ENTRY, 0, 91, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 19, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -11184.7, -3019.31, 7.29238, 3.20542, "Teleporter script"), -(@ENTRY, 0, 92, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 20, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, -7979.78, -2105.72, 127.919, 5.10148, "Teleporter script"), -(@ENTRY, 0, 93, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 21, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1743.69, -1723.86, 59.6648, 5.23722, "Teleporter script"), -(@ENTRY, 0, 94, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 22, 0, 0, 62, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 2280.64, -5275.05, 82.0166, 4.7479, "Teleporter script"), -(@ENTRY, 0, 95, 0, 62, 0, 100, 0, @GOSSIP_MENU+5, 23, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 12806.5, -6911.11, 41.1156, 2.22935, "Teleporter script"), -(@ENTRY, 0, 96, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 0, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -4192.62, -12576.7, 36.7598, 1.62813, "Teleporter script"), -(@ENTRY, 0, 97, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 1, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 9889.03, 915.869, 1307.43, 1.9336, "Teleporter script"), -(@ENTRY, 0, 98, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 2, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 228.978, -4741.87, 10.1027, 0.416883, "Teleporter script"), -(@ENTRY, 0, 99, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 3, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -2473.87, -501.225, -9.42465, 0.6525, "Teleporter script"), -(@ENTRY, 0, 100, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 4, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -2095.7, -11841.1, 51.1557, 6.19288, "Teleporter script"), -(@ENTRY, 0, 101, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 5, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 6463.25, 683.986, 8.92792, 4.33534, "Teleporter script"), -(@ENTRY, 0, 102, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 6, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -575.772, -2652.45, 95.6384, 0.006469, "Teleporter script"), -(@ENTRY, 0, 103, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 7, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1574.89, 1031.57, 137.442, 3.8013, "Teleporter script"), -(@ENTRY, 0, 104, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 8, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 1919.77, -2169.68, 94.6729, 6.14177, "Teleporter script"), -(@ENTRY, 0, 105, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 9, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -5375.53, -2509.2, -40.432, 2.41885, "Teleporter script"), -(@ENTRY, 0, 106, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 10, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -656.056, 1510.12, 88.3746, 3.29553, "Teleporter script"), -(@ENTRY, 0, 107, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 11, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -3350.12, -3064.85, 33.0364, 5.12666, "Teleporter script"), -(@ENTRY, 0, 108, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 12, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -4808.31, 1040.51, 103.769, 2.90655, "Teleporter script"), -(@ENTRY, 0, 109, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 13, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -6940.91, -3725.7, 48.9381, 3.11174, "Teleporter script"), -(@ENTRY, 0, 110, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 14, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3117.12, -4387.97, 91.9059, 5.49897, "Teleporter script"), -(@ENTRY, 0, 111, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 15, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3898.8, -1283.33, 220.519, 6.24307, "Teleporter script"), -(@ENTRY, 0, 112, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 16, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -6291.55, -1158.62, -258.138, 0.457099, "Teleporter script"), -(@ENTRY, 0, 113, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 17, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -6815.25, 730.015, 40.9483, 2.39066, "Teleporter script"), -(@ENTRY, 0, 114, 0, 62, 0, 100, 0, @GOSSIP_MENU+6, 18, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 6658.57, -4553.48, 718.019, 5.18088, "Teleporter script"), -(@ENTRY, 0, 115, 0, 62, 0, 100, 0, @GOSSIP_MENU+7, 0, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -207.335, 2035.92, 96.464, 1.59676, "Teleporter script"), -(@ENTRY, 0, 116, 0, 62, 0, 100, 0, @GOSSIP_MENU+7, 1, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -220.297, 5378.58, 23.3223, 1.61718, "Teleporter script"), -(@ENTRY, 0, 117, 0, 62, 0, 100, 0, @GOSSIP_MENU+7, 2, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -2266.23, 4244.73, 1.47728, 3.68426, "Teleporter script"), -(@ENTRY, 0, 118, 0, 62, 0, 100, 0, @GOSSIP_MENU+7, 3, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -1610.85, 7733.62, -17.2773, 1.33522, "Teleporter script"), -(@ENTRY, 0, 119, 0, 62, 0, 100, 0, @GOSSIP_MENU+7, 4, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 2029.75, 6232.07, 133.495, 1.30395, "Teleporter script"), -(@ENTRY, 0, 120, 0, 62, 0, 100, 0, @GOSSIP_MENU+7, 5, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, 3271.2, 3811.61, 143.153, 3.44101, "Teleporter script"), -(@ENTRY, 0, 121, 0, 62, 0, 100, 0, @GOSSIP_MENU+7, 6, 0, 0, 62, 530, 0, 0, 0, 0, 0, 7, 0, 0, 0, -3681.01, 2350.76, 76.587, 4.25995, "Teleporter script"), -(@ENTRY, 0, 122, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 0, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 2954.24, 5379.13, 60.4538, 2.55544, "Teleporter script"), -(@ENTRY, 0, 123, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 1, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 682.848, -3978.3, 230.161, 1.54207, "Teleporter script"), -(@ENTRY, 0, 124, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 2, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 2678.17, 891.826, 4.37494, 0.101121, "Teleporter script"), -(@ENTRY, 0, 125, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 3, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 4017.35, -3403.85, 290, 5.35431, "Teleporter script"), -(@ENTRY, 0, 126, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 4, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5560.23, -3211.66, 371.709, 5.55055, "Teleporter script"), -(@ENTRY, 0, 127, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 5, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5614.67, 5818.86, -69.722, 3.60807, "Teleporter script"), -(@ENTRY, 0, 128, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 6, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 5411.17, -966.37, 167.082, 1.57167, "Teleporter script"), -(@ENTRY, 0, 129, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 7, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 6120.46, -1013.89, 408.39, 5.12322, "Teleporter script"), -(@ENTRY, 0, 130, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 8, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 8323.28, 2763.5, 655.093, 2.87223, "Teleporter script"), -(@ENTRY, 0, 131, 0, 62, 0, 100, 0, @GOSSIP_MENU+8, 9, 0, 0, 62, 571, 0, 0, 0, 0, 0, 7, 0, 0, 0, 4522.23, 2828.01, 389.975, 0.215009, "Teleporter script"), - --- MOO -(@ENTRY, 0, 132, 0, 62, 0, 100, 0, @GOSSIP_MENU+9, 0, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, 966.147, 926.499, 104.649, 1.27231, "Teleporter script"), -(@ENTRY, 0, 133, 0, 62, 0, 100, 0, @GOSSIP_MENU+9, 1, 0, 0, 62, 1, 0, 0, 0, 0, 0, 7, 0, 0, 0, -10806.2,2448.78, 2.12592, 5.56451, "Teleporter script"); - --- Teleporter spawns: -ALTER TABLE creature AUTO_INCREMENT = 200000; -INSERT INTO creature (id, map, spawnMask, phaseMask, modelid, position_x, position_y, position_z, orientation, spawntimesecs, spawndist, curhealth, curmana) VALUES -(@ENTRY, 0, 1, 1, 0, -13180.5, 342.503, 43.1936, 4.32977, 25, 0, 13700, 6540), -(@ENTRY, 530, 1, 1, 0, -3862.69, -11645.8, -137.629, 2.38273, 25, 0, 13700, 6540), -(@ENTRY, 0, 1, 1, 0, -4898.37, -965.118, 501.447, 2.25986, 25, 0, 13700, 6540), -(@ENTRY, 0, 1, 1, 0, -8845.09, 624.828, 94.2999, 0.44062, 25, 0, 13700, 6540), -(@ENTRY, 1, 1, 1, 0, 1599.25, -4375.85, 10.0872, 5.23641, 25, 0, 13700, 6540), -(@ENTRY, 1, 1, 1, 0, -1277.65, 72.9751, 128.742, 5.95567, 25, 0, 13700, 6540), -(@ENTRY, 0, 1, 1, 0, 1637.21, 240.132, -43.1034, 3.13147, 25, 0, 13700, 6540), -(@ENTRY, 530, 1, 1, 0, 9741.67, -7454.19, 13.5572, 3.14231, 25, 0, 13700, 6540), -(@ENTRY, 571, 1, 1, 0, 5807.06, 506.244, 657.576, 5.54461, 25, 0, 13700, 6540), -(@ENTRY, 1, 1, 1, 0, 9866.83, 2494.66, 1315.88, 5.9462, 25, 0, 13700, 6540), -(@ENTRY, 0, 1, 1, 0, -14279.8, 555.014, 8.90011, 3.97606, 25, 0, 13700, 6540), -(@ENTRY, 530, 1, 1, 0, -1888.65, 5355.88, -12.4279, 1.25883, 25, 0, 13700, 6540), --- EXTRA -(@ENTRY, 1, 1, 1, 0, -10595.5, 2509.04, 9.71169, 2.19906, 25, 0, 13700, 6540), -- Silithus Camp -(@ENTRY, 1, 1, 1, 0, 1009.35, 1031.26, 104.883, 1.52364, 25, 0, 13700, 6540); -- Sunrock Retreat - --- Rune spawns: -ALTER TABLE gameobject AUTO_INCREMENT = 200000; -INSERT INTO gameobject (id, map, spawnMask, phaseMask, position_x, position_y, position_z, orientation, rotation2, rotation3, spawntimesecs, state) VALUES -(@RUNE, 1, 1, 1, 1601.08, -4378.69, 9.9846, 2.14362, 0.878068, 0.478536, 25, 1), -(@RUNE, 0, 1, 1, -14281.9, 552.564, 8.90382, 0.860144, 0.416936, 0.908936, 25, 1), -(@RUNE, 0, 1, 1, -8842.09, 626.358, 94.0868, 3.61363, 0.972276, -0.233836, 25, 1), -(@RUNE, 0, 1, 1, -4900.47, -962.585, 501.455, 5.40538, 0.424947, -0.905218, 25, 1), -(@RUNE, 1, 1, 1, 9869.91, 2493.58, 1315.88, 5.9462, 0.167696, -0.985839, 25, 1), -(@RUNE, 530, 1, 1, -3864.92, -11643.7, -137.644, 2.38273, 0.928875, 0.370392, 25, 1), -(@RUNE, 530, 1, 1, -1887.62, 5359.09, -12.4279, 4.40435, 0.758205, 0.652017, 25, 1), -(@RUNE, 571, 1, 1, 5809.55, 503.975, 657.526, 5.54461, 0.360952, -0.932584, 25, 1), -(@RUNE, 530, 1, 1, 9738.28, -7454.19, 13.5605, 3.14231, 1, -0.000358625, 25, 1), -(@RUNE, 0, 1, 1, 1633.75, 240.167, -43.1034, 3.13147, 0.999987, 0.00506132, 25, 1), -(@RUNE, 0, 1, 1, -13181.8, 339.356, 42.9805, 1.18013, 0.556415, 0.830904, 25, 1), -(@RUNE, 1, 1, 1, -1274.45, 71.8601, 128.159, 2.80623, 0.985974, 0.166898, 25, 1); \ No newline at end of file diff --git a/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/LICENSE.md b/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/LICENSE.md new file mode 100644 index 0000000..11e7763 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/LICENSE.md @@ -0,0 +1,650 @@ +# GNU Affero General Public License + +_Version 3, 19 November 2007_ +_Copyright © 2007 Free Software Foundation, Inc. [http://fsf.org](http://fsf.org)_ + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +## Preamble + +The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: **(1)** assert copyright on the software, and **(2)** offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + +The precise terms and conditions for copying, distribution and +modification follow. + +## TERMS AND CONDITIONS + +### 0. Definitions + +“This License” refers to version 3 of the GNU Affero General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this +License. Each licensee is addressed as “you”. “Licensees” and +“recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a “modified version” of the +earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based +on the Program. + +To “propagate” a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” +to the extent that it includes a convenient and prominently visible +feature that **(1)** displays an appropriate copyright notice, and **(2)** +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +### 1. Source Code + +The “source code” for a work means the preferred form of the work +for making modifications to it. “Object code” means any non-source +form of a work. + +A “Standard Interface” means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other +than the work as a whole, that **(a)** is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and **(b)** serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +“Major Component”, in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + +The Corresponding Source for a work in source code form is that +same work. + +### 2. Basic Permissions + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +### 3. Protecting Users' Legal Rights From Anti-Circumvention Law + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + +### 4. Conveying Verbatim Copies + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +### 5. Conveying Modified Source Versions + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + +* **a)** The work must carry prominent notices stating that you modified +it, and giving a relevant date. +* **b)** The work must carry prominent notices stating that it is +released under this License and any conditions added under section 7. +This requirement modifies the requirement in section 4 to +“keep intact all notices”. +* **c)** You must license the entire work, as a whole, under this +License to anyone who comes into possession of a copy. This +License will therefore apply, along with any applicable section 7 +additional terms, to the whole of the work, and all its parts, +regardless of how they are packaged. This License gives no +permission to license the work in any other way, but it does not +invalidate such permission if you have separately received it. +* **d)** If the work has interactive user interfaces, each must display +Appropriate Legal Notices; however, if the Program has interactive +interfaces that do not display Appropriate Legal Notices, your +work need not make them do so. + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +“aggregate” if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +### 6. Conveying Non-Source Forms + +You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + +* **a)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by the +Corresponding Source fixed on a durable physical medium +customarily used for software interchange. +* **b)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by a +written offer, valid for at least three years and valid for as +long as you offer spare parts or customer support for that product +model, to give anyone who possesses the object code either **(1)** a +copy of the Corresponding Source for all the software in the +product that is covered by this License, on a durable physical +medium customarily used for software interchange, for a price no +more than your reasonable cost of physically performing this +conveying of source, or **(2)** access to copy the +Corresponding Source from a network server at no charge. +* **c)** Convey individual copies of the object code with a copy of the +written offer to provide the Corresponding Source. This +alternative is allowed only occasionally and noncommercially, and +only if you received the object code with such an offer, in accord +with subsection 6b. +* **d)** Convey the object code by offering access from a designated +place (gratis or for a charge), and offer equivalent access to the +Corresponding Source in the same way through the same place at no +further charge. You need not require recipients to copy the +Corresponding Source along with the object code. If the place to +copy the object code is a network server, the Corresponding Source +may be on a different server (operated by you or a third party) +that supports equivalent copying facilities, provided you maintain +clear directions next to the object code saying where to find the +Corresponding Source. Regardless of what server hosts the +Corresponding Source, you remain obligated to ensure that it is +available for as long as needed to satisfy these requirements. +* **e)** Convey the object code using peer-to-peer transmission, provided +you inform other peers where the object code and Corresponding +Source of the work are being offered to the general public at no +charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A “User Product” is either **(1)** a “consumer product”, which means any +tangible personal property which is normally used for personal, family, +or household purposes, or **(2)** anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, “normally used” refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +### 7. Additional Terms + +“Additional permissions” are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + +* **a)** Disclaiming warranty or limiting liability differently from the +terms of sections 15 and 16 of this License; or +* **b)** Requiring preservation of specified reasonable legal notices or +author attributions in that material or in the Appropriate Legal +Notices displayed by works containing it; or +* **c)** Prohibiting misrepresentation of the origin of that material, or +requiring that modified versions of such material be marked in +reasonable ways as different from the original version; or +* **d)** Limiting the use for publicity purposes of names of licensors or +authors of the material; or +* **e)** Declining to grant rights under trademark law for use of some +trade names, trademarks, or service marks; or +* **f)** Requiring indemnification of licensors and authors of that +material by anyone who conveys the material (or modified versions of +it) with contractual assumptions of liability to the recipient, for +any liability that these contractual assumptions directly impose on +those licensors and authors. + +All other non-permissive additional terms are considered “further +restrictions” within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + +### 8. Termination + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated **(a)** +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and **(b)** permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +### 9. Acceptance Not Required for Having Copies + +You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +### 10. Automatic Licensing of Downstream Recipients + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +### 11. Patents + +A “contributor” is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, “control” includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To “grant” such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either **(1)** cause the Corresponding Source to be so +available, or **(2)** arrange to deprive yourself of the benefit of the +patent license for this particular work, or **(3)** arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. “Knowingly relying” means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is “discriminatory” if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license **(a)** in connection with copies of the covered work +conveyed by you (or copies made from those copies), or **(b)** primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +### 12. No Surrender of Others' Freedom + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + +### 13. Remote Network Interaction; Use with the GNU General Public License + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + +### 14. Revised Versions of this License + +The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License “or any later version” applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +### 15. Disclaimer of Warranty + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +### 16. Limitation of Liability + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + +### 17. Interpretation of Sections 15 and 16 + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +_END OF TERMS AND CONDITIONS_ + +## How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the “copyright” line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a “Source” link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a “copyright disclaimer” for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<>. diff --git a/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/README.md b/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/README.md new file mode 100644 index 0000000..4af0cb2 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/README.md @@ -0,0 +1,2 @@ +# AzerothCore-Converted-Modules-to-latest-TrinityCore +AzerothCore Converted Modules to latest TrinityCore 9.0.5 Shadowlands diff --git a/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/src/boss_announcer.cpp b/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/src/boss_announcer.cpp new file mode 100644 index 0000000..e2e4bcb --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/Other Scripts/Boss Announcer/src/boss_announcer.cpp @@ -0,0 +1,39 @@ +//by SymbolixDEV +//Fixed Error SymbolixDEV +//release SymbolixDEV +#include "ScriptMgr.h" +#include "Config.h" +#include +#include "World.h" + +class Boss_Announcer : public PlayerScript +{ +public: + Boss_Announcer() : PlayerScript("Boss_Announcer") {} + + void OnCreatureKill(Player* player, Creature* boss) + { + if (sConfigMgr->GetBoolDefault("Boss.Announcer.Enable", true)) + { + if (boss->isWorldBoss()) + { + std::string plr = player->GetName(); + std::string boss_n = boss->GetName(); + bool ingroup = player->GetGroup(); + std::string tag_colour = "7bbef7"; + std::string plr_colour = "7bbef7"; + std::string boss_colour = "ff0000"; + std::ostringstream stream; + stream << "|CFF" << tag_colour << + "|r|cff" << plr_colour << " " << plr << + "|r 's group killed |CFF" << boss_colour << "[" << boss_n << "]|r " "boss" << "!"; + sWorld->SendServerMessage(SERVER_MSG_STRING, stream.str().c_str()); + } + } + }; +}; + +void AddSC_Boss_Announcer() +{ + new Boss_Announcer; +} \ No newline at end of file diff --git a/Shadowlands 9.0.5 Scripts/README.md b/Shadowlands 9.0.5 Scripts/README.md new file mode 100644 index 0000000..4af0cb2 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/README.md @@ -0,0 +1,2 @@ +# AzerothCore-Converted-Modules-to-latest-TrinityCore +AzerothCore Converted Modules to latest TrinityCore 9.0.5 Shadowlands diff --git a/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/LICENSE.md b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/LICENSE.md new file mode 100644 index 0000000..11e7763 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/LICENSE.md @@ -0,0 +1,650 @@ +# GNU Affero General Public License + +_Version 3, 19 November 2007_ +_Copyright © 2007 Free Software Foundation, Inc. [http://fsf.org](http://fsf.org)_ + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +## Preamble + +The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: **(1)** assert copyright on the software, and **(2)** offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + +The precise terms and conditions for copying, distribution and +modification follow. + +## TERMS AND CONDITIONS + +### 0. Definitions + +“This License” refers to version 3 of the GNU Affero General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this +License. Each licensee is addressed as “you”. “Licensees” and +“recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a “modified version” of the +earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based +on the Program. + +To “propagate” a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” +to the extent that it includes a convenient and prominently visible +feature that **(1)** displays an appropriate copyright notice, and **(2)** +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +### 1. Source Code + +The “source code” for a work means the preferred form of the work +for making modifications to it. “Object code” means any non-source +form of a work. + +A “Standard Interface” means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other +than the work as a whole, that **(a)** is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and **(b)** serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +“Major Component”, in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + +The Corresponding Source for a work in source code form is that +same work. + +### 2. Basic Permissions + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +### 3. Protecting Users' Legal Rights From Anti-Circumvention Law + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + +### 4. Conveying Verbatim Copies + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +### 5. Conveying Modified Source Versions + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + +* **a)** The work must carry prominent notices stating that you modified +it, and giving a relevant date. +* **b)** The work must carry prominent notices stating that it is +released under this License and any conditions added under section 7. +This requirement modifies the requirement in section 4 to +“keep intact all notices”. +* **c)** You must license the entire work, as a whole, under this +License to anyone who comes into possession of a copy. This +License will therefore apply, along with any applicable section 7 +additional terms, to the whole of the work, and all its parts, +regardless of how they are packaged. This License gives no +permission to license the work in any other way, but it does not +invalidate such permission if you have separately received it. +* **d)** If the work has interactive user interfaces, each must display +Appropriate Legal Notices; however, if the Program has interactive +interfaces that do not display Appropriate Legal Notices, your +work need not make them do so. + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +“aggregate” if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +### 6. Conveying Non-Source Forms + +You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + +* **a)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by the +Corresponding Source fixed on a durable physical medium +customarily used for software interchange. +* **b)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by a +written offer, valid for at least three years and valid for as +long as you offer spare parts or customer support for that product +model, to give anyone who possesses the object code either **(1)** a +copy of the Corresponding Source for all the software in the +product that is covered by this License, on a durable physical +medium customarily used for software interchange, for a price no +more than your reasonable cost of physically performing this +conveying of source, or **(2)** access to copy the +Corresponding Source from a network server at no charge. +* **c)** Convey individual copies of the object code with a copy of the +written offer to provide the Corresponding Source. This +alternative is allowed only occasionally and noncommercially, and +only if you received the object code with such an offer, in accord +with subsection 6b. +* **d)** Convey the object code by offering access from a designated +place (gratis or for a charge), and offer equivalent access to the +Corresponding Source in the same way through the same place at no +further charge. You need not require recipients to copy the +Corresponding Source along with the object code. If the place to +copy the object code is a network server, the Corresponding Source +may be on a different server (operated by you or a third party) +that supports equivalent copying facilities, provided you maintain +clear directions next to the object code saying where to find the +Corresponding Source. Regardless of what server hosts the +Corresponding Source, you remain obligated to ensure that it is +available for as long as needed to satisfy these requirements. +* **e)** Convey the object code using peer-to-peer transmission, provided +you inform other peers where the object code and Corresponding +Source of the work are being offered to the general public at no +charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A “User Product” is either **(1)** a “consumer product”, which means any +tangible personal property which is normally used for personal, family, +or household purposes, or **(2)** anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, “normally used” refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +### 7. Additional Terms + +“Additional permissions” are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + +* **a)** Disclaiming warranty or limiting liability differently from the +terms of sections 15 and 16 of this License; or +* **b)** Requiring preservation of specified reasonable legal notices or +author attributions in that material or in the Appropriate Legal +Notices displayed by works containing it; or +* **c)** Prohibiting misrepresentation of the origin of that material, or +requiring that modified versions of such material be marked in +reasonable ways as different from the original version; or +* **d)** Limiting the use for publicity purposes of names of licensors or +authors of the material; or +* **e)** Declining to grant rights under trademark law for use of some +trade names, trademarks, or service marks; or +* **f)** Requiring indemnification of licensors and authors of that +material by anyone who conveys the material (or modified versions of +it) with contractual assumptions of liability to the recipient, for +any liability that these contractual assumptions directly impose on +those licensors and authors. + +All other non-permissive additional terms are considered “further +restrictions” within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + +### 8. Termination + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated **(a)** +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and **(b)** permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +### 9. Acceptance Not Required for Having Copies + +You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +### 10. Automatic Licensing of Downstream Recipients + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +### 11. Patents + +A “contributor” is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, “control” includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To “grant” such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either **(1)** cause the Corresponding Source to be so +available, or **(2)** arrange to deprive yourself of the benefit of the +patent license for this particular work, or **(3)** arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. “Knowingly relying” means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is “discriminatory” if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license **(a)** in connection with copies of the covered work +conveyed by you (or copies made from those copies), or **(b)** primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +### 12. No Surrender of Others' Freedom + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + +### 13. Remote Network Interaction; Use with the GNU General Public License + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + +### 14. Revised Versions of this License + +The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License “or any later version” applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +### 15. Disclaimer of Warranty + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +### 16. Limitation of Liability + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + +### 17. Interpretation of Sections 15 and 16 + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +_END OF TERMS AND CONDITIONS_ + +## How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the “copyright” line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a “Source” link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a “copyright disclaimer” for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<>. diff --git a/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/README.md b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/README.md new file mode 100644 index 0000000..4af0cb2 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/README.md @@ -0,0 +1,2 @@ +# AzerothCore-Converted-Modules-to-latest-TrinityCore +AzerothCore Converted Modules to latest TrinityCore 9.0.5 Shadowlands diff --git a/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/conf/mod_congratsonlevel.conf.dist b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/conf/mod_congratsonlevel.conf.dist new file mode 100644 index 0000000..6797f39 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/conf/mod_congratsonlevel.conf.dist @@ -0,0 +1,83 @@ +[worldserver] + +################################################################################################### +# CONGRATS ON LEVEL-UP +################################################################################################### + +# Enable the module? (1: true | 0: false) + +Congrats.Enable = 1 + +# Announce the module when the player logs in? + +Congrats.Announce = 1 + +# Set what the player receives at each level +# M: Gold +# S: SpellID to be cast on the player +# 1: First ItemID to be given to the player +# 2: Second ItemID to be given to the player + +# Level 10 +# 1 Gold / Blessing of Kings +# Red Rose / TCG: Foam Sword Rack +Congrats.L10M = 1; +Congrats.L10S = 20217 +Congrats.L101 = 3419 +Congrats.L102 = 45062 + +# Level 20 +# 10 Gold / Power Word Fortitude +# Rag Doll / TCG: Flag of Ownership +Congrats.L20M = 10 +Congrats.L20S = 48161 +Congrats.L201 = 5433 +Congrats.L202 = 38578 + +# Level 30 +# 15 Gold / Mark of the Wild +# Sleeveless T-Shirt / TCG: Ogre Pinata +Congrats.L30M = 15 +Congrats.L30S = 48469 +Congrats.L301 = 18231 +Congrats.L302 = 46780 + +# Level 40 +# 20 Gold / Blessing of Kings +# Shadow Circuit / TCG: Carved Ogre Idol +Congrats.L40M = 20 +Congrats.L40S = 20217 +Congrats.L401 = 31945 +Congrats.L402 = 49704 + +# Level 50 +# 25 Gold / Power Word Fortutude +# Blood of the Mountain / TCG: Imp in a Ball +Congrats.L50M = 25 +Congrats.L50S = 48161 +Congrats.L501 = 11382 +Congrats.L502 = 32542 + +# Level 60 +# 30 Gold / Mark of the Wild +# Direbrew's Remote / TCG: Goblin Gumbo Kettle +Congrats.L60M = 30 +Congrats.L60S = 48469 +Congrats.L601 = 37863 +Congrats.L602 = 33219 + +# Level 70 +# 35 Gold / Power Word Fortitude +# Cuergo's Gold / TCG: Instant Statue Pedestal +Congrats.L70M = 35 +Congrats.L70S = 48161 +Congrats.L701 = 9360 +Congrats.L702 = 54212 + +# Level 80 +# 100 Gold / Blessing of Kings +# Cuergo's Gold with Worm / Haunted Momento +Congrats.L80M = 100 +Congrats.L80S = 20217 +Congrats.L801 = 9361 +Congrats.L802 = 40110 \ No newline at end of file diff --git a/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/src/mod_congratsonlevel.cpp b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/src/mod_congratsonlevel.cpp new file mode 100644 index 0000000..a4f3e5d --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_congratsonlevel/src/mod_congratsonlevel.cpp @@ -0,0 +1,266 @@ +/* +# Congrats On Level # +#### A module for AzerothCore by [StygianTheBest](https://github.com/StygianTheBest/AzerothCore-Content/tree/master/Modules) +------------------------------------------------------------------------------------------------------------------ +### Description ### +------------------------------------------------------------------------------------------------------------------ +This module rewards players when they reach specific levels. It has the option to reward gold, two items, and a +buff or any combination. It also announces to the world when a player levels up. All rewards can be set in the +config file for quick modifications. +### Features ### +------------------------------------------------------------------------------------------------------------------ +- Announces player level up to world +- Awards the player for gaining new levels +- The player forfeits the rewards if their bags are full +### Data ### +------------------------------------------------------------------------------------------------------------------ +- Type: Player/Server +- Script: CongratsOnLevel +- Config: Yes + - Enable Module + - Enable Module Announce + - Set Items/Gold/Buffs Given At Each Level +- SQL: No +### Version ### +------------------------------------------------------------------------------------------------------------------ +- v2017.08.06 - Release +- v2017.09.30 - Fix Level Display Bug. Update Strings. +### Credits ### +------------------------------------------------------------------------------------------------------------------ +- [LordPsyan](https://bitbucket.org/lordpsyan/lordpsyan-patches) +- [Blizzard Entertainment](http://blizzard.com) +- [TrinityCore](https://github.com/TrinityCore/TrinityCore/blob/3.3.5/THANKS) +- [SunwellCore](http://www.azerothcore.org/pages/sunwell.pl/) +- [AzerothCore](https://github.com/AzerothCore/azerothcore-wotlk/graphs/contributors) +- [AzerothCore Discord](https://discord.gg/gkt4y2x) +- [EMUDevs](https://youtube.com/user/EmuDevs) +- [AC-Web](http://ac-web.org/) +- [ModCraft.io](http://modcraft.io/) +- [OwnedCore](http://ownedcore.com/) +- [OregonCore](https://wiki.oregon-core.net/) +- [Wowhead.com](http://wowhead.com) +- [AoWoW](https://wotlk.evowow.com/) +### License ### +------------------------------------------------------------------------------------------------------------------ +- This code and content is released under the [GNU AGPL v3](https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3). +*/ + +#include "Define.h" +#include "ScriptMgr.h" +#include "Unit.h" +#include "Pet.h" +#include "Player.h" +#include "ScriptPCH.h" +#include "ScriptedGossip.h" +#include "GossipDef.h" +#include "World.h" +#include "WorldPacket.h" +#include "WorldSession.h" +#include "Chat.h" +#include "Config.h" + +class CongratsOnLevel : public PlayerScript +{ + +public: + CongratsOnLevel() : PlayerScript("CongratsOnLevel") { } + + // Announce Module + void OnLogin(Player* player, bool firstLogin) + { + if (sConfigMgr->GetBoolDefault("Congrats.Enable", true)) + { + if (firstLogin) { + if (sConfigMgr->GetBoolDefault("Congrats.Announce", true)) + { + ChatHandler(player->GetSession()).SendSysMessage("This server is running the |cff4CFF00CongratsOnLevel |rmodule."); + } + } + } + } + + // Level Up Rewards + void OnLevelChanged(Player* player, uint8 oldLevel) + { + // If enabled... + if (sConfigMgr->GetBoolDefault("Congrats.Enable", true)) { + + std::string level; + uint32 money, item1, item2, spell; + + switch (++oldLevel) + { + + case 10: + { + // Level 10 + const uint32 L101 = sConfigMgr->GetIntDefault("Congrats.L101", 0); + const uint32 L102 = sConfigMgr->GetIntDefault("Congrats.L102", 0); + const uint32 L10M = sConfigMgr->GetIntDefault("Congrats.L10M", 0); + const uint32 L10S = sConfigMgr->GetIntDefault("Congrats.L10S", 0); + + level = "10"; + item1 = L101; + item2 = L102; + money = L10M; + spell = L10S; + break; + } + + case 20: + { + // Level 20 + const uint32 L201 = sConfigMgr->GetIntDefault("Congrats.L201", 0); + const uint32 L202 = sConfigMgr->GetIntDefault("Congrats.L202", 0); + const uint32 L20M = sConfigMgr->GetIntDefault("Congrats.L20M", 0); + const uint32 L20S = sConfigMgr->GetIntDefault("Congrats.L20S", 0); + + level = "20"; + item1 = L201; + item2 = L202; + money = L20M; + spell = L20S; + break; + } + + case 30: + { + // Level 30 + const uint32 L301 = sConfigMgr->GetIntDefault("Congrats.L301", 0); + const uint32 L302 = sConfigMgr->GetIntDefault("Congrats.L302", 0); + const uint32 L30M = sConfigMgr->GetIntDefault("Congrats.L30M", 0); + const uint32 L30S = sConfigMgr->GetIntDefault("Congrats.L30S", 0); + + level = "30"; + item1 = L301; + item2 = L302; + money = L30M; + spell = L30S; + break; + } + + case 40: + { + // Level 40 + const uint32 L401 = sConfigMgr->GetIntDefault("Congrats.L401", 0); + const uint32 L402 = sConfigMgr->GetIntDefault("Congrats.L402", 0); + const uint32 L40M = sConfigMgr->GetIntDefault("Congrats.L40M", 0); + const uint32 L40S = sConfigMgr->GetIntDefault("Congrats.L40S", 0); + + level = "40"; + item1 = L401; + item2 = L402; + money = L40M; + spell = L40S; + break; + } + + case 50: + { + // Level 50 + const uint32 L501 = sConfigMgr->GetIntDefault("Congrats.L501", 0); + const uint32 L502 = sConfigMgr->GetIntDefault("Congrats.L502", 0); + const uint32 L50M = sConfigMgr->GetIntDefault("Congrats.L50M", 0); + const uint32 L50S = sConfigMgr->GetIntDefault("Congrats.L50S", 0); + + level = "50"; + item1 = L501; + item2 = L502; + money = L50M; + spell = L50S; + break; + } + + case 60: + { + // Level 60 + const uint32 L601 = sConfigMgr->GetIntDefault("Congrats.L601", 0); + const uint32 L602 = sConfigMgr->GetIntDefault("Congrats.L602", 0); + const uint32 L60M = sConfigMgr->GetIntDefault("Congrats.L60M", 0); + const uint32 L60S = sConfigMgr->GetIntDefault("Congrats.L60S", 0); + + level = "60"; + item1 = L601; + item2 = L602; + money = L60M; + spell = L60S; + break; + } + + case 70: + { + // Level 70 + const uint32 L701 = sConfigMgr->GetIntDefault("Congrats.L701", 0); + const uint32 L702 = sConfigMgr->GetIntDefault("Congrats.L702", 0); + const uint32 L70M = sConfigMgr->GetIntDefault("Congrats.L70M", 0); + const uint32 L70S = sConfigMgr->GetIntDefault("Congrats.L70S", 0); + + level = "70"; + item1 = L701; + item2 = L702; + money = L70M; + spell = L70S; + break; + } + + case 80: + { + // Level 80 + const uint32 L801 = sConfigMgr->GetIntDefault("Congrats.L801", 0); + const uint32 L802 = sConfigMgr->GetIntDefault("Congrats.L802", 0); + const uint32 L80M = sConfigMgr->GetIntDefault("Congrats.L80M", 0); + const uint32 L80S = sConfigMgr->GetIntDefault("Congrats.L80S", 0); + + level = "80"; + item1 = L801; + item2 = L802; + money = L80M; + spell = L80S; + break; + } + + default: + { + // Issue a server notification for the player on level up. + std::ostringstream ss; + ss << "|cffFFFFFF[ |cffFF0000C|cffFFA500O|cffFFFF00N|cff00FF00G|cff00FFFFR|cff6A5ACDA|cffFF00FFT|cff98FB98S|cffFF0000! |cffFFFFFF] : |cff4CFF00 " << player->GetName() << " |cffFFFFFFhas reached |cff4CFF00Level " << std::to_string(player->getLevel()) << "|cffFFFFFF!"; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + break; + } + + return; + } + + // If level is defined, they hit a reward level. + if (!level.empty()) + { + // Issue a server notification for the player on level up. + std::ostringstream ss; + ss << "|cffFFFFFF[ |cffFF0000C|cffFFA500O|cffFFFF00N|cff00FF00G|cff00FFFFR|cff6A5ACDA|cffFF00FFT|cff98FB98S|cffFF0000! |cffFFFFFF] : |cff4CFF00 " << player->GetName() << " |cffFFFFFFhas reached |cff4CFF00Level " << level << "|cffFFFFFF!"; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + + // Give the items to the player + player->AddItem(item1, 1); // Defined Item 1 + player->AddItem(item2, 1); // Defined Item 2 + + // Give gold to the player + player->ModifyMoney(money*GOLD); // Defined Gold + + // Buff the player + player->CastSpell(player, spell); // Defined Spell + + // Issue a raid warning to the player + std::ostringstream ss2; + ss2 << "Congrats on Level " << level << " " << player->GetName() << "! You've been awarded " << money << " gold and a few treasures!"; + player->GetSession()->SendNotification(ss2.str().c_str()); + + return; + } + } + } +}; + +void AddCongratsOnLevelScripts() +{ + new CongratsOnLevel(); +} diff --git a/Shadowlands 9.0.5 Scripts/mod_customlogin/LICENSE.md b/Shadowlands 9.0.5 Scripts/mod_customlogin/LICENSE.md new file mode 100644 index 0000000..11e7763 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customlogin/LICENSE.md @@ -0,0 +1,650 @@ +# GNU Affero General Public License + +_Version 3, 19 November 2007_ +_Copyright © 2007 Free Software Foundation, Inc. [http://fsf.org](http://fsf.org)_ + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +## Preamble + +The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: **(1)** assert copyright on the software, and **(2)** offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + +The precise terms and conditions for copying, distribution and +modification follow. + +## TERMS AND CONDITIONS + +### 0. Definitions + +“This License” refers to version 3 of the GNU Affero General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this +License. Each licensee is addressed as “you”. “Licensees” and +“recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a “modified version” of the +earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based +on the Program. + +To “propagate” a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” +to the extent that it includes a convenient and prominently visible +feature that **(1)** displays an appropriate copyright notice, and **(2)** +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +### 1. Source Code + +The “source code” for a work means the preferred form of the work +for making modifications to it. “Object code” means any non-source +form of a work. + +A “Standard Interface” means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other +than the work as a whole, that **(a)** is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and **(b)** serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +“Major Component”, in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + +The Corresponding Source for a work in source code form is that +same work. + +### 2. Basic Permissions + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +### 3. Protecting Users' Legal Rights From Anti-Circumvention Law + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + +### 4. Conveying Verbatim Copies + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +### 5. Conveying Modified Source Versions + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + +* **a)** The work must carry prominent notices stating that you modified +it, and giving a relevant date. +* **b)** The work must carry prominent notices stating that it is +released under this License and any conditions added under section 7. +This requirement modifies the requirement in section 4 to +“keep intact all notices”. +* **c)** You must license the entire work, as a whole, under this +License to anyone who comes into possession of a copy. This +License will therefore apply, along with any applicable section 7 +additional terms, to the whole of the work, and all its parts, +regardless of how they are packaged. This License gives no +permission to license the work in any other way, but it does not +invalidate such permission if you have separately received it. +* **d)** If the work has interactive user interfaces, each must display +Appropriate Legal Notices; however, if the Program has interactive +interfaces that do not display Appropriate Legal Notices, your +work need not make them do so. + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +“aggregate” if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +### 6. Conveying Non-Source Forms + +You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + +* **a)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by the +Corresponding Source fixed on a durable physical medium +customarily used for software interchange. +* **b)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by a +written offer, valid for at least three years and valid for as +long as you offer spare parts or customer support for that product +model, to give anyone who possesses the object code either **(1)** a +copy of the Corresponding Source for all the software in the +product that is covered by this License, on a durable physical +medium customarily used for software interchange, for a price no +more than your reasonable cost of physically performing this +conveying of source, or **(2)** access to copy the +Corresponding Source from a network server at no charge. +* **c)** Convey individual copies of the object code with a copy of the +written offer to provide the Corresponding Source. This +alternative is allowed only occasionally and noncommercially, and +only if you received the object code with such an offer, in accord +with subsection 6b. +* **d)** Convey the object code by offering access from a designated +place (gratis or for a charge), and offer equivalent access to the +Corresponding Source in the same way through the same place at no +further charge. You need not require recipients to copy the +Corresponding Source along with the object code. If the place to +copy the object code is a network server, the Corresponding Source +may be on a different server (operated by you or a third party) +that supports equivalent copying facilities, provided you maintain +clear directions next to the object code saying where to find the +Corresponding Source. Regardless of what server hosts the +Corresponding Source, you remain obligated to ensure that it is +available for as long as needed to satisfy these requirements. +* **e)** Convey the object code using peer-to-peer transmission, provided +you inform other peers where the object code and Corresponding +Source of the work are being offered to the general public at no +charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A “User Product” is either **(1)** a “consumer product”, which means any +tangible personal property which is normally used for personal, family, +or household purposes, or **(2)** anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, “normally used” refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +### 7. Additional Terms + +“Additional permissions” are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + +* **a)** Disclaiming warranty or limiting liability differently from the +terms of sections 15 and 16 of this License; or +* **b)** Requiring preservation of specified reasonable legal notices or +author attributions in that material or in the Appropriate Legal +Notices displayed by works containing it; or +* **c)** Prohibiting misrepresentation of the origin of that material, or +requiring that modified versions of such material be marked in +reasonable ways as different from the original version; or +* **d)** Limiting the use for publicity purposes of names of licensors or +authors of the material; or +* **e)** Declining to grant rights under trademark law for use of some +trade names, trademarks, or service marks; or +* **f)** Requiring indemnification of licensors and authors of that +material by anyone who conveys the material (or modified versions of +it) with contractual assumptions of liability to the recipient, for +any liability that these contractual assumptions directly impose on +those licensors and authors. + +All other non-permissive additional terms are considered “further +restrictions” within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + +### 8. Termination + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated **(a)** +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and **(b)** permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +### 9. Acceptance Not Required for Having Copies + +You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +### 10. Automatic Licensing of Downstream Recipients + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +### 11. Patents + +A “contributor” is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, “control” includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To “grant” such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either **(1)** cause the Corresponding Source to be so +available, or **(2)** arrange to deprive yourself of the benefit of the +patent license for this particular work, or **(3)** arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. “Knowingly relying” means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is “discriminatory” if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license **(a)** in connection with copies of the covered work +conveyed by you (or copies made from those copies), or **(b)** primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +### 12. No Surrender of Others' Freedom + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + +### 13. Remote Network Interaction; Use with the GNU General Public License + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + +### 14. Revised Versions of this License + +The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License “or any later version” applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +### 15. Disclaimer of Warranty + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +### 16. Limitation of Liability + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + +### 17. Interpretation of Sections 15 and 16 + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +_END OF TERMS AND CONDITIONS_ + +## How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the “copyright” line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a “Source” link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a “copyright disclaimer” for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<>. diff --git a/Shadowlands 9.0.5 Scripts/mod_customlogin/README.md b/Shadowlands 9.0.5 Scripts/mod_customlogin/README.md new file mode 100644 index 0000000..4af0cb2 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customlogin/README.md @@ -0,0 +1,2 @@ +# AzerothCore-Converted-Modules-to-latest-TrinityCore +AzerothCore Converted Modules to latest TrinityCore 9.0.5 Shadowlands diff --git a/Shadowlands 9.0.5 Scripts/mod_customlogin/conf/mod_customlogin.conf.dist b/Shadowlands 9.0.5 Scripts/mod_customlogin/conf/mod_customlogin.conf.dist new file mode 100644 index 0000000..3065ba3 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customlogin/conf/mod_customlogin.conf.dist @@ -0,0 +1,33 @@ +[worldserver] + +################################################################################################### +# CUSTOM LOGIN +################################################################################################### + +# Enable the module? (1: true | 0: false) + +CustomLogin.Enable = 1 + +# Announce the module when the player logs in? + +CustomLogin.Announce = 1 + +# Inform when players enter and exit the game + +CustomLogin.PlayerAnnounce = 1 + +# New characters start with BoA items? (1: true | 0: false) + +CustomLogin.BoA = 1 + +# New characters start with additional weapon skills? (1: true | 0: false) + +CustomLogin.Skills = 1 + +# New characters start with special abilities? (1: true | 0: false) + +CustomLogin.SpecialAbility = 1 + +# New characters start with Exalted reputation for main city factions? (1: true | 0: false) + +CustomLogin.Reputation = 1 \ No newline at end of file diff --git a/Shadowlands 9.0.5 Scripts/mod_customlogin/src/mod_customlogin.cpp b/Shadowlands 9.0.5 Scripts/mod_customlogin/src/mod_customlogin.cpp new file mode 100644 index 0000000..e2451dd --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customlogin/src/mod_customlogin.cpp @@ -0,0 +1,545 @@ +/* +# Custom Login Modifications # +#### A module for AzerothCore by [StygianTheBest](https://github.com/StygianTheBest/AzerothCore-Content/tree/master/Modules) +------------------------------------------------------------------------------------------------------------------ +### Description ### +------------------------------------------------------------------------------------------------------------------ +This module performs several actions on new players. It has the option to give new players BOA starting gear, +additional weapon skills, and special abilities such as custom spells. It can also set the reputation of the player +to exalted with all capital cities for their faction granting them the Ambassador title. This is typically done in +the core's config file, but it's bugged (as of 2017.08.23) in AzerothCore. It can also announce when players login +or logoff the server. +### Features ### +------------------------------------------------------------------------------------------------------------------ +- Player ([ Faction ] - Name - Logon/Logoff message) notification can be announced to the world +- New characters can receive items, bags, and class-specific heirlooms +- New characters can receive additional weapon skills +- New characters can receive special abilities +- New characters can receive exalted rep with capital cities (Title: Ambassador) on first login +### Data ### +------------------------------------------------------------------------------------------------------------------ +- Type: Player/Server +- Script: CustomLogin +- Config: Yes + - Enable Module + - Enable Module Announce + - Enable Announce Player Login/Logoff + - Enable Starting Gear for new players + - Enable Additional Weapon Skills for new players + - Enable Special Abilities for new players + - Enable Reputation Boost for new players +- SQL: No +### Version ### +------------------------------------------------------------------------------------------------------------------ +- v2017.07.26 - Release +- v2017.07.29 - Clean up code, Add rep gain, Add config options +### Credits ### +------------------------------------------------------------------------------------------------------------------ +- [Blizzard Entertainment](http://blizzard.com) +- [TrinityCore](https://github.com/TrinityCore/TrinityCore/blob/3.3.5/THANKS) +- [SunwellCore](http://www.azerothcore.org/pages/sunwell.pl/) +- [AzerothCore](https://github.com/AzerothCore/azerothcore-wotlk/graphs/contributors) +- [AzerothCore Discord](https://discord.gg/gkt4y2x) +- [EMUDevs](https://youtube.com/user/EmuDevs) +- [AC-Web](http://ac-web.org/) +- [ModCraft.io](http://modcraft.io/) +- [OwnedCore](http://ownedcore.com/) +- [OregonCore](https://wiki.oregon-core.net/) +- [Wowhead.com](http://wowhead.com) +- [AoWoW](https://wotlk.evowow.com/) +### License ### +------------------------------------------------------------------------------------------------------------------ +- This code and content is released under the [GNU AGPL v3](https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3). +*/ + + +#include "Player.h" +#include "Config.h" +#include "Chat.h" +#include "World.h" + +class CustomLogin : public PlayerScript +{ + +public: + CustomLogin() : PlayerScript("CustomLogin") { } + + void OnLogin(Player* player, bool firstLogin) + { + if (firstLogin) { + // If enabled.. + if (sConfigMgr->GetBoolDefault("CustomLogin.Enable", true)) + { + // If enabled, give heirloom and other items + if (sConfigMgr->GetBoolDefault("CustomLogin.BoA", true)) + { + // Define Equipment + uint32 shoulders = 0, chest = 0, trinkett = 0, weapon = 0, weapon2 = 0, weapon3 = 0, shield = 0, shoulders2 = 0, chest2 = 0, trinkett2 = 0, bag = 0; + + // Outfit the character with bags and heirlooms that match their class + // NOTE: Some classes have more than one heirloom option per slot + bag = 41600; + switch (player->getClass()) + { + case CLASS_WARRIOR: + //Warrior + shoulders = 93893; + chest = 93892; + trinkett = 122361; + weapon = 122389; + shield = 122391; + shoulders2 = 122355; + chest2 = 122381; + weapon2 = 42943; + break; + case CLASS_PALADIN: + //Paladin + shoulders = 69890; + chest = 69889; + trinkett = 42991; + weapon = 69893; + shield = 122391; + shoulders2 = 42951; + chest2 = 48683; + trinkett2 = 42992; + weapon2 = 42948; + break; + case CLASS_HUNTER: + //Hunter + shoulders = 42950; + chest = 48677; + trinkett = 42991; + weapon = 42943; + weapon2 = 42946; + weapon3 = 44093; + break; + case CLASS_ROGUE: + //Rogue + shoulders = 42952; + chest = 48689; + trinkett = 42991; + weapon = 42944; + weapon2 = 42944; + break; + case CLASS_PRIEST: + //Priest + shoulders = 42985; + chest = 48691; + trinkett = 42992; + weapon = 42947; + break; + case CLASS_DEATH_KNIGHT: + //Death Knight + shoulders = 42949; + chest = 48685; + trinkett = 42991; + weapon = 42945; + break; + case CLASS_SHAMAN: + //Shaman + shoulders = 122375; + chest = 48683; + trinkett = 122362; + weapon = 122367; + shield = 122392; + shoulders2 = 122374; + chest2 = 122379; + weapon2 = 122385; + break; + case CLASS_MAGE: + //Mage + shoulders = 42985; + chest = 48691; + trinkett = 42992; + weapon = 42947; + break; + case CLASS_WARLOCK: + //Warlock + shoulders = 42985; + chest = 48691; + trinkett = 42992; + weapon = 42947; + break; + case CLASS_DRUID: + //Druid + shoulders = 42984; + chest = 48687; + trinkett = 42992; + weapon = 42948; + shoulders2 = 42952; + chest2 = 48689; + trinkett2 = 42991; + weapon2 = 48718; + break; + case CLASS_MONK: + //Monk + shoulders = 42984; + chest = 48687; + trinkett = 42992; + weapon = 42947; + shoulders2 = 42952; + chest2 = 48689; + trinkett2 = 42991; + weapon2 = 48716; + default: + return; + } + switch (player->getClass()) + { + case CLASS_WARRIOR: + player->AddItem(shoulders, 1); + player->AddItem(chest, 1); + player->AddItem(trinkett, 2); + player->AddItem(weapon, 1); + player->AddItem(shield, 1); + player->AddItem(shoulders2, 1); + player->AddItem(chest2, 1); + player->AddItem(weapon2, 1); + player->AddItem(bag, 4); + break; + case CLASS_PALADIN: + player->AddItem(shoulders, 1); + player->AddItem(chest, 1); + player->AddItem(trinkett, 2); + player->AddItem(weapon, 1); + player->AddItem(shield, 1); + player->AddItem(shoulders2, 1); + player->AddItem(chest2, 1); + player->AddItem(trinkett2, 2); + player->AddItem(weapon2, 1); + player->AddItem(bag, 4); + break; + case CLASS_HUNTER: + player->AddItem(shoulders, 1); + player->AddItem(trinkett, 2); + player->AddItem(chest, 1); + player->AddItem(weapon, 1); + player->AddItem(weapon2, 1); + player->AddItem(weapon3, 1); + player->AddItem(bag, 4); + break; + case CLASS_ROGUE: + player->AddItem(shoulders, 1); + player->AddItem(trinkett, 2); + player->AddItem(chest, 1); + player->AddItem(weapon, 1); + player->AddItem(weapon2, 1); + player->AddItem(bag, 4); + break; + case CLASS_DRUID: + player->AddItem(shoulders, 1); + player->AddItem(trinkett, 2); + player->AddItem(chest, 1); + player->AddItem(weapon, 1); + player->AddItem(shoulders2, 1); + player->AddItem(chest2, 1); + player->AddItem(trinkett2, 2); + player->AddItem(weapon2, 1); + player->AddItem(bag, 4); + break; + case CLASS_SHAMAN: + player->AddItem(shoulders, 1); + player->AddItem(chest, 1); + player->AddItem(trinkett, 2); + player->AddItem(weapon, 1); + player->AddItem(shield, 1); + player->AddItem(shoulders2, 1); + player->AddItem(chest2, 1); + player->AddItem(weapon2, 2); + player->AddItem(bag, 4); + break; + case CLASS_MONK: + player->AddItem(shoulders, 1); + player->AddItem(trinkett, 2); + player->AddItem(chest, 1); + player->AddItem(weapon, 1); + player->AddItem(shoulders2, 1); + player->AddItem(trinkett2, 2); + player->AddItem(chest2, 1); + player->AddItem(weapon2, 1); + player->AddItem(bag, 4); + break; + default: + player->AddItem(shoulders, 1); + player->AddItem(trinkett, 2); + player->AddItem(chest, 1); + player->AddItem(weapon, 1); + player->AddItem(bag, 4); + } + + // Inform the player they have new items + std::ostringstream ss; + ss << "|cffFF0000[CustomLogin]:|cffFF8000 The outfitter has placed Heirloom gear in your backpack."; + ChatHandler(player->GetSession()).SendSysMessage(ss.str().c_str()); + } + + // If enabled, learn additional skills + if (sConfigMgr->GetBoolDefault("CustomLogin.Skills", true)) + { + switch (player->getClass()) + { + + /* + // Skill Reference + player->learnSpell(204); // Defense + player->learnSpell(264); // Bows + player->learnSpell(5011); // Crossbow + player->learnSpell(674); // Dual Wield + player->learnSpell(15590); // Fists + player->learnSpell(266); // Guns + player->learnSpell(196); // Axes + player->learnSpell(198); // Maces + player->learnSpell(201); // Swords + player->learnSpell(750); // Plate Mail + player->learnSpell(200); // PoleArms + player->learnSpell(9116); // Shields + player->learnSpell(197); // 2H Axe + player->learnSpell(199); // 2H Mace + player->learnSpell(202); // 2H Sword + player->learnSpell(227); // Staves + player->learnSpell(2567); // Thrown + */ + + case CLASS_PALADIN: + player->LearnSpell(196, true); // Axes + player->LearnSpell(750, true); // Plate Mail + player->LearnSpell(200, true); // PoleArms + player->LearnSpell(197, true); // 2H Axe + player->LearnSpell(199, true); // 2H Mace + break; + + case CLASS_SHAMAN: + player->LearnSpell(15590, true); // Fists + player->LearnSpell(8737, true); // Mail + player->LearnSpell(196, true); // Axes + player->LearnSpell(197, true); // 2H Axe + player->LearnSpell(199, true); // 2H Mace + break; + + case CLASS_WARRIOR: + player->LearnSpell(264, true); // Bows + player->LearnSpell(5011, true); // Crossbow + player->LearnSpell(674, true); // Dual Wield + player->LearnSpell(15590, true); // Fists + player->LearnSpell(266, true); // Guns + player->LearnSpell(750, true); // Plate Mail + player->LearnSpell(200, true); // PoleArms + player->LearnSpell(199, true); // 2H Mace + player->LearnSpell(227, true); // Staves + break; + + case CLASS_HUNTER: + player->LearnSpell(674, true); // Dual Wield + player->LearnSpell(15590, true); // Fists + player->LearnSpell(266, true); // Guns + player->LearnSpell(8737, true); // Mail + player->LearnSpell(200, true); // PoleArms + player->LearnSpell(227, true); // Staves + player->LearnSpell(202, true); // 2H Sword + break; + + case CLASS_ROGUE: + player->LearnSpell(264, true); // Bows + player->LearnSpell(5011, true); // Crossbow + player->LearnSpell(15590, true); // Fists + player->LearnSpell(266, true); // Guns + player->LearnSpell(196, true); // Axes + player->LearnSpell(198, true); // Maces + player->LearnSpell(201, true); // Swords + break; + + case CLASS_DRUID: + player->LearnSpell(1180, true); // Daggers + player->LearnSpell(15590, true); // Fists + player->LearnSpell(198, true); // Maces + player->LearnSpell(200, true); // PoleArms + player->LearnSpell(227, true); // Staves + player->LearnSpell(199, true); // 2H Mace + break; + + case CLASS_MAGE: + player->LearnSpell(201, true); // Swords + break; + + case CLASS_WARLOCK: + player->LearnSpell(201, true); // Swords + break; + + case CLASS_PRIEST: + player->LearnSpell(1180, true); // Daggers + break; + + case CLASS_DEATH_KNIGHT: + player->LearnSpell(198, true); // Maces + player->LearnSpell(199, true); // 2H Mace + break; + + default: + break; + } + + // Inform the player they have new skills + std::ostringstream ss; + ss << "|cffFF0000[CustomLogin]:|cffFF8000 You have been granted additional weapon skills."; + ChatHandler(player->GetSession()).SendSysMessage(ss.str().c_str()); + } + + // If enabled.. learn special skills abilities + if (sConfigMgr->GetBoolDefault("CustomLogin.SpecialAbility", true)) + { + // Learn Specialized Skills + player->LearnSpell(1784, true); // Stealth + player->LearnSpell(921, true); // Pick Pocket + player->LearnSpell(1804, true); // Lockpicking + player->LearnSpell(11305, true); // Sprint (3) + player->LearnSpell(5384, true); // Feign Death + // player->learnSpell(475); // Remove Curse + + // Add a few teleportation runes + player->AddItem(17031, 5); // Rune of Teleportation + + // Learn Teleports + switch (player->GetTeamId()) + { + + case TEAM_ALLIANCE: + + // Alliance Teleports + player->LearnSpell(3565, true); // Darnassus + player->LearnSpell(32271, true); // Exodar + player->LearnSpell(3562, true); // Ironforge + player->LearnSpell(33690, true); // Shattrath + player->LearnSpell(3561, true); // Stormwind + break; + + case TEAM_HORDE: + + // Horde Teleports + player->LearnSpell(3567, true); // Orgrimmar + player->LearnSpell(35715, true); // Shattrath + player->LearnSpell(32272, true); // Silvermoon + player->LearnSpell(3566, true); // Thunder Bluff + player->LearnSpell(3563, true); // Undercity + break; + + default: + break; + } + + // Inform the player they have new skills + std::ostringstream ss; + ss << "|cffFF0000[CustomLogin]:|cffFF8000 Your spellbook has been scribed with special abilities."; + ChatHandler(player->GetSession()).SendSysMessage(ss.str().c_str()); + } + + // If enabled.. set exalted factions (AzerothCore config for rep not working as of 2017-08-25) + if (sConfigMgr->GetBoolDefault("CustomLogin.Reputation", true)) + { + switch (player->GetTeamId()) + { + + // Alliance Capital Cities + case TEAM_ALLIANCE: + player->SetReputation(47, 2500); // IronForge + player->SetReputation(72, 2500); // Stormwind + player->SetReputation(69, 2500); // Darnassus + player->SetReputation(389, 2500); // Gnomeregan + player->SetReputation(930, 2500); // Exodar + break; + + // Horde Capital Cities + case TEAM_HORDE: + player->SetReputation(68, 2500); // Undercity + player->SetReputation(76, 2500); // Orgrimmar + player->SetReputation(81, 2500); // Thunder Bluff + player->SetReputation(530, 2500); // DarkSpear + player->SetReputation(911, 2500); // Silvermoon + break; + + default: + break; + } + + // Inform the player they have exalted reputations + std::ostringstream ss; + ss << "|cffFF0000[CustomLogin]:|cffFF8000 Your are now Exalted with your faction's capital cities " << player->GetName() << "."; + ChatHandler(player->GetSession()).SendSysMessage(ss.str().c_str()); + } + } + } + // If enabled.. + if (sConfigMgr->GetBoolDefault("CustomLogin.Enable", true)) + { + if (firstLogin) { + // Announce Module + if (sConfigMgr->GetBoolDefault("CustomLogin.Announce", true)) + { + ChatHandler(player->GetSession()).SendSysMessage("This server is running the |cff4CFF00CustomLogin |rmodule."); + } + } + + // If enabled.. + if (sConfigMgr->GetBoolDefault("CustomLogin.PlayerAnnounce", true)) + { + // Announce Player Login + if (player->GetTeamId() == TEAM_ALLIANCE) + { + if (firstLogin) { + std::ostringstream ss; + ss << "|cffFFFFFF[|cff2897FFAlliance|cffFFFFFF]: |cff3ADF00Please welcome |cffFFFFFF" << player->GetName() << "|cffFFFFFF to our server!|r"; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + } + else + { + std::ostringstream ss; + ss << "|cffFFFFFF[|cff2897FFAlliance|cffFFFFFF]: |cff3ADF00Glade to see you back |cffFFFFFF" << player->GetName() << "!|r"; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + } + } + else + { + if (firstLogin) { + std::ostringstream ss; + ss << "|cffFFFFFF[|cffFF0000Horde|cffFFFFFF]: |cff3ADF00Please welcome |cffFFFFFF" << player->GetName() << "|cffFFFFFF to our server!|r"; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + } + else + { + std::ostringstream ss; + ss << "|cffFFFFFF[|cffFF0000Horde|cffFFFFFF]: |cff3ADF00Glade to see you back |cffFFFFFF" << player->GetName() << "!|r"; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + } + } + } + } + } + + void OnLogout(Player *player) + { + if (sConfigMgr->GetBoolDefault("CustomLogin.Enable", true)) + { + // If enabled.. + if (sConfigMgr->GetBoolDefault("CustomLogin.PlayerAnnounce", true)) + { + // Announce Player Login + if (player->GetTeamId() == TEAM_ALLIANCE) + { + std::ostringstream ss; + ss << "|cffFFFFFF[|cff2897FFAlliance|cffFFFFFF]: |cffFFFFFF" << player->GetName() << "|cffFFFFFF has left the game."; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + } + else + { + std::ostringstream ss; + ss << "|cffFFFFFF[|cffFF0000Horde|cffFFFFFF]: |cffFFFFFF" << player->GetName() << "|cffFFFFFF has left the game."; + sWorld->SendServerMessage(SERVER_MSG_STRING, ss.str().c_str()); + } + } + } + } +}; + +void AddCustomLoginScripts() +{ + new CustomLogin(); +} diff --git a/Shadowlands 9.0.5 Scripts/mod_customserver/LICENSE.md b/Shadowlands 9.0.5 Scripts/mod_customserver/LICENSE.md new file mode 100644 index 0000000..11e7763 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customserver/LICENSE.md @@ -0,0 +1,650 @@ +# GNU Affero General Public License + +_Version 3, 19 November 2007_ +_Copyright © 2007 Free Software Foundation, Inc. [http://fsf.org](http://fsf.org)_ + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +## Preamble + +The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: **(1)** assert copyright on the software, and **(2)** offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + +The precise terms and conditions for copying, distribution and +modification follow. + +## TERMS AND CONDITIONS + +### 0. Definitions + +“This License” refers to version 3 of the GNU Affero General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this +License. Each licensee is addressed as “you”. “Licensees” and +“recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a “modified version” of the +earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based +on the Program. + +To “propagate” a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” +to the extent that it includes a convenient and prominently visible +feature that **(1)** displays an appropriate copyright notice, and **(2)** +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +### 1. Source Code + +The “source code” for a work means the preferred form of the work +for making modifications to it. “Object code” means any non-source +form of a work. + +A “Standard Interface” means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other +than the work as a whole, that **(a)** is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and **(b)** serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +“Major Component”, in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + +The Corresponding Source for a work in source code form is that +same work. + +### 2. Basic Permissions + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +### 3. Protecting Users' Legal Rights From Anti-Circumvention Law + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + +### 4. Conveying Verbatim Copies + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +### 5. Conveying Modified Source Versions + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + +* **a)** The work must carry prominent notices stating that you modified +it, and giving a relevant date. +* **b)** The work must carry prominent notices stating that it is +released under this License and any conditions added under section 7. +This requirement modifies the requirement in section 4 to +“keep intact all notices”. +* **c)** You must license the entire work, as a whole, under this +License to anyone who comes into possession of a copy. This +License will therefore apply, along with any applicable section 7 +additional terms, to the whole of the work, and all its parts, +regardless of how they are packaged. This License gives no +permission to license the work in any other way, but it does not +invalidate such permission if you have separately received it. +* **d)** If the work has interactive user interfaces, each must display +Appropriate Legal Notices; however, if the Program has interactive +interfaces that do not display Appropriate Legal Notices, your +work need not make them do so. + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +“aggregate” if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +### 6. Conveying Non-Source Forms + +You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + +* **a)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by the +Corresponding Source fixed on a durable physical medium +customarily used for software interchange. +* **b)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by a +written offer, valid for at least three years and valid for as +long as you offer spare parts or customer support for that product +model, to give anyone who possesses the object code either **(1)** a +copy of the Corresponding Source for all the software in the +product that is covered by this License, on a durable physical +medium customarily used for software interchange, for a price no +more than your reasonable cost of physically performing this +conveying of source, or **(2)** access to copy the +Corresponding Source from a network server at no charge. +* **c)** Convey individual copies of the object code with a copy of the +written offer to provide the Corresponding Source. This +alternative is allowed only occasionally and noncommercially, and +only if you received the object code with such an offer, in accord +with subsection 6b. +* **d)** Convey the object code by offering access from a designated +place (gratis or for a charge), and offer equivalent access to the +Corresponding Source in the same way through the same place at no +further charge. You need not require recipients to copy the +Corresponding Source along with the object code. If the place to +copy the object code is a network server, the Corresponding Source +may be on a different server (operated by you or a third party) +that supports equivalent copying facilities, provided you maintain +clear directions next to the object code saying where to find the +Corresponding Source. Regardless of what server hosts the +Corresponding Source, you remain obligated to ensure that it is +available for as long as needed to satisfy these requirements. +* **e)** Convey the object code using peer-to-peer transmission, provided +you inform other peers where the object code and Corresponding +Source of the work are being offered to the general public at no +charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A “User Product” is either **(1)** a “consumer product”, which means any +tangible personal property which is normally used for personal, family, +or household purposes, or **(2)** anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, “normally used” refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +### 7. Additional Terms + +“Additional permissions” are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + +* **a)** Disclaiming warranty or limiting liability differently from the +terms of sections 15 and 16 of this License; or +* **b)** Requiring preservation of specified reasonable legal notices or +author attributions in that material or in the Appropriate Legal +Notices displayed by works containing it; or +* **c)** Prohibiting misrepresentation of the origin of that material, or +requiring that modified versions of such material be marked in +reasonable ways as different from the original version; or +* **d)** Limiting the use for publicity purposes of names of licensors or +authors of the material; or +* **e)** Declining to grant rights under trademark law for use of some +trade names, trademarks, or service marks; or +* **f)** Requiring indemnification of licensors and authors of that +material by anyone who conveys the material (or modified versions of +it) with contractual assumptions of liability to the recipient, for +any liability that these contractual assumptions directly impose on +those licensors and authors. + +All other non-permissive additional terms are considered “further +restrictions” within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + +### 8. Termination + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated **(a)** +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and **(b)** permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +### 9. Acceptance Not Required for Having Copies + +You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +### 10. Automatic Licensing of Downstream Recipients + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +### 11. Patents + +A “contributor” is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, “control” includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To “grant” such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either **(1)** cause the Corresponding Source to be so +available, or **(2)** arrange to deprive yourself of the benefit of the +patent license for this particular work, or **(3)** arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. “Knowingly relying” means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is “discriminatory” if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license **(a)** in connection with copies of the covered work +conveyed by you (or copies made from those copies), or **(b)** primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +### 12. No Surrender of Others' Freedom + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + +### 13. Remote Network Interaction; Use with the GNU General Public License + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + +### 14. Revised Versions of this License + +The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License “or any later version” applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +### 15. Disclaimer of Warranty + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +### 16. Limitation of Liability + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + +### 17. Interpretation of Sections 15 and 16 + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +_END OF TERMS AND CONDITIONS_ + +## How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the “copyright” line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a “Source” link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a “copyright disclaimer” for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<>. diff --git a/Shadowlands 9.0.5 Scripts/mod_customserver/README.md b/Shadowlands 9.0.5 Scripts/mod_customserver/README.md new file mode 100644 index 0000000..4af0cb2 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customserver/README.md @@ -0,0 +1,2 @@ +# AzerothCore-Converted-Modules-to-latest-TrinityCore +AzerothCore Converted Modules to latest TrinityCore 9.0.5 Shadowlands diff --git a/Shadowlands 9.0.5 Scripts/mod_customserver/conf/mod_customserver.conf.dist b/Shadowlands 9.0.5 Scripts/mod_customserver/conf/mod_customserver.conf.dist new file mode 100644 index 0000000..fcfcf51 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customserver/conf/mod_customserver.conf.dist @@ -0,0 +1,15 @@ +[worldserver] + +################################################################################################### +# CUSTOM SERVER +################################################################################################### + +# Announce the module when the player logs in? + +CustomServer.Announce = 1 + +# Fireworks go off when the player levels up at specific intervals +# Intervals: 5, 10, 20, 30, 40, 50, 60, 70, 80 +# Enable the module? (1: true | 0: false) + +CustomServer.FireworkLevels = 1 \ No newline at end of file diff --git a/Shadowlands 9.0.5 Scripts/mod_customserver/src/mod_customserver.cpp b/Shadowlands 9.0.5 Scripts/mod_customserver/src/mod_customserver.cpp new file mode 100644 index 0000000..32b4bc5 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_customserver/src/mod_customserver.cpp @@ -0,0 +1,107 @@ +/* +# Custom Server Modifications # +#### A module for AzerothCore by [StygianTheBest](https://github.com/StygianTheBest/AzerothCore-Content/tree/master/Modules) +------------------------------------------------------------------------------------------------------------------ +### Description ### +------------------------------------------------------------------------------------------------------------------ +This module serves as a container for smaller scripts that don't need their own module. I also use it to test +ideas which is quicker and easier than writing a new module. +### Features ### +------------------------------------------------------------------------------------------------------------------ +- Firework Level: Shoots fireworks in the air when a player reaches specified levels. +### Data ### +------------------------------------------------------------------------------------------------------------------ +- Type: Server/Player +- Script: CustomServer +- Config: Yes + - Enable Module + - Enable Module Announce + - Enable Firework Levels +- SQL: No +### Version ### +------------------------------------------------------------------------------------------------------------------ +- v2017.07.14 - Release +- v2017.07.21 - Added Firework Levels +### Credits ### +------------------------------------------------------------------------------------------------------------------ +- [Blizzard Entertainment](http://blizzard.com) +- [TrinityCore](https://github.com/TrinityCore/TrinityCore/blob/3.3.5/THANKS) +- [SunwellCore](http://www.azerothcore.org/pages/sunwell.pl/) +- [AzerothCore](https://github.com/AzerothCore/azerothcore-wotlk/graphs/contributors) +- [AzerothCore Discord](https://discord.gg/gkt4y2x) +- [EMUDevs](https://youtube.com/user/EmuDevs) +- [AC-Web](http://ac-web.org/) +- [ModCraft.io](http://modcraft.io/) +- [OwnedCore](http://ownedcore.com/) +- [OregonCore](https://wiki.oregon-core.net/) +- [Wowhead.com](http://wowhead.com) +- [AoWoW](https://wotlk.evowow.com/) +### License ### +------------------------------------------------------------------------------------------------------------------ +- This code and content is released under the [GNU AGPL v3](https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3). +*/ + + +#include "Config.h" +#include "Chat.h" + +class CustomServer : public PlayerScript +{ + +public: + + CustomServer() : PlayerScript("CustomServer") { } + + void OnLogin(Player* player, bool firstLogin) + { + if (firstLogin) { + // Announce Module + if (sConfigMgr->GetBoolDefault("CustomServer.Announce", true)) + { + ChatHandler(player->GetSession()).SendSysMessage("This server is running the |cff4CFF00CustomServer |rmodule."); + } + } + } + + void OnLevelChanged(Player * player, uint8 oldLevel) + { + // Shoot fireworks into the air when hits a specific level + if (sConfigMgr->GetBoolDefault("CustomServer.FireworkLevels", true)) + { + if (oldLevel == 4) + player->CastSpell(player, 11541, true); + + if (oldLevel == 9) + player->CastSpell(player, 11541, true); + + if (oldLevel == 14) + player->CastSpell(player, 11541, true); + + if (oldLevel == 19) + player->CastSpell(player, 11541, true); + + if (oldLevel == 29) + player->CastSpell(player, 11541, true); + + if (oldLevel == 39) + player->CastSpell(player, 11541, true); + + if (oldLevel == 49) + player->CastSpell(player, 11541, true); + + if (oldLevel == 59) + player->CastSpell(player, 11541, true); + + if (oldLevel == 69) + player->CastSpell(player, 11541, true); + + if (oldLevel == 79) + player->CastSpell(player, 11541, true); + } + } +}; + +void AddCustomServerScripts() +{ + new CustomServer(); +} diff --git a/Shadowlands 9.0.5 Scripts/mod_solocraft/LICENSE.md b/Shadowlands 9.0.5 Scripts/mod_solocraft/LICENSE.md new file mode 100644 index 0000000..11e7763 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_solocraft/LICENSE.md @@ -0,0 +1,650 @@ +# GNU Affero General Public License + +_Version 3, 19 November 2007_ +_Copyright © 2007 Free Software Foundation, Inc. [http://fsf.org](http://fsf.org)_ + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +## Preamble + +The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: **(1)** assert copyright on the software, and **(2)** offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + +The precise terms and conditions for copying, distribution and +modification follow. + +## TERMS AND CONDITIONS + +### 0. Definitions + +“This License” refers to version 3 of the GNU Affero General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this +License. Each licensee is addressed as “you”. “Licensees” and +“recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a “modified version” of the +earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based +on the Program. + +To “propagate” a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” +to the extent that it includes a convenient and prominently visible +feature that **(1)** displays an appropriate copyright notice, and **(2)** +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +### 1. Source Code + +The “source code” for a work means the preferred form of the work +for making modifications to it. “Object code” means any non-source +form of a work. + +A “Standard Interface” means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other +than the work as a whole, that **(a)** is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and **(b)** serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +“Major Component”, in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + +The Corresponding Source for a work in source code form is that +same work. + +### 2. Basic Permissions + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + +### 3. Protecting Users' Legal Rights From Anti-Circumvention Law + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + +### 4. Conveying Verbatim Copies + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +### 5. Conveying Modified Source Versions + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + +* **a)** The work must carry prominent notices stating that you modified +it, and giving a relevant date. +* **b)** The work must carry prominent notices stating that it is +released under this License and any conditions added under section 7. +This requirement modifies the requirement in section 4 to +“keep intact all notices”. +* **c)** You must license the entire work, as a whole, under this +License to anyone who comes into possession of a copy. This +License will therefore apply, along with any applicable section 7 +additional terms, to the whole of the work, and all its parts, +regardless of how they are packaged. This License gives no +permission to license the work in any other way, but it does not +invalidate such permission if you have separately received it. +* **d)** If the work has interactive user interfaces, each must display +Appropriate Legal Notices; however, if the Program has interactive +interfaces that do not display Appropriate Legal Notices, your +work need not make them do so. + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +“aggregate” if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +### 6. Conveying Non-Source Forms + +You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + +* **a)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by the +Corresponding Source fixed on a durable physical medium +customarily used for software interchange. +* **b)** Convey the object code in, or embodied in, a physical product +(including a physical distribution medium), accompanied by a +written offer, valid for at least three years and valid for as +long as you offer spare parts or customer support for that product +model, to give anyone who possesses the object code either **(1)** a +copy of the Corresponding Source for all the software in the +product that is covered by this License, on a durable physical +medium customarily used for software interchange, for a price no +more than your reasonable cost of physically performing this +conveying of source, or **(2)** access to copy the +Corresponding Source from a network server at no charge. +* **c)** Convey individual copies of the object code with a copy of the +written offer to provide the Corresponding Source. This +alternative is allowed only occasionally and noncommercially, and +only if you received the object code with such an offer, in accord +with subsection 6b. +* **d)** Convey the object code by offering access from a designated +place (gratis or for a charge), and offer equivalent access to the +Corresponding Source in the same way through the same place at no +further charge. You need not require recipients to copy the +Corresponding Source along with the object code. If the place to +copy the object code is a network server, the Corresponding Source +may be on a different server (operated by you or a third party) +that supports equivalent copying facilities, provided you maintain +clear directions next to the object code saying where to find the +Corresponding Source. Regardless of what server hosts the +Corresponding Source, you remain obligated to ensure that it is +available for as long as needed to satisfy these requirements. +* **e)** Convey the object code using peer-to-peer transmission, provided +you inform other peers where the object code and Corresponding +Source of the work are being offered to the general public at no +charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A “User Product” is either **(1)** a “consumer product”, which means any +tangible personal property which is normally used for personal, family, +or household purposes, or **(2)** anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, “normally used” refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +### 7. Additional Terms + +“Additional permissions” are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + +* **a)** Disclaiming warranty or limiting liability differently from the +terms of sections 15 and 16 of this License; or +* **b)** Requiring preservation of specified reasonable legal notices or +author attributions in that material or in the Appropriate Legal +Notices displayed by works containing it; or +* **c)** Prohibiting misrepresentation of the origin of that material, or +requiring that modified versions of such material be marked in +reasonable ways as different from the original version; or +* **d)** Limiting the use for publicity purposes of names of licensors or +authors of the material; or +* **e)** Declining to grant rights under trademark law for use of some +trade names, trademarks, or service marks; or +* **f)** Requiring indemnification of licensors and authors of that +material by anyone who conveys the material (or modified versions of +it) with contractual assumptions of liability to the recipient, for +any liability that these contractual assumptions directly impose on +those licensors and authors. + +All other non-permissive additional terms are considered “further +restrictions” within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + +### 8. Termination + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated **(a)** +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and **(b)** permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +### 9. Acceptance Not Required for Having Copies + +You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +### 10. Automatic Licensing of Downstream Recipients + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +### 11. Patents + +A “contributor” is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, “control” includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To “grant” such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either **(1)** cause the Corresponding Source to be so +available, or **(2)** arrange to deprive yourself of the benefit of the +patent license for this particular work, or **(3)** arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. “Knowingly relying” means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is “discriminatory” if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license **(a)** in connection with copies of the covered work +conveyed by you (or copies made from those copies), or **(b)** primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +### 12. No Surrender of Others' Freedom + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + +### 13. Remote Network Interaction; Use with the GNU General Public License + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + +### 14. Revised Versions of this License + +The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License “or any later version” applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +### 15. Disclaimer of Warranty + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +### 16. Limitation of Liability + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + +### 17. Interpretation of Sections 15 and 16 + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +_END OF TERMS AND CONDITIONS_ + +## How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the “copyright” line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a “Source” link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + +You should also get your employer (if you work as a programmer) or school, +if any, to sign a “copyright disclaimer” for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<>. diff --git a/Shadowlands 9.0.5 Scripts/mod_solocraft/README.md b/Shadowlands 9.0.5 Scripts/mod_solocraft/README.md new file mode 100644 index 0000000..4af0cb2 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_solocraft/README.md @@ -0,0 +1,2 @@ +# AzerothCore-Converted-Modules-to-latest-TrinityCore +AzerothCore Converted Modules to latest TrinityCore 9.0.5 Shadowlands diff --git a/Shadowlands 9.0.5 Scripts/mod_solocraft/conf/mod_solocraft.conf.dist b/Shadowlands 9.0.5 Scripts/mod_solocraft/conf/mod_solocraft.conf.dist new file mode 100644 index 0000000..41f53da --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_solocraft/conf/mod_solocraft.conf.dist @@ -0,0 +1,21 @@ +[worldserver] + +################################################################################################### +# SOLOCRAFT +################################################################################################### + +# Enable the module? (1: true | 0: false) + +Solocraft.Enable = 1 + +# Announce the module when the player logs in? + +Solocraft.Announce = 1 + +# Difficulty Multipliers +# Defaults: 5, 10, 25, 10 + +Solocraft.Dungeon = 5 +Solocraft.Heroic = 10 +Solocraft.Raid25 = 25 +Solocraft.Raid40 = 10 \ No newline at end of file diff --git a/Shadowlands 9.0.5 Scripts/mod_solocraft/src/mod_solocraft.cpp b/Shadowlands 9.0.5 Scripts/mod_solocraft/src/mod_solocraft.cpp new file mode 100644 index 0000000..17d7682 --- /dev/null +++ b/Shadowlands 9.0.5 Scripts/mod_solocraft/src/mod_solocraft.cpp @@ -0,0 +1,184 @@ +/* + +# SoloCraft # + +#### A module for AzerothCore by [StygianTheBest](https://github.com/StygianTheBest/AzerothCore-Content/tree/master/Modules) +------------------------------------------------------------------------------------------------------------------ + + +### Description ### +------------------------------------------------------------------------------------------------------------------ +These are my extensions to the TrinityCore WoW Server Emulator for WoW version 3.3.5a that are targetted toward +soloing (or with a very small party) the group content in WoW like dungeons and raids at the level the content was +meant for instead of having to come back and solo when you are 20 levels higher than the content. + +The goal is to automatically apply stat buffs, HP regeneration, procs like dispelling target regeneration buffs, +and other things to the player based on the instance the player has entered and the size of the party they are in +to make up the non-deal party makeup. + + +## To-Do ### +------------------------------------------------------------------------------------------------------------------ +- Verify player pets are buffed accordingly +- Dispel target regeneration +- Provide unlimited http://www.wowhead.com/item=17333/aqual-quintessence + - Not Needed (Sadly), the need to douse the runes with Aqual Quintessence was removed in 3.0.8 + + +## Data ### +------------------------------------------------------------------------------------------------------------------ +- Type: Server/Player +- Script: Solocraft +- Config: Yes + - Enable Module + - Enable Module Announce + - Set Difficulty for Instance Types +- SQL: No + + +### Version ### +------------------------------------------------------------------------------------------------------------------ +- v2017.09.04 - Add config options for difficulty levels +- v2017.09.05 - Update strings, Add module announce + + +### Credits ### +------------------------------------------------------------------------------------------------------------------ +- [David Macalaster](https://github.com/DavidMacalaster/Solocraft) +- [Blizzard Entertainment](http://blizzard.com) +- [TrinityCore](https://github.com/TrinityCore/TrinityCore/blob/3.3.5/THANKS) +- [SunwellCore](http://www.azerothcore.org/pages/sunwell.pl/) +- [AzerothCore](https://github.com/AzerothCore/azerothcore-wotlk/graphs/contributors) +- [AzerothCore Discord](https://discord.gg/gkt4y2x) +- [EMUDevs](https://youtube.com/user/EmuDevs) +- [AC-Web](http://ac-web.org/) +- [ModCraft.io](http://modcraft.io/) +- [OwnedCore](http://ownedcore.com/) +- [OregonCore](https://wiki.oregon-core.net/) +- [Wowhead.com](http://wowhead.com) +- [AoWoW](https://wotlk.evowow.com/) + + +### License ### +------------------------------------------------------------------------------------------------------------------ +- This code and content is released under the [GNU AGPL v3](https://github.com/azerothcore/azerothcore-wotlk/blob/master/LICENSE-AGPL3). + +*/ + +#include + +#include "Config.h" +#include "ScriptMgr.h" +#include "Unit.h" +#include "Player.h" +#include "Pet.h" +#include "Map.h" +#include "Group.h" +#include "InstanceScript.h" +#include "Chat.h" +#include "Log.h" + +/* + * TODO: + * 1. Dispel target regeneration + * 2. Provide unlimited http://www.wowhead.com/item=17333/aqual-quintessence + */ + +namespace { + +class solocraft_player_instance_handler : public PlayerScript { +public: + solocraft_player_instance_handler() : PlayerScript("solocraft_player_instance_handler") { + TC_LOG_INFO("scripts.solocraft.player.instance", "[Solocraft] solocraft_player_instance_handler Loaded"); + } + + void OnLogin(Player *player, bool firstLogin) override { + if (firstLogin) { + if (sConfigMgr->GetBoolDefault("Solocraft.Enable", true)) + { + ChatHandler(player->GetSession()).SendSysMessage("This server is running the |cff4CFF00SoloCraft |rmodule."); + } + } + } + + void OnMapChanged(Player *player) override { + if (sConfigMgr->GetBoolDefault("Solocraft.Enable", true)) { + Map *map = player->GetMap(); + int difficulty = CalculateDifficulty(map, player); + int numInGroup = GetNumInGroup(player); + ApplyBuffs(player, map, difficulty, numInGroup); + } + } +private: + std::map _unitDifficulty; + + int CalculateDifficulty(Map *map, Player *player) { + int difficulty = 1; + if (map) { + if (map->Is25ManRaid()) { + difficulty = 25; + } else if (map->IsHeroic()) { + difficulty = 10; + } else if (map->IsRaid()) { + difficulty = 40; + } else if (map->IsDungeon()) { + difficulty = 5; + } + } + return difficulty; + } + + int GetNumInGroup(Player *player) { + int numInGroup = 1; + Group *group = player->GetGroup(); + if (group) { + Group::MemberSlotList const& groupMembers = group->GetMemberSlots(); + numInGroup = groupMembers.size(); + } + return numInGroup; + } + + void ApplyBuffs(Player *player, Map *map, int difficulty, int numInGroup) { + ClearBuffs(player, map); + if (difficulty > 1) { + //InstanceMap *instanceMap = map->ToInstanceMap(); + //InstanceScript *instanceScript = instanceMap->GetInstanceScript(); + + ChatHandler(player->GetSession()).PSendSysMessage("Entered %s (difficulty = %d, numInGroup = %d)", + map->GetMapName(), difficulty, numInGroup); + + _unitDifficulty[player->GetGUID()] = difficulty; + for (int32 i = STAT_STRENGTH; i < MAX_STATS; ++i) { + player->ApplyStatPctModifier(UnitMods(UNIT_MOD_STAT_START + i), TOTAL_PCT, float(difficulty * 100)); + } + player->SetFullHealth(); + if (player->GetPowerType() == POWER_MANA) { + player->SetPower(POWER_MANA, player->GetMaxPower(POWER_MANA)); + } + } + } + + void ClearBuffs(Player *player, Map *map) { + std::map::iterator unitDifficultyIterator = _unitDifficulty.find(player->GetGUID()); + if (unitDifficultyIterator != _unitDifficulty.end()) { + int difficulty = unitDifficultyIterator->second; + _unitDifficulty.erase(unitDifficultyIterator); + + // Inform the player + std::ostringstream ss; + ss << "|cffFF0000[SoloCraft] |cffFF8000" << player->GetName() << " exited to %s - Reverting Difficulty Offset: %d."; + ChatHandler(player->GetSession()).PSendSysMessage(ss.str().c_str(), map->GetMapName(), difficulty); + + for (int32 i = STAT_STRENGTH; i < MAX_STATS; ++i) { + player->ApplyStatPctModifier(UnitMods(UNIT_MOD_STAT_START + i), TOTAL_PCT, float(difficulty * 100)); + } + } + } +}; + +} + + +void AddSC_solocraft() { + new solocraft_player_instance_handler(); +}