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

На главную


common.GetPosConverterParams()

Возвращает параметры окна игры. См. также: EVENT_POS_CONVERTER_CHANGED.

Существует две системы координат экрана игры - виртуальная и реальная. Обе начинают отсчёт с нуля, от верхнего-левого угла клиентской области окна (а в полноэкранном режиме - экрана), обе используются для указания местоположений и размеров виджетов. Виртуальные единицы существуют специально для позиционирования виджетов, поэтому, они используются наиболее часто - по ним позиционируются виджеты, позиционируемые по WIDGET_ALIGN_LOW, WIDGET_ALIGN_HIGH, WIDGET_ALIGN_CENTER, WIDGET_ALIGN_BOTH. Реальные (абсолютные) единицы используются крайне редко, только для тех виджетов, которые позиционируются по WIDGET_ALIGN_LOW_ABS.

Текущий виртуальный размер окна - по одной из осей равен базовому размеру окна, а по другой варьируется, в зависимости от пропорций окна (или экрана). Например, если пропорции окна шире чем 16:9, то виртуальная высота будет равна референсной, а ширина будет рассчитана относительно высоты и будет больше референсной. И наоборот, если пропорции окна уже 16:9, то виртуальная ширина будет равна референсной, а виртуальная высота будет рассчитана относительно ширины, и будет превышать референсную. Виртуальный размер экрана никогда не может быть меньше референсного.

Реальный размер окна - размер в реальных пикселях операционной системы.

Референсный размер окна - задается в настройках игры (Масштаб интерфейса) и хранится в global.cfg

Базовое значение 1920х1080
Коэффициенты масштабирования (на них домножается референсное разрешение) для разных значений настройки:
Минимальный  - 1.33333 (2560х1440)
Мелкий       - 1.22222
Уменьшенный  - 1.11111
Стандартный  - 1       (1920х1080)
Увеличенный  - 0.94815 (1820х1024) - референсная высота соответствует старому значению (1280х1024)
Крупный      - 0.88888
Максимальный - 0.83333 (1600х900)

Можно задать произвольное значение референсного разрешения через global.cfg (НЕ РЕКОМЕНДУЕТСЯ)
gfx_reference_custom = 1
gfx_reference_size_x = [800:3840]
gfx_reference_size_y = [600:2160]
Корректность отображения на нестандартных референсных разрешениях не тестируется.

-- Библиотека
common

-- Объявление
function GetPosConverterParams()

-- входные параметры
нет

-- возвращаемое значение:
таблица с полями:
 fullVirtualSizeX: number( float ) - текущий виртуальный размер окна по X
 fullVirtualSizeY: number( float ) - текущий виртуальный размер окна по Y

 realSizeX: number( float ) - реальный размер окна по X
 realSizeY: number( float ) - реальный размер окна по Y

 referenceVirtualSizeX: number( float ) - базовый виртуальный размер окна по X
 referenceVirtualSizeY: number( float ) - базовый виртуальный размер окна по Y

-- пример
local posConverter = widgetsSystem:GetPosConverterParams()

LogInfo( "fullVirtualSizeX: ", posConverter.fullVirtualSizeX )
LogInfo( "fullVirtualSizeY: ", posConverter.fullVirtualSizeY )
LogInfo( "realSizeX: ", posConverter.realSizeX )
LogInfo( "realSizeY: ", posConverter.realSizeY )
LogInfo( "referenceVirtualSizeX: ", posConverter.referenceVirtualSizeX )
LogInfo( "referenceVirtualSizeY: ", posConverter.referenceVirtualSizeY )

При разрешении экрана 1920x1080, в полноэкранном режиме и настройках по умолчанию результат будет такой:

fullVirtualSizeX: 1920
fullVirtualSizeY: 1080
realSizeX: 1920
realSizeY: 1080
referenceVirtualSizeX: 1920
referenceVirtualSizeY: 1080

Search: "CategoryCommon"

