예제 #1
0
    // 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;
        }
    }
예제 #2
0
    // 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();
            }
        }
    }