public PlayerController(AccountView account) : base(account.ID, account.Username, account.Faction) { Account = account ?? throw _logger.LogError(new ArgumentNullException(nameof(account))); if (!string.IsNullOrWhiteSpace(Account.UserClientConfiguration)) { ClientConfiguration = JsonConvert.DeserializeObject <UserClientConfiguration>(Account.UserClientConfiguration); } else { ClientConfiguration = UserClientConfiguration.Instance(); } InitializeAssemblies(); _renderedMines = new HashSet <int>(); _renderedPlayers = new HashSet <int>(); _checkPlayersInRange = new TickInterval(CheckPlayersInRange, 100); _checkMinesInRange = new TickInterval(CheckMinesInRange, 200); _checkZonesInRange = new TickInterval(CheckZonesInRange, 300); _updateState = new TickInterval(UpdateState, 1000 * 60 * 5); // 5 Minuten _checkConnectionExists = new TickInterval(CheckConnectionExists, 3000); _checkLogout = new TickInterval(CheckLogout, 5000); OnTick += TickEvent; }
private static ClientUIMenuBarModule GetTopLeftMenu(UserClientConfiguration configuration, Dictionary <string, Window> extra) { Dictionary <string, Window> topLeftMenu = new Dictionary <string, Window>(_topLeft); // create copy if (!configuration.UserSettings.displaySettingsModule.displayChat) { topLeftMenu.Remove("chat"); } if (extra != null && extra.Count > 0) { foreach (var pair in extra) { topLeftMenu[pair.Key] = pair.Value; } } foreach (var windowState in configuration.WindowSettings) { if (topLeftMenu.TryGetValue(windowState.Key, out Window window)) { topLeftMenu[windowState.Key] = new Window(window.Value, windowState.Value); } } return(new ClientUIMenuBarModule(ClientUIMenuBarModule.GAME_FEATURE_BAR, GenerateTopLeft(topLeftMenu), configuration.SlotbarPositions.gameFeatureBarPosition, configuration.SlotbarPositions.gameFeatureBarLayout)); }
public static ClientUISlotBarsCommand Generate(UserClientConfiguration configuration, PlayerController controller, bool full = true) { List <ClientUISlotBarModule> slotBars = new List <ClientUISlotBarModule>() { new ClientUISlotBarModule("standardSlotBar", configuration.StandardSlotBar, configuration.SlotbarPositions.standardSlotBarPosition, configuration.SlotbarPositions.standardSlotBarLayout, true), new ClientUISlotBarModule("proActionBar", configuration.ProActionBar, configuration.SlotbarPositions.proActionBarPosition, configuration.SlotbarPositions.proActionBarLayout, false), new ClientUISlotBarModule("premiumSlotBar", configuration.PremiumSlotBar, configuration.SlotbarPositions.premiumSlotBarPosition, configuration.SlotbarPositions.premiumSlotBarLayout, true) }; if (full) { List <ClientUISlotBarCategoryModule> categories = new List <ClientUISlotBarCategoryModule>() { LaserCategory(controller), RocketCategory(controller), RocketLauncherCategory(controller), SpecialItemCategory(controller), MineCategory(controller), CpuCategory(controller), new ClientUISlotBarCategoryModule("buy_now"), TechItemCategory(controller), AbilityCategory(controller), DroneFormationCategory(controller) }; return(new ClientUISlotBarsCommand(categories, configuration.SlotbarPositions.categoryBarPosition, slotBars)); } return(new ClientUISlotBarsCommand(null, configuration.SlotbarPositions.categoryBarPosition, slotBars)); }
private static ClientUIMenuBarModule GetTopRightMenu(UserClientConfiguration configuration) { if (_topRightMenuItems == null) { _topRightMenuItems = GenerateTopRight(_topRight); } return(new ClientUIMenuBarModule(ClientUIMenuBarModule.GENERIC_FEATURE_BAR, _topRightMenuItems, configuration.SlotbarPositions.genericFeatureBarPosition, configuration.SlotbarPositions.genericFeatureBarLayout)); }
public static ClientUIMenuBarsCommand Generate(UserClientConfiguration configuration, Dictionary <string, Window> extra) { lock (_lock) { return(new ClientUIMenuBarsCommand(new List <ClientUIMenuBarModule>() { GetTopLeftMenu(configuration, extra), GetTopRightMenu(configuration), _keineAhnungWofuer })); } }