public void SelectChannelConnectOption(ChannelConnectOption option, Session.SelectChannelConnectOptionDelegate handler) { ChannelConnectOptionType type = option.Type; NMGChannel channel = (NMGChannel)option.ChannelCode; string playerID = option.PlayerID; string channelID = option.ChannelID; string region = option.Region; if (type == ChannelConnectOptionType.Cancel) { NMGPlayerPrefs.SetChannelKey(channel, null); Result result = new Result(Result.NETMARBLES_DOMAIN, Result.SUCCESS, "Success"); Log.Debug("[NMGPlayMode.SessionManager] SelectChannelConnectOption OK (" + result + ")"); if (handler != null) { handler(result); } } else if (type == ChannelConnectOptionType.CreateChannelConnection) { playerId = Guid.NewGuid().ToString().Replace("-", "").ToUpper(); NMGPlayerPrefs.SetPlayerId(playerId); Log.Debug("[NMGPlayMode.SessionManager] Save new PlayerID : " + playerId); deviceKey = Guid.NewGuid().ToString().Replace("-", "").ToUpper(); NMGPlayerPrefs.SetDeviceKey(deviceKey); Log.Debug("[NMGPlayMode.SessionManager] Save new deviceKey : " + deviceKey); testData.SetChannelConnectionData(playerId, deviceKey); ChannelConnectionData savedData = testData.GetChannelConnectionData(playerId); savedData.SetChannelKeyByChannel(channel, channelID); NMGPlayerPrefs.SetChannelKey(NMGChannel.EveryNetmarble, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Facebook, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Kakao, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Google, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.GameCenter, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Naver, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Twitter, null); NMGPlayerPrefs.SetChannelKey(channel, channelID); NMGPlayerPrefs.SetRegion(region); selectChannelConnectOptionHandler = handler; SignIn(OnChannelOptionSignIn, null); UpdateTalkKit(); } else if (type == ChannelConnectOptionType.LoadChannelConnection) { ChannelConnectionData savedData = testData.GetChannelConnectionData(playerID); NMGPlayerPrefs.SetPlayerId(playerID); NMGPlayerPrefs.SetDeviceKey(savedData.DeviceKey); NMGPlayerPrefs.SetRegion(region); NMGPlayerPrefs.SetChannelKey(NMGChannel.EveryNetmarble, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Facebook, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Kakao, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Google, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.GameCenter, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Naver, null); NMGPlayerPrefs.SetChannelKey(NMGChannel.Twitter, null); NMGPlayerPrefs.SetChannelKey(channel, channelID); playerId = playerID; selectChannelConnectOptionHandler = handler; SignIn(OnChannelOptionSignIn, null); UpdateTalkKit(); } /* else if (type == ChannelConnectOptionType.UpdateChannelConnection) * { * NMPlayModeChannelConnectionData savedData = testData.GetChannelConnectionData(playerID); * NMPlayModeChannelConnectionData savedChannelData = testData.GetChannelConnectionData(channel, channelID); * * if (savedChannelData != null) * { * savedChannelData.SetChannelKeyByChannel(channel, null); * } * * savedData.SetChannelKeyByChannel(channel, channelID); * NMPlayModePlayerPrefs.SetChannelKey(channel, channelID); * * Result result = new Result(Result.NETMARBLES_DOMAIN, Result.SUCCESS, "Success"); * Log.Debug("[NMGPlayMode.SessionManager] SelectChannelConnectOption OK (" + result + ")"); * * if (handler != null) * handler(result); * }*/ }
private void SelectOptionInConnectToChannel(ChannelConnectOption option, Session.ConnectToChannelDelegate handler) { connectToChannelHandler = handler; SelectChannelConnectOption(option, null); }