EditorPrefs.SetBool Manual     Reference     Scripting  
Scripting > Editor Classes > EditorPrefs
EditorPrefs.SetBool

static function SetBool (key : String, value : boolean) : void

Description

Sets the value of the preference identified by key.


Round rotations/positions and remember the active option.

// Simple script that lets you round rotations and
// round your positions of your selected objects.
// and it remembers which option is being active

class EditorPrefsBool extends EditorWindow {

var showRoundPosition : boolean = true;
var showRoundRotation : boolean = true;

@MenuItem("Examples/Round positions-rotations")
static function Init() {
var window = GetWindow(EditorPrefsBool);
window.Show();
}
function OnGUI() {
showRoundPosition = EditorGUILayout.BeginToggleGroup("Round Position",showRoundPosition);
if(GUILayout.Button("Round Position!"))
DoRoundPosition();
EditorGUILayout.EndToggleGroup();
showRoundRotation = EditorGUILayout.BeginToggleGroup("Round Rotation", showRoundRotation);
if(GUILayout.Button("Round Rotation!"))
DoRoundRotation();
EditorGUILayout.EndToggleGroup();
}

function DoRoundPosition() {
for (var t : Transform in Selection.transforms)
t.localPosition = Vector3(Mathf.Round(t.localPosition.x),
Mathf.Round(t.localPosition.z),
Mathf.Round(t.localPosition.y));
}
function DoRoundRotation() {
for (var t : Transform in Selection.transforms)
t.rotation = Quaternion.Euler(
Vector3(Mathf.Round(t.eulerAngles.x / 45f) * 45f,
Mathf.Round(t.eulerAngles.y / 45f) * 45f,
Mathf.Round(t.eulerAngles.z / 45f) * 45f));
}
function OnFocus() {
if(EditorPrefs.HasKey("ShowRoundPosition"))
showRoundPosition = EditorPrefs.GetBool("ShowRoundPosition");
if(EditorPrefs.HasKey("ShowRoundRotation"))
showRoundPosition = EditorPrefs.GetBool("ShowRoundRotation");
}

function OnLostFocus() {
EditorPrefs.SetBool("ShowRoundPosition", showRoundPosition);
EditorPrefs.SetBool("ShowRoundRotation", showRoundRotation);
}
function OnDestroy() {
EditorPrefs.SetBool("ShowRoundPosition", showRoundPosition);
EditorPrefs.SetBool("ShowRoundRotation", showRoundRotation);
}
}