private void OnBonusPicked(BonusSettings bonusItem) { if (bonusItem != null) { if (bonusItem.Type == BonusSettings.SettingsType.Normal) { if (bonusItem.IsSuperBadItem) { _unknownItemView.SetActive(true); } if (bonusItem.SpeedRatio > 1) { _speedUpPlayerView.SetActive(true); } if (bonusItem.AdditionHearts > 0) { _extraHeartsView.SetActive(true); } if (bonusItem.BombsKind == BombItemKind.NoBombs) { _noBombsItemView.SetActive(true); } if (bonusItem.ExtraScores > 0) { _extraPointsView.SetActive(true); } if (bonusItem.ScoreMultyplayer > 1) { _pointsMultyView.SetActive(true); } } if (bonusItem.IsInsensitive) { _isInsensitive = true; } else if (!bonusItem.IsInsensitive && bonusItem.OldIsInsensitive) { _isInsensitive = false; } _intensiveItemView.SetActive(_isInsensitive); bool newEnemiesGenerate = false; if (bonusItem.BombsKind != _bombKind) { _bombKind = bonusItem.BombsKind; newEnemiesGenerate = true; } if (newEnemiesGenerate || bonusItem.Type == BonusSettings.SettingsType.ForceDefault) { if (_enemiesDispose != null) { _enemiesDispose.Dispose(); } _enemiesDispose = GenerateItems(); } } }
public BonusSettings(float activeTime, bool isInsensitive, BombItemKind bombsKind, int additionHearts, float scoreMultyplayer, float speedRatio, int extraScores, bool isSuperBadItem) { _activeTime = activeTime; _isInsensitive = isInsensitive; _bombsKind = bombsKind; _additionHearts = additionHearts; _scoreMultyplayer = scoreMultyplayer; _speedRatio = speedRatio; _extraScores = extraScores; IsSuperBadItem = isSuperBadItem; }
private void SetDefault() { _extraScores = 0; _speedRatio = 1.0f; _scoreMultyplayer = 1; _additionHearts = 0; _bombsKind = BombItemKind.Normal; _isInsensitive = false; _activeTime = 0.0f; Type = SettingsType.Normal; IsSuperBadItem = false; }