Trigger API Reference\DCEI Variables

Service

Platform

string Platform

Description


Returns the platform that the game is played on as one of the following string values:

Example Usage

local platform = DCEI.Platform
DCEI.LogMessage(platform)

Version

string Version

Description


Returns the current game version number. In editor play mode and arcade mode it will return editor/engine version.

Example Usage

-- Return the editor/engine version number.
DCEI.LogError(DCEI.Version)

Unit

UnitAny

unit UnitAny

Description


Returns an any unit, useful for binding generic trigger events.

Example Usage

function OnRegionEnter()
    DCEI.LogMessage("Triggering Unit: " .. DCEI.GetUnitType(DCEI.TriggeringUnit))
end

DCEI.TriggerAddUnitEnterRegionEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), DCEI.RegionAny, OnRegionEnter)

TriggeringUnit

unit TriggeringUnit

Description


Returns the triggering unit.

Example Usage

function OnRegionEnter()
    local unit_name = DCEI.GetUnitType(DCEI.TriggeringUnit)
    DCEI.LogMessage("Triggering Unit: " .. unit_name)
end

DCEI.TriggerAddUnitEnterRegionEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), DCEI.RegionAny, OnRegionEnter)

Effect

TriggeringEffectContext

EffectContext TriggeringEffectContext

Description


Returns the triggering effect's effect context.

Example Usage

function OnDoNothing()
    local context = DCEI.TriggeringEffectContext
    local caster_name = DCEI.GetUnitType(context.caster)
    local source_name = DCEI.GetUnitType(context.source)
    local target_name = DCEI.GetUnitType(context.target)

    DCEI.LogMessage(caster_name .. " did nothing to " .. target_name .. " via " .. source_name .. ".")
end

DCEI.TriggerAddEffectEvent(DCEI.Effect("DoNothing"), OnDoNothing, true)

TriggeringEffectId

int TriggeringEffectId

Description


Returns the triggering effect's id.

Example Usage

function OnDoNothing()
    local id = DCEI.TriggeringEffectId
end

DCEI.TriggerAddEffectEvent(DCEI.Effect("DoNothing"), OnDoNothing, true)

TriggeringEffectName

string TriggeringEffectName

Description


Returns the triggering effect's name.

Example Usage

function OnDoNothing()
    local name = DCEI.TriggeringEffectName
end

DCEI.TriggerAddEffectEvent(DCEI.Effect("DoNothing"), OnDoNothing, true)

TriggeringEffectIsCritical

bool TriggeringEffectIsCritical

Description


Returns if the damage is a critical damage. Only works in TriggerAddUnitDamageEvent

Example Usage

function OnTakingDamage()
    local is_critical = DCEI.TriggeringEffectIsCritical
end

DCEI.TriggerAddUnitDamageEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), OnTakingDamage)

Ability

TriggeringAbilityId

int TriggeringAbilityId

Description


Returns the triggering ability's id.

Example Usage

function OnCastAbility()
    local ability_id = DCEI.TriggeringAbilityId
end

DCEI.TriggerAddCastAbilityEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), OnAbilityCast)

TriggeringAbilityName

string TriggeringAbilityName

Description


Returns the triggering ability's name.

Example Usage

function OnCastAbility()
    local ability_id = DCEI.TriggeringAbilityName
end

DCEI.TriggerAddCastAbilityEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), OnAbilityCast)

Weapon

TriggeringWeaponId

int TriggeringWeaponId

Description


Returns the triggering weapon's id.

Example Usage

local function OnUnitUseWeapon()
    local weapon = DCEI.TriggeringWeaponId
end

DCEI.TriggerAddUnitSelectedEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), OnUnitUseWeapon)

TriggeringWeaponName

string TriggeringWeaponName

Description


Return the triggering weapon's name.

Example Usage

local function OnUnitUseWeapon()
    local weapon = DCEI.TriggeringWeaponId
end

DCEI.TriggerAddUnitSelectedEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), OnUnitUseWeapon)

Behavior

TriggeringBehaviorId

int TriggeringBehaviorId

Description


Return the triggering behavior's id.

Example Usage

function OnUnitBehaviorAdd()
    local id = DCEI.TriggeringBehaviorId
end

DCEI.TriggerAddBehaviorAddEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), OnUnitBehaviorAdd, true)

