using System.Collections; using System.Collections.Generic; using UnityEngine; public class MoveController : MonoBehaviour { public delegate void PlayerDelegate(); public static event PlayerDelegate OnPlayerDied; public static event PlayerDelegate OnPlayerScored; public float speed = 0.25f; public Vector3 startPos; Rigidbody2D rb; GameManager game; void Start() { rb = GetComponent(); game = GameManager.Instance; } void OnEnable() { GameManager.OnGameStarted += OnGameStarted; GameManager.OnGameOverConfirmed += OnGameOverConfirmed; } void OnDisable() { GameManager.OnGameStarted -= OnGameStarted; GameManager.OnGameOverConfirmed -= OnGameOverConfirmed; } void OnGameStarted() { rb.velocity = Vector3.zero; rb.simulated = true; } void OnGameOverConfirmed() { transform.localPosition = startPos; } void Update() { transform.Translate(Input.acceleration.x * speed, 0, 0); } void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.tag == "ScoreZone") { OnPlayerScored(); //play a sound } if (col.gameObject.tag == "DeadZone") { OnPlayerDied(); rb.simulated = false; } } }