Esempio n. 1
0
 private void CheckClips(RecordedClipMoment current)
 {
     if (clips.Count == 0)
     {
         lastClipMoment = current;
         clips.Add(current);
     }
     else
     {
         if (current.position != lastClipMoment.position ||
             current.rotation != lastClipMoment.rotation ||
             current.shot != lastClipMoment.shot)
         {
             lastClipMoment = current;
             clips.Add(current);
             hasFireAShot = false;
         }
     }
 }
Esempio n. 2
0
    private void Record()
    {
        if (Input.GetKeyDown(KeyCode.Space))
        {
            if (!isRecording)
            {
                isRecording = true;
            }
        }

        if (isRecording)
        {
            if (recordTimer >= recordTime)
            {
                recordTimer = 0;
                isRecording = false;
            }

            RecordedClipMoment clip = new RecordedClipMoment
            {
                bullet   = bulletObject,
                position = transform.position,
                rotation = transform.eulerAngles.y,
                shot     = hasFireAShot,
            };

            GetComponent <Renderer>().material.color = Color.green;

            CheckClips(clip);

            recordTimer += Time.deltaTime;
        }
        else
        {
            GetComponent <Renderer>().material.color = Color.blue;

            if (clips.Count > 0)
            {
                CreateClone();
            }
        }
    }