public void DropBonus() { if (!TrainingHandler.IsTrainingFinished()) { if ( !MonobehaviorHandler.GetMonobeharior() .GetObject <TrainingHandler>("TrainingHandler") .IsBonusDropEnabled()) { return; } } if (MonobehaviorHandler.GetMonobeharior() .GetObject <BonusTimer>("bonusTimer") .IsAnyBonusActive()) { return; } if (!Randomizer.GetPercentageBasedBoolean((int)_passenger.BonusProbability)) { return; } GameController.BonusTypes bonusType = Randomizer.CalculateValue <GameController.BonusTypes>(_passenger.BonusProbabilities); IBonus drop = null; switch (bonusType) { case GameController.BonusTypes.Wheel: drop = new WheelBonus(); break; case GameController.BonusTypes.Ticket: drop = new TicketBonus(); break; case GameController.BonusTypes.Boot: drop = new BootBonus(); break; case GameController.BonusTypes.Magnet: drop = new MagnetBonus(); break; case GameController.BonusTypes.Smile: drop = new SmileBonus(); break; case GameController.BonusTypes.AntiHare: drop = new AntiHareBonus(); break; case GameController.BonusTypes.SandGlass: drop = new SandGlassBonus(); break; case GameController.BonusTypes.Vortex: drop = new VortexBonus(); break; case GameController.BonusTypes.Snow: drop = new SnowBonus(); break; case GameController.BonusTypes.Wrench: drop = new WrenchBonus(); break; case GameController.BonusTypes.Cogwheel: break; case GameController.BonusTypes.Heal: drop = new HealBonus(); break; default: return; } if (!TrainingHandler.IsTrainingFinished()) { TrainingHandler handler = MonobehaviorHandler.GetMonobeharior() .GetObject <TrainingHandler>("TrainingHandler"); if (handler.IsDropTypeLocked()) { drop = new AntiHareBonus(); } } if (drop != null) { MonobehaviorHandler.GetMonobeharior() .GetObject <BonusTimer>("bonusTimer").DropBonus(drop, _passenger.transform.position); } }
public void DropBonus() { if (!TrainingHandler.IsTrainingFinished()) { if ( !MonobehaviorHandler.GetMonobeharior() .GetObject<TrainingHandler>("TrainingHandler") .IsBonusDropEnabled()) { return; } } if (MonobehaviorHandler.GetMonobeharior() .GetObject<BonusTimer>("bonusTimer") .IsAnyBonusActive()) return; if (!Randomizer.GetPercentageBasedBoolean((int)_passenger.BonusProbability)) return; GameController.BonusTypes bonusType = Randomizer.CalculateValue<GameController.BonusTypes>(_passenger.BonusProbabilities); IBonus drop = null; switch (bonusType) { case GameController.BonusTypes.Wheel: drop = new WheelBonus(); break; case GameController.BonusTypes.Ticket: drop = new TicketBonus(); break; case GameController.BonusTypes.Boot: drop = new BootBonus(); break; case GameController.BonusTypes.Magnet: drop = new MagnetBonus(); break; case GameController.BonusTypes.Smile: drop = new SmileBonus(); break; case GameController.BonusTypes.AntiHare: drop = new AntiHareBonus(); break; case GameController.BonusTypes.SandGlass: drop = new SandGlassBonus(); break; case GameController.BonusTypes.Vortex: drop = new VortexBonus(); break; case GameController.BonusTypes.Snow: drop = new SnowBonus(); break; case GameController.BonusTypes.Wrench: drop = new WrenchBonus(); break; case GameController.BonusTypes.Cogwheel: break; case GameController.BonusTypes.Heal: drop = new HealBonus(); break; default: return; } if (!TrainingHandler.IsTrainingFinished()) { TrainingHandler handler = MonobehaviorHandler.GetMonobeharior() .GetObject<TrainingHandler>("TrainingHandler"); if (handler.IsDropTypeLocked()) { drop = new AntiHareBonus(); } } if (drop != null) { MonobehaviorHandler.GetMonobeharior() .GetObject<BonusTimer>("bonusTimer").DropBonus(drop, _passenger.transform.position); } }