private string GetABTestTags() { try { PlayerStatsStateController statsController = WynnEngine.GetStateController <PlayerStatsStateController>(); if (statsController.ABTests != null) { List <string> testTags = new List <string>(); foreach (ABTestTO to in statsController.ABTests) { testTags.Push(to.TestTag); } return(String.Join(",", testTags.ToArray())); } return("N/A"); } catch (Exception e) { GameEngine.LogError(e); return("N/A"); } }
public Dictionary <string, object> EventsCommonData() { Dictionary <string, object> parameters = new Dictionary <string, object>(); try { if (WynnEngine.PlayerId.HasValue()) { PlayerStatsStateController statsController = WynnEngine.GetStateController <PlayerStatsStateController>(); parameters[WynnAnalyticsDataConstants.AT_USER_ID] = WynnEngine.PlayerId; parameters[WynnAnalyticsDataConstants.ME_USER_LEVEL] = statsController.PlayerLevel; parameters[WynnAnalyticsDataConstants.ME_COIN_BALANCE] = statsController.RegularCurrency; parameters[WynnAnalyticsDataConstants.ME_GEM_BALANCE] = statsController.PremiumCurrency; parameters[WynnAnalyticsDataConstants.ME_LIFETIME_GEM_BALANCE] = statsController.LifeTimePremiumCurrency > 0 ? statsController.LifeTimePremiumCurrency : statsController.PremiumCurrency; parameters[WynnAnalyticsDataConstants.ME_TOTAL_PAYMENTS] = statsController.TotalPayments; parameters[WynnAnalyticsDataConstants.ME_PLAYER_TOTAL_BATTLES] = statsController.PlayerStatsTO.BattlesPlayed; parameters[WynnAnalyticsDataConstants.ME_PLAYER_TOTAL_SHIELDS] = statsController.PlayerStatsTO.Shields; parameters[WynnAnalyticsDataConstants.AT_ABTEST_TAGS] = GetABTestTags(); parameters[WynnAnalyticsDataConstants.AT_ABTEST_VARIANT] = GetABTestVariants(); parameters[WynnAnalyticsDataConstants.AT_START_DATE] = statsController.CreateDate; parameters[WynnAnalyticsDataConstants.AT_FB_PROFILE] = statsController.PlayerStatsTO.FacebookId > 0 ? "1" : "0"; } else { parameters[WynnAnalyticsDataConstants.AT_USER_ID] = "N/A"; parameters[WynnAnalyticsDataConstants.ME_USER_LEVEL] = -1; parameters[WynnAnalyticsDataConstants.ME_COIN_BALANCE] = -1; parameters[WynnAnalyticsDataConstants.ME_GEM_BALANCE] = -1; parameters[WynnAnalyticsDataConstants.ME_TOTAL_PAYMENTS] = -1; parameters[WynnAnalyticsDataConstants.ME_PLAYER_TOTAL_SHIELDS] = -1; parameters[WynnAnalyticsDataConstants.AT_ABTEST_TAGS] = "N/A"; parameters[WynnAnalyticsDataConstants.AT_ABTEST_VARIANT] = "N/A"; } if (GameEngine.HasService <WynnGameModulesManger>()) { WynnGameModulesManger modulesManger = GameEngine.GetService <WynnGameModulesManger>(); parameters[WynnAnalyticsDataConstants.AT_CURRENT_MODULE_NAME] = modulesManger.CurrentModuleName; parameters[WynnAnalyticsDataConstants.AT_GAME_NAME] = modulesManger.CurrentCasinoGameEnum.ToString(); } else { parameters[WynnAnalyticsDataConstants.AT_CURRENT_MODULE_NAME] = "N/A"; parameters[WynnAnalyticsDataConstants.AT_GAME_NAME] = "N/A"; } if (GameEngine.LocalPlayerDataManager != null) { parameters[WynnAnalyticsDataConstants.ME_VERSION_SESSION_COUNT] = GameEngine.LocalPlayerDataManager.GetVersionNumberOfSessions(); } else { parameters[WynnAnalyticsDataConstants.ME_VERSION_SESSION_COUNT] = -1; } parameters[WynnAnalyticsDataConstants.AT_INTERNET_REACHABILITY] = GameEngine.InternetReachability.ToString(); parameters[WynnAnalyticsDataConstants.AT_IDFA] = advertisingId; parameters[WynnAnalyticsDataConstants.ME_FPS] = Convert.ToInt64(GameEngine.CurrentFPS); parameters[WynnAnalyticsDataConstants.AT_GRAPHICS_QUALITY] = GameEngine.IsSdPerformance ? "SD" : "HD"; parameters[WynnAnalyticsDataConstants.AT_IS_LOW_END_DEVICE] = GameEngine.IsPossiblyLowEndDevice; return(parameters); } catch (Exception e) { GameEngine.LogError(e); return(parameters); } }