コード例 #1
0
ファイル: BoostsHandler.cs プロジェクト: cimiox/FitYourBody
    private void Start()
    {
        BoostDatabase.Load();
        BoostDatabase.Boosts.CollectionChanged += Boosts_CollectionChanged;



        OnAddNewItems(BoostDatabase.Boosts);
    }
コード例 #2
0
ファイル: BoostsHandler.cs プロジェクト: cimiox/FitYourBody
    public void BoostsHandler_OnBought(Item item)
    {
        if (item is SportNutritionItem)
        {
            BoostDatabase.Boosts.Add(new SportNutritionBoost(new Boost.Timer(DateTime.Now + TimeSpan.FromSeconds((item as SportNutritionItem).Time)), item));
        }
        else if (item is SportingGoodsItem)
        {
            BoostDatabase.Boosts.Add(new SportingGoodsBoost(new Boost.Timer(DateTime.MaxValue), item));
        }

        CreateBoosts();

        BoostDatabase.Save();
    }
コード例 #3
0
ファイル: BoostsHandler.cs プロジェクト: cimiox/FitYourBody
    private void CreateBoosts()
    {
        var boostsFactory        = new SportNutritionBoostsFactory();
        var sportNutritionBoosts = BoostDatabase.Boosts.Where(x => x is SportNutritionBoost).Select(x => x as SportNutritionBoost).ToList();

        for (int i = 0; i < sportNutritionBoosts.Count; i++)
        {
            boostsFactory.CreateBoost(sportNutritionBoosts[i], StackForBoost);
            var boost = BoostDatabase.Boosts.First(x => x.Equals(sportNutritionBoosts[i]));

            sportNutritionBoosts[i].OnEndBoost += () =>
            {
                BoostDatabase.Boosts.Remove(boost);
                BoostDatabase.Save();
            };
        }
    }