using System.Collections.Generic; using TMPro; using UnityEngine; using UnityEngine.UI; public class DECO_PNL : MonoBehaviour { public GameObject PNL; public GameObject _ColorPicker1; public GameObject _ColorPicker2; public GameObject _MODEL; public GameObject _MODELContainer; public GameObject _CABTEXTURES; public TMP_Dropdown _Finish1; public TMP_Dropdown _Finish2; public TMP_Text _C1; public TMP_Text _C2; //public Image _Preview1; //public Image _Preview2; public static DECO_PNL Instance { get; private set; } void Awake() { Instance = this; } public void StartPNL(string name) { print("name====================="+name); _G.PON = "DECOpnl"; DOIT.CloseALLPNL(); PNL.SetActive(true); PNL.transform.localPosition = new Vector3(0, 0, 0); string Path = "Canvas/Panel_SCENE/PNL/DECOpnl"; DOIT.DELETEAllChild(Path + "/MODEL/Viewport/Content"); bool isColor1 = true; bool isColor2 = true; int qty = 7; //DECO switch (name) { case "LAMP": qty = 31; break; case "STOOL": qty = 20; break; case "VASE": qty = 12; break; case "SMALL": qty = 6; break; case "PICTURE": qty = 29; break; case "MIRROR": qty = 5; isColor1 = false; isColor2 = false; break; case "CHAIR": qty = 10; break; case "TABLE": qty = 10; isColor2 = false; break; //APLIANCES case "FRIDGE": qty = 24; isColor2 = false; isColor1 = false; break; case "STOVE": qty = 21; isColor2 = false; isColor1 = false; break; case "BUILDIN": qty = 18; isColor2 = false; isColor1 = false; break; case "TOPSTOVE": qty = 18; isColor2 = false; isColor1 = false; break; case "DISHWASHER": qty = 12; isColor2 = false; isColor1 = false; break; case "HOOW": qty = 12; isColor2 = false; break; case "HOOC": qty = 7; isColor2 = false; break; case "MICROWAVE": qty = 29; isColor2 = false; isColor1 = false; break; case "CELLAR": qty = 8; isColor2 = false; isColor1 = false; break; case "WADRYER": qty = 27; isColor2 = false; isColor1 = false; break; //PLUMBING case "FAUCET": qty = 6; isColor2 = false; _G.PNL = "FAUCETpnl"; break; case "SINK": qty = 6; isColor2 = false; _G.PNL = "SINKpnl"; break; case "TOILET": qty = 12; break; case "SHOWER": qty = 12; break; case "BATH": qty = 16; break; case "BASINK": qty = 12; break; case "ORNAMENT": qty = 6; isColor2 = false; break; //DESIGN ROOM case "WINDOW": qty = 22; isColor2 = false; break; case "OPEN": qty = 5; isColor1 = false; isColor2 = false; break; case "DOOR": qty = 72; break; case "PATIO": qty = 6; break; } //BLOC if (name == "BLOC") { qty = 16; isColor2 = false; } List Object_list = new(); for (int i = 1; i < qty + 1; i++) { string number = (100 + i).ToString(); Object_list.Add(name[..4] + number); } string ImagePath = "ICONS/" + name + "/" + name[..4]; AddToPanel.DecoObject3D(Object_list, ImagePath, name); Get.o2(Path + "/TEXT", "Title").GetComponent().text = TRANS.This("T_" + name); _ColorPicker1.SetActive(isColor1); _ColorPicker2.SetActive(isColor2); // Get.o1("COLOR_CHART")?.SetActive(false); Get.o2(Path + "/SIZE", "MoE").SetActive(false); if (name == "MIRROR") { Get.o2("DECOpnl/SIZE", "MoE").SetActive(true); } //From Floor Input bool isFF = false; if (new List { "WINDOW", "PICTURE" }.Contains(name)) { isFF = true; } Get.o2(Path + "/SIZE", "MoFF").SetActive(isFF); //Add start size Get.o1(Path + "/MODEL/Viewport/Content").transform.GetChild(0).gameObject.GetComponent().isOn = true; //CabTextures if (name == "BLOC") { if (name == "BLOC") { AddCabtextureToPnl(); } } else _CABTEXTURES.SetActive(false); //Finish FillFinishDropdown(); //Center Model Panel SetModelPnlPosition(name); Set.ToggleGroupToAllChild(Path + "/MODEL/Viewport/Content"); if (!_P.ListSwitch["ALLOW_PROJECTION_SINK"] && name == "SINK") { _MODELContainer.transform.Find("SINK101").gameObject.SetActive(false); _MODELContainer.transform.Find("SINK102").gameObject.SetActive(false); } //Mollding bool isMolding = false; if (new List { "WINDOW","DOOR","PATIO" }.Contains(name)) { isMolding = true; } Get.o2(Path, "MOLDING").SetActive(isMolding); //PICTURE if (name == "PICTURE") { Get.o2(Path + "/COLORS/ColorPickerDeco1", "Slider").GetComponent().value = 0; Get.o2(Path + "/COLORS/ColorPickerDeco2", "Slider").GetComponent().value = 1; } } public void SetModelPnlPosition(string name){ float ModelPosition=-72; if(new List {"FRIDGE","STOVE","BUILDIN","TOPSTOVE","DISHWASHER","MICROWAVE","CELLAR","WADRYER","OPEN"}.Contains(name)){ ModelPosition=-0; _ColorPicker1.SetActive(false); _ColorPicker2.SetActive(false); } if(new List {"SINK","FAUCET"}.Contains(name)){ _ColorPicker2.SetActive(false); } _MODEL.transform.localPosition=new Vector3(ModelPosition,47,0); } public void AddCabtextureToPnl(){ _CABTEXTURES.SetActive(true); List CabTextureList= new(){TRANS.This("T_Custom") }; List L=UIT.GetLibrary("CabTexture"); for(int i=1; i(); Drop.ClearOptions(); Drop.AddOptions(CabTextureList); } //Finish public void FillFinishDropdown(){ if(_Finish1.options.Count==1){ _Finish1.ClearOptions(); _Finish2.ClearOptions(); List list = new(){TRANS.This("T_Matt"),TRANS.This("T_Semi"),TRANS.This("T_Gloss") }; _Finish1.AddOptions(list); _Finish2.AddOptions(list); } } // public void FillTexturesDropdown(){ // if(_Textures1.options.Count==1){ // _Textures1.ClearOptions(); // _Textures2.ClearOptions(); // List list = new(){ // TRANS.This("T_Plastic"),TRANS.This("T_Metal"),TRANS.This("T_Paint"), // TRANS.This("T_Woodlight"),TRANS.This("T_Woodmedium"),TRANS.This("T_Woodold"), // TRANS.This("T_Fabric")+" 1",TRANS.This("T_Fabric")+" 2", // }; // _Textures1.AddOptions(list); // _Textures2.AddOptions(list); // } // } }