public void Run() { foreach (var index in _eventFilter) { var target = _eventFilter.Get1(index).Target; var teaser = _eventFilter.Get1(index).Teaser; var pacmanECPair = _pacmanFilter.FirstOrDefault(x => x.Object == target); if (pacmanECPair == null) { return; } var enemyECPair = _enemiesFilter.FirstOrDefault(x => x.Object == teaser); if (enemyECPair == null) { return; } ref var pacmanComponent = ref pacmanECPair.Entity.Set <PacmanComponent>(); pacmanComponent.Health = pacmanECPair.Component.Health - enemyECPair.Component.Damage; }
public void Init() { var pacmanEcsData = _pacmanFilter.FirstOrDefault(); if (pacmanEcsData == null) { return; } var startPosition = pacmanEcsData.Component.Object.transform.position; var seeingPoints = _raycastService.SeeingPoints(startPosition).ToArray(); foreach (var point in seeingPoints) { FindPlaceAndSpawn(point); } }
public void Run() { foreach (var index in _eventFilter) { var coin = _coinFilter.FirstOrDefault(x => x.Target == _eventFilter.Get1(index).Target); if (coin == null) { continue; } var pacman = _pacmanFilter.FirstOrDefault(); if (pacman == null) { continue; } ref var pacmanComponent = ref pacman.Entity.Set <PacmanComponent>(); pacmanComponent.Points += coin.Component.Points; Object.Destroy(coin.Component.Target); coin.Entity.Destroy(); }