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

На главную

## avatar.GetPsionicContacts()

Главный герой псионик может установить псионический контакт с несколькими целями. Каждый псионический контакт определенного типа может быть установлен с одной целью.

Метод возвращает индексированную по типу контакта таблицу контактов. В ней по индексу типа контакта лежит или информация о контакте или nil, если нет контакта такого типа. Если главный герой не псионик, то таблица будет всегда пустой.

У контакта может быть определена длительность. Тогда в поле durationMs будет длительность этого контакта в миллисекундах. Если для такого типа контакта длительность не определена (длится сколь угодно долго), то durationMs = 0.

    -- библиотека:
    avatar

    -- объявление:
    function GetPsionicContacts()

    -- параметры:
    нет

    -- возвращаемые значения -
    Table of pairs (ключ/значение):
      ключ - number (enum PSIONIC_CONTACT_XXX) - тип контакта
      значение - table - таблица с информацией о контакте. Содержит поля:
        unitId: ObjectId - идентификатор контактного юнита
        durationMs: number (int) - длительность контакта в миллисекундах
        remainingMs: number (int) - осталось миллисекунд до окончания контакта

    -- пример:
      local contacts = avatar.GetPsionicContacts()

      local contact = contacts[ PSIONIC_CONTACT_NORMAL ]
      if contact then
        local normalContacterId = contact.unitId
        if normalContacterId then
          local name = unit.GetName( normalContacterId )
        end
      end

      contact = contacts[ PSIONIC_CONTACT_CRUDE ]
      if contact then
        local normalContacterId = contact.unitId
        if normalContacterId then
          local name = unit.GetName( normalContacterId )
          if contact.durationMs > 0 then
            local remaining = contact.remainingMs / contact.durationMs
          end
        end
      end

Типы контактов:

    PSIONIC_CONTACT_NORMAL
    PSIONIC_CONTACT_CRUDE

#### Search: "CategoryLuaApi" "CategoryClassSpecific"

EventAvatarBarriersChanged
EventAvatarPsionicChannelChanged
EventAvatarPsionicContactAdded
EventAvatarPsionicContactChanged
EventAvatarPsionicContactRemoved
EventAvatarPsionicDangerSenseLocated
EventAvatarPsionicDangerSenseTarget
EventAvatarPsionicReadThought
EventAvatarPsionicUnreadableThought
EventAvatarStalkerCartridgeBeltChanged
EventAvatarWarriorCombatAdvantageChanged
EventResurrectRejected
EventResurrectRequested
EventVariableValueChanged
FunctionAvatarGetBarriersDelay
FunctionAvatarGetBarriersInfo
FunctionAvatarGetPsionicContacts
FunctionAvatarGetStalkerCartridge
FunctionAvatarGetVariableInfo
FunctionAvatarGetVariables
FunctionAvatarGetWarriorCombatAdvantage
FunctionAvatarHasPsionicChannel
FunctionAvatarResurrectReply

CategoryLuaApi CategoryFunction CategoryAvatar CategoryClassSpecific

На главную