# Modifier

Класс для работы с баффами/дебаффами союзников и противников. В основном используется в OnModifierCreate

# IsDebuff

Является ли модифер дебафом

Возвращаемые значения:

  • true | false

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    if(modifier.IsDebuff()) {
        console.log(`Модифир ${modifier.GetName()} является дебаффом!`);
    } else {
        console.log(`Модифир ${modifier.GetName()} НЕ является дебаффом!`);
    }
};

RegisterScript(exampleScript);

# GetDuration

Получает полное время действия модифира

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier duration: ${modifier.GetDuration()}`);
};

RegisterScript(exampleScript);

# GetCreationTime

Получает время создания модифира. Можно использовать в связке с GameRules.GetGameTime

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier creation time: ${modifier.GetCreationTime()}`);
};

RegisterScript(exampleScript);

# GetLastAppliedTime

Получает время последнего применения к владельцу

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier last applied time: ${modifier.GetLastAppliedTime()}`);
};

RegisterScript(exampleScript);

# GetDieTime

Получает время в которое умрёт/умер модифир

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier die time: ${modifier.GetDieTime()}`);
};

RegisterScript(exampleScript);

# GetElapsedTime

Получает прошедшее время с момента создания модифира (в секундах)

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`${modifier.GetName()} GetElapsedTime: ${modifier.GetElapsedTime()}`);
};

RegisterScript(exampleScript);

# GetRemainingTime

Получает время сколько будет жить модифир (в секундах)

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`${modifier.GetName()} GetRemainingTime ${modifier.GetRemainingTime ()}`);
};

RegisterScript(exampleScript);

# GetOwner

Получает "владельца" модифира

Возвращаемые значения:

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    let owner = modifier.GetOwner();
    
    if(!owner) {
        return;
    }
    
    console.log(`Modifier ${modifier.GetName()} owned by ${owner.GetUnitName()}`);
};

RegisterScript(exampleScript);

# GetName

Получает название модифира

Возвращаемые значения:

  • string

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier name: ${modifier.GetName()}`);
};

RegisterScript(exampleScript);

# GetClass

Получает название класса модифира

Возвращаемые значения:

  • string

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier class name: ${modifier.GetName()}`);
};

RegisterScript(exampleScript);

# GetSerialNumber

Получает серийный номер модифира

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier serial number: ${modifier.GetSerialNumber()}`);
};

RegisterScript(exampleScript);

# GetIndex

Получает индекс модифира

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier index: ${modifier.GetIndex()}`);
};

RegisterScript(exampleScript);

# GetCreationFrame

Получает фрейм создания модифира. TODO: доделать описание

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier creation frame: ${modifier.GetCreationFrame()}`);
};

RegisterScript(exampleScript);

# GetStackCount

Получает количество стаков модифира

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier stack count: ${modifier.GetStackCount()}`);
};

RegisterScript(exampleScript);

# GetTeam

Получает номер команды, на которую действует аура модифира

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier team: ${modifier.GetTeam()}`);
};

RegisterScript(exampleScript);

# GetAttributes

TODO: доделать

# IsAura

Проверяет является ли модифир аурой

Возвращаемые значения:

  • true | false

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier is aura: ${modifier.IsAura()}`);
};

RegisterScript(exampleScript);

# GetModifierAuraName

Получает название ауры модифира

Возвращаемые значения:

  • string

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier aura name: ${modifier.GetName()}`);
};

RegisterScript(exampleScript);

# IsAuraActiveOnDeath

Проверяет активируется ли аура модифира после смерти

Возвращаемые значения:

  • true | false

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier is aura: ${modifier.IsAura()}`);
};

RegisterScript(exampleScript);

# GetAuraSearchTeam

TODO: доделать

# GetAuraSearchType

TODO: доделать

# GetAuraSearchFlags

TODO: доделать

# GetAuraRadius

Получает радиус действия ауры модифира

Возвращаемые значения:

  • number

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier aura radius: ${modifier.GetAuraRadius()}`);
};

RegisterScript(exampleScript);

# GetMarkedForDeletion

TODO: доделать

# IsHealingAura

Проверяет является ли аури модифира лечебной

Возвращаемые значения:

  • true | false

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    console.log(`Modifier is healing aura: ${modifier.IsAura()}`);
};

RegisterScript(exampleScript);

# GetConstantByIndex

TODO: доделать

# GetAbility

Получает способность, к которой относится модифир

Возвращаемые значения:

Пример использования:

let exampleScript = {};

exampleScript.OnModifierCreate = (entity, modifier) => {
    let ability = modifier.GetAbility();
    
    if(!ability) {
        console.log(`Modifier ${modifier.GetName()} has no ability`);
    } else {
        console.log(`Modifier ${modifier.GetName()} ability name: ${ability.GetName()}`);
    }
};

RegisterScript(exampleScript);