示例#1
0
    /// <summary>
    /// [EXTENSION] - Call updateDisplayedPosition for the character
    /// </summary>
    /// <param name="character">The character</param>
    public void selectCharacter(CombatCharacterFactory.CombatCharacterPresets character)
    {
        currentCharacter = character;
        characterNameText.GetComponent <Text> ().text = CombatCharacterFactory.GetCharacterName(character);
        healthText.GetComponent <Text> ().text        = "Health: " + CombatCharacterFactory.GetCharacterMaxhealth(character).ToString();
        energyText.GetComponent <Text> ().text        = "Energy: " + CombatCharacterFactory.GetCharacterMaxEnergy(character).ToString();
        updateDisplayedPosition(character);

        if (abilityTextObjects != null)
        {
            foreach (GameObject o in abilityTextObjects)
            {
                Destroy(o);
            }
        }
        if (costTextObjects != null)
        {
            foreach (GameObject o in costTextObjects)
            {
                Destroy(o);
            }
        }

        abilityTextObjects = new List <GameObject> ();
        costTextObjects    = new List <GameObject> ();

        float abilityOffset = 0f;

        foreach (CombatAbility ability in CombatCharacterFactory.GetCharacterAbilities(character))
        {
            GameObject abilityText = Instantiate(abilityTextPattern, this.transform);
            GameObject costText    = Instantiate(costTextPattern, this.transform);
            abilityTextObjects.Add(abilityText);
            costTextObjects.Add(costText);

            abilityText.SetActive(true);
            costText.SetActive(true);
            abilityText.GetComponent <Text> ().text = ability.abilityName;
            costText.GetComponent <Text> ().text    = ability.energyCost.ToString() + " energy";

            ((RectTransform)abilityText.transform).anchorMin -= new Vector2(0, abilityOffset);
            ((RectTransform)abilityText.transform).anchorMax -= new Vector2(0, abilityOffset);
            ((RectTransform)costText.transform).anchorMin    -= new Vector2(0, abilityOffset);
            ((RectTransform)costText.transform).anchorMax    -= new Vector2(0, abilityOffset);
            abilityOffset += 0.05f;
        }
    }