Синтаксис:
Используется csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class (name) : MonoBehaviour
{
public FadeOut FadeOut;
public ShakingEffect ShakingEffect;
public float timetoEarthquake = 10f;
public float distance = 1f;
public GameObject FadeCanvas;
public GameObject EarthPlanet;
public GameObject EarthPlanetInfected;
public AudioSource AudioSource;
public AudioClip Earthquake;
public bool EarthquakeOn = false;
void Start()
{
}
void Update()
{
if (Input.GetKeyDown(KeyCode.E))
{
Ray ray = new Ray(transform.position, transform.forward);
RaycastHit hit;
if (Physics.Raycast(ray, out hit, distance))
{
if (hit.collider.CompareTag("Earth"))
{
if (timetoEarthquake <= 0)
{
EarthquakeOn = true;
FadeCanvas.SetActive(true);
var FadeOut = gameObject.GetComponent<FadeOut>();
FadeOut.enabled = true;
AudioSource.PlayOneShot(Earthquake, 1F);
var Shake = ShakingEffect.Shake = true;
EarthPlanet.SetActive(false);
EarthPlanetInfected.SetActive(true);
}
}
}
}
}
using System.Collections.Generic;
using UnityEngine;
public class (name) : MonoBehaviour
{
public FadeOut FadeOut;
public ShakingEffect ShakingEffect;
public float timetoEarthquake = 10f;
public float distance = 1f;
public GameObject FadeCanvas;
public GameObject EarthPlanet;
public GameObject EarthPlanetInfected;
public AudioSource AudioSource;
public AudioClip Earthquake;
public bool EarthquakeOn = false;
void Start()
{
}
void Update()
{
if (Input.GetKeyDown(KeyCode.E))
{
Ray ray = new Ray(transform.position, transform.forward);
RaycastHit hit;
if (Physics.Raycast(ray, out hit, distance))
{
if (hit.collider.CompareTag("Earth"))
{
if (timetoEarthquake <= 0)
{
EarthquakeOn = true;
FadeCanvas.SetActive(true);
var FadeOut = gameObject.GetComponent<FadeOut>();
FadeOut.enabled = true;
AudioSource.PlayOneShot(Earthquake, 1F);
var Shake = ShakingEffect.Shake = true;
EarthPlanet.SetActive(false);
EarthPlanetInfected.SetActive(true);
}
}
}
}
}
Как сделать так,чтобы timetoEarthquake -= Time.deltaTime вычислялся не одноразово по KeyCode.E и хиту по коллайдеру,а пока не будет <= 0