コード例 #1
0
 private void Move()
 {
     if (childDirection.IsNone())
     {
         energy.Damage(restExpend);
     }
     else if (childDirection.IsRight())
     {
         if (collider.IsThrough("ChildStopR"))
         {
             return;
         }
         if (CheckFall(true))
         {
             return;
         }
     }
     else if (childDirection.IsLeft())
     {
         if (collider.IsThrough("ChildStopL"))
         {
             return;
         }
         if (CheckFall(false))
         {
             return;
         }
     }
     energy.Damage(moveExpend);
     entity.transform.Position = bezierPoint.GetNowPosition();
 }
コード例 #2
0
        private void Move()
        {
            UpdateIsWall();

            if (playerDirection.IsRight())
            {
                bezierPoint.ToRight((int)speed);
            }
            else
            {
                bezierPoint.ToLeft((int)speed);
            }

            if (bezierPoint.IsEnd())
            {
                state.IsJump = true;
                return;
            }
            bezierPoint.Rotate();
            entity.transform.Position = bezierPoint.GetNowPosition();
        }
コード例 #3
0
ファイル: C_MoveWithBoarAI.cs プロジェクト: Shien007/Season
 private void Move()
 {
     if (childDirection.IsNone())
     {
     }
     else if (childDirection.IsRight())
     {
         if (CheckFall(true))
         {
             return;
         }
     }
     else if (childDirection.IsLeft())
     {
         if (CheckFall(false))
         {
             return;
         }
     }
     entity.transform.Position = bezierPoint.GetNowPosition();
 }
コード例 #4
0
        //チェックしながら落下処理
        private void CheckLand()
        {
            float powercut = 0;
            float cutPower = 3f;    //チェック間隔設定

            Vector2 testPosition = bezierPoint.GetNowPosition();

            //落下チェック
            while (currentJumpPower > 0)
            {
                if (currentJumpPower < cutPower)
                {
                    cutPower = currentJumpPower;
                }
                entity.transform.Position += new Vector2(0, cutPower);
                currentJumpPower          -= cutPower;
                powercut += cutPower;

                if (bezierPoint.IsEnd())
                {
                    continue;
                }
                if (testPosition == Vector2.Zero)
                {
                    continue;
                }

                if (entity.transform.Position.Y >= testPosition.Y - 10 &&
                    entity.transform.Position.Y <= testPosition.Y + 5)
                {
                    state.IsLand = true;
                    animControl.SetNowAnim("Run");
                    break;
                }
            }
            entity.transform.Position += new Vector2(0, currentJumpPower);
            currentJumpPower          += powercut;
        }