public void GenerateShoesButton()
    {
        DeleteOldButtons();
        if (string.IsNullOrEmpty(SelectedColor))
        {
            SelectedColor = "default";
        }
        if (string.IsNullOrEmpty(SelectedCategory))
        {
            SelectedCategory = "SkinTone";
        }

        foreach (var obj in AllCustomData.CustomShoes)
        {
            if (obj._gender == PlayerPrefs.GetString("CharacterType"))
            {
                var index = obj.AllColors.FindIndex(colorobj => colorobj.name == SelectedColor);

                if (index < 0)
                {
                    index = 0;
                }

                string          CharType   = CharacterCustomizationAtStart.Instance.SelectedCharacter.GetComponent <CharacterProperties> ().PlayerType;
                ItemBodyParts[] BodyImages = new ItemBodyParts[0];
                if (CharType == "Brown")
                {
                    BodyImages = obj.AllColors [index].BrownShoes.ToArray();
                }
                else if (CharType == "White")
                {
                    BodyImages = obj.AllColors [index].WhiteShoes.ToArray();
                }
                else if (CharType == "Black")
                {
                    BodyImages = obj.AllColors [index].BlackShoes.ToArray();
                }

                for (int i = 0; i < BodyImages.Length; i++)
                {
                    var go = (GameObject)Instantiate(CustomButtonPrefab, Vector3.zero, Quaternion.identity);
                    go.transform.SetParent(MainPanel.transform);
                    go.transform.localScale = Vector3.one;

                    go.transform /*.GetChild(0)*/.GetComponent <Image> ().sprite = BodyImages [i].icon;
                    var Component = go.AddComponent <CustomShoesButton> ();
                    Component.BodyParts = BodyImages [i].images;
                    Component.Index     = i;
                    Component.PartName  = obj.PartName;
                }
            }
        }
    }
    public void ChangeShoesRandomly(string SkinColor)
    {
        var parts = SelectedCharacter.GetComponentsInChildren <BodyParts> (true);

        foreach (var _char in AllCustomData.CustomShoes)
        {
            if (_char._gender == PlayerPrefs.GetString("CharacterType"))
            {
                int           _index   = UnityEngine.Random.Range(0, _char.AllColors.Count);
                var           PartName = _char.PartName;
                ItemBodyParts item     = new ItemBodyParts();
                int           index    = UnityEngine.Random.Range(0, _char.AllColors [_index].BrownShoes.Count);
                if (SkinColor == "Brown")
                {
                    item = _char.AllColors [_index].BrownShoes [index];
                }
                else if (SkinColor == "White")
                {
                    item = _char.AllColors [_index].WhiteShoes [index];
                }
                else if (SkinColor == "Black")
                {
                    item = _char.AllColors [_index].BlackShoes [index];
                }


                foreach (var part in parts)
                {
                    for (int i = 0; i < Mathf.Min(PartName.Count, item.images.Count); i++)
                    {
                        if (part.name == PartName [i])
                        {
                            part.GetComponent <SpriteRenderer> ().sprite = item.images [i];
                        }
                    }
                }
                return;
            }
        }
    }
    public void ChangeShoesOnClickSkinTone(string Color, int index)
    {
        var parts = SelectedCharacter.GetComponentsInChildren <BodyParts> (true);

        foreach (var _char in AllCustomData.CustomShoes)
        {
            if (_char._gender == PlayerPrefs.GetString("CharacterType"))
            {
                int           _index   = _char.AllColors.FindIndex(colorobj => colorobj.name == Color);
                var           PartName = _char.PartName;
                var           CharType = SelectedCharacter.GetComponent <CharacterProperties> ().PlayerType;
                ItemBodyParts item     = new ItemBodyParts();
                if (CharType == "Brown")
                {
                    item = _char.AllColors [_index].BrownShoes [index];
                }
                else if (CharType == "White")
                {
                    item = _char.AllColors [_index].WhiteShoes [index];
                }
                else if (CharType == "Black")
                {
                    item = _char.AllColors [_index].BlackShoes [index];
                }

                foreach (var part in parts)
                {
                    for (int i = 0; i < Mathf.Min(PartName.Count, item.images.Count); i++)
                    {
                        if (part.name == PartName [i])
                        {
                            part.GetComponent <SpriteRenderer> ().sprite = item.images [i];
                        }
                    }
                }
                return;
            }
        }
    }
Example #4
0
    public void ChangeShoesOfCharacter(BodyParts[] parts, string Gender, string SkinColor, string ShoesColor, int index)
    {
        var AllCustomData = Resources.Load <CustomisationAllData>("CustomisationAllData");

        foreach (var _char in AllCustomData.CustomShoes)
        {
            if (_char._gender == Gender)
            {
                int           _index   = _char.AllColors.FindIndex(colorobj => colorobj.name == ShoesColor);
                var           PartName = _char.PartName;
                ItemBodyParts item     = new ItemBodyParts();
                if (SkinColor == "Brown")
                {
                    item = _char.AllColors[_index].BrownShoes[index];
                }
                else if (SkinColor == "White")
                {
                    item = _char.AllColors[_index].WhiteShoes[index];
                }
                else if (SkinColor == "Black")
                {
                    item = _char.AllColors[_index].BlackShoes[index];
                }

                foreach (var part in parts)
                {
                    for (int i = 0; i < Mathf.Min(PartName.Count, item.images.Count); i++)
                    {
                        if (part.name == PartName[i])
                        {
                            part.GetComponent <SpriteRenderer>().sprite = item.images[i];
                        }
                    }
                }
                return;
            }
        }
    }