Beispiel #1
0
    private void drawScreen()
    {
        // reputation display
        var repReq = GetReputationRequirement(player.blueprint.coreShellSpriteID);

        if (repReq > 0)
        {
            var regens = GetNextRegens(player.blueprint.coreShellSpriteID);
            regenText.text          = $"Next tier Regeneration\nSHELL: {regens[0]}   ENERGY: {regens[2]}";
            reputationBar.sizeDelta = new Vector2(Mathf.Min(player.reputation * 800 / repReq, 800), 30);
            repText.text            = $"Reputation: {player.reputation}/{repReq}";
        }
        else
        {
            regenText.gameObject.SetActive(false);
            reputationBar.sizeDelta = new Vector2(800, 30);
            repText.text            = "Core fully upgraded!";
        }

        for (int i = 0; i < optionHolder.childCount; i++)
        {
            Destroy(optionHolder.GetChild(i).gameObject);
        }

        // create option icons
        var currentID = player.blueprint.coreShellSpriteID;
        var nextIDs   = GetNextUpgrades(currentID);

        if (nextIDs != null)
        {
            var offset = -500 * (nextIDs.Length - 1);
            for (int i = 0; i < nextIDs.Length; i++)
            {
                var option = Instantiate(optionPrefab, optionHolder, false).GetComponent <RectTransform>();
                option.anchoredPosition = new Vector2((offset - offset * 2 * i) / nextIDs.Length, 20);
                var script = option.GetComponent <CUOptionScript>();
                script.coreID  = nextIDs[i];
                script.player  = player;
                script.repCost = repReq;
            }
        }

        CUAbilityCapDisplay.Initialize(player.abilityCaps, currentID);
    }
 void Awake()
 {
     instance = this;
 }