Unity开发FlappyBird类游戏:左键触发精灵冲量脚本报错求助
问题解决:Unity点击左键给精灵加冲量的脚本报错
报错原因解析
- CS8803 + CS0106:你把
Impulsionar方法写到了Aviao类的外面,C#要求所有类的成员方法必须放在类的大括号{}内部,类外部不能定义带private修饰符的方法,这直接触发了这两个错误。 - 变量拼写错误:类里声明的刚体变量是
fisics,但在Impulsionar里写成了fisica(少了一个s),运行时会找不到这个变量。
修正后的完整代码
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Aviao : MonoBehaviour { Rigidbody2D fisics; private void Awake() { this.fisics = this.GetComponent<Rigidbody2D>(); } private void Update () { if(Input.GetButtonDown("Fire1")) { this.Impulsionar(); } } private void Impulsionar() { this.fisics.AddForce(Vector2.up * 10, ForceMode2D.Impulse); } }
主要修改点
- 把
Impulsionar方法移到Aviao类的大括号内部,和其他方法保持同级。 - 修正变量名拼写:将
fisica改为fisics,和类里声明的变量名一致。
内容的提问来源于stack exchange,提问作者Byuuk
相关产品推荐
相关产品推荐

