Перезаписывающая переменная в Unity C # - PullRequest
0 голосов
/ 19 сентября 2019

Я делаю скрипт в Unity, используя C #.Я пытаюсь использовать метод Update (), чтобы определить, когда положение камеры прошло определенную точку, а затем создать объект на сцене и переписать переменную «x» на что-то другое, так что это происходит только один раз.Проблема в том, что я не могу перезаписать эту переменную "x".

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class NewBehaviourScript : MonoBehaviour{
    public GameObject GroundSprite;
    public int x = 1;
    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        if (((Camera.main.transform.position.x) < -4) && ( x == 1)) 
        {
            Instantiate(GroundSprite, transform.position, Quaternion.identity);
            int x = 2;
        }
    }

}

1 Ответ

0 голосов
/ 19 сентября 2019

Пожалуйста, удалите int из кода ниже, ваше значение будет перезаписано.

// Update is called once per frame
void Update()
{
    if (((Camera.main.transform.position.x) < -4) && ( x == 1)) 
    {
        Instantiate(GroundSprite, transform.position, Quaternion.identity);
         //int x = 2;
           x=2;
    }
}
...