在 gameObject 上检测 mouseClick/touch
detecting mouseClick/touch on gameObject
系统从未检测到我的 mouse/touch 单击游戏对象(右箭头或左箭头,检查下面的 link)
public void OnMouseDown()
{
//don`t enter here!!
if (this.name == "gameObjectName")
doAction();
}
由于您的实例变量名称的值为 "Left Arrow-50",因此条件为假,您的 doAction-Mehtod 不会被调用。
很难帮到你,因为我们不知道 gameObjectName 是什么。是变量还是字符串?
如果它是一个字符串变量,试试下面的代码:
public void OnMouseDown()
{
if (this.name.equals(gameObjectName)) // - if gameObjectName is a variable, containing the name of game object
doAction();//never enter here!!
}
假设您的脚本附加到 Left Arrow-50 游戏对象,首先确保它们都有 collider 组件.
之后,重写您的代码,删除 if 行。只有附加到单击对象的脚本实例才会被调用,因此您不需要这一行来检查这是否是正确的对象。
public void OnMouseDown()
{
doAction();
}
对 Right Arrow-50 及其脚本执行相同的操作。
系统从未检测到我的 mouse/touch 单击游戏对象(右箭头或左箭头,检查下面的 link)
public void OnMouseDown()
{
//don`t enter here!!
if (this.name == "gameObjectName")
doAction();
}
由于您的实例变量名称的值为 "Left Arrow-50",因此条件为假,您的 doAction-Mehtod 不会被调用。
很难帮到你,因为我们不知道 gameObjectName 是什么。是变量还是字符串?
如果它是一个字符串变量,试试下面的代码:
public void OnMouseDown()
{
if (this.name.equals(gameObjectName)) // - if gameObjectName is a variable, containing the name of game object
doAction();//never enter here!!
}
假设您的脚本附加到 Left Arrow-50 游戏对象,首先确保它们都有 collider 组件.
之后,重写您的代码,删除 if 行。只有附加到单击对象的脚本实例才会被调用,因此您不需要这一行来检查这是否是正确的对象。
public void OnMouseDown()
{
doAction();
}
对 Right Arrow-50 及其脚本执行相同的操作。