/// <summary> /// Returns a VoiceChat object with the channel name. Use this to start a voice chat with other players. /// All players can talk to each other if using the same channel name. /// Or you can have the red team join one channel while the blue team join another channel, and have an "all" channel /// for all players to talk to all others. /// </summary> /// <returns>The voice chat.</returns> /// <param name="channel">Channel name.</param> public VoiceChat GetVoiceChat(string channel) { RealTimeMatchesController.EnableVoiceChat(); // return if already created if (_voiceChats == null) { _voiceChats = new Dictionary <string, VoiceChat>(); } VoiceChat chat = null; if (_voiceChats.TryGetValue(channel, out chat)) { return(chat); } // get it and create a wrapper var gkchat = gkMatch.VoiceChat(channel); if (gkchat != null) { chat = NSObjectWrapper.CreateWrapper(typeof(VoiceChat), gkchat) as VoiceChat; _voiceChats[channel] = chat; } return(chat); }
/// <summary> /// Initializes a new instance of the <see cref="U3DXT.iOS.GameKit.VoiceChatPlayerStateChangedEventArgs"/> class. /// </summary> /// <param name="voiceChat">Voice Chat.</param> /// <param name="player">Player.</param> /// <param name="state">State.</param> public VoiceChatPlayerStateChangedEventArgs(VoiceChat voiceChat, Player player, GKVoiceChatPlayerState state) { this.voiceChat = voiceChat; this.player = player; this.state = state; }