public override void PeerChangedState(GKSession session, string peerID, GKPeerConnectionState state) { LocalNetworkGamer lng = new LocalNetworkGamer(); switch (state) { case GKPeerConnectionState.Available : break; case GKPeerConnectionState.Connected : if ( !gamerList.Contains(lng) ) { gamerList.Add(lng); } break; case GKPeerConnectionState.Connecting : break; case GKPeerConnectionState.Disconnected : if ( gamerList.Contains(lng) ) { gamerList.Remove(lng); } break; case GKPeerConnectionState.Unavailable : break; } }
public override void PeerChangedState(GKSession session, string peerID, GKPeerConnectionState state) { LocalNetworkGamer lng = new LocalNetworkGamer(); switch (state) { case GKPeerConnectionState.Available: break; case GKPeerConnectionState.Connected: if (!gamerList.Contains(lng)) { gamerList.Add(lng); } break; case GKPeerConnectionState.Connecting: break; case GKPeerConnectionState.Disconnected: if (gamerList.Contains(lng)) { gamerList.Remove(lng); } break; case GKPeerConnectionState.Unavailable: break; } }
public void NullAllowed() { using (var session = new GKSession(null, "displayName", GKSessionMode.Client)) { } using (var session = new GKSession("sessionID", null, GKSessionMode.Peer)) { } }
void ChatJoinClicked (object sender, EventArgs e) { _session = new GKSession ("com.lmt.gkchat1", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); _session.PeerChanged += delegate(object s0, GKPeerChangedStateEventArgs peerArgs) { switch (peerArgs.State) { case GKPeerConnectionState.Available: AddToChatHistory (String.Format ("{0} is available", _session.DisplayNameForPeer (peerArgs.PeerID))); _session.Connect (peerArgs.PeerID, 60); AddToChatHistory (String.Format ("sent connection request to {0}", _session.DisplayNameForPeer (peerArgs.PeerID))); break; case GKPeerConnectionState.Connected: AddToChatHistory (String.Format ("connected to {0}", _session.DisplayNameForPeer (peerArgs.PeerID))); chatSend.Enabled = true; break; case GKPeerConnectionState.Connecting: AddToChatHistory (String.Format ("{0} is connecting", _session.DisplayNameForPeer (peerArgs.PeerID))); break; case GKPeerConnectionState.Disconnected: AddToChatHistory (String.Format ("{0} disconnected", _session.DisplayNameForPeer (peerArgs.PeerID))); break; case GKPeerConnectionState.Unavailable: AddToChatHistory (String.Format ("{0} is unavailable", _session.DisplayNameForPeer (peerArgs.PeerID))); break; } }; _session.ConnectionRequest += delegate(object s1, GKPeerConnectionEventArgs connectionArgs) { AddToChatHistory (String.Format ("received connection request from {0}", _session.DisplayNameForPeer (connectionArgs.PeerID))); _session.AcceptConnection (connectionArgs.PeerID, IntPtr.Zero); AddToChatHistory (String.Format ("accepted connection from {0}", _session.DisplayNameForPeer (connectionArgs.PeerID))); }; _session.ReceiveData += delegate(object s2, GKDataReceivedEventArgs dataArgs) { AddToChatHistory (String.Format("received message '{0}' from {1}", NSString.FromData (dataArgs.Data, NSStringEncoding.UTF8), _session.DisplayNameForPeer (dataArgs.PeerID))); }; _session.Available = true; chatJoin.Enabled = false; }
void ShowPeerPicker () { _session = new GKSession ("com.lmt.gkchat2", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); _session.ReceiveData += (s, e) => { AddToChatHistory (NSString.FromData (e.Data, NSStringEncoding.UTF8).ToString ()); }; _session.ConnectionRequest += (s, e) => { e.Session.AcceptConnection (e.PeerID, IntPtr.Zero); }; _peerPickerController = new GKPeerPickerController (); _peerPickerController.Delegate = new PeerPickerDelegate (this); _peerPickerController.ConnectionTypesMask = GKPeerPickerConnectionType.Nearby; _peerPickerController.Show (); }
void ShowPeerPicker() { _session = new GKSession("com.lmt.gkchat2", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); _session.ReceiveData += (s, e) => { AddToChatHistory(NSString.FromData(e.Data, NSStringEncoding.UTF8).ToString()); }; _session.ConnectionRequest += (s, e) => { e.Session.AcceptConnection(e.PeerID, IntPtr.Zero); }; _peerPickerController = new GKPeerPickerController(); _peerPickerController.Delegate = new PeerPickerDelegate(this); _peerPickerController.ConnectionTypesMask = GKPeerPickerConnectionType.Nearby; _peerPickerController.Show(); }
void ShowPeerPicker() { GameKitSession = new GKSession ("com.mikebluestein.gamekitchat", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); GameKitSession.ReceiveData += (s, e) => { AddMessage (NSString.FromData (e.Data, NSStringEncoding.UTF8).ToString ()); }; GameKitSession.ConnectionRequest += (s, e) => { e.Session.AcceptConnection (e.PeerID, IntPtr.Zero); }; GKPeerPickerController peerPickerController = new GKPeerPickerController (); peerPickerController.Delegate = new PeerPickerDelegate (this); peerPickerController.ConnectionTypesMask = GKPeerPickerConnectionType.Nearby; peerPickerController.Show (); }
void ShowPeerPicker() { GameKitSession = new GKSession("com.mikebluestein.gamekitchat", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); GameKitSession.ReceiveData += (s, e) => { AddMessage(NSString.FromData(e.Data, NSStringEncoding.UTF8).ToString()); }; GameKitSession.ConnectionRequest += (s, e) => { e.Session.AcceptConnection(e.PeerID, IntPtr.Zero); }; GKPeerPickerController peerPickerController = new GKPeerPickerController(); peerPickerController.Delegate = new PeerPickerDelegate(this); peerPickerController.ConnectionTypesMask = GKPeerPickerConnectionType.Nearby; peerPickerController.Show(); }
public static NetworkSession Create( NetworkSessionType sessionType, // Type of session being hosted. int maxLocalGamers, // Maximum number of local players on the same gaming machine in this network session. int maxGamers // Maximum number of players allowed in this network session. For Zune-based games, this value must be between 2 and 8; 8 is the maximum number of players supported in the session. ) { try { if (maxLocalGamers > 2) { throw new ArgumentOutOfRangeException("Maximum local players can only be 2 on the iPhone."); } if (maxGamers < 2 || maxGamers > 8) { throw new ArgumentOutOfRangeException("Maximum number of gamers must be between 2 and 8."); } networkSessionType = sessionType; GKSessionMode gkSessionMode; switch (sessionType) { case NetworkSessionType.Local: gkSessionMode = GKSessionMode.Client; break; case NetworkSessionType.SystemLink: gkSessionMode = GKSessionMode.Peer; break; case NetworkSessionType.PlayerMatch: gkSessionMode = GKSessionMode.Server; break; default: gkSessionMode = GKSessionMode.Peer; break; } gkSession = new GKSession(null, null, gkSessionMode); gkSession.Available = true; throw new NotImplementedException(); } finally { } }
void ShowPeerPicker () { _gkSession = new GKSession ("com.lmt.gkvoicechat", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); _gkSession.ReceiveData += delegate(object sender, GKDataReceivedEventArgs e) { GKVoiceChatService.Default.ReceivedData (e.Data, e.PeerID); }; _gkSession.ConnectionRequest += delegate(object sender, GKPeerConnectionEventArgs e) { e.Session.AcceptConnection (e.PeerID, IntPtr.Zero); }; GKPeerPickerController peerPickerController = new GKPeerPickerController (); peerPickerController.Delegate = new PeerPickerDelegate (this); peerPickerController.ConnectionTypesMask = GKPeerPickerConnectionType.Nearby; peerPickerController.Show (); }
/*public override GKSession GetSession(GKPeerPickerController picker, GKPeerPickerConnectionType forType) * { * Console.WriteLine( "GetSession" ); * * return gkSession; * }*/ public override void PeerConnected(GKPeerPickerController picker, string peerId, GKSession toSession) { Console.WriteLine("Peer ID " + peerId + " Connected to Session ID : " + toSession.SessionID); // Use a retaining property to take ownership of the session. this.gkSession = toSession; // Assumes our object will also become the session's delegate. gkSession.Delegate = new MonoGameSessionDelegate(); gkSession.ReceiveData += new EventHandler <GKDataReceivedEventArgs>(receivedData); picker.Dismiss(); // Remove the picker. picker.Delegate = null; // Start your game. }
void ShowPeerPicker() { _gkSession = new GKSession("com.lmt.gkvoicechat", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); _gkSession.ReceiveData += delegate(object sender, GKDataReceivedEventArgs e) { GKVoiceChatService.Default.ReceivedData(e.Data, e.PeerID); }; _gkSession.ConnectionRequest += delegate(object sender, GKPeerConnectionEventArgs e) { e.Session.AcceptConnection(e.PeerID, IntPtr.Zero); }; GKPeerPickerController peerPickerController = new GKPeerPickerController(); peerPickerController.Delegate = new PeerPickerDelegate(this); peerPickerController.ConnectionTypesMask = GKPeerPickerConnectionType.Nearby; peerPickerController.Show(); }
public override void PeerConnected (GKPeerPickerController picker, string peerId, GKSession toSession) { _controller._gkSession = toSession; picker.Dismiss (); picker.Delegate = null; _controller.joinButton.Title = "Connected"; _controller.joinButton.Enabled = false; AVAudioSession audioSession = AVAudioSession.SharedInstance (); NSError error; audioSession.SetCategory (AVAudioSession.CategoryPlayAndRecord.ToString (), out error); audioSession.SetActive (true, out error); _controller._vcClient = new MyVoiceChatClient (_controller._gkSession); GKVoiceChatService.Default.Client = _controller._vcClient; GKVoiceChatService.Default.StartVoiceChat (peerId, IntPtr.Zero); }
public void EndGame() { try { networkSessionState = NetworkSessionState.Lobby; if (gkSession != null) { gkSession.DisconnectFromAllPeers(); gkSession.Available = false; gkSession.ReceiveData -= null; gkSession.Delegate = null; gkSession.Dispose(); gkSession = null; } } finally { } }
public override void FailedWithError(GKSession session, NSError error) { #if DEBUG Console.WriteLine(" Session : " + session.SessionID + " FailedWithError : " + error); #endif }
public MyVoiceChatClient(GKSession session) { _session = session; }
/*public override GKSession GetSession(GKPeerPickerController picker, GKPeerPickerConnectionType forType) { Console.WriteLine( "GetSession" ); return gkSession; }*/ public override void PeerConnected(GKPeerPickerController picker, string peerId, GKSession toSession) { Console.WriteLine( "Peer ID " + peerId + " Connected to Session ID : " + toSession.SessionID ); // Use a retaining property to take ownership of the session. this.gkSession = toSession; // Assumes our object will also become the session's delegate. gkSession.Delegate = new MonoGameSessionDelegate(); gkSession.ReceiveData += new EventHandler<GKDataReceivedEventArgs>(receivedData); picker.Dismiss(); // Remove the picker. picker.Delegate = null; // Start your game. }
public MonoGamePeerPickerControllerDelegate( GKSession aSession, EventHandler<GKDataReceivedEventArgs> aReceivedData ) { gkSession = aSession; receivedData = aReceivedData; }
public MonoGamePeerPickerControllerDelegate(GKSession aSession, EventHandler <GKDataReceivedEventArgs> aReceivedData) { gkSession = aSession; receivedData = aReceivedData; }
public override void PeerConnected (GKPeerPickerController picker, string peerId, GKSession toSession) { _controller._session = toSession; picker.Dismiss (); picker.Delegate = null; //just disabling button once connection is made for simplicity _controller.chatJoin.Enabled = false; }
void ChatJoinClicked(object sender, EventArgs e) { _session = new GKSession("com.lmt.gkchat1", UIDevice.CurrentDevice.Name, GKSessionMode.Peer); _session.PeerChanged += delegate(object s0, GKPeerChangedStateEventArgs peerArgs) { switch (peerArgs.State) { case GKPeerConnectionState.Available: AddToChatHistory(String.Format("{0} is available", _session.DisplayNameForPeer(peerArgs.PeerID))); _session.Connect(peerArgs.PeerID, 60); AddToChatHistory(String.Format("sent connection request to {0}", _session.DisplayNameForPeer(peerArgs.PeerID))); break; case GKPeerConnectionState.Connected: AddToChatHistory(String.Format("connected to {0}", _session.DisplayNameForPeer(peerArgs.PeerID))); chatSend.Enabled = true; break; case GKPeerConnectionState.Connecting: AddToChatHistory(String.Format("{0} is connecting", _session.DisplayNameForPeer(peerArgs.PeerID))); break; case GKPeerConnectionState.Disconnected: AddToChatHistory(String.Format("{0} disconnected", _session.DisplayNameForPeer(peerArgs.PeerID))); break; case GKPeerConnectionState.Unavailable: AddToChatHistory(String.Format("{0} is unavailable", _session.DisplayNameForPeer(peerArgs.PeerID))); break; } }; _session.ConnectionRequest += delegate(object s1, GKPeerConnectionEventArgs connectionArgs) { AddToChatHistory(String.Format("received connection request from {0}", _session.DisplayNameForPeer(connectionArgs.PeerID))); _session.AcceptConnection(connectionArgs.PeerID, IntPtr.Zero); AddToChatHistory(String.Format("accepted connection from {0}", _session.DisplayNameForPeer(connectionArgs.PeerID))); }; _session.ReceiveData += delegate(object s2, GKDataReceivedEventArgs dataArgs) { AddToChatHistory(String.Format("received message '{0}' from {1}", NSString.FromData(dataArgs.Data, NSStringEncoding.UTF8), _session.DisplayNameForPeer(dataArgs.PeerID))); }; _session.Available = true; chatJoin.Enabled = false; }
public override void PeerConnectionFailed(GKSession session, string peerID, NSError error) { Console.WriteLine( " Session : " + session.SessionID + " PeerID : " + peerID +" PeerConnectionFailed : " + error ); }
public override void PeerConnected(GKPeerPickerController picker, string peerId, GKSession toSession) { _controller._session = toSession; picker.Dismiss(); picker.Delegate = null; //just disabling button once connection is made for simplicity _controller.chatJoin.Enabled = false; }
public static NetworkSession Create( NetworkSessionType sessionType, // Type of session being hosted. int maxLocalGamers, // Maximum number of local players on the same gaming machine in this network session. int maxGamers // Maximum number of players allowed in this network session. For Zune-based games, this value must be between 2 and 8; 8 is the maximum number of players supported in the session. ) { try { if ( maxLocalGamers > 2 ) throw new ArgumentOutOfRangeException( "Maximum local players can only be 2 on the iPhone." ); if ( maxGamers < 2 || maxGamers > 8 ) throw new ArgumentOutOfRangeException( "Maximum number of gamers must be between 2 and 8." ); networkSessionType = sessionType; GKSessionMode gkSessionMode; switch (sessionType) { case NetworkSessionType.Local: gkSessionMode = GKSessionMode.Client; break; case NetworkSessionType.SystemLink: gkSessionMode = GKSessionMode.Peer; break; case NetworkSessionType.PlayerMatch: gkSessionMode = GKSessionMode.Server; break; default: gkSessionMode = GKSessionMode.Peer; break; } gkSession = new GKSession( null, null, gkSessionMode ); gkSession.Available = true; throw new NotImplementedException(); } finally { } }
public override void FailedWithError(GKSession session, NSError error) { Console.WriteLine( " Session : " + session.SessionID + " FailedWithError : " + error ); }
public MyVoiceChatClient (GKSession session) { _session = session; }
public override void PeerConnectionRequest(GKSession session, string peerID) { #if DEBUG Console.WriteLine(" Session : " + session.SessionID + " PeerID : " + peerID); #endif }
public override void PeerConnected(GKPeerPickerController picker, string peerId, GKSession toSession) { _controller.GameKitSession = toSession; picker.Dismiss(); picker.Delegate = null; //just disabling once connection is made for simplicity _controller.joinButton.Title = "Connected"; _controller.joinButton.Enabled = false; }
public override void PeerConnectionFailed(GKSession session, string peerID, NSError error) { #if DEBUG Console.WriteLine(" Session : " + session.SessionID + " PeerID : " + peerID + " PeerConnectionFailed : " + error); #endif }
public override void PeerConnected(GKPeerPickerController picker, string peerId, GKSession toSession) { _controller._gkSession = toSession; picker.Dismiss(); picker.Delegate = null; _controller.joinButton.Title = "Connected"; _controller.joinButton.Enabled = false; AVAudioSession audioSession = AVAudioSession.SharedInstance(); NSError error; audioSession.SetCategory(AVAudioSession.CategoryPlayAndRecord.ToString(), out error); audioSession.SetActive(true, out error); _controller._vcClient = new MyVoiceChatClient(_controller._gkSession); GKVoiceChatService.Default.Client = _controller._vcClient; GKVoiceChatService.Default.StartVoiceChat(peerId, IntPtr.Zero); }
public override void PeerConnectionRequest(GKSession session, string peerID) { Console.WriteLine( " Session : " + session.SessionID + " PeerID : " + peerID ); }
public override void PeerConnected(GKPeerPickerController picker, string peerId, GKSession toSession) { _controller.GameKitSession = toSession; picker.Dismiss (); picker.Delegate = null; //just disabling once connection is made for simplicity _controller.joinButton.Title = "Connected"; _controller.joinButton.Enabled = false; }