В игре встречаются альтернативные валюты. Этот метод возвращает информацию об этой валюте и её количество у игрока.
Валюты могут храниться в разных местах. Тип хранения описан в ENUM_CURRENCY_STORAGE_.... Также см. CurrencyCategoryId.
-- система:
UIState/GameState
функция имеет основную реализация в логике и расширенную реализацию в UI
-- библиотека:
avatar
-- объявление:
function GetCurrencyInfo( currencyId )
-- параметры:
currencyId: CurrencyId or nil - идентификатор ресурса альтернативной валюты.
-- возвращаемые значения:
table or nil - если нет ошибки, то таблица с полями:
id: CurrencyId - Id валюты
sysName: string - внутриигровое имя валюты
name: WString - название валюты
description: WString - описание валюты
storageType: number (enum ENUM_CURRENCY_STORAGE_...) - тип хранилища валюты
sysInfo: string - системная информация для дебага (путь к файлу)
category: CurrencyCategoryId - категория валюты
limitCurrency: CurrencyId or nil - если есть, то валюта, которая содержит лимит количества повышения текущей валюты (на сколько еще можем повысить)
--{ часть таблицы, реализованная только для UI
image: TextureId - идентификатор текстуры для иконки валюты
--}
isCoupon: boolean - является ли валюта купоном (не путать с купонами itemmall'а), разрешающим покупку за другую валюту; предполагается, что вещи, имеющие цену в купонах, не отображаются в списке у вендора, если купонов данного вида не хвататет для покупки и что купоны не отображается в списке ценностей аватара
hideMaxValue: boolean - нужно ли прятать максимальное значение.
value: number( integer ) - количество такой валюты у игрока
maxValue: number( integer ) or nil - максимально возможное количество такой валюты у игрока, если такая величина задана
visualizeMode: enum - режим отображения валюты ENUM_VisualizeMode_...
-- пример:
local myrrhId = avatar.GetCurrencyId( "myrrh" )
if myrrhId then
local info = avatar.GetCurrencyInfo( myrrhId )
if info then
local currentValue = info.value
end
end
См.также:
ENUM_VisualizeMode_... - режимы отображения валюты