private string FormatStatsText(CharacterCardData cardData)
    {
        StringBuilder newText = new StringBuilder("Paranoia: ", 50);

        newText.Append(paranoia);
        newText.Append("\n/");
        newText.Append(cardData.paranoiaLimit);
        newText.Append("\nGoodwill: ");
        newText.Append(goodwill);
        newText.Append("\n");
        bool firstGW = true;

        foreach (int gwTrigger in cardData.goodWillAbilityLevels)
        {
            if (firstGW)
            {
                firstGW = false;
            }
            else
            {
                newText.Append("   ");
            }
            newText.Append("/");
            newText.Append(gwTrigger);
        }

        return(newText.ToString());
    }
示例#2
0
    // TODO: pooling here too.  In practice, creation should be rare so it's probably ok with Instantiate()
    private void CreateCharacterCard(CharacterCardData cardData)
    {
        GameObject newCardGO = GameObject.Instantiate(cardTemplate, cardCanvas.transform);
        var        newCard   = newCardGO.GetComponent <CharacterCardLogic>();

        newCard.cardData = cardData;
        newCardGO.GetComponent <UIRightClickMenu>().MenuToLoad = cardRightClickMenu;
        newCardGO.SetActive(true);
    }
示例#3
0
    private void GenerateCharacterButton(CharacterCardData cardData)
    {
        GameObject newButtonGO = Instantiate(buttonTemplate) as GameObject;
        Button     newButton   = newButtonGO.GetComponent <Button>();

        newButton.GetComponentInChildren <Text>().text = cardData.characterName;

        // newButton.onClick.AddListener(() => Debug.Log("Clicked " + cardData.characterName));
        newButton.onClick.AddListener(() =>
        {
            CreateCharacterCard(cardData);
            gameObject.SetActive(false);
        });

        newButtonGO.transform.SetParent(contentList.transform, false);
        newButtonGO.SetActive(true);
    }