public void AddBodyPart(Body_part part) { try { Body_draw sr = Body_sprites[part.type]; sr.LoadSR(); } catch { Transform child = Instantiate(SpriteContainer).transform; child.name = part.type.ToString(); Body_draw sr = child.gameObject.AddComponent <Body_draw>(); sr.part = part; child.SetParent(transform); child.localPosition = Vector3.zero; child.localEulerAngles = Vector3.zero; child.localScale = new Vector3(1, 1, 1); Body_sprites.Add(part.type, sr); //sprites.Add(part.category, sr); } }
public void ADDITEMS() { foreach (SpriteGender g in Enum.GetValues(typeof(SpriteGender))) { body_parts.Add(g, new Dictionary <Skin_type, Dictionary <body_part, List <Body_part> > >()); foreach (Skin_type skin in Enum.GetValues(typeof(Skin_type))) { body_parts[g].Add(skin, new Dictionary <body_part, List <Body_part> >()); foreach (body_part p in Enum.GetValues(typeof(body_part))) { body_parts[g][skin].Add(p, new List <Body_part>()); } } Game_Items.Add(g, new Dictionary <item_type, Dictionary <int, game_item> >()); foreach (item_type type in Enum.GetValues(typeof(item_type))) { Game_Items[g].Add(type, new Dictionary <int, game_item>()); } } foreach (string sdl in DataBase.Sprite_DataBase.Data.Keys) { foreach (SpriteData sd in DataBase.Sprite_DataBase.Data[sdl]) { string pp = ""; try { pp = sd.path.Split(new string[] { "sub_", "\\" }, StringSplitOptions.None)[2]; } catch { pp = sd.path.Split(new string[] { "sub_", "/" }, StringSplitOptions.None)[2]; } if (pp.Contains("body")) { foreach (Skin_type s in Enum.GetValues(typeof(Skin_type))) { bool exception = sd.key.Contains(body_part.hair.ToString()); if (sd.name.Contains(s.ToString()) || exception) { foreach (body_part p in Enum.GetValues(typeof(body_part))) { if (sd.key.Contains(p.ToString())) { if (p == body_part.hair) { if (s != Skin_type.red_orc) { for (float r = 0; r < 1f; r += 0.2f) { for (float g = 0; g < 1f; g += 0.2f) { for (float b = 0; b < 1f; b += 0.2f) { Body_part hair = new Body_part(); hair.id = sd.id; hair.gender = sd.sg; hair.skin = s; hair.type = p; hair.color = new Color(r, g, b); hair.InListID = body_parts[sd.sg][s][p].Count; body_parts[sd.sg][s][p].Add(hair); } } } break; } else { break; } } Body_part part = new Body_part(); part.id = sd.id; part.gender = sd.sg; part.skin = s; part.type = p; part.InListID = body_parts[sd.sg][s][p].Count; body_parts[sd.sg][s][p].Add(part); break; } } if (!exception) { break; } } } continue; } CreateItems(sd); lIcons.Add(sd); } } }