我正在使用Unity和C#进行俄罗斯方块游戏教程并遇到错误

时间:2015-03-24 17:51:39

标签: c# unity3d void

我正在按照教程在Unity中制作我的第一个游戏。我需要一些关于spawner c#代码的帮助!该教程的链接如下。

http://noobtuts.com/unity/2d-tetris-game

以下是代码:

using UnityEngine;
using System.Collections;

public class Spawner : MonoBehaviour {

    // Groups
    public GameObject[] groups;
}
public void spawnNext() {
// Random Index
int i = Random.Range(0, groups.Length);

// Spawn Group at current Position
Instantiate(groups[i],
            transform.position,
                Quaternion.identity);
}
void Start() {
    // Spawn initial Group
    spawnNext();
}

我在" public void spawnNext()"中看到了一个涉及虚空的错误。线。

1 个答案:

答案 0 :(得分:3)

你的生成下一个函数正上方有一个结束大括号。这意味着你刚刚关闭了spawner类。如果你把它移到最后并且实际上包含了类中的所有内容,那就是它的样子:

using UnityEngine;
using System.Collections;

public class Spawner : MonoBehaviour {

    // Groups
    public GameObject[] groups;

    public void spawnNext() {
    // Random Index
    int i = Random.Range(0, groups.Length);

    // Spawn Group at current Position
    Instantiate(groups[i],
            transform.position,
                Quaternion.identity);
    }
    void Start() {
        // Spawn initial Group
        spawnNext();
    }
}

试试。

我怀疑它抱怨“void”,因为你刚刚关闭了这个类,并且它试图将你的方法定义解析为一个新类(C#不允许在类之外的浮动方法)。 Void不是类的有效关键字。