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

На главную

## avatar.GetCurrencyInfo(currencyId)

В игре встречаются альтернативные валюты. Этот метод возвращает информацию об этой валюте и её количество у игрока.

Валюты могут храниться в разных местах. Тип хранения описан в 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_... - режимы отображения валюты

#### Search: "CategoryLuaApi" "CategoryCurrency"

CategoryCurrency
CurrencyCategoryId
CurrencyId
EnumCurrencyStorage
EnumVisualizeMode
EventCurrenciesChanged
EventCurrencyNotEnough
EventCurrencyValueChanged
FunctionAvatarGetCategoryCurrencies
FunctionAvatarGetCurrencies
FunctionAvatarGetCurrencyCategories
FunctionAvatarGetCurrencyId
FunctionAvatarGetCurrencyInfo

CategoryLuaApi CategoryFunction CategoryAvatar CategoryCurrency

На главную