确认标签 CompareTag

目前正跟随官网 Junior Programmer 课程学习。

前一段时间学习到的一些内容,将分别纪要。

1.确认标签

有些时候我们需要明确得知某个对象,是否属于某个类别。

例如,碰撞到一个游戏对象时,我们可能需要直到撞到的对象是属于哪个类别的。这时我们可以使用:

1
public bool CompareTag (string tag);

来获取该游戏对象的标签 tag

参数说明如下:

参数 说明
tag 要比较的标签。

在使用此方法之前,我们需要在指定的游戏对象的 Inspector 窗口中配置其标签,示意如下:

image-20210813214159279

以下是跟随教程文档写的一段代码,作为示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
private void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.CompareTag("ground"))
{
onGround = true;
//播放粒子特效
dirtPart.Play();
}
else if (collision.gameObject.CompareTag("obstacle"))
{
isGameOver = true;
//切换死亡动画
playerAnim.SetBool("Death_b", true);
playerAnim.SetInteger("DeathType_int", 1);
//播放爆炸粒子动画
explosionPart.Play();
//停止播放粒子动画
dirtPart.Stop();
//Debug.Log("Game Over !!!");
//播放声音
playerAudio.PlayOneShot(crushSound, 1.0f);
}

}

以上。