Exemplo n.º 1
0
    public void RotatePlayer(bool direction)
    {
        // direction is true for right, false for left
        float y_change = 90.0f;

        if (!direction)
        {
            y_change = -y_change;

            if (current_dir == PointingDirection.forward)
            {
                current_dir = PointingDirection.left;
            }
            else if (current_dir == PointingDirection.left)
            {
                current_dir = PointingDirection.backward;
            }
            else if (current_dir == PointingDirection.right)
            {
                current_dir = PointingDirection.forward;
            }
            else
            {
                current_dir = PointingDirection.right;
            }
        }
        else
        {
            if (current_dir == PointingDirection.forward)
            {
                current_dir = PointingDirection.right;
            }
            else if (current_dir == PointingDirection.left)
            {
                current_dir = PointingDirection.forward;
            }
            else if (current_dir == PointingDirection.right)
            {
                current_dir = PointingDirection.backward;
            }
            else
            {
                current_dir = PointingDirection.left;
            }
        }

        Vector3 rot = transform.rotation.eulerAngles;

        // make the change and don't if limits are hit
        float rot_ch = CalculatedRotation(y_change, rot);

        transform.eulerAngles = new Vector3(rot.x, rot_ch, rot.z);
    }
Exemplo n.º 2
0
 void Start()
 {
     current_dir = PointingDirection.forward;
     side_bounds = GameObject.Find("PathManager").GetComponent <CreateGrid>().squareSize * 10.0f / 2.0f;
 }