Exemplo n.º 1
0
    // Changes Button Text and Image
    void ChangeButtonTextAndImage(int button, int rng, List <objectDef> objectsincat)
    {
        var rn            = Random.Range(0, categoryDict.Count - 1);
        var currentObject = objectsincat[Random.Range(0, objectsincat.Count - 1)];

        Debug.Log(currentObject.image);
        var TraitIcons = new List <Image>();

        switch (button)
        {
        case 0:
            t_FirstButton.text = currentObject.name;
            b_FirstButton.GetComponent <Image>().sprite     = Resources.Load <Sprite>(currentObject.image);
            b_FirstButton.GetComponent <AudioSource>().clip = Resources.Load <AudioClip>(currentObject.sound);
            buttonOneObj        = currentObject;
            ItemOneCost.text    = currentObject.cost.ToString();
            baseItemScore1.text = currentObject.value.ToString();

            TraitIcons = b_FirstButton.GetComponent <TraitHolder>().Traits;
            SetUpTraitIcons(TraitIcons, currentObject);
            break;

        case 1:
            t_SecondButton.text = currentObject.name;
            b_SecondButton.GetComponent <Image>().sprite     = Resources.Load <Sprite>(currentObject.image);
            b_SecondButton.GetComponent <AudioSource>().clip = Resources.Load <AudioClip>(currentObject.sound);
            buttonTwoObj        = currentObject;
            ItemTwoCost.text    = currentObject.cost.ToString();
            baseItemScore2.text = currentObject.value.ToString();

            TraitIcons = b_SecondButton.GetComponent <TraitHolder>().Traits;
            SetUpTraitIcons(TraitIcons, currentObject);
            break;

        case 2:
            t_ThirdButton.text = currentObject.name;
            b_ThirdButton.GetComponent <Image>().sprite     = Resources.Load <Sprite>(currentObject.image);
            b_ThirdButton.GetComponent <AudioSource>().clip = Resources.Load <AudioClip>(currentObject.sound);
            buttonThreeObj      = currentObject;
            ItemThreeCost.text  = currentObject.cost.ToString();
            baseItemScore3.text = currentObject.value.ToString();

            TraitIcons = b_ThirdButton.GetComponent <TraitHolder>().Traits;
            SetUpTraitIcons(TraitIcons, currentObject);
            break;
        }
    }
Exemplo n.º 2
0
 void SetUpTraitIcons(List <Image> TraitIcons, objectDef currentObject)
 {
     for (int i = 0; i < TraitIcons.Count; i++)
     {
         if (i < currentObject.traits.Count)
         {
             foreach (var trait in AllTraits)
             {
                 if (trait.name == currentObject.traits[i])
                 {
                     TraitIcons[i].sprite = Resources.Load <Sprite>(trait.icon);
                     TraitIcons[i].gameObject.SetActive(true);
                 }
             }
         }
         else
         {
             TraitIcons[i].gameObject.SetActive(false);
         }
     }
 }