在 Unity C# 中覆盖变量
Overwriting variable in Unity C#
我正在使用 C# 在 Unity 中制作脚本。我正在尝试使用 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;
}
}
}
请从下面的代码中删除 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;
}
}
我正在使用 C# 在 Unity 中制作脚本。我正在尝试使用 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;
}
}
}
请从下面的代码中删除 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;
}
}