public override void Load(string fileName) { m_ClipList = new List <BaseRecordData>(); string filePath = Application.streamingAssetsPath + "/Behaviors/" + fileName + "_" + recordName + ".txt"; if (new FileInfo(filePath).Exists == false) { return; } using (FileStream fs = File.OpenRead(filePath)) { using (StreamReader sr = new StreamReader(fs)) { String line; while ((line = sr.ReadLine()) != null) { string[] elements = line.Trim().Split('#'); int index = int.Parse(elements[0]); float timeStamp = Convert.ToSingle(elements[1]); InputRecordData data = new InputRecordData(index, timeStamp); string[] s = elements[2].Trim().Split('/'); data.startBtn = bool.Parse(s[0]); data.pauseBtn = bool.Parse(s[1]); data.resumeBtn = bool.Parse(s[2]); data.quitBtn = bool.Parse(s[3]); data.discomfortConfirmBtn = bool.Parse(s[4]); data.spatialConfirmBtn = bool.Parse(s[5]); float x = Convert.ToSingle(s[6]); float y = Convert.ToSingle(s[7]); data.moveAxis = new Vector2(x, y); x = Convert.ToSingle(s[8]); y = Convert.ToSingle(s[9]); data.rotAxis = new Vector2(x, y); data.moveFoward = bool.Parse(s[10]); data.moveBackward = bool.Parse(s[11]); data.turnRight = bool.Parse(s[12]); data.turnLeft = bool.Parse(s[13]); m_ClipList.Add(data); } } } }
public override void Play(int currentClip) { // read from array if (currentClip >= m_ClipList.Count) { return; } InputRecordData data = m_ClipList[currentClip] as InputRecordData; startBtn = data.startBtn; pauseBtn = data.pauseBtn; resumeBtn = data.resumeBtn; quitBtn = data.quitBtn; discomfortConfirmBtn = data.discomfortConfirmBtn; spatialConfirmBtn = data.spatialConfirmBtn; moveAxis = data.moveAxis; rotAxis = data.rotAxis; moveFoward = data.moveFoward; moveBackward = data.moveBackward; turnLeft = data.turnLeft; turnRight = data.turnRight; }