Exemple #1
0
    public void Play()
    {
        if (_currentState != CinematicState.Playing)
        {
            cinematicCamera.gameObject.SetActive(true);
            if (_currentIndex == 0)
            {
                Camera.main.gameObject.SetActive(false);
                _currentPoint            = allPoints[_currentIndex];
                cinematicCamera.position = _currentPoint.pointTransform.position;
                cinematicCamera.rotation = _currentPoint.pointTransform.rotation;
                if (allPoints.Count > 0)
                {
                    _lastPoint    = allPoints[_currentIndex];
                    _currentIndex = 1;
                    _currentPoint = allPoints[_currentIndex];
                }
            }

            if (_currentState == CinematicState.Waiting)
            {
                _lastPoint = allPoints[_currentIndex];
                if (allPoints.Count > _currentIndex)
                {
                    _currentIndex++;
                    _currentPoint = allPoints[_currentIndex];
                }
            }

            _currentState = CinematicState.Playing;
        }
    }
 // Use this for initialization
 void Start()
 {
     s = CinematicState.INIT;
     textToScreen = "Nov 2, 1989" + '\n' + "Infinite Pastures, Alabama";
     auSou = gameObject.GetComponent<AudioSource>();
     StartCoroutine(TypingText(textToScreen));
     UFO.transform.position =new Vector3(transform.position.x,10.0f,transform.position.z - 20.0f);
 }
        private void SetCinematicState(CinematicState cinematicState)
        {
            if (_cinematicState == cinematicState)
            {
                return;
            }

            _cinematicState = cinematicState;
        }
 // Use this for initialization
 void Start()
 {
     s = CinematicState.INIT;
     textToScreen = "Nov 2, 1989" + '\n' + "Infinite Pastures, Alabama";
     auSou = gameObject.GetComponent<AudioSource>();
     StartCoroutine(TypingText(textToScreen));
     UFO.transform.position =new Vector3(transform.position.x,10.0f,transform.position.z - 20.0f);
     auSou.enabled = true;
     GameManager.instance.mainCamera.CameraControlable = false;
 }
Exemple #5
0
 public void Pause()
 {
     if (_currentState == CinematicState.Playing || _currentState == CinematicState.Waiting)
     {
         _stateBeforePause = _currentState;
         _currentState     = CinematicState.Pause;
     }
     else if (_currentState == CinematicState.Pause)
     {
         _currentState = _stateBeforePause;
     }
 }
    IEnumerator TypingText(string inputText)
    {
        UFO.UFOControlling = false;
        UI.SetActive(false);
        foreach(char letter in  inputText.ToCharArray())
        {
            mainText.text += letter;
            auSou.PlayOneShot(listAudioClip[0]);

            yield return new WaitForSeconds(0.05f);
        }

        s = CinematicState.UFOENTER;
    }
Exemple #7
0
 public void UpdateStreaming(JArray streamingMessage)
 {
     foreach (var singleStreaming in streamingMessage)
     {
         try
         {
             JObject        streamingObject = singleStreaming.Value <JObject>();
             string         id        = streamingObject.GetValue("id").Value <string>();
             CinematicState component = state.sensors.kinematics.Find(x => x.Id == id);
             if (component != null)
             {
                 JToken scan;
                 if (streamingObject.TryGetValue("acc", out scan))
                 {
                     dynamic acc = scan.Value <JObject>();
                     component.accelerometer.X = acc.x;
                     component.accelerometer.Y = acc.y;
                     component.accelerometer.Z = acc.z;
                 }
                 if (streamingObject.TryGetValue("gyr", out scan))
                 {
                     dynamic gyr = scan.Value <JObject>();
                     component.gyroscope.X = gyr.x;
                     component.gyroscope.Y = gyr.y;
                     component.gyroscope.Z = gyr.z;
                 }
                 if (streamingObject.TryGetValue("pos", out scan))
                 {
                     dynamic pos = scan.Value <JObject>();
                     component.position.X = pos.x;
                     component.position.Y = pos.y;
                     component.position.Z = pos.z;
                 }
             }
         }
         catch (Exception)
         {
             Debug.Log("Error parse event " + singleStreaming.ToString());
         }
     }
     EventUdp?.Invoke();
 }
Exemple #8
0
    private void Update()
    {
        if (_currentState == CinematicState.Playing)
        {
            _currentProgressionPosition += Time.deltaTime * _currentPoint.speed;
            _currentProgressionRotation += Time.deltaTime * _currentPoint.speed;
            cinematicCamera.position     = Vector3.Lerp(_lastPoint.pointTransform.position, _currentPoint.pointTransform.position, _currentProgressionPosition);
            if (_currentPoint.moveRotation)
            {
                cinematicCamera.rotation = Quaternion.Lerp(_lastPoint.pointTransform.rotation, _currentPoint.pointTransform.rotation, _currentProgressionRotation);
            }
            else if (_currentPoint.useTarget && _currentPoint.targetCamera != null)
            {
                cinematicCamera.LookAt(_currentPoint.targetCamera.position);
            }

            if (_currentProgressionPosition >= 0.99f)
            {
                cinematicCamera.position = _currentPoint.pointTransform.position;
                if (_currentPoint.moveRotation)
                {
                    cinematicCamera.rotation = _currentPoint.pointTransform.rotation;
                }
                _currentProgressionPosition = 0.0f;
                _currentProgressionRotation = 0.0f;
                _currentState = CinematicState.Waiting;
            }
        }
        else if (_currentState == CinematicState.Waiting)
        {
            _waitingTime += Time.deltaTime;
            if (_waitingTime >= _currentPoint.waitingTime)
            {
                _waitingTime = 0;
                Play();
            }
        }
    }
Exemple #9
0
 public void Stop()
 {
     _currentState = CinematicState.Stopped;
     Camera.main.gameObject.SetActive(true);
 }
 // Update is called once per frame
 void Update()
 {
     if(s == CinematicState.UFOENTER)
     {
         UFOAppear(new Vector3(transform.position.x,10.0f,transform.position.z));
         if(Vector3.Distance (UFO.transform.position,new Vector3(transform.position.x,10.0f,transform.position.z)) < 1.0f)
             s = CinematicState.DONE;
     }
     else if(s == CinematicState.DONE)
     {
         mainText.enabled = false;
         UI.gameObject.SetActive(true);
         timer.StartTimer();
         UFO.UFOControlling = true;
         Destroy(this);
     }
 }