//Fonction pour aller au comptoir, prendre les menus, retourner à la table ciblée et donner les menus aux clients private void GettingMenus() { if (carte == null) { if (GetPosition() == ((Table)clientsToRecieve[0][1]).GetPosition()) { tablePosition = GetPosition(); MoveTo(loader.GetWorld().GetComptoir().GetPointAccesRestaurant()); } else { carte = loader.GetWorld().GetComptoir().GetCarte(); Console.WriteLine("CR " + id + " a récupéré cartes"); } } else { if (GetPosition() == ((Table)clientsToRecieve[0][1]).GetPosition()) { foreach (Client client in (List <Client>)clientsToRecieve[0][0]) { client.RecieveCarte(carte); } Console.WriteLine("CR " + id + " a donné les cartes aux clients de la table " + ((Table)clientsToRecieve[0][1]).GetNumTable()); clientsToRecieve.RemoveAt(0); carte = null; etat = "idle"; } else { MoveTo(tablePosition); } } }
//Fonction pour reçevoir la crate des menus, appelée par le chef de rang public void RecieveCarte(Carte carte) { this.carte = carte; }
//Fonction pour rendre la carte au chef de rang, change l'état du client en attende du repas public void GiveBackCarte() { carte = null; }
//Charge la carte des menus du restaurant (qui peut changer en fonction des aliments manquants) public void LoadCarte(Carte carte) { this.carte = carte; }