void DestroyPlayerMsg(object sender, PlayerDestroyedEventArgs e) { if (!serverStarted) { return; } // A user has quit foreach (PlayerObject p in lstUsers.Items) { // If they are in the user list, remove them if (p.playerId == e.Message.PlayerID) { lstUsers.Items.Remove(p); numPlayers--; // We should also notify everyone they've logged off. if (data != null) { // Notify everyone that we've logged off data.NotifyFriends(p.playerName, MessageType.FriendLogoff, server); // Update the schema to show we've logged off data.UpdateDataToReflectLogoff(e.Message.PlayerID); } break; } } //We always want to update our text UpdateText(); }
private void onPlayerDestroyed(object sender, PlayerDestroyedEventArgs e) { if (e.Message.PlayerID == hostingPlayerId) { // stop server lock (uncompressJobs) { uncompressJobs.AddFirst(UncompressJob.StopServer); uncompressJobsPending.Set(); } } else { int otherPlayersGroupId = ((PlayerContext)e.Message.PlayerContext).AllOtherPlayersGroupId; // remove this player from all existing groups of "other players" //foreach(int groupId in server.Groups) { // if(groupId != otherPlayersGroupId) // server.RemovePlayerFromGroup(groupId, e.Message.PlayerID, 0); //} // notify all other players using (NetworkPacket packet = new NetworkPacket(5)) { packet.Write((byte)ReservedMessageType.PlayerHasLeft); packet.Write(e.Message.PlayerID); server.SendTo(otherPlayersGroupId, packet, 0, SendFlags.Guaranteed | SendFlags.Coalesce | SendFlags.PriorityHigh); } // remove the "other players" group owned by this player server.DestroyGroup(otherPlayersGroupId, 0); } }
private void PlayerDestroyed(object sender, PlayerDestroyedEventArgs dpMessage) { // Remove this player from our list // We lock the data here since it is shared across multiple threads. lock (this) { remotePlayer.Active = false; } game.RemotePlayerLeft(remotePlayer.Name); }
private void OnPlayerDestroyed(object sender, PlayerDestroyedEventArgs e) { MessageBox.Show(string.Format ("Игрок {0} покинул сессию", Shared.SharedCode.EnemyPlayer.Name), "", MessageBoxButtons.OK, MessageBoxIcon.Information); connected = false; if (statusConnection != null) { statusConnection(connected); } }
public void PlayerDestroyed(object sender, PlayerDestroyedEventArgs pdea) { int PlayerID = pdea.Message.PlayerID; if (PlayerID != ID) { lock (otherPlayers) { otherPlayers.Remove(PlayerID); } } }
public void PlayerDestroyed(object sender, PlayerDestroyedEventArgs pdea) { // Remove this player from our list // We lock the data here since it is shared across multiple threads. int playerID = pdea.Message.PlayerID; if (playerID != localPlayer.ID) { lock (otherPlayers) { otherPlayers.Remove(playerID); } } }
private void PlayerDestroyed(object sender, PlayerDestroyedEventArgs dpMessage) { // Remove this player from our list // We lock the data here since it is shared across multiple threads. lock (PlayerList) { foreach (Players player in PlayerList) { if (dpMessage.Message.PlayerID == player.dpnID) { PlayerList.Remove(player); break; } } } }
/// <summary> /// A player was destroyed /// </summary> private void PlayerDestroyed(object sender, PlayerDestroyedEventArgs e) { // Remove this player from our list // We lock the data here since it is shared across multiple threads. lock (playerList) { foreach (Players player in playerList) { if (e.Message.PlayerID == player.playerId) { playerList.Remove(player); break; } } // Update our number of players and our button lblUsers.Text = playerList.Count.ToString(); } }
public void PlayerDestroyed(object sender, PlayerDestroyedEventArgs pdea) { int PlayerID = pdea.Message.PlayerID; if (PlayerID != ID) { lock (otherPlayers) { object playerObject = otherPlayers[PlayerID]; if (null == playerObject) { return; } RemotePlayer player = (RemotePlayer)playerObject; factory.RemoveObject(player.heli); curLevel.RemoveObject(player.heli); player.heli = null; otherPlayers.Remove(PlayerID); } } }
private void OnPlayerDestroyed(object sender, PlayerDestroyedEventArgs e) { DcdPlayerList.Add(((Server)sender).GetClientInformation(e.Message.PlayerID).Name); }
private void peer_PlayerDestroyed(object sender, PlayerDestroyedEventArgs e) { lock(playerList) { playerList.Remove(e.Message.PlayerID); } if(PlayerChanged != null) { PlayerChanged(this); } }
private void OnPlayerDestroyed(object sender, PlayerDestroyedEventArgs e) { DcdPlayerList.Add(((Microsoft.DirectX.DirectPlay.Server)sender).GetClientInformation(e.Message.PlayerID).Name); NextStep(2); }