View Single Post
04-23-18, 11:06 AM   #14
ircdirk
A Molten Giant
 
ircdirk's Avatar
AddOn Author - Click to view addons
Join Date: Nov 2014
Posts: 823
Originally Posted by Rythal View Post
For overland that will work, but for scenario's, dungeons, micros, and instances the old drawing methods will no longer work since dungeon levels are gone. That means we can no longer draw the entire thing tiny and zoom/scale to it adjusting based on your dungeon level. It also no longer provides the filenames of the maps being drawn, so that will have to be mined and added for every possible map we want to manually create (as far as I can tell so far).

Overland will also have problems as when you enter a microdungeon, your mapid doesn't change only your dungeon level so carb knows your still in the particular zone.. in the alpha it'll be an entirely new mapid so it won't know your still in vale of eternal blossoms instead of shrine of seven stars as the get current map will return 392 for first level, 393 for second level, 390 for in the zone itself and not the shrine.. each with it's own map that carb will need to handle, and table conversions to know what zone you actually are in.
WorldMapFrame is rendered here: https://github.com/tomrus88/Blizzard...rame.lua#L1212 so we can see usage of those functions i describe below.

Textures of uiMapID are handled by GetMapArtLayerTextures function as it returns textures table:

Code:
Name = "GetMapArtLayerTextures",
			Type = "Function",

			Arguments =
			{
				{ Name = "uiMapID", Type = "number", Nilable = false },
				{ Name = "layerIndex", Type = "number", Nilable = false },
			},

			Returns =
			{
				{ Name = "textures", Type = "table", InnerType = "number", Nilable = false },
}
https://github.com/tomrus88/Blizzard...tation.lua#L76

Also GetMapInfo will return many information including map ParentID and UIMapType:

Code:
Name = "UIMapType",
			Type = "Enumeration",
			NumValues = 7,
			MinValue = 0,
			MaxValue = 6,
			Fields =
			{
				{ Name = "Cosmic", Type = "UIMapType", EnumValue = 0 },
				{ Name = "World", Type = "UIMapType", EnumValue = 1 },
				{ Name = "Continent", Type = "UIMapType", EnumValue = 2 },
				{ Name = "Zone", Type = "UIMapType", EnumValue = 3 },
				{ Name = "Dungeon", Type = "UIMapType", EnumValue = 4 },
				{ Name = "Micro", Type = "UIMapType", EnumValue = 5 },
				{ Name = "Orphan", Type = "UIMapType", EnumValue = 6 },
},
https://github.com/tomrus88/Blizzard...ation.lua#L291

Last edited by ircdirk : 04-23-18 at 12:31 PM.
  Reply With Quote