コード例 #1
0
ファイル: Touch.cs プロジェクト: barronds/XNARTS
 public SinglePokeData(ePokeDetail detail, Vector2 start_pos, int frame_count)
 {
     mCurrentPosValid = false;
     mStartPos        = start_pos;
     mDetail          = detail;
     mFrameCount      = frame_count;
 }
コード例 #2
0
ファイル: Touch.cs プロジェクト: barronds/XNARTS
        private void ExitSinglePoke(ePokeDetail detail, bool current_pos_valid)
        {
            SinglePokeData data = current_pos_valid                                                                                                                                                               ?
                                  new SinglePokeData(detail, mSinglePoke_StartPos, GetSingleTouchPos(), mSinglePoke_FrameCount) :
                                  new SinglePokeData(detail, mSinglePoke_StartPos, mSinglePoke_FrameCount);

            XBulletinBoard.Instance().mBroadcaster_SinglePoke.Post(data);
        }
コード例 #3
0
ファイル: Touch.cs プロジェクト: barronds/XNARTS
        private eContactChange State_SinglePoke()
        {
            double  k_drift_thresh_sqr = XMath.Sqr(45d);
            Vector2 current_pos        = GetSingleTouchPos();
            Vector2 drift = current_pos - mSinglePoke_StartPos;

            if (drift.LengthSquared() > k_drift_thresh_sqr)
            {
                return(eContactChange.StillToMoving);
            }

            ePokeDetail    detail = mSinglePoke_FrameCount == 0 ? ePokeDetail.Start : ePokeDetail.Hold;
            SinglePokeData data   = new SinglePokeData(detail, mSinglePoke_StartPos, current_pos, mSinglePoke_FrameCount);

            XBulletinBoard.Instance().mBroadcaster_SinglePoke.Post(data);
            ++mSinglePoke_FrameCount;

            return(eContactChange.NoChange);
        }