【发布时间】:2020-12-01 10:45:14
【问题描述】:
我正在统一编程的游戏有问题。当我添加下面给出的脚本时,这特别发生。错误消息说文件中没有 monobehaviorscripts,或者它们的名称与文件名不匹配。该脚本旨在在游戏中生成敌人。
我已经尝试更改类名、文件名并将一个复制到另一个。但这似乎没有帮助。
我刚刚编辑了我的代码,似乎没有解决。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class wavesystem : MonoBehaviour
{
public int enimicount;
public int[] enimi = { 1 };
public int wave = 1;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if (enimicount = 0)
{
int threat = 0;
for (threat < wavesystem.wave)
{
int name = Random.Range(0, wavesystem.enimi.Length);
int enimitreat = wavesystem.enimi[name];
if (threat + enimitreat <= wave)
{
float xpos = Random.Range(0, 2);
Instantiate("enimie" + name, (xpos, 1));
wavesystem.enimicount = wavesystem.enimicount + 1;
threat = threat + enimitreat;
}
}
wavesystem.wave = wavesystem.wave + 1;
}
}
}
【问题讨论】:
-
你确定文件名和Unity中显示的名字一样吗?
-
您是否尝试过创建一个新文件但只复制类内部的代码?所以没有
public class wavesystem之类的,以防某处出现拼写错误 -
由于 Update() 中的错误,编译器无法编译此脚本。先尝试解决错误
-
你确定你的脚本文件有“cs”扩展名吗?
-
random.Range中可能有错别字 .. 应该是Random.Range,random range也一样 .. 还有instantiate应该是Instantiate.. 等等首先修复你的编译器错误