2015-09-19 2 views
-1

(я знаю, что этот вопрос был задан, но ни один из них не работает для меня)C# переменная не существует в текущем контексте

В моем сценарии, у меня есть массив, который находится вне сферы (что странно, потому что Я следую учебнику, который работает). Может ли кто-нибудь понять, почему массив не в области?

Код:

using UnityEngine; 
using System.Collections; 

public class Patrol : MonoBehaviour 
{ 
    public Transform[] PartolPoints; 

    void Start() 
    { 
     transform.position = PatrolPoints[0].position; 
    } 

    // Update is called once per frame 
    void Update() 
    { 

    } 
} 
+0

Я также заметил опечатку: она была определена как PartrolPoints, и я ссылался на PatrolPoints; к сожалению, удаление его не исправило ошибку :( – TheSporech

+0

Где ваш массив, созданный/переданный в метод 'Start()'? –

+0

Я использую механизм единства, вы можете указать, что назначено PatrolPoints вне кода – TheSporech

ответ

0

Вы получаете массив во время выполнения?

Если это так, убедитесь, что вы инициализируете массив в инспекторе, перетащив паттинг-точку GameObjects в массив или через код, выполнив поиск ваших точек патрулирования в функции start().

В противном случае, если вы правильно инициализировали свой массив, вы получаете обычную ошибку, и я рекомендую переустановить последнюю версию.

Этот код работает правильно, я подтвердил, что он работает с той же версией единства на моей стороне.

Смежные вопросы