Button

From Unify Community Wiki
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
<br>// Use this script on a guiTexture object for regular push buttons
 
<br>// Use this script on a guiTexture object for regular push buttons
 
<br>// that behave properly like Mac OS X.
 
<br>// that behave properly like Mac OS X.
 
+
<br>
 
<br>var normalMaterial : Material;
 
<br>var normalMaterial : Material;
 
<br>var hoverMaterial : Material;
 
<br>var hoverMaterial : Material;
Line 7: Line 7:
 
<br>var messagee : GameObject;
 
<br>var messagee : GameObject;
 
<br>var message = "ButtonPress";
 
<br>var message = "ButtonPress";
 
+
<br>
private var state = 0;
+
<br>private var state = 0;
 
+
<br>
function OnMouseEnter()
+
<br>function OnMouseEnter()
{
+
<br>{
state++;
+
<br> state++;
if (state == 1)
+
<br> if (state == 1)
guiText.material = hoverMaterial;
+
<br> guiText.material = hoverMaterial;
}
+
<br>}
 
+
<br>
function OnMouseDown()
+
<br>function OnMouseDown()
{
+
<br>{
state++;
+
<br> state++;
if (state == 2)
+
<br> if (state == 2)
guiText.material = pressedMaterial;
+
<br> guiText.material = pressedMaterial;
}
+
<br>}
 
+
<br>
function OnMouseUp()
+
<br>function OnMouseUp()
{
+
<br>{
if (state == 2)
+
<br> if (state == 2)
{
+
<br> {
state--;
+
<br> state--;
if (messagee)
+
<br> if (messagee)
messagee.SendMessage(message, gameObject);
+
<br> messagee.SendMessage(message, gameObject);
}
+
<br> }
else
+
<br> else
{
+
<br> {
state --;
+
<br> state --;
if (state < 0)
+
<br> if (state < 0)
state = 0;
+
<br> state = 0;
}
+
<br> }
guiText.material = normalMaterial;
+
<br> guiText.material = normalMaterial;
}
+
<br>}
 
+
<br>
function OnMouseExit()
+
<br>function OnMouseExit()
{
+
<br>{
if (state > 0)
+
<br> if (state > 0)
state--;
+
<br> state--;
if (state == 0)
+
<br> if (state == 0)
guiText.material = normalMaterial;
+
<br> guiText.material = normalMaterial;
}
+
<br>}
</code>
+
<br>

Revision as of 01:27, 1 December 2005


// Use this script on a guiTexture object for regular push buttons
// that behave properly like Mac OS X.

var normalMaterial : Material;
var hoverMaterial : Material;
var pressedMaterial : Material;
var messagee : GameObject;
var message = "ButtonPress";

private var state = 0;

function OnMouseEnter()
{
state++;
if (state == 1)
guiText.material = hoverMaterial;
}

function OnMouseDown()
{
state++;
if (state == 2)
guiText.material = pressedMaterial;
}

function OnMouseUp()
{
if (state == 2)
{
state--;
if (messagee)
messagee.SendMessage(message, gameObject);
}
else
{
state --;
if (state < 0)
state = 0;
}
guiText.material = normalMaterial;
}

function OnMouseExit()
{
if (state > 0)
state--;
if (state == 0)
guiText.material = normalMaterial;
}

Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox