我通过转到游戏对象>>创建其他>> GUI纹理添加了GUITexture,并在检查器中添加了它的纹理我现在想要的是当用户触摸时(游戏是针对Android和IOS)GUITexture移动立方体我尝试了这段代码
var up : GUITexture;
var player : Rigidbody2D;
function Update () {
for (var evt : Touch in Input.touches) {
var HitTest1 = up.HitTest(evt.position);
if (evt.phase == TouchPhase.Began) {
if(HitTest1){
player.rigidbody2D.AddForce(Vector2(-2,0));
fireButton.enabled = false;
}
}
}
}
但它没有用。我该怎么办?
答案 0 :(得分:0)
if (GUI.Button(Rect(10,10,50,50),up))
//Code to move cube up
这将从纹理中创建一个GUIButton。您需要将其放入脚本中的OnGUI函数中。以下是GUIButtons参考的链接:GUIButtons
答案 1 :(得分:0)
在您的代码中,您已将玩家声明为刚体
var player : Rigidbody2D;
及以下正试图访问其刚体
player.rigidbody2D.AddForce(Vector2(-2,0)); //this won't work
player.AddForce(Vector2(-2,0));//*use this instead*
或强>
尝试将玩家声明为游戏对象
var player:GameObject
并正确添加力量
player.rigidbody2D.AddForce(Vector2(-2,0));