private List <MenuCategorie> ReadCategorieTables(DataTable dataTable, MainMenu mainMenu) { DataView view = new DataView(dataTable); view.RowFilter = $"menu_id = {mainMenu.MenuId}"; List <MenuCategorie> menuCategorieList = new List <MenuCategorie>(); int categorieId = -1; foreach (DataRowView dr in view) { int currentCategorieId = (int)dr["menu_categorie_id"]; if (categorieId != currentCategorieId) { MenuCategorie categorie = new MenuCategorie( currentCategorieId, (int)dr["menu_id"], dr["categorie_name"].ToString(), (bool)dr["VAT"], new List <MenuItem>() ); categorie.MenuItems = ReadMenuItemTables(dataTable, categorie); menuCategorieList.Add(categorie); } categorieId = currentCategorieId; } return(menuCategorieList); }
void initializePanelExtend(TypeMenu menu) { categorie = new MenuCategorie(menu); if (categorie != null) { if (!gameObject.activeSelf) { gameObject.SetActive(true); } Sprite[] spritesCat = categorie.GetSprites(); bool[] available = categorie.getAvailable(); for (int i = 0; i < spritesCat.Length; i++) { if (spritesCat[i] == null) { buttons[i].GetComponent <Image>().sprite = null; buttons[i].GetComponent <Image>().CrossFadeAlpha(0.5f, 0, true); buttons[i].GetComponent <Button>().interactable = false; } else { //Mettre a jour l'image du button buttons[i].GetComponent <Image>().sprite = spritesCat[i]; //Si le joueur peut utiliser le bouton if (available[i]) { buttons[i].GetComponent <Image>().CrossFadeAlpha(1, 0, true); Button button = buttons[i].GetComponent <Button>(); button.interactable = true; //Retire les listeners et ajoute le bon. button.onClick.RemoveAllListeners(); button.onClick.AddListener(delegate { effectButton(button.gameObject); }); } else { buttons[i].GetComponent <Image>().CrossFadeAlpha(0.5f, 0, true); buttons[i].GetComponent <Button>().interactable = false; } } } } else { gameObject.SetActive(false); } }
public void changePanelExtend(TypeMenu menu) { if (categorie != null) { if (categorie.type == menu) { categorie = null; gameObject.SetActive(false); } else { initializePanelExtend(menu); } } else { initializePanelExtend(menu); } /* * switch (menu) { * case "Building": * * for(int i = 0;i<buttons.Length;i++){ * Sprite button = Resources.Load<Sprite>("UI/Buttons/ButtonBuilding" + i.ToString()); * //Debug.Log (button); * if(button == null ){ * buttons[i].GetComponent<Image>().sprite = null; * buttons[i].GetComponent<Image>().CrossFadeAlpha(0,0,true); * buttons[i].GetComponent<Button>().interactable = false; * } * else{ * buttons[i].GetComponent<Image>().sprite = button ; * buttons[i].GetComponent<Button>().interactable = true; * buttons[i].GetComponent<Image>().CrossFadeAlpha(1,0,true); * } * } * break; * * default : * break; * * } */ }
private List <MenuItem> ReadMenuItemTables(DataTable dataTable, MenuCategorie menuCategorie) { DataView view = new DataView(dataTable); view.RowFilter = $"menu_categorie_id = {menuCategorie.CategorieId}"; List <MenuItem> menuItemsList = new List <MenuItem>(); foreach (DataRowView dr in view) { MenuItem item = new MenuItem( (int)dr["menu_item_id"], (int)dr["menu_categorie_id"], dr["item_name"].ToString(), (decimal)dr["price"], (int)dr["stock"] ); menuItemsList.Add(item); } return(menuItemsList); }