Initial commit
This commit is contained in:
63
Assets/Scripts/DroneTrigger.cs
Normal file
63
Assets/Scripts/DroneTrigger.cs
Normal file
@@ -0,0 +1,63 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class DroneTrigger : MonoBehaviour
|
||||
{
|
||||
public LightWave wave1;
|
||||
public LightWave wave2;
|
||||
public DroneMovement droneMovement;
|
||||
public float droneSpeed = 40f;
|
||||
public float davidSpeed = 10f;
|
||||
public float davidSimDelay = 0.5f;
|
||||
private bool _fired = false;
|
||||
|
||||
public void Reset() { _fired = false; }
|
||||
|
||||
void Update()
|
||||
{
|
||||
if (_fired) return;
|
||||
if (transform.position.z >= 0f)
|
||||
{
|
||||
_fired = true;
|
||||
droneMovement.StopMoving();
|
||||
bool isSimulation = GameManager.Instance != null && GameManager.Instance.isSimulation;
|
||||
bool isView2 = GameManager.Instance != null && GameManager.Instance.isView2;
|
||||
if (isView2)
|
||||
StartCoroutine(LaunchView2());
|
||||
else if (isSimulation)
|
||||
StartCoroutine(LaunchSim());
|
||||
else
|
||||
StartCoroutine(LaunchReal());
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerator LaunchSim()
|
||||
{
|
||||
float delay = davidSimDelay / (droneSpeed / davidSpeed);
|
||||
wave1.StartWave();
|
||||
wave1.SetDroneText(true, isSimulation: true, simDelay: delay);
|
||||
yield return new WaitForSeconds(delay);
|
||||
wave2.StartWave();
|
||||
wave2.SetDroneText(false, isSimulation: true, simDelay: delay);
|
||||
}
|
||||
|
||||
IEnumerator LaunchReal()
|
||||
{
|
||||
wave1.StartWave();
|
||||
wave1.SetDroneText(true, isSimulation: false, simDelay: 0);
|
||||
wave2.StartWave();
|
||||
wave2.SetDroneText(false, isSimulation: false, simDelay: 0);
|
||||
yield return null;
|
||||
}
|
||||
|
||||
IEnumerator LaunchView2()
|
||||
{
|
||||
wave1.StartWave();
|
||||
wave2.StartWave();
|
||||
wave1.showBothTextsAtOnce = true;
|
||||
wave1.wave2ref = wave2;
|
||||
wave1.ShowTextForBoth();
|
||||
yield return new WaitForSeconds(0.1f);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user