c# - Unity 脚本错误(该脚本不继承可以管理脚本错误的本机类)
问题描述
我目前正在 YouTube 的指导下使用 unity 制作问答游戏(这是我关注的视频https://www.youtube.com/watch?v=G9QDFB2RQGA)。现在,当我尝试将答案脚本添加到按钮组件中时(14:30),我陷入了困境。每次我尝试时,都会弹出脚本不继承本机类的错误消息。已经一天试图找到解决方案,但我仍然找不到它。尝试将脚本文件名、类名更改为相同等,但仍然无法添加脚本。没有编译器错误。有谁知道怎么了?
答案.cs
using System.Collections.Generic;
using UnityEngine;
public class Answers : MonoBehaviour
{
public bool isCorrect = false;
public Quizmanager quizmanager;
public void Answers()
{
if (isCorrect)
{
Debug.log("Correct answer!");
else
{
Debug.log("Wrong answer ~");
}
}
}
测验管理器.cs
using System.Collections.Generic;
using UnityEngine;
public class Quizmanager : MonoBehaviour
{
public List<Questions> QnA;
public GameObject[] options;
public int currentquestions;
public Text Questiontxt;
private void Start()
{
generatequestion();
}
public void correct()
{
QnA.RemoveAt[currentquestions];
generatequestion();
}
void Setanswers()
{
for(inr 1=0; 1 <options.Length; int++)
{
options[i].GetComponent<AnswersScript>().isCorrect = false;
options[i].transform.GetChild(0).GetComponent<Text>().text = QnA[currentquestions].Answers[i];
if(QnA[currentquestions].CorrectAnswer == i + 1)
{
options[i].GetComponent<AnswerScript>().isCorrect = true;
}
}
}
void generatequestion()
{
currentquestions = Random.Range(0, QnA.Count);
Questiontxt.text = QnA[currentquestions].Question;
Setanswers();
}
}
解决方案
我在使用 Visual Studio 时遇到了类似的问题。我设法解决它们的唯一方法是创建一个新脚本,并将类内容(不是类名)复制到新文件中并删除旧文件。类名可能会改变,解决方案有点虎头蛇尾,但它通常会让我免于这个问题。
推荐阅读
- uitableview - 在 UITableView 中加载数据时,活动指示器出现问题
- mysql - 从 3 个不同的表创建一个视图
- apache - 配置 apache 以将 url 重定向到另一个主机
- linux - 使用 DSA 公钥验证 X509 证书签名
- batch-file - 批量重命名文件,同时保留部分 rar 编号
- vb.net - 改变矢量方向
- python - 我如何对箱形图的列名的部分进行分组?
- spring - 如何在 Spring Boot 中为 preAuthenticationChecks 和 postAuthenticationChecks 配置 UserDetailsChecker
- c - valgrind 显示内存大的 strtok 错误
- asp.net - RequiredFieldValidator ErrorMessage 的 .NET 内联表达式