Обёртка игрового объекта для подстановки в ValuedText. Специальный вариант userdata. Имеет несколько методов.
Для получения экземпляра ValuedObject нужно пользоваться специальной функцией Get...ValuedObject( object ).
ValuedObject возвращает текст и изображение, которыми обёртываемый объект может быть представлент в виджете. Так как типов объектов много, то ValuedObject содержит информацию о типе объекта и идентификатор объекта. Типы идентификаторов могут быть разными для различных типов объектов.
Тип объекта - enum типа - тип / значение идентификатора
obj:GetType() obj:GetId()
--------------------------------------------------------------------------------------------------
Неизвеcтен (тестовый) VAL_OBJ_TYPE_UNKNOWN --
Предмет VAL_OBJ_TYPE_ITEM ObjectId / идентификатор предмета
Заклинание VAL_OBJ_TYPE_SPELL SpellId / идентификатор ресурса заклинания
Баф VAL_OBJ_TYPE_BUFF BuffId / идентификатор ресурса бафа
Умение VAL_OBJ_TYPE_ABILITY AbilityId / идентификатор ресурса умения
Существо VAL_OBJ_TYPE_CREATURE WString / имя существа
Игрок VAL_OBJ_TYPE_PLAYER UniqueId / уникальный идентификатор персонажа
Маунт VAL_OBJ_TYPE_MOUNT ObjectId / идентификатор маунта
Игровая валюта VAL_OBJ_TYPE_CURRENCY CurrencyId / идентификатор игровой валюты
Достижение VAL_OBJ_TYPE_MEDAL ObjectId / идентификатор достижения
Раздел доски объявлений VAL_OBJ_TYPE_POST_TYPE PostTypeId / идентификатор ресурса раздела доски объявлений
Произвольная lua-таблица VAL_OBJ_TYPE_TABLE table
Зона карты VAL_OBJ_TYPE_ZONE
Анлок VAL_OBJ_TYPE_UNLOCK
Модификатор карты VAL_OBJ_TYPE_MAP_MODIFIER MapModifierId / идентификатор ресурса модификатора карты
Скилл (умение) VAL_OBJ_TYPE_SKILL SkillId / идентификатор ресурса скилла
Продукция рога изобилия VAL_OBJ_TYPE_STRONGHOLD_PRODUCTION_SETTINGS ProductionSettings / описание производимого "рогом изобилия" личного аллода
Лига личного аллода VAL_OBJ_TYPE_STRONGHOLD_CATEGORY StrongholdCategory / идентификатор ресурса категории (лиги) личного аллода
ValuedObject умеет реагировать на мышиные клики. Чтобы клик проходил только в объекты, а не целиком контролы, используется флаг pickObjectsOnly, определенный для TextView и TextContainer. Также надо использовать флаг pickChildrenOnly, чтобы сообщения не блокировались другими контролами и служебными элементами.
Значения:
VAL_OBJ_TYPE_UNKNOWN, VAL_OBJ_TYPE_ITEM, VAL_OBJ_TYPE_SPELL, VAL_OBJ_TYPE_BUFF, VAL_OBJ_TYPE_ABILITY, VAL_OBJ_TYPE_CREATURE, VAL_OBJ_TYPE_PLAYER, VAL_OBJ_TYPE_MOUNT, VAL_OBJ_TYPE_CURRENCY, VAL_OBJ_TYPE_MEDAL, VAL_OBJ_TYPE_POST_TYPE, VAL_OBJ_TYPE_WISHMASTER, VAL_OBJ_TYPE_QUEST, VAL_OBJ_TYPE_INSTANCED_EVENT, VAL_OBJ_TYPE_DEVICE, VAL_OBJ_TYPE_TABLE, VAL_OBJ_TYPE_ASTRAL_SECTOR, VAL_OBJ_TYPE_ZONE, VAL_OBJ_TYPE_UNLOCK, VAL_OBJ_TYPE_SKILL, VAL_OBJ_TYPE_MAP_MODIFIER, VAL_OBJ_TYPE_STRONGHOLD_PRODUCTION_SETTINGS, VAL_OBJ_TYPE_STRONGHOLD_CATEGORY, VAL_OBJ_TYPE_CHARACTER_CLASS, VAL_OBJ_TYPE_LFG_DESTINATION, VAL_OBJ_TYPE_ACTION_GROUP