Example #1
0
 void WaitingForCleanGlass(Bar bar)
 {
     if (!bar.CheckBarShelfForGlass())
     {
         Log("is waiting at the shelf for a clean glass");
         while (!bar.CheckBarShelfForGlass())
         {
             Thread.Sleep(SpeedModifier(300));
         }
     }
     else
     {
         currentState = State.PouringBeer;
     }
 }
Example #2
0
        void PouringBeer(Bar bar)
        {
            Glass glass;

            if (bar.CheckBarShelfForGlass())
            {
                glass = bar.GetGlassFromShelf();
                Log("fetching glass");
                Thread.Sleep(SpeedModifier(3000));
                Log($"pouring {bar.GetFirstInBarQueue().Name} a beer");
                Thread.Sleep(SpeedModifier(3000));
                glass.CurrentState = Glass.State.Full;
                bar.AddGlassToBarTop(glass);
                currentState = State.WaitingForPatron;
            }
            else
            {
                currentState = State.WaitingForCleanGlass;
            }
        }