Пример #1
0
 public TreeBud GetBranchAtPosition(int idx)
 {
     if (buds[idx] != null)
     {
         HarvestDesignatable harvestDesignatable = buds[idx].Get();
         return((!((Object)harvestDesignatable != (Object)null)) ? null : harvestDesignatable.GetComponent <TreeBud>());
     }
     return(null);
 }
Пример #2
0
    public void ConsumeMass(float mass_to_consume)
    {
        float max_maturity;
        HarvestDesignatable mostMatureBranch = GetMostMatureBranch(out max_maturity);

        if ((bool)mostMatureBranch)
        {
            Growing component = mostMatureBranch.GetComponent <Growing>();
            if ((bool)component)
            {
                component.ConsumeMass(mass_to_consume);
            }
        }
    }
Пример #3
0
    public void Refresh(HarvestDesignatable target_harvestable)
    {
        Image          image          = bar.GetComponent <HierarchyReferences>().GetReference("Fill") as Image;
        AmountInstance amountInstance = Db.Get().Amounts.Maturity.Lookup(target_harvestable);

        if (amountInstance != null)
        {
            float         num           = amountInstance.value / amountInstance.GetMax();
            RectTransform rectTransform = image.rectTransform;
            Vector2       offsetMin     = image.rectTransform.offsetMin;
            rectTransform.offsetMin = new Vector2(offsetMin.x, 3f);
            if (bar.activeSelf != !target_harvestable.CanBeHarvested())
            {
                bar.SetActive(!target_harvestable.CanBeHarvested());
            }
            float         num2           = (!target_harvestable.CanBeHarvested()) ? (19f - 19f * num + 3f) : 3f;
            RectTransform rectTransform2 = image.rectTransform;
            Vector2       offsetMax      = image.rectTransform.offsetMax;
            rectTransform2.offsetMax = new Vector2(offsetMax.x, 0f - num2);
        }
        else if (bar.activeSelf)
        {
            bar.SetActive(false);
        }
        WiltCondition component = target_harvestable.GetComponent <WiltCondition>();

        if ((Object)component != (Object)null)
        {
            for (int i = 0; i < horizontal_containers.Length; i++)
            {
                horizontal_containers[i].SetActive(false);
            }
            foreach (KeyValuePair <WiltCondition.Condition, GameObject> condition_icon in condition_icons)
            {
                condition_icon.Value.SetActive(false);
            }
            if (component.IsWilting())
            {
                vertical_container.SetActive(true);
                image.color = wilting_color;
                List <WiltCondition.Condition> list = component.CurrentWiltSources();
                if (list.Count > 0)
                {
                    for (int j = 0; j < list.Count; j++)
                    {
                        if (condition_icons.ContainsKey(list[j]))
                        {
                            condition_icons[list[j]].SetActive(true);
                            horizontal_containers[j / 2].SetActive(true);
                            condition_icons[list[j]].transform.SetParent(horizontal_containers[j / 2].transform);
                        }
                    }
                }
            }
            else
            {
                vertical_container.SetActive(false);
                image.color = growing_color;
            }
        }
        else
        {
            image.color = growing_color;
            vertical_container.SetActive(false);
        }
    }