public WaitingRoomResponse GetWaitingRoom() { return(new WaitingRoomResponse() { WaitingRoom = WaitingRoom.GetWaitingRoom() }); }
public string Join(string user, string connectionId) { var existing = Players.Concat(WaitingRoom).FirstOrDefault(t => t.Name == user); if (existing != null) { if (existing.ConnectionId != connectionId) { existing.ConnectionId = connectionId; Message(user, $"re-joined the game"); } } else if (string.IsNullOrEmpty(Owner)) { Owner = user; Players.Add(CreatePlayer(user, connectionId)); } else { if (Players.Count >= MaxPlayers) { return($"Game already has maximum number of players"); } WaitingRoom.Add(CreatePlayer(user, connectionId)); Message(user, $"requested to join the game"); } return(null); }
public Patient(WaitingRoom wr) { _waitingRoom = wr; _numberInQueue = _waitingRoom.DrawNumber(); Console.WriteLine($"Patient {_numberInQueue} enters the room"); _waitingRoom.NumberChange += ReactToNumber; }
private void EnterSubstate(OnlineSubstate nextSubstate) { switch (nextSubstate) { case OnlineSubstate.OnlineMenu: var onlineMenu = new OnlineMenu(); Program.MainWindow.SwitchScreen(onlineMenu); break; case OnlineSubstate.OnlineBoard: var board = new OnlineBoardPanel(); Program.MainWindow.SwitchScreen(board); break; case OnlineSubstate.GameCreation: var campaignConfig = new OnlineGameConfig(); campaignConfig.InitConfig(); campaignConfig.GotoConfigWindows(); break; case OnlineSubstate.WaitingRoom: var waitingRoom = new WaitingRoom(); Program.MainWindow.SwitchScreen(waitingRoom); break; } _currentSubState = nextSubstate; }
public string Admit(string currentUser, string name) { if (IsStarted) { return("Game has already started!"); } if (currentUser != Owner) { return("Only game owner can admit users!"); } if (Players.Count >= MaxPlayers) { return($"Maximum number of players is {MaxPlayers}"); } var player = WaitingRoom.FirstOrDefault(t => t.Name == name); if (player == null) { return($"Player not found: {name}"); } WaitingRoom.Remove(player); player.Order = Players.Count; Players.Add(player); Message(null, $"{player} was admitted"); return(null); }
public HospitalController( ILogger <HospitalController> logger, List <DoctorCabin> doctorcabins, WaitingRoom waitingroom, IConfiguration configuration, List <DoctorsModel> doctorsmodels, IHubContext <NotificationHub, INotificationHub> notify, IConfiguration config, IPatientRepository patientRepository, IDoctorRepository doctorRepository, IWebHostEnvironment hostEnvironment, FewaDbContext fewaDbContext) { FewaDbContext = fewaDbContext; _patientRepository = patientRepository; _doctorsmodels = doctorsmodels; Configuration = configuration; _logger = logger; _doctorcabins = doctorcabins; _waitingroom = waitingroom; _doctorRepository = doctorRepository; idletime = Convert.ToInt32(configuration["IdleTime"]); _notify = notify; _config = config; _hostingEnvironment = hostEnvironment; }
public static void HandleLeaveSession(Packet packet) { CmdLeaveSession cmd = new CmdLeaveSession(packet); if (packet.Sender.Character.Status.GetState() == typeof(WaitingRoom)) { WaitingRoom room = packet.Sender.Character.Status.GetObject <WaitingRoom>(); room.Leave(packet.Sender); var ack3 = new LeaveSessionAck() { Token = packet.Sender.GetIdentifier() }; packet.SendBack(ack3.CreatePacket()); var ack1 = new ClientPlayerLeftSessionAck() { Token = packet.Sender.GetIdentifier() }; room.Broadcast(ack1.CreatePacket()); var ack2 = new TeacherPlayerLeftSessionAck() { StudentName = packet.Sender.Character.Name }; room.Owner.Send(ack2.CreatePacket()); return; } else { packet.SendBackError(21); return; } }
internal async Task TakeDamage(int soul) { for (int i = 0; i < soul; i++) { var tmp = Library.Draw(); ResolutionZone.Enqueue(tmp); await CheckInterrupts(); if (tmp is IWSClimaxCard) { while (ResolutionZone.Count > 0) { WaitingRoom.Put(ResolutionZone.Dequeue()); } return; } } while (ResolutionZone.Count > 0) { Clock.Put(ResolutionZone.Dequeue()); await CheckInterrupts(); } await RefreshPoint(); }
public LobbyPageViewModel(LobbyPage page) { _page = page; _page.DisplayPlayers(); DisplayGameCreationDialogCommand = new RelayCommand <object>((o) => DisplayGameCreationDialog(), (o) => true); JoinLobbyCommand = new RelayCommand <object>(async(o) => await JoinLobby(), (o) => true); Messenger.Default.Register(this, delegate(string msg) { if (!msg.StartsWith(nameof(GameGridElementViewModel.IsSelectedGame))) { return; } foreach (GameGridElement g in Lobbies.Where(g => msg.EndsWith(((GameGridElementViewModel)g.DataContext).WaitingRoom.Channel.id))) { foreach (GameGridElement gg in Lobbies) { ((GameGridElementViewModel)gg.DataContext).UnSelectGame(); } IsGameSelected = true; _currentSelectedWaitingRoom = ((GameGridElementViewModel)g.DataContext).WaitingRoom; } }); }
public PracticeController( ILogger <PracticeController> logger, List <ProviderCabin> providerCabins, WaitingRoom waitingroom, IConfiguration configuration, List <Provider> providers, IHubContext <NotificationHub, INotificationHub> notify, IConfiguration config, IPatientRepository patientRepository, IProviderRepository providerRepository, IWebHostEnvironment hostEnvironment, FewaDbContext fewaDbContext, IHttpContextAccessor HttpContextAccessor) { FewaDbContext = fewaDbContext; _patientRepository = patientRepository; _providers = providers; Configuration = configuration; _logger = logger; _providerCabins = providerCabins; _waitingroom = waitingroom; _providerRepository = providerRepository; idletime = Convert.ToInt32(configuration["IdleTime"]); _notify = notify; _config = config; accessor = HttpContextAccessor; _hostingEnvironment = hostEnvironment; }
public NotificationHub(WaitingRoom _waitingroom, List <Doctor> _doctors, List <DoctorCabin> _doctorcabins) { waitingroom = _waitingroom; doctors = _doctors; doctorcabins = _doctorcabins; }
public static void Initialize(Employee inEmployee) { if (_employee == null) { _employee = inEmployee; _waitingRoom = inEmployee.WaitingRoom; } }
public ActionResult DeleteConfirmed(int id) { WaitingRoom waitingRoom = db.WaitingRooms.Find(id); db.WaitingRooms.Remove(waitingRoom); db.SaveChanges(); return(RedirectToAction("Index")); }
public HomeController(ILogger <HomeController> logger, DoctorCabin doctorcabin, WaitingRoom waitingroom, IConfiguration configuration) { Configuration = configuration; _logger = logger; _doctorcabin = doctorcabin; _waitingroom = waitingroom; idletime = Convert.ToInt32(configuration["IdleTime"]); }
public Server() { // Implement IMessageable ComponentType = MessageableComponent.BaseServer; ComponentClients = new List <ServerConnection>(); // Create waiting room for connections _waitingRoom = new WaitingRoom(MAX_ROOMS); }
public void RespondBoardRespondingToRetries() { //Create a SubSystem with dummy factory. dummyConversationFactory dumConvoFact = new dummyConversationFactory(); WaitingRoom waitingRoom = new WaitingRoom(); PlayerAppState playerAppState = new PlayerAppState(waitingRoom); SubSystem commSubSys = new SubSystem(dumConvoFact, playerAppState); //Note: we dont want to start the threads of the subSystem. //Create Conversation RespondTurns respondTurnsConvo = new RespondTurns(); respondTurnsConvo.SubSystem = commSubSys; respondTurnsConvo.RemoteEndPoint = new IPEndPoint(IPAddress.Parse("1.1.1.1"), 1111); //Create fake incoming env. Envelope IncomingEnv = new Envelope(new ResultMessage(true, 1, true, true, false, -1, -1, new Identifier(0, 1), new Identifier(0, 1)), new IPEndPoint(IPAddress.Parse("1.1.1.1"), 1111), new IPEndPoint(IPAddress.Parse("2.2.2.2"), 2222), false); //Set the incoming env. respondTurnsConvo.IncomingEnvelope = IncomingEnv; respondTurnsConvo.recievedMessagesDict.TryAdd(IncomingEnv.Message.MessageNumber.ToString(), IncomingEnv); //Start the conversation respondTurnsConvo.Launch(); Thread.Sleep(500); //check the outgoing message. Assert.IsTrue(commSubSys.outQueue.Count >= 1); //Give a duplicate message. respondTurnsConvo.Process(IncomingEnv); Thread.Sleep(500); //check the outgoing message. Assert.IsTrue(commSubSys.outQueue.Count >= 2); //get count of outgoing messages for later. int countOfOutGoingMessages = commSubSys.outQueue.Count; //Wait for timeout time Thread.Sleep(2000); //Check that there are no new messages. Assert.IsTrue(countOfOutGoingMessages == commSubSys.outQueue.Count); //Cheack that thread has ended. respondTurnsConvo.Process(IncomingEnv); //If thread was running outgoing messages should go up. Thread.Sleep(500); Assert.IsTrue(countOfOutGoingMessages == commSubSys.outQueue.Count); //Close the communicators for next test. commSubSys.udpcomm.closeCommunicator(); commSubSys.tcpcomm.closeCommunicator(); }
public ActionResult Edit([Bind(Include = "Id,Name")] WaitingRoom waitingRoom) { if (ModelState.IsValid) { db.Entry(waitingRoom).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(waitingRoom)); }
private void button3_Click(object sender, EventArgs e) { WaitingRoom.AssignPlayersToGames(); var context = GlobalHost.ConnectionManager.GetHubContext <ServerHub>(); foreach (string connID in Program.PlayingGames.SelectMany(playingGame => playingGame.playersID)) { context.Clients.Client(connID).StartGameMsg("start"); } }
public NotificationHub(WaitingRoom _waitingroom, List <Provider> _providers, List <ProviderCabin> _providerCabins, IHostingEnvironment hostingEnvironment) { waitingroom = _waitingroom; providers = _providers; providerCabins = _providerCabins; _hostingEnvironment = hostingEnvironment; }
static void Main(string[] args) { var wr = new WaitingRoom(); var p0 = new Patient(wr); var p1 = new Patient(wr); var p2 = new Patient(wr); var p3 = new Patient(wr); wr.RunWaitingRoom(); }
public WaitingRoomGamesResponse LeaveCurrentGame([FromUri] int playerId) { WaitingRoom waitingRoom = WaitingRoom.GetWaitingRoom(); waitingRoom.LeaveCurrentGame(playerId); waitingRoom.SaveWaitingRoom(); return(new WaitingRoomGamesResponse() { Games = waitingRoom.Games }); }
public List <MedicalExamination> GetAllByWaitingRoom(int id) { WaitingRoom waitingRoom = new WaitingRoom(); foreach (MedicalExamination m in ((IMedicalExaminationRepository)repository).GetAllByWaitingRoom(id)) { waitingRoom.AddExamination(m); } //return ((IMedicalExaminationRepository)repository).GetAllByWaitingRoom(id); return((List <MedicalExamination>)waitingRoom.Examinations); }
public WaitingRoomResponse PlayerReady([FromBody] PlayerReadyrequest request) { WaitingRoom waitingRoom = WaitingRoom.GetWaitingRoom(); waitingRoom.PlayerReady(request); waitingRoom.SaveWaitingRoom(); return(new WaitingRoomResponse() { WaitingRoom = waitingRoom }); }
public WaitingRoomResponse AddChatPlayer([FromBody] AddChatPlayerRequest request) { WaitingRoom waitingRoom = WaitingRoom.GetWaitingRoom(); waitingRoom.AddPlayer(request); waitingRoom.SaveWaitingRoom(); return(new WaitingRoomResponse() { WaitingRoom = waitingRoom }); }
public void AddNewMedicalExamination(IAddMedicalExaminationView inForm) { _form = inForm; List <ExaminationType> typesList = _serviceFactory.CreateExaminationTypeService(_unitOfWork).GetAll(); if (inForm.ShowViewModal(typesList)) { try { bool emergency = inForm.Emergency; ExaminationType examinationType = inForm.ExaminationType; string PatientId = inForm.PatientId; string FirstName = inForm.PatientFirstName; string LastName = inForm.PatientLastName; string OIB = inForm.PatientOIB; string address = inForm.Address; string city = inForm.City; string zipCode = inForm.ZipCode; DateTime DateOfBirth; DateTime.TryParseExact(inForm.PatientDateOfBirth, "dd.MM.yyyy", null, DateTimeStyles.None, out DateOfBirth); var patientService = _serviceFactory.createPatientService(_unitOfWork); var patient = patientService.GetByOIB(OIB); if (patient == null) { patient = patientService.Add(FirstName, LastName, OIB, DateOfBirth, PatientId, address, city, zipCode); } Employee employee = LoggedIn.GetEmployee(); WaitingRoom waitingRoom = LoggedIn.GetWaitingRoom(); IMedicalExaminationService medicalExaminationService = _serviceFactory.createMedicalExaminationService(_unitOfWork); MedicalExamination medicalExamination = medicalExaminationService.Add(patient, examinationType, emergency); //WaitingRoom waitingRoom = LoggedIn.GetEmployee().WaitingRoom; //var service = _serviceFactory.CreateWaitingRoomService(_unitOfWork); //WaitingRoom wr = service.GetById(waitingRoom.Id); //WaitingRoom wr = new WaitingRoom(new List<MedicalExamination>(), "Kardio"); //wr.AddExamination(medicalExamination); //service.Add(wr); NotifyObservers(); } catch (Exception ex) { MessageBox.Show(ex.StackTrace); } } }
public HospitalController(ILogger <HospitalController> logger, List <DoctorCabin> doctorcabins, WaitingRoom waitingroom, IConfiguration configuration, List <Doctor> doctors) { _doctors = doctors; Configuration = configuration; _logger = logger; _doctorcabins = doctorcabins; _waitingroom = waitingroom; idletime = Convert.ToInt32(configuration["IdleTime"]); }
public WaitingRoomGamesResponse CreateNewGame([FromBody] CreateGameRequest request) { WaitingRoom waitingRoom = WaitingRoom.GetWaitingRoom(); waitingRoom.AddGame(request); waitingRoom.SaveWaitingRoom(); return(new WaitingRoomGamesResponse() { Games = waitingRoom.Games }); }
public WaitingRoomPlayersResponse UpdatePlayer(UpdatePlayerRequest request) { WaitingRoom waitingRoom = WaitingRoom.GetWaitingRoom(); waitingRoom.UpdatePlayer(request); waitingRoom.SaveWaitingRoom(); return(new WaitingRoomPlayersResponse() { Players = waitingRoom.Players }); }
public WaitingRoomPlayersResponse RemovePlayer([FromUri] string socketId) { WaitingRoom waitingRoom = WaitingRoom.GetWaitingRoom(); waitingRoom.RemovePlayer(socketId); waitingRoom.SaveWaitingRoom(); return(new WaitingRoomPlayersResponse() { Players = waitingRoom.Players }); }
public WaitingRoomGamesResponse JoinGame([FromUri] JoinGameRequest request) { WaitingRoom waitingRoom = WaitingRoom.GetWaitingRoom(); waitingRoom.JoinGame(request); waitingRoom.SaveWaitingRoom(); return(new WaitingRoomGamesResponse() { Games = waitingRoom.Games }); }