繁体   English   中英

如何在鼠标点击ogameobject时禁用/启用LineRenderer?

[英]How can I disable/enable LineRenderer on mouse click on ogameobject?

问题在于该行始终为假:

private void OnMouseOver()
{
    if(Input.GetMouseButtonDown(0))
    {
        line.enabled = !line;
        if (line.enabled == true)
            CreatePoints();
    }
}

我希望当我单击GameObject ,将线设置为true,然后将CreatePoints()启用,然后再次单击,线将为false,并且不会创建点。

更新:

添加了一个计数器,因此运行游戏时的默认状态为true,然后将其切换为false / true。

int clickcount = 0;
    private void OnMouseOver()
    {
        if (Input.GetMouseButtonDown(0))
        {
            if (clickcount == 0)
            {
                line.enabled = true;
            }
            else
            {
                line.enabled = !line.enabled;
            }
            if (line.enabled)
                CreatePoints();

            clickcount ++;
        }
    }

这很好用,但是使用这样的计数器是个好方法吗?

 if (Input.GetMouseButtonDown(0))
 {
   line.enabled = !line.enabled;
   if (line.enabled)
     CreatePoints();
 }

您不能直接访问游戏对象的启用/禁用状态。 您需要使用.enabled来检索它,并将其相反的位置设置为打开和关闭。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM