/// <summary> /// Raised when a player leaves /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnLivePlayerLeft(object sender, GamerLeftEventArgs e) { IdentifiedPlayer identifiedPlayer = null; if (e.Gamer.IsLocal) { SignedInGamer signedInGamer = ((LocalNetworkGamer)e.Gamer).SignedInGamer; _localPlayers.ForEach(action => { if (action.UniqueId == signedInGamer.Gamertag) { identifiedPlayer = action; _localPlayers.Remove(action); _allPlayers.Remove(action); } }); } else { _remotePlayers.ForEach(action => { if (action.UniqueId == e.Gamer.Gamertag) { identifiedPlayer = action; _remotePlayers.Remove(action); _allPlayers.Remove(action); } }); } OnPlayerLeft(identifiedPlayer); }
private void value_GamerLeft(object sender, GamerLeftEventArgs e) { if (e.Gamer.IsLocal) { _dataWriters.Remove(e.Gamer.Id); _dataReaders.Remove(e.Gamer.Id); } }
/// <summary> /// Handles a player leaving. Any entities belongong to that player must /// have authority transferred to another player (this is the responsiblity /// of the host) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void GamerLeftEventHandler(object sender, GamerLeftEventArgs e) { if (session.IsHost) { // TODO: Transfer authority for the remote player's entities // to another player } }
void GamerLeft(object sender, GamerLeftEventArgs e) { //dispose of network session networkSession.Dispose(); networkSession = null; currentGameState = GameState.FindSession; }
/// <summary> /// Event handler called when a gamer leaves the session. /// Displays a notification message. /// </summary> void GamerLeft(object sender, GamerLeftEventArgs e) { if (notifyWhenPlayersJoinOrLeave) { messageDisplay.ShowMessage(Resources.MessageGamerLeft, e.Gamer.Gamertag); } }
/// <summary> /// Handle a player leaving the game. /// </summary> void networkSession_GamerLeft(object sender, GamerLeftEventArgs e) { PlayerData playerData = e.Gamer.Tag as PlayerData; if ((playerData != null) && (playerData.Ship != null)) { playerData.Ship.Die(null, true); } }
internal void Session_GamerLeft(object sender, GamerLeftEventArgs e) { UIGridShareFriendElement elem = FindFriendElement(e.Gamer.Gamertag); if (elem != null) { elem.Friend.IsJoined = false; } }
void Client_GamerLeft(object sender, GamerLeftEventArgs e) { _session.Dispose(); if (_session.RemoteGamers.Count <= 0) { GameMain.ChangeState(GameState.TitleScreen); } }
/* Event handler for gamer left; forward to the game if it's listening. */ void session_GamerLeft(object sender, GamerLeftEventArgs e) { Trace.WriteLine(String.Format("Gamer left: {0}", e.Gamer.Gamertag)); joinedGamers.Remove(e.Gamer); if (GamerLeft != null) { gea.Gamer = e.Gamer; gea.Joined = false; GamerLeft(this, gea); } }
private static void GamerLeftEventHandler(object sender, GamerLeftEventArgs e) { NetworkGamer networkGamer = e.Gamer; Player player = networkGamer.Tag as Player; if (networkGamer.IsLocal) { UI uI = Main.ui[(int)((LocalNetworkGamer)networkGamer).SignedInGamer.PlayerIndex]; if (Main.netMode == 0 && uI.wasRemovedFromSessionWithoutOurConsent) { return; } uI.LeaveSession(); } if (Main.netMode == 1) { return; } int whoAmI = player.whoAmI; player.active = 0; playerSlots[whoAmI] = false; if (Main.netMode != 2) { return; } if (networkGamer.IsLocal) { if (UI.main.isInviteOnly) { session.PrivateGamerSlots++; } } else { NetClient client = player.client; if (client.GamerLeft(player)) { clients.Remove(client); } else if (networkGamer == client.gamer) { client.gamer = client.machine.Gamers[0]; } } NetMessage.CreateMessage2(14, whoAmI, 0); NetMessage.SendMessage(); if (player.announced) { player.announced = false; NetMessage.SendText(player.oldName, 33, 255, 240, 20, -1); } }
private void netSession_GamerLeft(object sender, GamerLeftEventArgs e) { if (e.Gamer.IsLocal) { _netSession.Dispose(); _netSession = null; _hasLeft = true; _remoteMapName = ""; _packetReader.Close(); _packetWriter.Close(); } }
void GamerLeftEventHandler(object sender, GamerLeftEventArgs e) { if (e.Gamer.IsLocal) { LocalPlayer player = e.Gamer.Tag as LocalPlayer; Global.localPlayers.Remove(player); } else { RemotePlayer player = e.Gamer.Tag as RemotePlayer; Global.remotePlayers.Remove(player); } }
/// <summary> /// Removes the assosciated network stream of the new gamer that left the network session. /// </summary> /// <param name="sender">The network.</param> /// <param name="e">Event arguments.</param> protected virtual void GamerLeft(object sender, GamerLeftEventArgs e) { }
void GamerLeftEventHandler(object sender, GamerLeftEventArgs e) { log.Add(e.Gamer.Gamertag + " left the current session"); }
void Session_GamerLeft(object sender, GamerLeftEventArgs e) { gamerList.Text.Replace(e.Gamer.Gamertag + Environment.NewLine, ""); gamerList.Position = gamerList.GetCenterPosition(Graphics.Viewport); }
void SessionGamerLeftHandler(object sender, GamerLeftEventArgs e) { //throw new NotImplementedException(); }
void session_GamerLeft(object sender, GamerLeftEventArgs e) { message = "Gamer " + e.Gamer.Tag + " left the session!"; }
void session_GamerLeft(object sender, GamerLeftEventArgs e) { }
void session_GamerLeft(object sender, GamerLeftEventArgs e) { sayMessage("Gamer " + e.Gamer.Tag + " left the session!"); }
void GamerLeftEventHandler(object sender, GamerLeftEventArgs e) { log.Add(e.Gamer.Gamertag + " left the current session"); gamerTimes.Remove(e.Gamer.Gamertag); lastChatMessage.Remove(e.Gamer.Gamertag); }
public void GamerLeftEventHandler(object sender, GamerLeftEventArgs e) { OnGamerLeft(e.Gamer, GetGamerIndex(e.Gamer)); }