Esempio n. 1
0
 public void Activate(IBonus bonus)
 {
     _bonus = bonus;
     GameController.BonusTypes bonusType = bonus.GetBonusType();
     _currentBonusImage.sprite = _bonusSprites[(int)bonusType];
     _textField.text           = _bonus.GetTTL().ToString();
     _group.alpha = 1;
 }
Esempio n. 2
0
 public bool IsBonusActiveByType(GameController.BonusTypes bonusType)
 {
     foreach (var activeBonus in _activeBonuses)
     {
         if (activeBonus.GetBonusType().Equals(bonusType) && activeBonus.IsActive())
         {
             return(true);
         }
     }
     return(false);
 }
Esempio n. 3
0
    private Sprite GetSpriteByBonus(GameController.BonusTypes bonusType)
    {
        switch (bonusType)
        {
        case GameController.BonusTypes.Wheel:
            return(_bonusSprites[0]);

        case GameController.BonusTypes.Ticket:
            return(_bonusSprites[1]);

        case GameController.BonusTypes.Boot:
            return(_bonusSprites[2]);

        case GameController.BonusTypes.Magnet:
            return(_bonusSprites[3]);

        case GameController.BonusTypes.Smile:
            return(_bonusSprites[4]);

        case GameController.BonusTypes.AntiHare:
            return(_bonusSprites[5]);

        case GameController.BonusTypes.SandGlass:
            return(_bonusSprites[6]);

        case GameController.BonusTypes.Vortex:
            return(_bonusSprites[7]);

        case GameController.BonusTypes.Snow:
            return(_bonusSprites[8]);

        case GameController.BonusTypes.Wrench:
            return(null);

        case GameController.BonusTypes.Cogwheel:
            return(null);

        case GameController.BonusTypes.Heal:
            return(_bonusSprites[9]);

        case GameController.BonusTypes.Clew:
            return(_bonusSprites[10]);

        default:
            throw new ArgumentOutOfRangeException("bonusType");
        }
    }
Esempio n. 4
0
    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);
        }
    }
Esempio n. 5
0
 private string GetBonusDescription(GameController.BonusTypes bonusType)
 {
     return(StringResources.GetLocalizedString(bonusType.ToString()));
 }
Esempio n. 6
0
    public void SetMegaBonus(GameController.BonusTypes bonusType)
    {
        IBonus megaBonus = null;

        switch (bonusType)
        {
        case GameController.BonusTypes.Wheel:
            megaBonus = new WheelMegaBonus();
            break;

        case GameController.BonusTypes.Ticket:
            megaBonus = new TicketMegaBonus();
            break;

        case GameController.BonusTypes.Boot:
            megaBonus = new BootMegaBonus();
            break;

        case GameController.BonusTypes.Magnet:
            megaBonus = new MagnetMegaBonus();
            break;

        case GameController.BonusTypes.Smile:
            megaBonus = new SmileMegaBonus();
            break;

        case GameController.BonusTypes.AntiHare:
            megaBonus = new AntiHareMegaBonus();
            break;

        case GameController.BonusTypes.SandGlass:
            megaBonus = new SandGlassMegaBonus();
            break;

        case GameController.BonusTypes.Vortex:
            megaBonus = new VortexBonus();
            break;

        case GameController.BonusTypes.Snow:
            megaBonus = new SnowBonus();
            break;

        case GameController.BonusTypes.Wrench:
            break;

        case GameController.BonusTypes.Cogwheel:
            break;

        case GameController.BonusTypes.Heal:
            megaBonus = new HealMegaBonus();
            break;

        case GameController.BonusTypes.Clew:
            megaBonus = new ClewMegaBonus();
            break;

        default:
            throw new ArgumentOutOfRangeException();
        }
        _megaBonusButtons[0].SetMegaBonus(megaBonus);
    }