Answers for "How should I rotate a 2D unit vector by X degrees?"
http://answers.unity.com/questions/729489/how-should-i-rotate-a-2d-unit-vector-by-x-degrees.html
The latest answers for the question "How should I rotate a 2D unit vector by X degrees?"Answer by PsychoDuckArcade
http://answers.unity.com/answers/730067/view.html
Solved.
Converted angle from degrees to radians, since apparently sin and cos take radians despite using degrees in school, and then made sin negative since apparently the sign that sin returns isn't always consistent between math libraries.
float x = Input.GetAxis("P1MoveHorizontal");
float y = Input.GetAxis("P1MoveVertical");
float sinAngle = -Mathf.Sin(Mathf.Deg2Rad * Camera.main.transform.rotation.eulerAngles.y);
float cosAngle = Mathf.Cos(Mathf.Deg2Rad * Camera.main.transform.rotation.eulerAngles.y);
Move(new Vector2(x * cosAngle - y * sinAngle, y * cosAngle + x * sinAngle));Wed, 18 Jun 2014 17:30:04 GMTPsychoDuckArcade