我正在制作一个我正在使用gui标签的游戏我想设置x轴的位置,就像当第一个角色出现时第二个必须出现在我正在使用的一点点。
var isClicked : boolean=false;
var xpos: float = 200;
var xpox:float;
var i:float;
function Start () {}
function xchange(): float{
xpos= xpos+8;
i=xpos;
return i;
}
function OnMouseDown()
{
isClicked = true;
}
function OnGUI()
{
if (gameObject.name == "Sphere 1(Clone)" && isClicked ){
xpox=xchange();
GUI.Label(new Rect(xpox,260,400,100), "B");
}
else if (gameObject.name == "Sphere(Clone)" && isClicked ){
xpox=xchange();
GUI.Label(new Rect(xpox,260,400,100), "A");
}
}
在这段代码中每次点击球体时都会出现字母,但问题是每次字母表出现时它都会在屏幕上显示,这是由于这段代码所致。
function xchange(): float
{
xpos= xpos+8;
i=xpos;
return i;
}
我只是希望我点击的每一个字母都必须比第一个字母更远一些。
答案 0 :(得分:0)
你可以试试这个:
在函数Update()中只检查条件isClicked = true或不是..
function Update()
{
if(isClicked)
{
xpos += 500;
}
}
function OnGUI()
{
if (gameObject.name == "Sphere 1(Clone)" && isClicked )
{
GUI.Label(new Rect(xpos,260,400,100), "B");
}
}
你可以试试这个..一切都很好..