gpt4 book ai didi

c# - unity OnTriggerEnter2D CompareTag ||比较标签不一致

转载 作者:行者123 更新时间:2023-11-30 20:36:24 24 4
gpt4 key购买 nike

我正在尝试使用 Unity 制作一个通用的“贪吃蛇”游戏,以加强我对 C# 和 Unity 基础知识的了解。

我遇到的问题是,当玩家与 body 发生碰撞时,我似乎无法让玩家游戏结束。目前我的碰撞检查设置如下:

void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.CompareTag("Border") || other.gameObject.CompareTag("Body")) //if the player collides with a Border tag or Body tag...
{
//Game Over Sequence
GameOver();
}
else if (other.gameObject.CompareTag("Collectable")) //otherwise if the player collides with a Collectable tag...
{
//Snek needs to grow!
shouldGrow = true;
}
}

这也是蛇身预制检查员的照片。我检查以确保标签设置为正文。

边界碰撞工作正常,奇怪的是将边界对象设置为“ body ”标签也工作正常,所以我不确定为什么 body 部分没有触发游戏结束序列。

我是编程新手,如果这个问题很明显,我深表歉意,但我不明白为什么这不起作用。

提前致谢!

编辑:根据程序员的要求,这是边境检查员之一的照片:

最佳答案

在 Snake_Body 的盒子碰撞器上勾选“是触发器”。如果没有这个,则不会调用 OnTriggerEnter2D 函数。您已在边界框碰撞器上正确完成此操作。

关于c# - unity OnTriggerEnter2D CompareTag ||比较标签不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36993265/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com