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

На главную


object:GetInstanceId( self )

Возвращает уникальный идентификатор объекта: ресурса, виджета и т.д. Реализован для всех типов ResourceId и для WidgetSafe (базовый тип для widget-ов). Уникальный идентификатор объекта имеет тип light userdata. Гарантируется, что один и тот же объект всегда имеет один и тот же уникальный идентификатор.

Замечание: для одного и того же объекта его представления в виде (обычного) идентификатора - (full) userdata - могут отличаться, т.е. один и тот же объект может представляться различными идентификаторами (с точки зрения сравнения на равенство операторами Lua).

Замечание: уникальный идентификатор - light userdata - не может быть использован для непосредственного доступа к объекту через функции Lua API. Для этого необходимо использовать его (обычный) идентификатор - (full) userdata.

-- класс
Метод имеется у пользовательских ресурсов и виджетов.

-- семантика
function GetInstanceId( self )

-- входные параметры:
self: WidgetSafe (not nil) или ResourceId (not nil) - объект одного из поддерживаемых типов

-- возвращаемое значение:
light userdata - уникальный идентификатор или nil в случае ошибки

-- примеры:
local isWidgetsEqual = widget1:GetInstanceId() == widget2:GetInstanceId()
local isSpellsEqual = spellResourceId1:GetInstanceId() == spellResourceId2:GetInstanceId()

local index = {}
index[widget1:GetInstanceId()] = widget1
index[widget2:GetInstanceId()] = widget2

function GetWidgetById( instanceId )
 return index[instanceId]
end

local isKnownWidget = GetWidgetById( widget:GetInstanceId() ) != nil

BlurpSearch: CategoryLuaApi CategoryTypes

AbilityId
AliasVisObjectId
BuffId
CategoryTypes
ComponentPropertyId
CurrencyId
DecalObjectId
FunctionCommonCreateValuedText
FunctionCommonGetEmptyWstring
FunctionCommonIsEmptyWstring
FunctionCommonIsValuedObject
FunctionCommonIsValuedText
FunctionCommonIsWString
FunctionObjectGetInstanceId
FunctionObjectIsEqual
GamePosition
ItemCategoryId
LuaApiTypes
QuestId
RecipeId
ResourceId
SkillId
Sound2DId
SpellId
TextureId
TypeValuedObject
TypeValuedText
TypeWidgetDesc
TypeWString
VisObjectId


CategoryLuaApi CategoryFunction CategoryTypes

На главную