EditorPrefs.SetBool 设置布尔

static function SetBool (key : string, value : bool) : void

Description描述

Sets the value of the preference identified by key.

设置由键确定的偏好值。

EditorPrefs.SetBool 设置布尔

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 = 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(

			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);

	}

}
Page last updated: 2011-7-11