public override void Enter(Action _action, Track _track) { base.Enter(_action, _track); this.actorObj = _action.GetActorHandle(this.targetId); PoolObjHandle <ActorRoot> actorHandle = _action.GetActorHandle(this.attackId); if (!this.actorObj || !actorHandle) { return; } ObjWrapper actorControl = this.actorObj.get_handle().ActorControl; if (actorControl == null) { return; } if (!actorControl.IsDeadState) { actorControl.TerminateMove(); actorControl.ClearMoveCommand(); actorControl.ForceAbortCurUseSkill(); actorControl.SetOutOfControl(true, OutOfControlType.Taunt); actorControl.SetTauntTarget(actorHandle); } }
public override void Enter(AGE.Action _action, Track _track) { base.Enter(_action, _track); this.actorObj = _action.GetActorHandle(this.targetId); PoolObjHandle <ActorRoot> actorHandle = _action.GetActorHandle(this.attackId); if ((this.actorObj != 0) && (actorHandle != 0)) { ObjWrapper actorControl = this.actorObj.handle.ActorControl; if ((actorControl != null) && !actorControl.IsDeadState) { actorControl.TerminateMove(); actorControl.ClearMoveCommand(); actorControl.ForceAbortCurUseSkill(); actorControl.SetOutOfControl(true, (OutOfControlType)this.subType); switch (this.subType) { case 0: actorControl.SetTauntTarget(actorHandle); break; case 2: actorControl.SetTerrorActor(actorHandle); break; } } } }
public override void Enter(Action _action, Track _track) { base.Enter(_action, _track); this.actorObj = _action.GetActorHandle(this.targetId); if (!this.actorObj) { return; } ObjWrapper actorControl = this.actorObj.get_handle().ActorControl; if (actorControl == null) { return; } this.PauseAnimation(); actorControl.TerminateMove(); actorControl.ClearMoveCommand(); actorControl.ForceAbortCurUseSkill(); this.actorObj.get_handle().ActorControl.AddNoAbilityFlag(ObjAbilityType.ObjAbility_Move); this.actorObj.get_handle().ActorControl.AddNoAbilityFlag(ObjAbilityType.ObjAbility_Freeze); this.actorObj.get_handle().ActorControl.AddDisableSkillFlag(SkillSlotType.SLOT_SKILL_COUNT, false); if (this.freezeHeight > 0 && this.actorObj.get_handle().isMovable) { VInt vInt = 0; VInt3 location = this.actorObj.get_handle().location; PathfindingUtility.GetGroundY(location, out vInt); location.y = vInt.i + this.freezeHeight; this.actorObj.get_handle().location = location; } }
public override void Process(Action _action, Track _track) { PoolObjHandle <ActorRoot> actorHandle = _action.GetActorHandle(this.targetId); if (!actorHandle) { if (ActionManager.Instance.isPrintLog) { } return; } ObjWrapper actorControl = actorHandle.get_handle().ActorControl; if (actorControl == null) { if (ActionManager.Instance.isPrintLog) { } return; } if (this.stopMove) { actorControl.TerminateMove(); } if (this.clearMove) { actorControl.ClearMoveCommand(); } if (this.stopCurSkill) { actorControl.ForceAbortCurUseSkill(); } if (this.delayStopCurSkill && !this.stopCurSkill) { actorControl.DelayAbortCurUseSkill(); } if (this.deadControl && actorControl.actor.TheStaticData.TheBaseAttribute.DeadControl && actorControl.IsDeadState) { actorControl.AddNoAbilityFlag(ObjAbilityType.ObjAbility_DeadControl); actorControl.SetDeadMode(ObjDeadMode.DeadState_Idle); } }