简体   繁体   English

如何在数组C#中添加精灵?

[英]How to add sprites in array C#?

I want to access game objects (sprites) in my code in an Array but I have no idea how to do that, I am new to C#. 我想在我的数组中的代码中访问游戏对象(精灵) ,但是我不知道该怎么做,因为我是C#的新手。

This is my testing code, but I am not getting any values: 这是我的测试代码,但没有任何值:

void Start()
{

    Sprite[] countries = Resources.LoadAll<Sprite>("MAPS");
    sr = GetComponent<SpriteRenderer>();
    names = new string[countries.Length];

    for (int i = 0; i < names.Length; i++)
    {
        names[i] = countries[i].name;
        //0 = red
        //1 = green
        if (UnityEngine.Random.Range(0, 2) == 0)
        {
            this.GetComponent<SpriteRenderer>().color = Color.red;
        }
        else
        {
            this.GetComponent<SpriteRenderer>().color = Color.green;
        }
    }
}

Instead of using this keyword: 而不使用this关键字:

if (UnityEngine.Random.Range(0, 2) == 0)
{
    this.GetComponent<SpriteRenderer>().color = Color.red;
}
else
{
    this.GetComponent<SpriteRenderer>().color = Color.green;
}

try to use countries[i]: 尝试使用国家[i]:

if (UnityEngine.Random.Range(0, 2) == 0)
{
    countries[i].GetComponent<SpriteRenderer>().color = Color.red;
}
else
{
    countries[i].GetComponent<SpriteRenderer>().color = Color.green;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM