using System.Collections; using System.Collections.Generic; using TMPro; using Unity.VisualScripting; using UnityEngine; using UnityEngine.UI; public class StoreSelection : MonoBehaviour { //private static TMP_Dropdown _TownSelection; //private static TMP_Dropdown _AddressSelection; public TMP_Dropdown _Town; public TMP_Dropdown _Address; public TMP_Text _StoreShow; public TMP_Text _MessageAbout; public TMP_InputField _TownFind; public static void SetPnl() { if(_P.ListSwitch["STORE_SELECTION"]){ Get.o2("HIDER","StoreSelection").SetActive(true); ShowAllTown(); //Hide language Set.alpha(Get.o2("Canvas","Language"),false); Get.o2("HIDER/StoreSelection/TownFind/Text Area","Placeholder").GetComponent().text = TRANS.This("F_Type town"); } } public static void ShowAllTown(){ List TownList=new(); int indTown=UIT.Ind(Library.Store, Header.Town); foreach(string TownName in _G.UIT_LibraryStores){ if(!string.IsNullOrEmpty(TownName) && TownName!=_G.UIT_LibraryStores[0]){ string town=TownName.Split(',')[indTown]; if(!string.IsNullOrEmpty(town) && !TownList.Contains(town))TownList.Add(town); } } TownList.Sort(); TMP_Dropdown TownSelector=Get.o2("HIDER/StoreSelection/Dropdown","TownSelector").GetComponent(); TownSelector.options.Clear(); TownSelector.AddOptions(TownList); TownSelector.value=1; TownSelector.value=0; } public void TownSelect(){ Town_Select(_Town,_Address,_StoreShow,_MessageAbout); } public static void Town_Select(TMP_Dropdown Town,TMP_Dropdown Address,TMP_Text StoreShow,TMP_Text MessageAbout){ string TownName=Town.options[Town.value].text; List AddressList=new(); int indTown=UIT.Ind(Library.Store, Header.Town); int indStoreAdress=UIT.Ind(Library.Store, Header.Address); foreach(string StoreLine in _G.UIT_LibraryStores){ if(!string.IsNullOrEmpty(StoreLine) && StoreLine!=_G.UIT_LibraryStores[0]){ string[] StoreLineSplit=StoreLine.Split(','); string town=StoreLineSplit[indTown]; if(!string.IsNullOrEmpty(town) && town==TownName && !AddressList.Contains(StoreLineSplit[indStoreAdress]))AddressList.Add(StoreLineSplit[indStoreAdress]); } } AddressList.Sort(); Address.options.Clear(); Address.AddOptions(AddressList); Address.value=0; ShowStore_Selected(Town,Address,StoreShow,MessageAbout); } public void ShowStoreSelected(){ ShowStore_Selected(_Town,_Address, _StoreShow,_MessageAbout); } public static void ShowStore_Selected(TMP_Dropdown Town,TMP_Dropdown Address,TMP_Text StoreShow,TMP_Text MessageAbout){ int indStoreName=UIT.Ind(Library.Store, Header.Store_Name); int indTown=UIT.Ind(Library.Store, Header.Town); int indStoreAdress=UIT.Ind(Library.Store, Header.Address); int indStoreZone=UIT.Ind(Library.Store, Header.Store_Zone); foreach(string StoreLine in _G.UIT_LibraryStores){ if(!string.IsNullOrEmpty(StoreLine) && StoreLine!=_G.UIT_LibraryStores[0]){ string[] StoreLineSplit=StoreLine.Split(','); if( StoreLineSplit[indTown]==Town.options[Town.value].text && StoreLineSplit[indStoreAdress]==Address.options[Address.value].text) { StoreShow.text=StoreLineSplit[indStoreName]; _G.StoreSelect=StoreShow.text; string ZoneonList=StoreLineSplit[indStoreZone]; if(ZoneonList[..1]=="0")ZoneonList=ZoneonList.Replace("0",""); _G.StoreZone="_"+ZoneonList; print("_G.StoreZone====="+_G.StoreZone); MessageAbout.gameObject.SetActive(true); break; } } } } public void OK() { if( _StoreShow.text!=""){ ShowStore_Selected(_Town,_Address,_StoreShow,_MessageAbout); Get.o2("HIDER","StoreSelection").SetActive(false); } } public void FindTown(){ if(_G.PATH=="bmr" || _TownFind.text.Length==1){ _TownFind.text =_TownFind.text.ToUpper(); } print("_TownFind.text===1==="+_TownFind.text); print("_TownFind letter=="+_TownFind.text+" length==="+_TownFind.text.Length); string toSerch=_TownFind.text; int NumberOfLetters=toSerch.Length; int indOfTown=UIT.Ind(Library.Store,Header.Town); print("indOfTown=="+indOfTown); if(NumberOfLetters>=1){ List TownSortlist=new(); foreach(string TownLine in _G.UIT_LibraryStores){ if(!string.IsNullOrEmpty(TownLine) && TownLine!=_G.UIT_LibraryStores[0] ){ string TownName=TownLine.Split(',')[indOfTown]; if(TownName.Length>=NumberOfLetters){ if(TownName[..NumberOfLetters]==toSerch && !TownSortlist.Contains(TownName))TownSortlist.Add(TownName); } } } TownSortlist.Sort(); _Town.options.Clear(); _Town.AddOptions(TownSortlist); } _Address.options.Clear(); _Address.AddOptions(AdressList()); if(_Address.options.Count != 0){ ShowStoreSelected(); _MessageAbout.text=TRANS.This("F_TownMessage"); } else { _MessageAbout.text=""; _StoreShow.text=""; } if(_TownFind.text.Length==0){ print("_TownFind.text===2"+_TownFind.text); ShowAllTown(); } } public List AdressList(){ List AddressList=new(); if(_Town.options.Count != 0) { string TownName=_Town.options[_Town.value].text; int indTown=UIT.Ind(Library.Store, Header.Town); int indStoreAdress=UIT.Ind(Library.Store, Header.Address); foreach(string StoreLine in _G.UIT_LibraryStores) { if(!string.IsNullOrEmpty(StoreLine) && StoreLine!=_G.UIT_LibraryStores[0]) { string[] StoreLineSplit=StoreLine.Split(','); string town=StoreLineSplit[indTown]; if(!string.IsNullOrEmpty(town) && town==TownName && !AddressList.Contains(StoreLineSplit[indStoreAdress]))AddressList.Add(StoreLineSplit[indStoreAdress]); } } } return AddressList; } }