コード例 #1
0
ファイル: ActSystem.cs プロジェクト: zyb2013/GameProject3
        public void MakeMove(ActMissile obj, Character target, HitCallbackFly onTriggerEnter)
        {
            MoverBase mover = null;

            switch (obj.MoveType)
            {
            case EMoveType.TYPE_FIXDIRECTION:
                mover = new MoverFixDirection(obj, target, onTriggerEnter);
                break;

            case EMoveType.TYPE_FIXPOSITION:
                mover = new MoverFixPosition(obj, target, onTriggerEnter);
                break;

            case EMoveType.TYPE_CHASE:
                mover = new MoverChase(obj, target, onTriggerEnter);
                break;

            case EMoveType.TYPE_CHASEPARABOL:
                mover = new MoverChaseParabol(obj, target, onTriggerEnter);
                break;
            }
            if (mover != null)
            {
                mMovers.Add(mover);
            }
        }
コード例 #2
0
        public MoverFixPosition(ActMissile obj, Character target, HitCallbackFly onTriggerEnter) :
            base(obj, target, onTriggerEnter)
        {
            this.m_HAngle       = obj.MoveHAngle;
            this.m_VAngle       = obj.MoveVAngle;
            this.m_DestPosition = target != null?target.Avatar.GetBindPosition(EBind.Body) : CacheTransform.position + CacheTransform.forward * 10;

            this.m_DistanceToTarget = GTTools.GetHorizontalDistance(CacheTransform.position, m_DestPosition);
        }
コード例 #3
0
 public MoverChaseParabol(ActMissile obj, Character target, HitCallbackFly onTriggerEnter) :
     base(obj, target, onTriggerEnter)
 {
 }
コード例 #4
0
 public MoverFixDirection(ActMissile obj, Character target, HitCallbackFly onTriggerEnter) :
     base(obj, target, onTriggerEnter)
 {
 }