public void AddBoost(Boost boost)
    {
        boosts.Add(boost);
        var tmp = uiBoosts[boosts.Count - 1];

        tmp.gameObject.SetActive(true);
        tmp.icon.sprite = Translator.Boost(boost.type, boost.stage);
        tmp.time.text   = Translator.TicksToTime(boost.ticksRemain);
    }
 private void OnTick()
 {
     if (boosts == null)
     {
         boosts = new List <Boost>();
     }
     for (int i = 0; i < boosts.Count; i++)
     {
         boosts[i].ticksRemain--;
         uiBoosts[i].gameObject.SetActive(true);
         uiBoosts[i].icon.sprite = Translator.Boost(boosts[i].type, boosts[i].stage);
         uiBoosts[i].time.text   = Translator.TicksToTime(boosts[i].ticksRemain);
         if (boosts[i].ticksRemain == 0)
         {
             boosts.RemoveAt(i);
             uiBoosts[i].gameObject.SetActive(false);
             i--;
         }
     }
 }