c# - 在Unity中按下拾取按钮(X)时如何销毁碰撞的游戏对象
问题描述
当玩家进入触发器并按 x 拾取它时,我需要让我的游戏对象(拾取)被破坏。
这就是我到目前为止所得到的。这是在需要销毁的皮卡上:
public void Update()
{
if (UIManager.XButtonPressed == true)
{
UIManager.AbleTopickUp = false;
UIManager.XButtonPressed = false;
Destroy(this.gameObject);
Debug.Log("Destroyed the pickup.");
}
}
void OnTriggerEnter(Collider collision)
{
if (collision.gameObject.name == "Player")
{
UIManager.AbleTopickUp = true;
}
}
void OnTriggerExit(Collider collision)
{
if (collision.gameObject.name == "Player")
{
UIManager.AbleTopickUp = true;
}
}
这是在与拾取器触发器发生碰撞的玩家身上:
if (UIManager.AbleTopickUp)
{
if (Input.GetButtonDown("XButton"))
{
UIManager.XButtonPressed = true;
if (currentSlot == 1)
{
Slot1_W = 1;
}
if (currentSlot == 2)
{
Slot2_W = 1;
}
if (currentSlot == 3)
{
Slot3_W = 1;
}
}
}
任何帮助将不胜感激
解决方案
替换OnTriggerEnter
为OnTriggerStay
推荐阅读
- kubernetes - 从外部世界访问 GKE 内的共享目录
- java - 如何使用 Java 地图
> - c# - 模型在数据网格中显示为列
- amazon-web-services - 在 AWS Lambda 中使用 id_token 与 access_token 的最佳实践
- javascript - 为什么 Chart js 第一个柱太小或根本不显示?
- google-apps-script - 是否有创建循环来替换数据的功能?
- operators - 是否可以在 Raku 中定义一个新的运算符并控制其优先级?
- mongodb - 组聚合中的 MongoDb 自定义累加器
- javascript - 我可以将变量作为值分配给对象的键吗?
- imagemagick - 将所有 jpg 图像转换为 webp Magick