c# - 我刚开始编程,下面的错误并没有停止出现错误 CS1955 Non-invocable member 'Component.tag' cannot be used like a method
问题描述
我试图在谷歌中搜索它,但答案在我的具体情况下不起作用,而且我不知道没有人知道编程,所以我正在尝试有知识的人帮助我:
private void OnCollisionEnter2D(Collision2D collision)
{
if(collision.transform.tag("ground") = canJump = true)
{
canJump = true;
}
}
解决方案
Component.tag是一个属性,而不是一个方法,假设您正在检查转换的标签是否为,如果是,则ground
设置canJump
为 true ,您可以这样编写:
private void OnCollisionEnter2D(Collision2D collision)
{
if(collision.transform.tag == "ground")
{
canJump = true;
}
}
请注意,要将某些内容等同起来,您需要使用==运算符而不是=
,因为=
仅在将值分配给变量时使用。
正如@derHugo 提到的,您还可以使用Component.CompareTag
private void OnCollisionEnter2D(Collision2D collision)
{
if(collision.transform.CompareTag("ground"))
{
canJump = true;
}
}
推荐阅读
- html - 如何在博客中为网站的移动用户添加警报?
- java - 从外部静态连接方法引用变量
- javascript - 在 typescript 或 javascript 中按值过滤对象
- django - Django 静态文件未正确加载
- bash - 仅从多个文件中提取 LUFS
- python-3.x - 如何访问 Meta 类中的类常量?
- java - 解压缩使用 java.util.zip.Inflater 编码的 gzip base64
- python - 由于二进制文件的签名无效且二进制文件未签名,因此无法公证 .pkg 文件
- uber-api - 如何从 Uber SDK android 和 iOS 获取请求的乘车详情?
- node.js - “anymatch”的完整性检查失败(计算的完整性与我们的记录不匹配,得到