static bool FloatField(string name, ref float value, bool hidden, GUILayoutOption opt) { float num = value; GUI.changed = false; if (!hidden) { num = EditorGUILayout.FloatField(name, num, new GUILayoutOption[] { opt }); } else { float.TryParse(EditorGUILayout.TextField(name, "--", new GUILayoutOption[] { opt }), out num); } bool result; if (GUI.changed && ExTransform.Differs(num, value)) { value = num; result = true; } else { result = false; } return(result); }
static ExTransform.Axes CheckDifference(Transform t, Vector3 original) { Vector3 localEulerAngles = t.localEulerAngles; ExTransform.Axes axes = ExTransform.Axes.None; if (ExTransform.Differs(localEulerAngles.x, original.x)) { axes |= ExTransform.Axes.X; } if (ExTransform.Differs(localEulerAngles.y, original.y)) { axes |= ExTransform.Axes.Y; } if (ExTransform.Differs(localEulerAngles.z, original.z)) { axes |= ExTransform.Axes.Z; } return(axes); }