public TestEngine(YmfasClient _client) { netClient = _client; // create the event manager eventMgr = new EventManager(netClient); }
private void timer_Tick(object sender, EventArgs e) { //looking for servers if (splashState == MainSplashState.Searching) { Console.Out.WriteLine("searching..."); //update the engine state ymfasClient.Update(); //attempt to find a new server Lidgren.Library.Network.NetServerInfo session = ymfasClient.GetLocalSession(); if (session != null) { String hostname = ymfasClient.GetHostNameFromIP(session.RemoteEndpoint.Address.ToString()); lstServers.Items.Add(hostname + " - " + session.RemoteEndpoint.Address.ToString()); } } //connecting to a server if (splashState == MainSplashState.Connecting) { // update the engine state ymfasClient.Update(); //time out if too long if (ticksConnecting * timer.Interval >= MAX_CONNECT_TIME) { splashState = MainSplashState.Searching; ymfasClient.Dispose(); ymfasClient = null; MessageBox.Show("Connection attempt failed."); } else { ticksConnecting++; //check for successful connection if (ymfasClient.Status == NetConnectionStatus.Connected) { splashState = MainSplashState.None; // join lobby GameLobby = new frmGameLobby(ymfasClient); GameLobby.ShowDialog(); if (GameLobby.DialogResult == DialogResult.OK) { ymfasClient = GameLobby.Client; this.DialogResult = DialogResult.OK; this.Close(); } } } } }
public frmGameLobby(YmfasClient _client, YmfasServer _server) { client = _client; server = _server; lobbyMode = LobbyMode.Hosting; Initialize(); chkReady.Visible = false; cmbGameMode.Enabled = true; idTicketCounter = 1; }
private void btnJoin_Click(object sender, EventArgs e) { //Initiate search for servers grpServerList.Visible = true; ymfasClient = new YmfasClient(txtName.Text); btnJoin.Enabled = false; btnHost.Enabled = false; ymfasClient.SearchSessions(); //Handle server search in the timer object splashState = MainSplashState.Searching; }
/// <summary> /// Launches the form to configure networking /// upon return, the network engine should be fully initialized /// </summary> public static bool ConfigureNetwork() { // launch the main splash window frmMainSplash networkForm = new frmMainSplash(); Console.Out.WriteLine("Running the form"); networkForm.ShowDialog(); Console.Out.WriteLine("Form done running"); System.Console.Write(networkForm.DialogResult); if (networkForm.DialogResult == System.Windows.Forms.DialogResult.Cancel) return false; // check to see if we have a host as well client = networkForm.Client; server = networkForm.Server; return true; }
public void Dispose() { // destroy all scene instance-specific information DisposeScene(); netClient.Dispose(); netClient = null; if (world != null) { world.Dispose(); world = null; } if (root != null) { root.Dispose(); root = null; } }
/// <summary> /// Launches the form to configure networking /// upon return, the network engine should be fully initialized /// </summary> public static bool ConfigureNetwork() { // launch the main splash window frmMainSplash networkForm = new frmMainSplash(); Console.Out.WriteLine("Running the form"); networkForm.ShowDialog(); Console.Out.WriteLine("Form done running"); System.Console.Write(networkForm.DialogResult); if (networkForm.DialogResult == System.Windows.Forms.DialogResult.Cancel) { return(false); } // check to see if we have a host as well client = networkForm.Client; server = networkForm.Server; return(true); }
private void btnHost_Click(object sender, EventArgs e) { //Host a game // create a client and a server for the game lobby to use ymfasServer = new YmfasServer(txtName.Text); ymfasClient = new YmfasClient(txtName.Text); ymfasClient.Update(); ymfasClient.Connect(IPAddress.Loopback); //Enter lobby GameLobby = new frmGameLobby(ymfasClient, ymfasServer); GameLobby.ShowDialog(); // if we actually started a game if (GameLobby.DialogResult == DialogResult.OK) { ymfasClient = GameLobby.Client; ymfasServer = GameLobby.Server; this.DialogResult = DialogResult.OK; this.Close(); } }
public frmGameLobby(YmfasClient _client) { client = _client; lobbyMode = LobbyMode.ClientOnly; Initialize(); }