OnCollisionEnter2D内KeyStrokes的问题

时间:2017-05-17 03:24:35

标签: c# methods unity2d

我正在尝试游戏,只要PREFAB文件击中一个看不见的二维对撞机,当用户按下一个键时,图片就会被破坏。我整理了预制克隆问题,但似乎void OnCollisionEnter2D的方法似乎无法识别KeyStroke命令。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class A2 : MonoBehaviour {

void OnCollisionEnter2D (Collision2D col)
{
    if(col.gameObject.name == "NeatPrefab(Clone)")
    {
        print ("works!");
        if (Input.GetKeyDown (KeyCode.C)) {

            //if object hits collider, then you can delete!
        }
    }

}

}

我是否需要创建新方法或类似的东西?

1 个答案:

答案 0 :(得分:0)

您应该尝试Input.GetKey而不是Input.GetKeyDown,如果用户在发生碰撞时按下了该键,则应该检测到它。

现在你的代码只有在用户在发生碰撞的时刻按下键时才会起作用 - 时机非常棘手,我怀疑这是预期的行为。