我已经统一建立了一个小游戏。其中,当玩家触摸屏幕时,会生成图钉。我遇到的问题是,当我触摸屏幕时,一次只能生成两个大头针,而不是一个。我用这个代码-

 if(Input.touchCount == 1)
    {
        Spawnpin();
    }

最佳答案

将代码放在TouchPhase.BeganTouchPhase.Ended内,以便仅被调用一次,并且仅在释放并再次按下触摸时才被调用。在TouchPhase.BeganTouchPhase.Ended之间进行选择取决于是否要在按下时或释放后立即注册触摸。

void Update()
{
    for (int i = 0; i < Input.touchCount; i++)
    {
        if (Input.GetTouch(i).phase == TouchPhase.Began)
        {
            if (Input.touchCount == 1)
            {
                Spawnpin();
            }
        }
    }
}

09-06 12:47