Пользовательские дополнения

На главную


Geodata

Геодата необходима для проецирования координат точки в реальном мира в координаты текстуры интерфейсной карты.

Если геодата получена, то таблица с полями:

  x, y: number (int) - мировые координаты точки левого нижнего угла карты
  width, height: number (int) - размер зоны (в мировых единицах), охватываемой картой.

Пример проецирования:

local geodata = cartographer.GetPlayerGeodata( unitId, currentZonesMapId )
if geodata then
  local pos = object.GetPos( unitId )
  if pos then

    local pixelsPerMeterX = ( MAP_TEXTURE_X / geodata.width )
    local pixelsPerMeterY = ( MAP_TEXTURE_Y / geodata.height )
    local mapCenterX = geodata.x + ( geodata.width / 2 )
    local mapCenterY = geodata.y + ( geodata.height / 2 )

    texturePosX = math.ceil( ( pos.posX - mapCenterX ) * pixelsPerMeterX )
    texturePosY = math.ceil( ( mapCenterY - pos.posY ) * pixelsPerMeterY )

  end
end

Возвращается различными методами, если точка находится в зоне, принадлежащей интерфейсной карте зон zonesMapId. Если она не находится в этих зонах, то геодата не может быть получена и возвращается nil.

Кроме того nil возвращается для тех интерфейсных карт зон, у которых флаг isShowPositions = false. Это могут быть, например, общая карта мира, или чистилище. Также геодата не возвращается для карт, указанных в ресурсах, как карты неизвестного места.

Используется информация и о зоне самой точки и о зоне, в которой эта точка должна быть отображена. Это сделано, так как:

Работает только для главного игрока, членов его группы и рейда, а так же для игроков, задетекченных детекторами, если такие есть. Также возвращается для целевых и финишной точки заданий.

Search: "CategoryLuaApi" "CategoryCartographer"

CategoryCartographer
EventAvatarClientZoneChanged
EventAvatarMapModifiersChanged
EventAvatarZoneChanged
EventNavigateEnabledChanged
EventSosFinished
EventSosStarted
FunctionCartographerCanNavigateToPoint
FunctionCartographerGetCurrentMapInfo
FunctionCartographerGetCurrentMapModifiers
FunctionCartographerGetCurrentZoneAttributes
FunctionCartographerGetCurrentZoneInfo
FunctionCartographerGetMapBlockInfo
FunctionCartographerGetMapBlocks
FunctionCartographerGetMapMarkerObjects
FunctionCartographerGetMapMarkers
FunctionCartographerGetMapModifierInfo
FunctionCartographerGetMapModifierValuedObject
FunctionCartographerGetMarkerInfo
FunctionCartographerGetObjectGeodata
FunctionCartographerGetQuestGeodata
FunctionCartographerGetQuestObjectiveGeodata
FunctionCartographerGetSosInfo
FunctionCartographerGetSosObjects
FunctionCartographerGetZonesMapId
FunctionCartographerGetZonesMapInfo
FunctionCartographerGetZonesMapLowQuests
FunctionCartographerGetZonesMapQuests
FunctionCartographerIsCurrentZoneAnonymizedMap
FunctionCartographerIsCurrentZoneRiftMap
FunctionCartographerIsFinalQuestCompleted
FunctionCartographerIsOnCommon
FunctionRulesGetZonesMaps
FunctionUnitGetZonesMapId
Geodata
MapModifierId


CategoryLuaApi CategoryTypes CategoryPosition CategoryCartographer

На главную