# Unit Changes Ability Auto Cast State
Grammar — unit changes ability Auto Cast state change (includeSharedAbilities|Include/Ignore shared abilities)
Flags —Native
|Event
This event fires when a unit changes an ability’s auto cast state. Use “Triggering Ability” to get the ability that was used. Use “Triggering Player” to get the player that used the ability. Use “Triggering Unit” to get the unit that used the ability. If the parameter “Include Shared Abilities” is set to true, instead of matching the specific event, it will match any event that has the same ability set id (AbilSetId).
# Arguments
unitref
[ unit ] — Unitabilcmd
— Abilityint
[ preset::AbilityAutoCastChange ] — Changebool
[ preset::IncludeIgnoreOption ] — Include Shared Abilities
Returns — void
native void TriggerAddEventUnitAbilityAutoCastChange(
trigger t,
unitref u,
abilcmd a,
int inChangeType,
bool includeSharedAbils,
);
# Event parameters
- Triggering Ability — EventUnitAbility
- Triggering Ability Other Unit — EventUnitAbilityOtherUnit
- Ability From Item or Trigger — libNtve_gf_EventItemAbilityOrUnitAbility
- Triggering Game User — EventGameUser
- Triggering Player — EventPlayer
- Triggering Unit — EventUnit
# Related
Category: Ability / Basic
- [F] —
void
— Remove Ability — ( UnitAbilityRemove ) - [F] —
void
— Add Ability — ( UnitAbilityAdd ) - [F] —
void
— Unit Uses Ability — ( TriggerAddEventUnitAbility ) - [F] —
void
— Unit Changes Ability Auto Cast State — ( TriggerAddEventUnitAbilityAutoCastChange ) - [F] —
abilcmd
— Triggering Ability — ( EventUnitAbility ) - [F] —
int
[ preset::AbilityStage ] — Triggering Ability Stage — ( EventUnitAbilityStage ) - [F] —
point
— Triggering Ability Target Point — ( EventUnitTargetPoint ) - [F] —
unit
— Triggering Ability Target Unit — ( EventUnitTargetUnit ) - [F] —
unit
— Triggering Ability Other Unit — ( EventUnitAbilityOtherUnit ) - [F] —
abilcmd
— Ability From Item or Trigger — ( libNtve_gf_EventItemAbilityOrUnitAbility ) - [F] —
void
— Unit Is Created — ( TriggerAddEventUnitCreated ) - [F] —
unit
— Created Unit — ( EventUnitCreatedUnit ) - [F] —
string
[ gamelink::Behavior ] — Behavior That Created Unit — ( EventUnitCreatedBehavior ) - [F] —
string
[ gamelink::Abil ] — Ability That Created Unit — ( EventUnitCreatedAbil ) - [F] —
void
— Show/Hide Ability For Unit — ( UnitAbilityShow ) - [F] —
bool
— Ability Enabled For Unit — ( UnitAbilityCheck ) - [F] —
int
— Number Of Abilities On Unit — ( UnitAbilityCount ) - [F] —
string
[ gamelink::Abil ] — Unit Ability — ( UnitAbilityGet ) - [F] —
string
[ gamelink::Abil ] — Unit Ability By Class — ( libNtve_gf_UnitAbilityGetByType ) - [F] —
bool
— Unit Ability Command State — ( UnitCheckAbilCmdState ) - [F] —
int
— Unit Ability Order State (Flags) — ( UnitAbilOrderStateFlags ) - [F] —
bool
— Unit Has Ability — ( UnitAbilityExists ) - [F] —
void
— Enable/Disable Ability For Unit — ( UnitAbilityEnable ) - [F] —
void
— Add Level To Unit Ability — ( UnitAbilityChangeLevel ) - [F] —
void
— Replace Unit Ability — ( UnitAbilityChangeLink ) - [F] —
void
— Set Ability Default Submenu — ( UnitAbilityChangeCardId ) - [F] —
int
— Current Level For Unit Ability — ( UnitAbilityGetLevel ) - [F] —
int
— Maximum Level For Unit Ability — ( UnitAbilityMaxLevel ) - [F] —
bool
— Ability Matches Filters — ( libNtve_gf_AbilityMatchesFilters ) - [F] —
string
[ gamelink::Abil ] — Unit Ability By Filters — ( libNtve_gf_UnitAbilityByFilters ) - [F] —
string
— Unit Ability Default Submenu — ( UnitAbilityGetCardId )
# Examples
# mods/starcoop/starcoop.sc2mod
// L17414
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_DehakaAutocastSettingsOn, null, AbilityCommand("DehakaGlevigFirebreath", 0), c_unitAbilAutoCastChangeOn, false)
// L17415
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_DehakaAutocastSettingsOn, null, AbilityCommand("MurvarCoopPuke", 0), c_unitAbilAutoCastChangeOn, false)
// L17416
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_DehakaAutocastSettingsOn, null, AbilityCommand("CoopMurvarSpawnCreepers", 0), c_unitAbilAutoCastChangeOn, false)
// L17450
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_DehakaAutocastSettingsOff, null, AbilityCommand("DehakaGlevigFirebreath", 0), c_unitAbilAutoCastChangeOff, false)
// L17451
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_DehakaAutocastSettingsOff, null, AbilityCommand("MurvarCoopPuke", 0), c_unitAbilAutoCastChangeOff, false)
// L17452
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_DehakaAutocastSettingsOff, null, AbilityCommand("CoopMurvarSpawnCreepers", 0), c_unitAbilAutoCastChangeOff, false)
// L19396
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_FenixAutocastSettingsOn, null, AbilityCommand("FenixSoAWhirlwind", 0), c_unitAbilAutoCastChangeOn, false)
// L19397
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_FenixAutocastSettingsOn, null, AbilityCommand("VoidShieldCapacitor", 0), c_unitAbilAutoCastChangeOn, false)
// L19428
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_FenixAutocastSettingsOff, null, AbilityCommand("FenixSoAWhirlwind", 0), c_unitAbilAutoCastChangeOff, false)
// L19429
TriggerAddEventUnitAbilityAutoCastChange(libCOMI_gt_CM_FenixAutocastSettingsOff, null, AbilityCommand("VoidShieldCapacitor", 0), c_unitAbilAutoCastChangeOff, false)