コード例 #1
0
    CubePos HandleOperation()
    {
        Vector3 deltaVec3 = new Vector3();

        if (snakeChangeDirection == SnakeChangeDirection.left)
        {
            rotateAngle = 90f;
            rotateBase  = left_bottom.position;
            rotateAxis  = left_bottom.position - left_top.position;
            deltaVec3   = left_bottom.position - right_bottom.position;
        }
        else if (snakeChangeDirection == SnakeChangeDirection.right)
        {
            rotateAngle = 90f;
            rotateBase  = right_bottom.position;
            rotateAxis  = right_top.position - right_bottom.position;
            deltaVec3   = right_bottom.position - left_bottom.position;
        }

        snakeChangeDirection = SnakeChangeDirection.none;

        deltaCubePos = new CubePos(deltaVec3);

        //Debug.Log (deltaCubePos.x.ToString() + "," + deltaCubePos.y.ToString() + "," + deltaCubePos.z.ToString());


        willRotate       = true;
        willRotateCamera = false;


        transform.RotateAround(rotateBase, rotateAxis, rotateAngle);
        targetRot = transform.eulerAngles;
        transform.RotateAround(rotateBase, rotateAxis, -rotateAngle);


        nextCubePos = nextCubePos + deltaCubePos;
        CheckFood();

        return(nextCubePos);
    }
コード例 #2
0
 public void HandleInput(SnakeChangeDirection scd)
 {
     snakeChangeDirection = scd;
 }