私は、プレイヤーが指定されたコライダーに触れるときに作成したい4つのプレハブ「チャンク」を使って、クロスビーロードゲームを作っています。私のコードは、プレーヤーがヒットしたときにロードされるチャンクをランダム化し、次のチャンクを生成します。しかし何らかの理由で、私のプレハブを認識せず、最後のチャンクより先にチャンク25のZ値をロードしたい。コード:プレハブをインスタンス化しますか?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ChunkLoader : MonoBehaviour {
int level = 0;
public Transform chickenpos;
// Use this for initialization
void Start() {
}
// Update is called once per frame
void Update() {
}
void spawnChunk()
{
float chunkload = Random.Range(0, 2);
Debug.Log(chunkload);
if (level <= 10)
{
if(chunkload <= 1)
{
Instantiate (ChunkA1, chickenpos);
}
}
}
void OnTriggerEnter(Collider other)
{
if (other.tag == "Loader")
{
level = level++;
Debug.Log(level);
spawnChunk();
}
}
}
これはあなたの問題をうまく説明していませんが、宣言されていない変数( 'ChunkA1')を参照しているようです。 – Programmer
その場合は、[C#tutorial](https://unity3d.com/learn/tutorials/s/scripting)を参照します。 **変数と関数**のトピックを参照してください。 – Programmer