Files
sber-ar/Assets/Scripts/TimeOfDayHandler.cs
2023-06-05 23:22:41 +05:00

64 lines
1.9 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Video;
using DG.Tweening;
using System;
public class TimeOfDayHandler : MonoBehaviour
{
[SerializeField] private VideoPlayer _videoPlayer;
[Space(16)]
[SerializeField] private VideoClip _dayClip;
[SerializeField] private VideoClip _dayTransitionClip;
[Space(16)]
[SerializeField] private VideoClip _nightClip;
[SerializeField] private VideoClip _nightTransitionClip;
[Space(16)]
[SerializeField] private Light _directionLight;
[SerializeField] private Color _dayLight;
[SerializeField] private Color _nightLight;
private void Start() {
_videoPlayer.clip = _dayClip;
_videoPlayer.Play();
}
private void Update() {
if(Input.GetKeyDown(KeyCode.Space))
{
if(_videoPlayer.clip == _dayClip)
{
_directionLight.DOIntensity(.5f, 15f);
_directionLight.DOColor(_nightLight, 15f);
_videoPlayer.Stop();
_videoPlayer.clip = _dayTransitionClip;
_videoPlayer.Play();
_videoPlayer.loopPointReached += player =>
{
_videoPlayer.Stop();
_videoPlayer.clip = _nightClip;
_videoPlayer.Play();
};
}
else if(_videoPlayer.clip == _nightClip)
{
_directionLight.DOIntensity(.5f, 15f);
_directionLight.DOColor(_dayLight, 15f);
_videoPlayer.Stop();
_videoPlayer.clip = _nightTransitionClip;
_videoPlayer.Play();
_videoPlayer.loopPointReached += player =>
{
_videoPlayer.Stop();
_videoPlayer.clip = _dayClip;
_videoPlayer.Play();
};
}
}
}
}