예제 #1
0
        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);
            }
        }
예제 #2
0
        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;
                    }
                }
            }
        }
예제 #3
0
 public override void Leave(AGE.Action _action, Track _track)
 {
     base.Leave(_action, _track);
     if (this.actorObj != 0)
     {
         ObjWrapper actorControl = this.actorObj.handle.ActorControl;
         if (actorControl != null)
         {
             actorControl.SetOutOfControl(false, (OutOfControlType)this.subType);
         }
     }
 }
예제 #4
0
        public override void Leave(Action _action, Track _track)
        {
            base.Leave(_action, _track);
            if (!this.actorObj)
            {
                return;
            }
            ObjWrapper actorControl = this.actorObj.get_handle().ActorControl;

            if (actorControl == null)
            {
                return;
            }
            actorControl.SetOutOfControl(false, OutOfControlType.Taunt);
        }