gpt4 book ai didi

c# - 如何检查游戏对象是否具有特定属性?

转载 作者:太空宇宙 更新时间:2023-11-03 12:17:23 26 4
gpt4 key购买 nike

我有一个带有 public boolean isIndestructible = true 属性的 Player 对象。我还有一个具有以下功能的 Mine 对象:

void OnCollisionEnter2D(Collision2D other) {
if (other.gameObject.CompareTag("Player") && !other.gameObject.isIndestructible) {
SceneManager.LoadScene("Game");
}
}

基本上,如果 Player 对象不是坚不可摧的,我只想重新加载游戏。但是这段代码不起作用(gameObject 没有 isIndestructible 作为属性),那么找到它的正确方法是什么?

最佳答案

I have a Player object with a public boolean isIndestructible = true property.

所以您已经将 MonoBehaviour 附加到 Player 对象,对吗?

Player.cs

using UnityEngine;

public class Player : MonoBehaviour
{
public bool isIndestructible {get; set;}
}

获取Mine中的isIndestructible属性,

void OnCollisionEnter2D(Collision2D other) {
var player = other.gameObject.GetComponent<Player>();
if(player != null && player.isIndestructible){
SceneManager.LoadScene("Game");
}
}

关于c# - 如何检查游戏对象是否具有特定属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49090793/

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