private static void HandlePlayerUpdate(NetworkMessage msg) { MsgPlayerUpdateBase upd = msg as MsgPlayerUpdateBase; WriteLine("MsgPlayerUpdate " + upd.CodeAbreviation.ToString() + String.Format(" From {0} {1}", upd.PlayerID, upd.Status)); WriteLine(String.Format("\tPosition = X{0} Y{1} Z{2}", upd.Position.X, upd.Position.Y, upd.Position.Z)); WriteLine(String.Format("\tVelocity = X{0} Y{1} Z{2}", upd.Velocity.X, upd.Velocity.Y, upd.Velocity.Z)); }
public void HandlePlayerUpdate(NetworkMessage msg) { MsgPlayerUpdateBase upd = msg as MsgPlayerUpdateBase; Player player = GetPlayerByID(upd.PlayerID); if (player == null) { return; } player.LastUpdate = upd; if (PlayerStateUpdated != null) { PlayerStateUpdated.Invoke(this, player); } }
public void PlayerUpdate(ServerPlayer player, MsgPlayerUpdateBase updMessage) { if (updMessage == null) { return; } player.Info.LastSentUpdate.TimeStamp = GameTime.Now; player.Info.LastSentUpdate.Position = updMessage.Position; player.Info.LastSentUpdate.Azimuth = updMessage.Azimuth; player.Info.LastSentUpdate.AngularVelocity = updMessage.AngularVelocity; player.Info.LastSentUpdate.Velocity = updMessage.Velocity; SendToAll(updMessage, updMessage.FromUDP); Flags.DoPlayerFlagChecks(player); }