public void MakeChoise(CustomVendingMachine vm) { Console.Write("Осмотрев меню вы остановились на "); Good g = new Good( Console.ReadLine()); Console.WriteLine(); if (vm.Contain(g)) { vm.Selection = g; Purchase(vm); } else { Console.Write("Данный товар не был обнаружен в автомате. "); Console.WriteLine("Пожалуйста сделайте выбор снова."); Console.WriteLine(); MakeChoise(vm); } }
public virtual void LoadGoods(Good good,int price, int amount) { goodStorage.AddGood(good, amount); prices.Add(good, price); }
protected void DeliverGood(Good good) { goodStorage.RemoveGood(good); display.Show("В лоток выпал товар: " + good.Name); changer.CalculateChange(); }
public virtual void Purchase(Customer c) { if (status != MachineStatus.Shutdown) { // customer make selection chosen = new Good("Вафли"); display.Show("Вы выбрали " + chosen.Name); expected = prices[chosen]; while (!CheckTotal()) { if (cancel) break; display.Show("Внесите " + WaitFor() + " руб"); c.CheckoutWallet(); Coin coin = c.Find(); if (c.isAvaliable(coin)) { c.Spend(coin); Insert(c, coin); } if (totalBill > expected) c.Get(new Coin(totalBill-expected)); } c.CheckoutWallet(); display.Show("Вот " + chosen.Name); totalBill = 0; } }
public bool Contain(Good g) { return goodStorage.Contains(g); }