private void OnDestroyInvader(InvaderView inTarget) { var hitScore = inTarget.Kill(); AudioSystem.Play(AudioLabel.HitInvaders); hitScore += DestroyMatches(inTarget); OnCollectScore?.Invoke(hitScore); }
private void Generate() { _matrix = new Matrix <InvaderView>(_config.establishing.dimension.y, _config.establishing.dimension.x); for (var y = 0; y < _config.establishing.dimension.y; y++) { var invadersData = _config.invaders.GetDataByInvaderIndex(y); for (var x = 0; x < _config.establishing.dimension.x; x++) { invadersData.color = _config.invaders.GetRandomColor(); invadersData.position = new Vector2Int(y, x); _matrix[y, x] = new InvaderView($"Invader[{y},{x}]", invadersData, _config); _matrix[y, x].SetParent(_gridHolder); } } }