void OnMouseUp() { if (Input.GetButtonUp("Fire1")) { char axis = 'x'; if (face == "FrontFace" || face == "BackFace") { axis = 'z'; } else if (face == "LeftFace" || face == "RightFace") { axis = 'x'; } else if (face == "TopFace" || face == "BottomFace") { axis = 'y'; } trackMouse = false; lastPosition = Input.mousePosition; float value = 0; mouseDistance %= 360; if (mouseDistance > 0) { if (mouseDistance < 45) { value = 0; } else if (mouseDistance < 135) { value = 90; } else if (mouseDistance < 215) { value = 180; } else if (mouseDistance < 305) { value = 270; } else { value = 0; } } else { if (mouseDistance > -45) { value = 0; } else if (mouseDistance > -135) { value = -90; } else if (mouseDistance > -215) { value = -180; } else if (mouseDistance > -305) { value = -270; } else { value = 0; } } mouseDistance = 0; cube.AnimateRotate(face, axis, value); } }