Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function EventListenerReturn TakeInitiativeListener(Object EventData, Object EventSource, XComGameState GameState, Name EventID, Object CallbackData)
- {
- local XComGameStateHistory History;
- local XComGameStateContext_Ability AbilityContext;
- local XComGameState_Unit SourceUnit, TargetUnit;
- local array<StateObjectReference> PossibleTargets;
- local StateObjectReference BestTargetRef;
- local int BestTargetHP;
- local int i;
- local bool bAbilityContinues;
- local XComGameState_Ability AbilityState;
- local X2AbilityTemplateManager AbilityTemplateManager; //noodle code
- local X2AbilityTemplate AbilityTemplate;
- AbilityTemplateManager = class'X2AbilityTemplateManager'.static.GetAbilityTemplateManager();
- AbilityTemplate = AbilityTemplateManager.FindAbilityTemplate('DP_TakeInitiativeStrike');//noodle code end
- AbilityContext = XComGameStateContext_Ability(GameState.GetContext());
- if (AbilityContext != none && AbilityContext.InterruptionStatus != eInterruptionStatus_Interrupt)
- {
- SourceUnit = XComGameState_Unit(GameState.GetGameStateForObjectID(AbilityContext.InputContext.SourceObject.ObjectID));
- TargetUnit = XComGameState_Unit(GameState.GetGameStateForObjectID(AbilityContext.InputContext.PrimaryTarget.ObjectID));
- AbilityState = XComGameState_Ability(EventData);
- History = `XCOMHISTORY;
- class'X2TacticalVisibilityHelpers'.static.GetAllVisibleEnemyUnitsForUnit(SourceUnit.ObjectID, PossibleTargets, AbilityTemplate.AbilityTargetConditions);
- XComTacticalController(`LOCALPLAYERCONTROLLER).m_kPathingPawn.ActiveKillzoneAbilityID = AbilityState.ObjectID;
- }
- return ELR_NoInterrupt;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement