public override void Enter(Miner pMiner) { if (pMiner.Location != location_type.mac) { Console.WriteLine(String.Format("\n{0}: Я иду в МакДоналдс, еееу!", EntityManager.Instance().GetNameOfEntity(pMiner.ID))); pMiner.ChangeLocation(location_type.mac); } //creating order int iMaxOrderItems = 1 + pMiner.GetRand.Next(5); int iCurrentItem; //warning MacWorker about creating new order MessageDispatcher.Instance().DispatchMessage(SEND_MSG_IMMEDIATELY, pMiner.ID, pMiner.GetMcWorkerID, (int)message_type_mac.Msg_NewOrder, null); for (int i = 0; i < iMaxOrderItems; i++) { iCurrentItem = 3 + pMiner.GetRand.Next(4); MessageDispatcher.Instance().DispatchMessage(SEND_MSG_IMMEDIATELY, pMiner.ID, pMiner.GetMcWorkerID, iCurrentItem, null); //saying what is the current item to add in the order switch ((message_type_mac)iCurrentItem) { case (message_type_mac.Msg_BigTasty): { Console.WriteLine(String.Format("\n{0}: - Биг тейсти, пожалуйста", EntityManager.Instance().GetNameOfEntity(pMiner.ID))); break; } case (message_type_mac.Msg_CocaCola): { Console.WriteLine(String.Format("\n{0}: - Кока-колу", EntityManager.Instance().GetNameOfEntity(pMiner.ID))); break; } case (message_type_mac.Msg_Free): { Console.WriteLine(String.Format("\n{0}: - Картошку 'фри'", EntityManager.Instance().GetNameOfEntity(pMiner.ID))); break; } case (message_type_mac.Msg_IceCream): { Console.WriteLine(String.Format("\n{0}: - Мороженое в стаканчике", EntityManager.Instance().GetNameOfEntity(pMiner.ID))); break; } } } MessageDispatcher.Instance().DispatchMessage(SEND_MSG_IMMEDIATELY, pMiner.ID, pMiner.GetMcWorkerID, (int)message_type_mac.Msg_EndOrder, null); }