⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mapnotes.lua

📁 时间太紧了
💻 LUA
📖 第 1 页 / 共 5 页
字号:
--[[                ********** Map Notes **********Adds the posibility of marking notes in the WorldMapFrame and more...Author: Sir.Bender [Meog on WoW Forums]Maintained by: OysteinDate: 22. May 2005Version: Map Notes (Cont.) 1.4aWebsite: http://curse-gaming.com/mod.php?addid=1285em@il:opium@geheb.comThanks to Jorol from the WoW-Beta forums, for updating the localization.luaand some other small improvements...Additional Note: Main idea: CTmod, requested on cosmosui.org                 Coded from the scratch, only took one idea from CTmod                 (how to determine when a click is useful) but coded                 new in a little other way...		Marsman 3/27/05 - Changed Player to Player notes to use Sky		Oystein - Added ability to put notes on BG maps and misc fixes		Sinaloit - Converted from Cosmos_RegisterChatCommand to Sky.registerSlashCommand, updated default slash commands				fixed thottbot_replace, Sky users can now send notes to non Sky users (cannot receive though).$Id: MapNotes.lua 1815 2005-06-13 03:47:20Z legorol $$Rev: 1815 $$LastChangedBy: legorol $$Date: 2005-06-12 22:47:20 -0500 (Sun, 12 Jun 2005) $]]MapNotes_Mininote_UpdateRate = 0.01;-- changing this may couse problems, if there are more notes in one zone while decreasing value-- any number from 1 to 100 (otherwise there aren't enough templates for the POI's, but these can be simply added)MapNotes_NotesPerZone = 100;MapNotes_MinDiff = 7;MAPNOTES_LINETEMPLATESIZE = 256;MAPNOTES_MAXLINES = 20;MapNotes_Options = {};MapNotes_Data = {};MapNotes_Data[1] = {};MapNotes_Data[2] = {};MapNotes_Lines = {};MapNotes_Lines[1] = {};MapNotes_Lines[2] = {};MapNotes_MiniNote_Data = {};MapNotes_MiniNote_IsInCity = false;MapNotes_MiniNote_MapzoomInit = false;MapNotes_SetNextAsMiniNote = 0;MapNotes_AllowOneNote = 0;MapNotes_LastReceivedNote_xPos = 0;MapNotes_LastReceivedNote_yPos = 0;MapNotes_ZoneNames = {};MapNotes_LastClick = {};MapNotes_LastClick.time = 0;MapNotes_LastLineClick = {};MapNotes_LastLineClick.time = 0;MapNotes_TempData_Id = "";MapNotes_TempData_Creator = "";MapNotes_TempData_xPos = "";MapNotes_TempData_yPos = "";MapNotes_TempData_Icon = "";MapNotes_TempData_TextColor = "";MapNotes_TempData_Info1Color = "";MapNotes_TempData_Info2Color = "";MapNotes_PartyNoteData = {};MapNotes_tloc_xPos = nil;MapNotes_tloc_yPos = nil;MapNotes_Colors = {};MapNotes_Colors[0] = {r = 1.0, g = 0.82, b = 0.0};MapNotes_Colors[1] = {r = 0.55, g = 0.46, b = 0.04};MapNotes_Colors[2] = {r = 0.87, g = 0.06, b = 0.0};MapNotes_Colors[3] = {r = 0.56, g = 0.0, b = 0.0};MapNotes_Colors[4] = {r = 0.18, g = 0.7, b = 0.2};MapNotes_Colors[5] = {r = 0.0, g = 0.39, b = 0.05};MapNotes_Colors[6] = {r = 0.42, g = 0.47, b = 0.87};MapNotes_Colors[7] = {r = 0.25, g = 0.35, b = 0.66};MapNotes_Colors[8] = {r = 1.0, g = 1.0, b = 1.0};MapNotes_Colors[9] = {r = 0.65, g = 0.65, b = 0.65};-- some constant values...MapNotes_Const[1] = {};MapNotes_Const[2] = {};MapNotes_Const[1][0] = { xscale = 11016.6, yscale = 7399.9 };MapNotes_Const[1][1] = { scale = 0.15670371525706, xoffset = 0.41757282062541, yoffset = 0.33126468682991, xscale = 12897.3, yscale = 8638.1 };MapNotes_Const[1][2] = { scale = 0.13779501505279, xoffset = 0.55282036918049, yoffset = 0.30400571307545, xscale = 15478.8, yscale = 10368.0 };MapNotes_Const[1][3] = { scale = 0.17799008894522, xoffset = 0.38383175154516, yoffset = 0.18206216123156, xscale = 19321.8, yscale = 12992.7 };MapNotes_Const[1][4] = { scale = 0.02876626176374, xoffset = 0.38392150175204, yoffset = 0.10441296545475, xscale = 25650.4, yscale = 17253.2 };MapNotes_Const[1][5] = { scale = 0.12219839120669, xoffset = 0.34873187115693, yoffset = 0.50331046935371, xscale = 38787.7, yscale = 26032.1 };MapNotes_Const[1][6] = { scale = 0.14368294970080, xoffset = 0.51709782709100, yoffset = 0.44802818134926 };MapNotes_Const[1][7] = { scale = 0.14266384095509, xoffset = 0.49026338351379, yoffset = 0.60461876174686 };MapNotes_Const[1][8] = { scale = 0.15625084006464, xoffset = 0.41995800144849, yoffset = 0.23097545880609 };MapNotes_Const[1][9] = { scale = 0.18885970960818, xoffset = 0.31589651244686, yoffset = 0.61820581746798 };MapNotes_Const[1][10] = { scale = 0.06292695969921, xoffset = 0.50130287793373, yoffset = 0.17560823085517 };MapNotes_Const[1][11] = { scale = 0.13960673216274, xoffset = 0.40811854919226, yoffset = 0.53286226907346 };MapNotes_Const[1][12] = { scale = 0.03811449638057, xoffset = 0.56378554142668, yoffset = 0.42905218646258 };MapNotes_Const[1][13] = { scale = 0.18885969712845, xoffset = 0.33763582469211, yoffset = 0.75815224951929 };MapNotes_Const[1][14] = { scale = 0.13272833611061, xoffset = 0.37556627748617, yoffset = 0.40285135292988 };MapNotes_Const[1][15] = { scale = 0.18750104661175, xoffset = 0.46971301480866, yoffset = 0.76120931364891 };MapNotes_Const[1][16] = { scale = 0.13836131003639, xoffset = 0.36011098024729, yoffset = 0.03948322979210 };MapNotes_Const[1][17] = { scale = 0.27539211944292, xoffset = 0.39249347333450, yoffset = 0.45601063260257 };MapNotes_Const[1][18] = { scale = 0.11956582877920, xoffset = 0.47554411191734, yoffset = 0.68342356389650 };MapNotes_Const[1][19] = { scale = 0.02836291430658, xoffset = 0.44972878210917, yoffset = 0.55638479002362 };MapNotes_Const[1][20] = { scale = 0.10054401185671, xoffset = 0.44927594451520, yoffset = 0.76494573629405 };MapNotes_Const[1][21] = { scale = 0.19293573573141, xoffset = 0.47237382938446, yoffset = 0.17390990272233 };MapNotes_Const[2][0] = { xscale = 10448.3, yscale = 7072.7, cityscale = 1.565 };MapNotes_Const[2][1] = { scale = 0.07954563533736, xoffset = 0.43229874660542, yoffset = 0.25425926375262, xscale = 12160.5, yscale = 8197.8, cityscale = 1.687 };MapNotes_Const[2][2] = { scale = 0.10227310921644, xoffset = 0.47916793249546, yoffset = 0.32386170078419, xscale = 14703.1, yscale = 9825.0, cityscale = 1.882 };MapNotes_Const[2][3] = { scale = 0.07066771883566, xoffset = 0.51361415033147, yoffset = 0.56915717993261, xscale = 18568.7, yscale = 12472.2, cityscale = 2.210 };MapNotes_Const[2][4] = { scale = 0.09517074521836, xoffset = 0.48982154167011, yoffset = 0.76846519986510, xscale = 24390.3, yscale = 15628.5, cityscale = 2.575 };MapNotes_Const[2][5] = { scale = 0.08321525646393, xoffset = 0.04621224670174, yoffset = 0.61780780524905, xscale = 37012.2, yscale = 25130.6, cityscale = 2.651 };MapNotes_Const[2][6] = { scale = 0.07102298961531, xoffset = 0.47822105868635, yoffset = 0.73863555048516 };MapNotes_Const[2][7] = { scale = 0.13991525534426, xoffset = 0.40335096278072, yoffset = 0.48339696712179 };MapNotes_Const[2][8] = { scale = 0.07670475476181, xoffset = 0.43087243362495, yoffset = 0.73224350550454 };MapNotes_Const[2][9] = { scale = 0.10996723642661, xoffset = 0.51663255550387, yoffset = 0.15624753972085 };MapNotes_Const[2][10] = { scale = 0.09860350595046, xoffset = 0.41092682316676, yoffset = 0.65651531970162 };MapNotes_Const[2][11] = { scale = 0.09090931690055, xoffset = 0.42424361247460, yoffset = 0.30113436864162 };MapNotes_Const[2][12] = { scale = 0.02248317426784, xoffset = 0.47481923366335, yoffset = 0.51289242617182 };MapNotes_Const[2][13] = { scale = 0.07839152145224, xoffset = 0.51118749188138, yoffset = 0.50940913489577 };MapNotes_Const[2][14] = { scale = 0.06170112311456, xoffset = 0.49917278340928, yoffset = 0.68359285304999 };MapNotes_Const[2][15] = { scale = 0.06338794005823, xoffset = 0.46372051266487, yoffset = 0.57812379382509 };MapNotes_Const[2][16] = { scale = 0.11931848806212, xoffset = 0.35653502290090, yoffset = 0.24715695496522 };MapNotes_Const[2][17] = { scale = 0.03819701270887, xoffset = 0.41531450060561, yoffset = 0.67097280492581 };MapNotes_Const[2][18] = { scale = 0.18128603034401, xoffset = 0.39145470225916, yoffset = 0.79412224886668 };MapNotes_Const[2][19] = { scale = 0.06516347991404, xoffset = 0.51769795272070, yoffset = 0.72815974701615 };MapNotes_Const[2][20] = { scale = 0.10937523495111, xoffset = 0.49929119700867, yoffset = 0.25567971676068 };MapNotes_Const[2][21] = { scale = 0.12837403412087, xoffset = 0.36837217317549, yoffset = 0.15464954319582 };MapNotes_Const[2][22] = { scale = 0.02727719546939, xoffset = 0.42973999245660, yoffset = 0.23815358517831 };MapNotes_Const[2][23] = { scale = 0.12215946583965, xoffset = 0.44270955019641, yoffset = 0.17471356786018 };MapNotes_Const[2][24] = { scale = 0.09943208435841, xoffset = 0.36884571674582, yoffset = 0.71874918595783 };MapNotes_Const[2][25] = { scale = 0.11745423014662, xoffset = 0.46561438951659, yoffset = 0.40971063365152 };function MapNotes_OnLoad()	for i=1, 21, 1 do		MapNotes_Data[1][i] = {};		MapNotes_Lines[1][i] = {};	end	for i=1, 26, 1 do		MapNotes_Data[2][i] = {};		MapNotes_Lines[2][i] = {};	end	MapNotes_RegisterDropDownButton(MAPNOTES_SHOWNOTES, "MapNotes_Options.shownotes", "MapNotesDropDownSubMenu");	MiniNotePOI.TimeSinceLastUpdate = 0;	MapNotes_LoadZones1(GetMapZones(1));	MapNotes_LoadZones2(GetMapZones(2));	WorldMapMagnifyingGlassButton:SetText(ZOOM_OUT_BUTTON_TEXT.."\n"..MAPNOTES_WORLDMAPHELP);	if (Sky) then		if ( ThottbotReplace_ReplaceIt ) then			ThottbotReplace_ReplaceIt();		end		Sky.registerSlashCommand(			{				id = "MapNotesEnableCmd";				commands = MAPNOTES_ENABLE_COMMANDS;				onExecute = MapNotes_GetNoteBySlashCommand;				helpText = MAPNOTES_CHAT_COMMAND_ENABLE_INFO;			}		);		Sky.registerSlashCommand(			{				id = "MapNotesOneNoteCmd";				commands = MAPNOTES_ONEOTE_COMMANDS;				onExecute = MapNotes_OneNote;				helpText = MAPNOTES_CHAT_COMMAND_ONENOTE_INFO;			}		);		Sky.registerSlashCommand(			{				id = "MapNotesMiniNoteCmd";				commands = MAPNOTES_MININOTE_COMMANDS;				onExecute = MapNotes_NextMiniNote;				helpText = MAPNOTES_CHAT_COMMAND_MININOTE_INFO;			}		);		Sky.registerSlashCommand(			{				id = "MapNotesMiniNoteOnlyCmd";				commands = MAPNOTES_MININOTEONLY_COMMANDS;				onExecute = MapNotes_NextMiniNoteOnly;				helpText = MAPNOTES_CHAT_COMMAND_MININOTEONLY_INFO;			}		);		Sky.registerSlashCommand(			{				id = "MapNotesMiniNoteOffCmd";				commands = MAPNOTES_MININOTEOFF_COMMANDS;				onExecute = MapNotes_ClearMiniNote;				helpText = MAPNOTES_CHAT_COMMAND_MININOTEOFF_INFO;			}		);		Sky.registerSlashCommand(			{				id = "MapNotesMntlocCmd";				commands = MAPNOTES_MNTLOC_COMMANDS;				onExecute = MapNotes_mntloc;				helpText = MAPNOTES_CHAT_COMMAND_MNTLOC_INFO;			}		);		Sky.registerSlashCommand(			{				id = "MapNotesQuickNoteCmd";				commands = MAPNOTES_QUICKNOTE_COMMANDS;				onExecute = MapNotes_Quicknote;				helpText = MAPNOTES_CHAT_COMMAND_QUICKNOTE;			}		);		Sky.registerSlashCommand(			{				id = "MapNotesQuickTlocCmd";				commands = MAPNOTES_QUICKTLOC_COMMANDS;				onExecute = MapNotes_Quicktloc;				helpText = MAPNOTES_CHAT_COMMAND_QUICKTLOC;			}		);		Sky.registerAlert(			{				id = "MN";				func = MapNotes_GetNoteFromChat;				description = "MapNotes Listener"			}		);	else		SlashCmdList["MAPNOTE"] = MapNotes_GetNoteBySlashCommand;		for i = 1, table.getn(MAPNOTES_ENABLE_COMMANDS) do setglobal("SLASH_MAPNOTE"..i, MAPNOTES_ENABLE_COMMANDS[i]); end		SlashCmdList["ONENOTE"] = MapNotes_OneNote;		for i = 1, table.getn(MAPNOTES_ONEOTE_COMMANDS) do setglobal("SLASH_ONENOTE"..i, MAPNOTES_ONEOTE_COMMANDS[i]); end		SlashCmdList["MININOTE"] = MapNotes_NextMiniNote;		for i = 1, table.getn(MAPNOTES_MININOTE_COMMANDS) do setglobal("SLASH_MININOTE"..i, MAPNOTES_MININOTE_COMMANDS[i]); end		SlashCmdList["MININOTEONLY"] = MapNotes_NextMiniNoteOnly;		for i = 1, table.getn(MAPNOTES_MININOTEONLY_COMMANDS) do setglobal("SLASH_MININOTEONLY"..i, MAPNOTES_MININOTEONLY_COMMANDS[i]); end		SlashCmdList["MININOTEOFF"] = MapNotes_ClearMiniNote;		for i = 1, table.getn(MAPNOTES_MININOTEOFF_COMMANDS) do setglobal("SLASH_MININOTEOFF"..i, MAPNOTES_MININOTEOFF_COMMANDS[i]); end		SlashCmdList["MNTLOC"] = MapNotes_mntloc;		for i = 1, table.getn(MAPNOTES_MNTLOC_COMMANDS) do setglobal("SLASH_MNTLOC"..i, MAPNOTES_MNTLOC_COMMANDS[i]); end		SlashCmdList["QUICKNOTE"] = MapNotes_Quicknote;		for i = 1, table.getn(MAPNOTES_QUICKNOTE_COMMANDS) do setglobal("SLASH_QUICKNOTE"..i, MAPNOTES_QUICKNOTE_COMMANDS[i]); end		SlashCmdList["QUICKTLOC"] = MapNotes_Quicktloc;		for i = 1, table.getn(MAPNOTES_QUICKTLOC_COMMANDS) do setglobal("SLASH_QUICKTLOC"..i, MAPNOTES_QUICKTLOC_COMMANDS[i]); end		-- hooking the chat when Cosmos is not installed		local old_ChatFrame_OnEvent = ChatFrame_OnEvent;		function ChatFrame_OnEvent(event)			if (strsub(event, 1, 16) == "CHAT_MSG_WHISPER" and strsub(arg1, 1, 6) == "<MapN>") then				if (strsub(event, 17) == "_INFORM") then					-- do nothing				else					MapNotes_GetNoteFromChat(arg1, arg2);				end			else				old_ChatFrame_OnEvent(event);			end		end			end	MapNotes_CurrentZoneFix_SetupFix();endfunction MapNotes_CurrentZoneFix_SetupFix()	-- CurrentZoneFix v2.0 by Legorol	-- email: legorol@cosmosui.org		local versionID = 20;	local id = CurrentZoneFix_FixInPlace;		if ( id ) then		id = tonumber(id);		if ( id and id >= versionID ) then			return;		elseif ( not SetMapToCurrentZone(true) ) then--			DEFAULT_CHAT_FRAME:AddMessage("Warning! Obsolete version "..--				"of CurrentZoneFix function detected. The old "..--				"version is being loaded either as a standalone "..--				"AddOn, or as code embedded inside another AddOn. "..--				"You must update it to avoid bugs with the map!",1,0,0)			return;		end	end		local continent,zone,name	local zoneID={};	local orig_SetMapToCurrentZone;		for continent in ipairs{GetMapContinents()} do		for zone,name in ipairs{GetMapZones(continent)} do			zoneID[name] = zone;		end	end		orig_SetMapToCurrentZone = SetMapToCurrentZone;	SetMapToCurrentZone = function(deactivate)		if (deactivate) then			SetMapToCurrentZone = orig_SetMapToCurrentZone;			CurrentZoneFix_FixInPlace = nil;			return true;		end				orig_SetMapToCurrentZone();		if ( GetCurrentMapZone()==0 and GetCurrentMapContinent()>0 ) then			SetMapZoom(GetCurrentMapContinent(),zoneID[GetRealZoneText()]);		else			SetMapToCurrentZone = orig_SetMapToCurrentZone;			CurrentZoneFix_FixInPlace = "Deactivated "..versionID;		end	end		CurrentZoneFix_FixInPlace = versionID;end-- don't know how to get these in one function (hanvn't tried often)function MapNotes_LoadZones1(...)	MapNotes_ZoneNames[1] = {};	for i=1, arg.n, 1 do		MapNotes_ZoneNames[1][MapNotes_ZoneShift[1][i]] = arg[i];	end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -