public IndieCityManager(string gameId, string serviceId, string serviceSecret, bool hasAchievements, bool hasLeaderboards, IManagerServiceProvider serviceProvider, SessionEndDelegate sessionEndDelegate) { _sceneInterface = serviceProvider; _sessionEndDelegate = sessionEndDelegate; ManagerProcessOrder = 10; var service = new ServiceId { Data1 = uint.Parse(serviceId.Substring(0, 8), NumberStyles.HexNumber), Data2 = ushort.Parse(serviceId.Substring(9, 4), NumberStyles.HexNumber), Data3 = ushort.Parse(serviceId.Substring(14, 4), NumberStyles.HexNumber), Data4 = new[] { byte.Parse(serviceId.Substring(19, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(21, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(24, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(26, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(28, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(30, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(32, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(34, 2), NumberStyles.HexNumber) } }; var bridge = new CoBridge2(); bridge.Initialise(gameId); bridge.SetServiceCredentials(GameService.GameService_IndieCityLeaderboardsAndAchievements, service, serviceSecret); Session = bridge.CreateDefaultGameSession(); _sessionCookie = Session.RegisterEventHandler(0, 0, this); _sessionActive = false; _startPhase = SessionStartPhase.NotStarted; _username = bridge.UserStore.GetUserFromId(Session.UserId).Name; _achievementsReady = !hasAchievements; if (hasAchievements) { AchievementsManager = new CoAchievementManager(); AchievementsManager.SetGameSession(Session); AchievementsManager.InitialiseAchievements(null); _achievementsCookie = ((IAchievementService)AchievementsManager).RegisterAchievementEventHandler(this); _achievementsUnlockedAtIndieCity = new Dictionary <long, bool>(); } _leaderboardsReady = !hasLeaderboards; if (hasLeaderboards) { _leaderboardsManager = new CoLeaderboardManager(); _leaderboardsManager.SetGameSession(Session); _leaderboardsManager.InitialiseLeaderboards(null); _leaderboardsCookie = ((ILeaderboardService)_leaderboardsManager).RegisterLeaderboardEventHandler(this); } }
public IndieCityManager(string gameId, string serviceId, string serviceSecret, bool hasAchievements, bool hasLeaderboards, IManagerServiceProvider serviceProvider, SessionEndDelegate sessionEndDelegate) { _sceneInterface = serviceProvider; _sessionEndDelegate = sessionEndDelegate; ManagerProcessOrder = 10; var service = new ServiceId { Data1 = uint.Parse(serviceId.Substring(0, 8), NumberStyles.HexNumber), Data2 = ushort.Parse(serviceId.Substring(9, 4), NumberStyles.HexNumber), Data3 = ushort.Parse(serviceId.Substring(14, 4), NumberStyles.HexNumber), Data4 = new[] { byte.Parse(serviceId.Substring(19, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(21, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(24, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(26, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(28, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(30, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(32, 2), NumberStyles.HexNumber), byte.Parse(serviceId.Substring(34, 2), NumberStyles.HexNumber) } }; var bridge = new CoBridge2(); bridge.Initialise(gameId); bridge.SetServiceCredentials(GameService.GameService_IndieCityLeaderboardsAndAchievements, service, serviceSecret); Session = bridge.CreateDefaultGameSession(); _sessionCookie = Session.RegisterEventHandler(0, 0, this); _sessionActive = false; _startPhase = SessionStartPhase.NotStarted; _username = bridge.UserStore.GetUserFromId(Session.UserId).Name; _achievementsReady = !hasAchievements; if (hasAchievements) { AchievementsManager = new CoAchievementManager(); AchievementsManager.SetGameSession(Session); AchievementsManager.InitialiseAchievements(null); _achievementsCookie = ((IAchievementService) AchievementsManager).RegisterAchievementEventHandler(this); _achievementsUnlockedAtIndieCity = new Dictionary<long, bool>(); } _leaderboardsReady = !hasLeaderboards; if (hasLeaderboards) { _leaderboardsManager = new CoLeaderboardManager(); _leaderboardsManager.SetGameSession(Session); _leaderboardsManager.InitialiseLeaderboards(null); _leaderboardsCookie = ((ILeaderboardService) _leaderboardsManager).RegisterLeaderboardEventHandler(this); } }
/// <summary> /// Performs necessary initialization. /// </summary> #if INDIECITY public static void Ready(CoGameSession s, int userId)