TriggeringBehaviorName

string TriggeringBehaviorName

Description


Returns the triggering behavior's name.

Example Usage

function OnUnitBehaviorAdd()
    local name = DCEI.TriggeringBehaviorName
end

DCEI.TriggerAddBehaviorAddEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), OnUnitBehaviorAdd, true)

Region

TriggeringRegion

Region TriggeringRegion

Description


Returns the triggering region.

Example Usage

function OnRegionEnter()
    local r = DCEI.TriggeringRegion
end

DCEI.TriggerAddUnitEnterRegionEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), DCEI.RegionAny, OnRegionEnter)

RegionAny

Region RegionAny

Description


Returns an any region, useful for binding generic trigger events.

Example Usage

function OnRegionEnter()
    local region_name = DCEI.GetRegionName(DCEI.TriggeringRegion)
    DCEI.LogMessage("A Unit Entered " .. region_name)
end

DCEI.TriggerAddUnitEnterRegionEvent(DCEI.CreateUnitFilter({name = DCEI.Unit("Test Unit")}), DCEI.RegionAny, OnRegionEnter)

Input

TriggeringJoystickAxes

Float2 TriggeringJoystickAxes

Description


Returns the triggering joystick axes.

Example Usage

function OnJoystickMove()
    local axes = DCEI.TriggeringJoystickAxes
    local pos = DCEI.GetUnitPosition2D(HERO)

    -- order unit to move in direction of joystick axes
    DCEI.Move(HERO, pos.x + axes.x, pos.y + axes.y)
    DCEI.LogMessage("Joystick input: " .. axes.x .. ", " .. axes.y)
end

local joystick_options = {
    offset = {
        x = 148,
        y = 148
    },
    anchor = {
        x = 0,
        y = 0
    }
}

DCEI.TriggerAddJoystickEvent(OnJoystickMove, joystick_options)

TriggeringJoystickId

int TriggeringJoystickId

Description


Returns the triggering joystick's id.

Example Usage

function OnJoystickMove()
    local id = DCEI.TriggeringJoystickId
end

local joystick_options = {
    offset = {
        x = 148,
        y = 148
    },
    anchor = {
        x = 0,
        y = 0
    }
}

DCEI.TriggerAddJoystickEvent(OnJoystickMove, joystick_options)

TriggeringJoystickButtonId

int TriggeringJoystickButtonId

Description


Return the triggering joystick button's id.

Example Usage

function OnJoystickButton()
    local button_id = DCEI.TriggeringJoystickButtonId
    local button_event = DCEI.TriggeringJoystickButtonEventType

    -- button event 0 is for ButtonDown, event 1 is for ButtonUp
    if button_id == 0 and button_event == 0 then
        -- currently does not support targeted abilities
        -- movement commands will interrupt ability prep time / finish time, unless ability has "can cast while moving" flag checked
        DCEI.CastAbility(HERO_SLASH, HERO, HERO)
    end
end

DCEI.TriggerAddJoystickButtonEvent(0, OnJoystickButton, {icon = "icon_ingame_towerslot_barracks"})

TriggeringJoystickButtonEventType

int TriggeringJoystickButtonEventType

Description


Returns the trigger joystick button event type. Button event 0 is for ButtonDown, event 1 is for ButtonUp.

Example Usage

function OnJoystickButton()
    local button_id = DCEI.TriggeringJoystickButtonId
    local button_event = DCEI.TriggeringJoystickButtonEventType

    -- button event 0 is for ButtonDown, event 1 is for ButtonUp
    if button_id == 0 and button_event == 0 then
        -- currently does not support targeted abilities
        -- movement commands will interrupt ability prep time / finish time, unless ability has "can cast while moving" flag checked
        DCEI.CastAbility(HERO_SLASH, HERO, HERO)
    end
end

DCEI.TriggerAddJoystickButtonEvent(0, OnJoystickButton, {icon = "icon_ingame_towerslot_barracks"})

Player

TriggeringPlayerId

int TriggeringPlayerId

Description


Returns the triggering player's id.

Example Usage

function OnFocusChange()
    DCEI.LogMessage("Focus changed: " .. DCEI.TriggeringPlayerId)
end

DCEI.TriggerOnFocusChange(OnFocusChange)