c# - unity脚本无法导出
问题描述
晚上好,目前正在完成一项几乎到期的任务,我似乎无法理解为什么没有分配此代码。Unity 不断向我显示的一个错误是脚本必须从 MonoBehaviour 派生。我查找了教程和线程,但似乎仍然找不到我的问题。以下是我目前的代码副本。非常感谢您的帮助!
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Track01Track : MonoBehaviour {
public GameObject TheMarker;
public GameObject Mark01;
public GameObject Mark02;
public GameObject Mark03;
public GameObject Mark04;
public GameObject Mark05;
public GameObject Mark06;
public GameObject Mark07;
public GameObject Mark08;
public GameObject Mark09;
public GameObject Mark10;
public GameObject Mark11;
public GameObject Mark12;
public GameObject Mark13;
public GameObject Mark14;
public GameObject Mark15;
public GameObject Mark16;
public GameObject Mark17;
public GameObject Mark18;
public GameObject Mark19;
public GameObject Mark20;
public GameObject Mark21;
public GameObject Mark22;
public GameObject MarkTracker;
void Start ()
{
}
void Update () {
if (MarkTracker == 0)
{
TheMarker.transform.position = Mark01.transform.position;
}
if (MarkTracker == 1)
{
TheMarker.transform.position = Mark02.transform.position;
}
if (MarkTracker == 2)
{
TheMarker.transform.position = Mark03.transform.position;
}
if (MarkTracker == 3)
{
TheMarker.transform.position = Mark04.transform.position;
}
if (MarkTracker == 4)
{
TheMarker.transform.position = Mark05.transform.position;
}
if (MarkTracker == 5)
{
TheMarker.transform.position = Mark06.transform.position;
}
if (MarkTracker == 6)
{
TheMarker.transform.position = Mark07.transform.position;
}
if (MarkTracker == 7)
{
TheMarker.transform.position = Mark08.transform.position;
}
if (MarkTracker == 8)
{
TheMarker.transform.position = Mark09.transform.position;
}
if (MarkTracker == 9)
{
TheMarker.transform.position = Mark10.transform.position;
}
if (MarkTracker == 10)
{
TheMarker.transform.position = Mark11.transform.position;
}
if (MarkTracker == 11)
{
TheMarker.transform.position = Mark12.transform.position;
}
if (MarkTracker == 12)
{
TheMarker.transform.position = Mark13.transform.position;
}
if (MarkTracker == 13)
{
TheMarker.transform.position = Mark14.transform.position;
}
if (MarkTracker == 14)
{
TheMarker.transform.position = Mark15.transform.position;
}
if (MarkTracker == 15)
{
TheMarker.transform.position = Mark16.transform.position;
}
if (MarkTracker == 16)
{
TheMarker.transform.position = Mark17.transform.position;
}
if (MarkTracker == 17)
{
TheMarker.transform.position = Mark18.transform.position;
}
if (MarkTracker == 18)
{
TheMarker.transform.position = Mark19.transform.position;
}
if (MarkTracker == 19)
{
TheMarker.transform.position = Mark20.transform.position;
}
if (MarkTracker == 20)
{
TheMarker.transform.position = Mark21.transform.position;
}
if (MarkTracker == 21)
{
TheMarker.transform.position = Mark22.transform.position;
}
}
IEnumerator OnTriggerEnter(Collider collision)
{
if (collision.gameObject.tag == "Track01")
{
this.GetComponent<BoxCollider>().enabled = false;
MarkTracker += 1;
if (MarkTracker == 22)
{
MarkTracker = 0;
}
yield return new WaitForSeconds(1);
this.GetComponent<BoxCollider>().enabled = true;
}
}
}
这是错误:
无法添加脚本行为 CallbackExecutor。该脚本需要从 MonoBehaviour 派生。
解决方案
您应该检查 Unity 编辑器中脚本的“名称”是否与您的类的名称相对应Track01Track
。
推荐阅读
- okhttp - 使用协程刷新令牌时身份验证器中断
- mongodb - Mongo Academy第4章表达性查询运算符:本地结果始终为0
- apache-flink - 仅一项任务的 Flink 指数退避
- python - pygame平台游戏碰撞导致奇怪的间距问题
- android - 无论如何从android studio 4.2.2中的xml更改按钮的背景图像(不是颜色)?
- python - 结合两个数据框
- php - 我可以与这个 PHP 字符串生成器发生冲突/重复吗?
- r - R markdown 中会话标题的内部超链接
- python - IA 如何判断显着性图的阈值图像?
- java - Firebase 代码无法“逐行”正确读取