【发布时间】:2019-12-28 22:35:35
【问题描述】:
我创建了一个PlayerInputHandler,将其添加到我的主gameObject 以处理用户输入(触摸,因为它适用于移动设备)。
我只是有一个角色,我可以通过在我的屏幕上触摸它来选择它并通过再次触摸这个角色来取消选择。
public class PlayerInputHandler : MonoBehaviour
{
void Update()
{
if(Input.touchCount > 0){
Touch pos = GetMouseWorldPositionWithZ(Input.GetTouch(0).position, Camera.main);
if(checkIfPosCorrespondsToCharacter(pos)) {
characterSelected != characterSelected;
}
}
}
}
但是,有时,它会直接选择和取消选择我的角色。会不会是因为在一个“touch event”期间多次调用了update?
【问题讨论】:
-
是的。创建一个标志,在触地时设置它,在触地时重置它。