using UnityEngine; using UnityEngine.UI; using TMPro; public class DoorSet : MonoBehaviour { public void Openpnl() { print("name===="+transform.parent.name); GameObject Facepnl=Get.o2("CABCREATORpnl","FACEpnl"); Facepnl.SetActive(true); Facepnl.transform.localPosition=new(285,30,0); string facecat=name[..4]; Facepnl.transform.Find("FACES").transform.Find(facecat).gameObject.GetComponent().isOn=true; Facepnl.transform.Find("Dnum").GetComponent().text=name[4..]; string[] CodePatern=CabCreator.GetDoorPatern().Split('_'); int doornumber=int.Parse(name[4..]); int indW=(doornumber-1)*4+3; string DoorWide=CodePatern[indW]; Get.o2("CABCREATORpnl/FACEpnl","WIDE_DOOR").GetComponent().text=DoorWide; Get.o2("CABCREATORpnl/DoorNumber",transform.parent.name.Replace("doorPatern","")).GetComponent().isOn=true; } public void Closepnl() { DOIT.AllTogchildfalse(Get.o1("CABCREATORpnl/FACEpnl/FACES")); string DNUM=Get.o2("CABCREATORpnl/FACEpnl/","Dnum").GetComponent().text; string doorPatern=Get.ToggleOnInChild("CABCREATORpnl/DoorNumber"); string Cat=Get.ToggleOnInChild("CABCREATORpnl/FACEpnl/FACES"); Get.o2("CABCREATORpnl/PATERN/doorPatern"+doorPatern,Cat+DNUM).GetComponent().isOn=false; DOIT.AllTogchildfalse(Get.o1("CABCREATORpnl/FACEpnl/FACES")); Get.o2("CABCREATORpnl","FACEpnl").SetActive(false); } public void Setkposition(string pname){ if(name==pname) { SetkPosition(pname); } } public static void SetkPosition(string pname) { string p=pname[1..]; print("p==="+p); string Dname=""; string path="CABCREATORpnl/PATERN/doorPatern"+CabCreator.GetDoorNumber(); GameObject O=Get.o1(path); bool TwoDoors=false; foreach(Transform obj in O.transform) { if(obj.name.IndexOf("k")==-1) { if(obj.gameObject.GetComponent().isOn == true){Dname=obj.name;} } } print("Dname====="+Dname); string DoorNumber=Dname[4..]; print("TDoorNumber====="+DoorNumber); foreach(Transform obj in O.transform) { if(obj.name.IndexOf("k"+DoorNumber+"B")!=-1) { TwoDoors=true; print("TwoDoors=====true"); } } print("TwoDoors=================================="+TwoDoors); print("path==="+path); print("Dname==="+Dname); int dnum=int.Parse(Dname[4..]); string kname="k"+dnum.ToString();//Dname.Substring(4,1); GameObject KNOB=O.transform.Find(kname).gameObject; KNOB.SetActive(true); Vector2 size = O.transform.Find(Dname).transform.Find("Background").GetComponent().sizeDelta; Vector3 pos=O.transform.Find(Dname).transform.localPosition; float dx = size.x / 2 - size.x / 11; float dy = size.y / 2 - size.y / 10; float ofy123=0; float ofy456=0f; float ofy789=0f; if(!TwoDoors){ Reposition(p, KNOB, pos.x, pos.y,1,dx,dy,ofy123,ofy456,ofy789,0 ); } if(TwoDoors){ ofy456=size.y*0.25f; ofy789=size.y*0.5f; Reposition(p, KNOB, pos.x, pos.y,1,dx,dy,ofy123,ofy456,ofy789,0 ); GameObject KNOB2=O.transform.Find(kname+"B").gameObject; KNOB2.SetActive(true); ofy123=-size.y*0.5f; ofy456=-size.y*0.25f; ofy789=0f; Reposition(p, KNOB2, pos.x, pos.y,1,dx,dy,ofy123,ofy456,ofy789,0 ); } if (pname == "NONE") { KNOB.SetActive(false); p="0";} SetCode(dnum,p); } public static void Reposition(string p, GameObject K,float px,float py,float pz,float dx,float dy,float ofy123,float ofy456 ,float ofy789, float ofKW ){ if (p == "1") { K.transform.localPosition = new(px-dx, py+dy+ofy123-ofKW, pz); } if (p == "2") { K.transform.localPosition = new(px+0, py+dy+ofy123, pz); } if (p == "3") { K.transform.localPosition = new(px+dx, py+dy+ofy123-ofKW, pz); } if (p == "4") { K.transform.localPosition = new(px-dx, py+0+ofy456,pz); } if (p == "5") { K.transform.localPosition = new(px+0, py+0+ofy456, pz); } if (p == "6") { K.transform.localPosition = new(px+dx, py+0+ofy456, pz); } if (p == "7") { K.transform.localPosition = new(px+-dx, py-dy+ofy789+ofKW, pz); } if (p == "8") { K.transform.localPosition = new(px+0, py-dy+ofy789, pz); } if (p == "9") { K.transform.localPosition = new(px+dx, py-dy+ofy789+ofKW, pz); } } public static void SetCode(int i,string p) { string CODEPATERN; if(CabCreator.GetDoorNumber()=="2"){CODEPATERN = _G.CODEPATERN2;} else {CODEPATERN = _G.CODEPATERN;} print("CODEPATERN=1 "+CODEPATERN); string[] code = CODEPATERN.Split('_'); int a = 5+(i-1)*4; code[a] = p; CODEPATERN = ""; for (int k = 0; k < code.Length; k++) { CODEPATERN += code[k].ToString(); if(k().text); string CODEPATERN; if(CabCreator.GetDoorNumber()=="2"){CODEPATERN=_G.CODEPATERN2;} else {CODEPATERN=_G.CODEPATERN;} string[] code = CODEPATERN.Split('_'); code[btnNun * 2 + (2 * (btnNun - 1))] = newC; CODEPATERN = ""; code[btnNun * 2 + (2 * (btnNun - 1) + 3)] = kpos; for (int i = 0; i < code.Length; i++) { if (i < code.Length - 1) { CODEPATERN+= code[i] + "_"; } else { CODEPATERN+= code[i]; } } if(CabCreator.GetDoorNumber()=="2"){_G.CODEPATERN2=CODEPATERN;} else {_G.CODEPATERN=CODEPATERN;} CabCreator.AddPATERN(); //Patern on cab //string catcab; //catcab=UIT.Value(_G.Cab_Labrary_On,_G.SC[0],"Cab_Image"); //catcab = catcab.Split('.')[0] + "." + catcab.Split('.')[1] + "." + catcab.Split('.')[2]; //SetCab.Paternskew(catcab); string newcat = name + btnNun; string path="CABCREATORpnl/PATERN/doorPatern"+CabCreator.GetDoorNumber(); Get.o2(path, newcat).GetComponent().isOn = true; //SetCab.Paternskew(UIT.Value(_G.Cab_Labrary_On,_G.SC[0],"Cab_Image")); } }