我想知道是否可以将键盘输入历史存储到数组中并在以后执行它们?基本上我有一个3D网格游戏和一个围绕网格移动的角色。我希望用户在播放器保持静止时通过右下左上键输入所有移动指令,一旦我按下输入,播放器将开始执行存储在阵列中的每条指令。 有什么建议吗?
答案 0 :(得分:1)
我建议使用List<T>
示例:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class Training : MonoBehaviour {
public List<KeyCode> previousActions;
void Update(){
if(Input.GetKeyDown(KeyCode.A)){
Debug.Log("Do something");
previousActions.Add(KeyCode.A);
}else if(Input.GetKeyDown(KeyCode.S)){
Debug.Log("Do something else");
previousActions.Add(KeyCode.S);
//---Check the list--//
}else if(Input.GetKeyDown(KeyCode.D)){
Debug.Log("Check the list");
for(int i = 0;i < previousActions.Count;i++){
Debug.Log(previousActions[i]);
}
}
}