C# 使用上次添加到阵列/列表中的游戏对象
我在联合体与C#一起工作。我在数组中有3个不同的C# 使用上次添加到阵列/列表中的游戏对象,c#,arrays,list,unity3d,C#,Arrays,List,Unity3d,我在联合体与C#一起工作。我在数组中有3个不同的GameObjects,我想使用这样的if语句将最后生成/添加的对象添加到列表中:如果对象1生成,那么… 我该怎么做?代码如下: public GameObject[] arrows; public float interval = 5; private List<GameObject> myObjects = new List<GameObject>(); // Use this for initialization v
GameObject
s,我想使用这样的if语句将最后生成/添加的对象添加到列表中:如果对象1生成,那么…
我该怎么做?代码如下:
public GameObject[] arrows;
public float interval = 5;
private List<GameObject> myObjects = new List<GameObject>();
// Use this for initialization
void Start()
{
InvokeRepeating("SpawnArrow", 0f, interval);
}
void SpawnArrow()
{
if (myObjects.Count > 0)
{
Destroy(myObjects.Last());
myObjects.RemoveAt(myObjects.Count - 1);
}
GameObject prefab = arrows[UnityEngine.Random.Range(0, arrows.Length)];
GameObject clone = Instantiate(prefab, new Vector3(0.02F, 2.18F, -1), Quaternion.identity);
myObjects.Add(clone);
}
公共游戏对象[]箭头;
公共浮动间隔=5;
私有列表myObjects=新列表();
//用于初始化
void Start()
{
调用重复(“生成箭头”,0f,间隔);
}
空箭头()
{
如果(myObjects.Count>0)
{
破坏(myObjects.Last());
myObjects.RemoveAt(myObjects.Count-1);
}
游戏对象预制=箭头[UnityEngine.Random.Range(0,arrows.Length)];
游戏对象克隆=实例化(预置,新向量3(0.02F,2.18F,-1),四元数.identity);
myObjects.Add(克隆);
}
首先,先保留随机整数的值,以便进一步逻辑(if语句):
首先,为进一步的逻辑(if语句)保留随机整数的值:
您可能想看看如何使用。这是一个“后进先出”数据结构的示例,如果您希望: 使用生成/添加到列表中的最后一个对象 使用堆栈的示例:
using System;
using System.Collections;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Stack stack = new Stack();
stack.Push("First Item");
stack.Push("Second Item");
Console.WriteLine(stack.Pop());
Console.WriteLine(stack.Pop());
Console.ReadKey();
}
}
}
输出:
Second Item
First Item
请注意,当项目添加(推送)到堆栈,然后从堆栈中移除(弹出)时,您将首先获得添加到堆栈的最后一个项目
您可能想看看如何使用。这是一个“后进先出”数据结构的示例,如果您希望: 使用生成/添加到列表中的最后一个对象 使用堆栈的示例:
using System;
using System.Collections;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Stack stack = new Stack();
stack.Push("First Item");
stack.Push("Second Item");
Console.WriteLine(stack.Pop());
Console.WriteLine(stack.Pop());
Console.ReadKey();
}
}
}
输出:
Second Item
First Item
请注意,当项目添加(推送)到堆栈,然后从堆栈中移除(弹出)时,您将首先获得添加到堆栈的最后一个项目
数据结构ftw。数据结构ftw。