CategoryCommon
EnumAddonState
EnumGoalState
EventAddonLoadStateChanged
EventAllodsGoalAdded
EventAllodsGoalChanged
EventAllodsGoalCompleted
EventFullscreenChanged
EventLocaleChanged
EventPosConverterChanged
EventUserScreenshot
FunctionApitype
FunctionCommonCreateValuedObject
FunctionCommonCreateValuedText
FunctionCommonDisablePersonalEvent
FunctionCommonEnablePersonalEvent
FunctionCommonEnableUIRender
FunctionCommonFormatFloat
FunctionCommonFormatInt
FunctionCommonFormatNumber
FunctionCommonGetAbsTimeMs
FunctionCommonGetAddonInfo
FunctionCommonGetAddonMainForm
FunctionCommonGetAddonName
FunctionCommonGetAddonSysName
FunctionCommonGetAllodsGoals
FunctionCommonGetAllodsGoalsOnLoadingScreen
FunctionCommonGetApiType
FunctionCommonGetApiVersion
FunctionCommonGetClientArch
FunctionCommonGetCredits
FunctionCommonGetCSSList
FunctionCommonGetDateTimeFromMs
FunctionCommonGetEmptyWstring
FunctionCommonGetFatalityPhraseLimits
FunctionCommonGetFirstPaymentBonusInfo
FunctionCommonGetFPSData
FunctionCommonGetLocalDateTime
FunctionCommonGetLocalDateTimeMs
FunctionCommonGetLocale
FunctionCommonGetLocaleList
FunctionCommonGetLocalization
FunctionCommonGetMks
FunctionCommonGetMsFromDateTime
FunctionCommonGetPosConverterParams
FunctionCommonGetRandFloat
FunctionCommonGetRandInt
FunctionCommonGetScriptCfgVar
FunctionCommonGetSetBonusInfo
FunctionCommonGetShortString
FunctionCommonGetSpecialStatInfo
FunctionCommonGetStateManagedAddons
FunctionCommonGetStateName
FunctionCommonGetTerritoryInfo
FunctionCommonGetTextureInfo
FunctionCommonGetTextureSize
FunctionCommonHitFrameHandler
FunctionCommonIsAvatarNameValid
FunctionCommonIsCapsLockEnabled
FunctionCommonIsEmptyValuedText
FunctionCommonIsEmptyWstring
FunctionCommonIsEqualStats
FunctionCommonIsFatalityPhraseFiltered
FunctionCommonIsKeyEnabled
FunctionCommonIsOnPayToPlayShard
FunctionCommonIsSoundEnabled
FunctionCommonIsSubstring
FunctionCommonIsSubstringEx
FunctionCommonIsTextFiltered
FunctionCommonIsUIRenderEnabled
FunctionCommonIsValidText
FunctionCommonIsValuedObject
FunctionCommonIsValuedText
FunctionCommonIsWidget
FunctionCommonIsWString
FunctionCommonLogError
FunctionCommonLogInfo
FunctionCommonLogWarning
FunctionCommonMakeUserScreenshot
FunctionCommonOnEvent
FunctionCommonOnFrame
FunctionCommonOnReaction
FunctionCommonQuitGame
FunctionCommonRegisterEventHandler
FunctionCommonRegisterFrameHandler
FunctionCommonRegisterReactionHandler
FunctionCommonSendEvent
FunctionCommonSendUserModsEvent
FunctionCommonSetCursor
FunctionCommonSetIconFlash
FunctionCommonSetLocale
FunctionCommonStateLoadManagedAddon
FunctionCommonStateReloadManagedAddon
FunctionCommonStateUnloadManagedAddon
FunctionCommonUnRegisterEvent
FunctionCommonUnRegisterEventHandler
FunctionCommonUnRegisterFrameHandler
FunctionCommonUnRegisterReaction
FunctionCommonUnRegisterReactionHandler
FunctionCompareWString
FunctionCompareWStringEx
FunctionEscapeWString
FunctionGlobal
FunctionIsIndexableUdata
GoalId


CategoryLuaApi CategoryFunction CategoryCommon

На главную