我想为安卓手机做一些控制。想做一个按钮,如果球员接触并保持他开始移动到右/左。如果他停止拿着它,到侧面的动作就会停止。
我有一个脚本,可以通过按住某个键来移动:

void FixedUpdate()
{
    // Add a forward force
    rb.velocity = new Vector4(0, 0, ForwardForce * Time.deltaTime, rb.velocity.y);

    if (Input.GetKey("d"))  // If the player is pressing the "d" key
    {
        // Add a force to the right
        rb.velocity = new Vector4(SidewaysForce * Time.deltaTime, 0, ForwardForce * Time.deltaTime, rb.velocity.x);
    }

    if (Input.GetKey("a"))  // If the player is pressing the "a" key
    {
        // Add a force to the left
        rb.velocity = new Vector4(-SidewaysForce * Time.deltaTime, 0, ForwardForce * Time.deltaTime, rb.velocity.y);

    }

最佳答案

创建2个ui按钮。
左按一个,右按一个。
向每个按钮添加事件触发器组件。
为动作创建一个类,例如:
公共类游戏规则:单一行为{

 public float speed = 3;

 public void MoveLeft(){
     transform.Translate(-Vector3.right * speed * Time.deltaTime);
 }

 public void MoveRight(){
     transform.Translate(Vector3.right * speed * Time.deltaTime);
 }

}
在updateselected上调用它并使用pointer up/pointer down事件。

关于c# - 按住手机上的按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45537008/

10-13 03:18