public bool Initialize(IScriptedGameServerRole parent) { MonitoringFacade.RegisterMonitoringSource(id); var entryScript = entryFile.ReadAllTextFromFile(); try { using (var context = JavascriptContextFactory.Create()) { context.Run(entryScript, Path.GetFileName(entryFile)); } } catch (JavascriptException ex) { LogScriptError(entryFile, folderName, ex); return(false); } if (string.IsNullOrEmpty(id)) { throw new BusinessException("Game type cannot be empty (entry file '{0}').".FormatString(entryFile)); } gameTypeEntity = ExternalServiceFacade.GetGameCoreService().GetGameType(id); return(true); }
private void AddGameType(GameTypeData data) { if (!gameController.GameTypes.ContainsKey(data.gameTypeId)) { gameController.GameTypes.Add(data.gameTypeId, data.name); for (int i = 0; i < 3; i++) { var roomId = gameController.IdentifierGenerator.CreateID(4); var lobby = gameController.LobbyService .CreateLobby( roomId, data.gameTypeId, Array.Empty <IPlayer>(), (byte)data.minimumPlayers, (byte)data.maxPlayers, $"thunberg deluxe {data.name}"); gameController.RoomManager .AddRoom(lobby); //Add chatRoom to auto generated rooms gameController.RoomManager.AddRoom( gameController.ChatRoomService.CreateChatRoom(roomId + "-TABLECHAT", null, null)); } gameController.RoomManager.AddRoom( gameController.ChatRoomService.CreateChatRoom( data.gameTypeId.ToString(CultureInfo.CurrentCulture) + "-LOBBYCHAT", null, null)); } }
public Player SpawnPlayer(GameTypeData gameTypeData, CharacterSelectState selectState) { SpawnPoint spawnPoint = SpawnManager.Instance.GetSpawnPoint(gameTypeData, selectState.PlayerBirdData); if (null == spawnPoint) { Debug.LogError($"No spawn points left for bird type {selectState.PlayerBirdData.Id} in game type {gameTypeData.Name}"); return(null); } Player player = Instantiate(_playerPrefab, _playerContainer.transform); InitializePlayer(player, PlayerCount, selectState, spawnPoint); //NetworkServer.Spawn(player.gameObject); Debug.Log($"Spawned {player.Bird.Type.Name} for local player {player.Id} at {spawnPoint.name} ({player.transform.position})"); AddPlayer(player); return(player); }
public ScenarioTotalData() { EasyData = new GameTypeData(); NormalData = new GameTypeData(); NightmareData = new GameTypeData(); }
public Hunt(GameTypeData gameTypeData) : base(gameTypeData) { }
public CrazyTaxi(GameTypeData gameTypeData) : base(gameTypeData) { }
protected GameType(GameTypeData gameTypeData) { GameTypeData = gameTypeData; }
public SpawnPoints(GameTypeData gameTypeData) { _gameTypeData = gameTypeData; }
public SpawnPoint GetSpawnPoint(GameTypeData gameTypeData, BirdTypeData birdType) { SpawnPoints spawnPoints = _spawnPoints.GetOrDefault(gameTypeData); return(spawnPoints?.GetSpawnPoint(birdType)); }
public Revenge(GameTypeData gameTypeData) : base(gameTypeData) { }