// Update is called once per frame void Update() { currInput = recording[currRecord]; if (currInput.time <= timeInRecording) { if (currInput.jump) { movement.Jump(); } movement.JumpHigher(currInput.jumping); if (currInput.pickUp) { movement.PickUp(); } move = (currInput.move); shouldMove = true; currRecord += 1; lastInputTime = Time.time; } timeInRecording += Time.deltaTime; if (currRecord >= recording.Count) { hands.LetGo(); currRecord = 0; timeInRecording = 0f; transform.position = recording[currRecord].position; } }
// Update is called once per frame void Update() { if (recording) { InputAtTime inputAtTime = new InputAtTime(); inputAtTime.position = transform.position; inputAtTime.time = timeInRecording; inputAtTime.move = Input.GetAxis("Horizontal"); inputAtTime.jump = Input.GetButtonDown("Jump"); inputAtTime.jumping = Input.GetButton("Jump"); inputAtTime.pickUp = Input.GetButtonDown("PickUp"); inputRecording.Add(inputAtTime); timeInRecording += Time.deltaTime; stats.recordLeft -= Time.deltaTime; if (stats.recordLeft < 0) { stats.recordLeft = 0; recording = false; InstantiateClone(); } } }