Пример #1
0
    public List <Color> MapColor(CharacterAttributesLookup cal)
    {
        List <Color> ret = new List <Color>();

        string[] words = text.Split(' ');

        for (int i = 0; i < words.Length; i++)
        {
            string word = words[i];

            if (word.StartsWith("c:"))
            {
                int       val       = int.Parse(word.Split(':')[1]);
                Character character = characters[val];

                if (cal == null)
                {
                    Debug.LogError("vah");
                }

                Color characterColor = cal.GetCharacterAttributes(character.characterID).color;

                foreach (char c in characters[val].nickName)
                {
                    ret.Add(characterColor);
                }
            }
            else if (word.StartsWith("s:"))
            {
                int val = int.Parse(word.Split(':')[1]);

                foreach (char c in scenery[val])
                {
                    ret.Add(Color.green);
                }
            }
            else if (word.StartsWith("w:"))
            {
                int val = int.Parse(word.Split(':')[1]);

                foreach (char c in weapons[val])
                {
                    ret.Add(Color.yellow);
                }
            }
            else
            {
                foreach (char c in word)
                {
                    ret.Add(Color.white);
                }
            }

            ret.Add(Color.white); // space
        }

        return(ret);
    }