24 lines
682 B
C#
24 lines
682 B
C#
using Code.Example.Race.Racer.AI;
|
|
using Code.Infrastructure.EventBus;
|
|
using Reflex.Attributes;
|
|
using UnityEngine;
|
|
|
|
namespace Code.Example.Race.Track
|
|
{
|
|
public class CheckPoint : MonoBehaviour
|
|
{
|
|
[Inject] private EventBus _eventBus;
|
|
private void OnTriggerEnter(Collider other)
|
|
{
|
|
var racer = other.GetComponent<Racer.AI.Racer>();
|
|
racer.NextWaypoint();
|
|
|
|
_eventBus.RaiseEvent<IRacerPassedCheckpointHandler>(h => h.OnRacerPassedCheckpoint(racer));
|
|
}
|
|
}
|
|
|
|
public interface IRacerPassedCheckpointHandler : IGlobalSubscriber
|
|
{
|
|
void OnRacerPassedCheckpoint(Racer.AI.Racer racer);
|
|
}
|
|
} |