public TheGameObjectManager() { marios = new IMario[Players]; blockList = new Collection <IGameObject>(); itemList = new Collection <IGameObject>(); enemyList = new Collection <IGameObject>(); pipeList = new Collection <IGameObject>(); spawnerList = new Collection <IGameObject>(); fireBallList = new Collection <IGameObject>(); fireBallList2 = new Collection <IGameObject>(); backgroundList = new Collection <IGameObject>(); animationList = new Collection <IAnimationInGame>(); collisionHandler = new AllCollisionHandler(); isSinglePlayerGame = true; curShape = new MarioState.MarioShapeEnums[Players]; nextShape_ = new MarioState.MarioShapeEnums[Players]; titleDisplayPanel = new TitleDisplayPanel(); marioLifeDisplayPanel = new MarioLifeDisplayPanel(); gameOverDisplayPanel = new GameOverDisplayPanel(); headsUpDisplayPanel = new HeadsUpDisplayPanel(); competitivePreparingDisplayPanel = new CompetitivePreparingDisplayPanel(); competitiveHeadsUpDisplayPanel = new CompetitiveHeadsUpDisplayPanel(); competitiveEndingDisplayPanel = new CompetitiveEndingDisplayPanel(); player1NameDisplayPanel = new PlayerNameDisplayPanel(); player1NameDisplayPanel.PlayerName.Text = "P1"; player2NameDisplayPanel = new PlayerNameDisplayPanel(); player2NameDisplayPanel.PlayerName.Text = "P2"; spawnManager = new SpawnManager(); }
public BuildAction(StructureDefinition.StructureType structureType, IFaction owner) { _structureType = structureType; _owner = owner; _spawnManager = Locator.Instance.Find <ISpawnManager>(); _structureDefinitionManager = Locator.Instance.Find <IStructureDefinitionManager>(); }
public Board(int width, int height, ISpawnManager spawnManager) { _width = width; _height = height; _cells = new ICell[_width, _height]; _spawnManager = spawnManager; Initial(); }
public MasterManager(ICoroutiner coroutiner, IUpdateManager updateManager, INotifier gameplayNotifier, INotifier uiNotifier, IObjectStorage objectStorage, ISpawnManager spawnManager) { Coroutiner = coroutiner; UpdateManager = updateManager; GameplayNotifier = gameplayNotifier; UINotifier = uiNotifier; ObjectStorage = objectStorage; SpawnManager = spawnManager; }
public GameplayController( ISpawnManager spawnManager, IStatisticsManager statisticsManager, ISoundManager soundManager, IControllerFactory controllerFactory) : base(controllerFactory) { _spawnManager = spawnManager; _statisticsManager = statisticsManager; _soundManager = soundManager; }
public bool RegisterSpawnManager(ISpawnManager s, bool replaceExisting = false) { if (this.spawnManager != null && !replaceExisting) { return(false); } this.spawnManager = s; return(true); }
public Board(int width, int height, ISpawnManager spawnManager, ICheckManager checkManager, ICellRegistrator cellRegistrator) { _width = width; _height = height; _spawnManager = spawnManager; _checkManager = checkManager; _cellRegistrator = cellRegistrator; _cells = new ICell[_width, _height]; _checkManager.Board = this; }
public static IBoard CreateBoard(int width, int height) { IMasterManager masterManager = CreateMasterManager(); ISpawnManager spawnManager = masterManager.SpawnManager; INotifier notifier = masterManager.GameplayNotifier; IUpdateManager updateManager = masterManager.UpdateManager; ICheckManager checkManager = new CheckManager(); ICellRegistrator cellRegistrator = new CellRegistrator(notifier, updateManager); IBoard board = new Board(width, height, spawnManager, checkManager, cellRegistrator); return(board); }
public IEnumerator Cell_SwapAndUndo(SwapTypes swapType) { #region Create Managers IMasterManager masterManager = ObjectsCreator.CreateMasterManager(); ISpawnManager spawnManager = masterManager.SpawnManager; INotifier notifier = masterManager.GameplayNotifier; IUpdateManager updateManager = masterManager.UpdateManager; ICellRegistrator cellRegistrator = new CellRegistrator(notifier, updateManager); #endregion #region Create Cell Vector3 position = new Vector3(1, 1, 0); ICell cellA = spawnManager.SpawnRandomNormalCell(position); cellRegistrator.RegistrateNormalCell(cellA as NormalCell); #endregion #region SetUp UpdateManager updateManager.AddUpdatable(cellA as IUpdatable); updateManager.IsUpdate = true; #endregion yield return(new WaitForSeconds(0.3f)); #region Swap Cell and do Undo ICommand swapCommand = TestHelper.GetSwapCommand(swapType, cellA); swapCommand.Execute(); yield return(new WaitForSeconds(0.5f)); swapCommand.Undo(); #endregion #region Remove From Scene yield return(new WaitForSeconds(0.5f)); GameObject.Destroy(cellA.CurrentGameObject); #endregion }
private void LoadPlayerSpawner() { playerSpawnManager = FindObjectOfType <PlayerSpawnManager>().gameObject; if (playerSpawnManager == null) { PlayerSettings playerSettings = gameManager.playerSettings; playerSpawnManager = Instantiate(playerSettings.playerSpawnManager, transform.position, Quaternion.identity); } ISpawnManager spawnManager = playerSpawnManager.GetComponent <ISpawnManager>(); spawnManager.InitialiseSpawner(); print("Scene Controller >> Loaded Player Spawn Manager"); }
public void Create() { _updateManager = new GameObject(StringsAndConst.UPDATE_MANAGER).AddComponent <UpdateManager>(); _logicManager = new GameObject(StringsAndConst.LOGIC_MANAGER).AddComponent <LogicManager>(); GameObject empty = new GameObject("---------------"); _notifier = new Notifier(); _objectStorage = new ObjectStorage(); _objectSetter = new ObjectSetter(_updateManager, _notifier); _inputManager = new InputManager(_notifier); _spawnManager = new SpawnManager(_objectStorage, _objectSetter); _checkManager = new CheckManager(); _board = new Board(width, height, _spawnManager); }
public override void Initialize() { _factionManager = Locate <IFactionManager>(); _playerFaction = _factionManager.GetPlayerFaction(); _factionManager.OnTurnStarted += FactionManager_OnTurnStarted; _spawnManager = Locate <ISpawnManager>(); _currentPlayerLabel = GetComponentInChildren <CurrentPlayerLabel>(); _currentPlayerLabel.Hide(); _drawView = GetComponentInChildren <DrawView>(); HideDrawView(); _endTurnButton = GetComponentInChildren <EndTurnButton>(); RadialMenuManager = new RadialMenuManager(_spawnManager, transform); MessageManager = new MessageManager(_spawnManager, transform); }
private void Start() { _coroutiner = new GameObject(Strings.COROUTINER).AddComponent <Coroutiner>(); _updateManager = new GameObject(Strings.UPDATE_MANAGER).AddComponent <UpdateManager>(); _gameplayNotifier = new Notifier(); _uiNotifier = new Notifier(); _objectStorage = new ObjectStorage(); _spawnManager = new SpawnManager(_objectStorage); IMasterManager masterManager = new MasterManager(_coroutiner, _updateManager, _gameplayNotifier, _uiNotifier, _objectStorage, _spawnManager); INavigationManager navigationManager = new NavigationManager(masterManager); navigationManager.Navigate(SceneTypesEnum.BootstrapperScene, SceneTypesEnum.StartScreenScene, null); }
private void Initial() { _updateManager = _NavigationManager.MasterManager.UpdateManager; _gameplayLogicManager = new GameObject("Gameplay Logic Manager").AddComponent <GameplayLogicManager>(); GameObject empty = new GameObject("---------------"); _gameplayNotifier = _NavigationManager.MasterManager.GameplayNotifier; _uiNotifier = _NavigationManager.MasterManager.UINotifier; _taskNotifier = new Notifier(); _inputManager = new InputManager(_gameplayNotifier); _spawnManager = _NavigationManager.MasterManager.SpawnManager; _checkManager = new CheckManager(); _taskManager = new TaskManager(_level.LevelTasks); _uiManager = new UIGameplayLevelManager(_level); _buttonsManager = new ButtonsGameplaySceneManager(_uiNotifier); _cellRegistrator = new CellRegistrator(_gameplayNotifier, _updateManager); _board = new Board(_level.BoardWidth, _level.BoardHeight, _spawnManager, _checkManager, _cellRegistrator); }
private void LoadPanel() { if (!Locator.Instance.ServicesReady(typeof(ISpawnManager), typeof(IFactionManager))) { return; } _spawnManager = Locator.Instance.Find <ISpawnManager>(); _playerFaction = Locator.Instance.Find <IFactionManager>().GetPlayerFaction(); if (_playerFaction == null) { return; } _labelLookup = new Dictionary <ResourceType, TMP_Text>(); foreach (var resourceType in Enum.GetValues(typeof(ResourceType))) { SpawnResourceLabel((ResourceType)resourceType, 0); } _ready = true; }
protected override void Awake() { spawnManager = GameObject.Find("SpawnManager").GetComponent <MultiPlayerSpawnManager>(); base.Awake(); }
public MessageManager(ISpawnManager spawnManager, Transform parent) { _spawnManager = spawnManager; _parent = parent; }
public IEnumerator PowerUp_UseTwoPowerUp_Review(PowerUpTypesEnum powerUpTypeEnumA, PowerUpTypesEnum powerUpTypeEnumB) { #region Create Managers IMasterManager masterManager; ICellRegistrator cellRegistrator; IBoard board = ObjectsCreator.CreateBoard(9, 9, out masterManager, out cellRegistrator); IUpdateManager updateManager = masterManager.UpdateManager; IGameplayLogicManager gameplayLogicManager = ObjectsCreator.CreateGameplayLogicManager(); INotifier gameplayNotifier = masterManager.GameplayNotifier; ISpawnManager spawnManager = masterManager.SpawnManager; IInputManager inputManager = new InputManager(gameplayNotifier); ICheckManager checkManager = new CheckManager(); #endregion #region Create And SetUp Cells with PowerUp IList <ICell> cellsWithPowerUp = new List <ICell>(); IList <Vector3> positions = new List <Vector3>(); switch (powerUpTypeEnumA) { case PowerUpTypesEnum.Bomb: positions.Add(new Vector2(4, 4)); positions.Add(new Vector2(2, 4)); break; case PowerUpTypesEnum.Vertical: positions.Add(new Vector2(3, 3)); positions.Add(new Vector2(3, 6)); break; case PowerUpTypesEnum.Horizontal: positions.Add(new Vector2(3, 3)); positions.Add(new Vector2(6, 3)); break; } for (int i = 0; i < 2; i++) { ICell cell = new NormalCell((int)positions[i].x, (int)positions[i].y); Vector3 cellPosition = new Vector2((int)positions[i].x, (int)positions[i].y); cell.CurrentGameObject = spawnManager.SpawnPowerPrefab(i == 0 ? powerUpTypeEnumA : powerUpTypeEnumB, positions[i]); cellRegistrator.RegistrateNormalCell(cell as NormalCell); board.Cells[cell.TargetX, cell.TargetY] = cell; cellsWithPowerUp.Add(cell); } #endregion yield return(new WaitForSeconds(0.1f)); #region SetUp Board and Managers board.Initial(); checkManager.Board = board; gameplayLogicManager.Board = board; gameplayLogicManager.CheckManager = checkManager; gameplayLogicManager.SpawnManager = spawnManager; gameplayLogicManager.Notifier = new Notifier(); inputManager.AddSubscriber(gameplayLogicManager); updateManager.AddUpdatable(inputManager as IUpdatable); updateManager.IsUpdate = true; #endregion yield return(new WaitForSeconds(0.3f)); #region Try Use PowerUp int swipeCount = 2; gameplayLogicManager.TryCheckSwipedCells(cellsWithPowerUp[0], swipeCount); #endregion #region Remove From Scene yield return(new WaitForSeconds(2f)); updateManager.IsUpdate = false; foreach (var cell in board.Cells) { GameObject.Destroy(cell.CurrentGameObject); } #endregion }
public IEnumerator PowerUp_UseOnePowerUp_Review(PowerUpTypesEnum powerUpTypeEnum) { #region Create Managers IMasterManager masterManager; ICellRegistrator cellRegistrator; IBoard board = ObjectsCreator.CreateBoard(9, 9, out masterManager, out cellRegistrator); IUpdateManager updateManager = masterManager.UpdateManager; IGameplayLogicManager gameplayLogicManager = ObjectsCreator.CreateGameplayLogicManager(); INotifier gameplayNotifier = masterManager.GameplayNotifier; ISpawnManager spawnManager = masterManager.SpawnManager; IInputManager inputManager = new InputManager(gameplayNotifier); ICheckManager checkManager = new CheckManager(); #endregion #region Create And SetUp Cell with PowerUp ICell cellWithPowerUp = new NormalCell(4, 4); Vector3 cellPosition = new Vector2(4, 4); cellWithPowerUp.CurrentGameObject = spawnManager.SpawnPowerPrefab(powerUpTypeEnum, cellPosition); cellRegistrator.RegistrateNormalCell(cellWithPowerUp as NormalCell); board.Cells[cellWithPowerUp.TargetX, cellWithPowerUp.TargetY] = cellWithPowerUp; #endregion yield return(new WaitForSeconds(0.1f)); #region SetUp Board and Managers board.Initial(); checkManager.Board = board; gameplayLogicManager.Board = board; gameplayLogicManager.CheckManager = checkManager; gameplayLogicManager.SpawnManager = spawnManager; gameplayLogicManager.Notifier = new Notifier(); inputManager.AddSubscriber(gameplayLogicManager); updateManager.AddUpdatable(inputManager as IUpdatable); updateManager.IsUpdate = true; #endregion yield return(new WaitForSeconds(0.3f)); #region Try Use PowerUp int swipeCount = 2; gameplayLogicManager.TryCheckSwipedCells(cellWithPowerUp, swipeCount); #endregion #region Remove From Scene yield return(new WaitForSeconds(2f)); updateManager.IsUpdate = false; foreach (var cell in board.Cells) { GameObject.Destroy(cell.CurrentGameObject); } #endregion }
public RadialMenuManager(ISpawnManager spawnManager, Transform parent) { _spawnManager = spawnManager; _parent = parent; }
public SceneObjectsMananger() { SpawnManager = new SpawnManager(); AppearanceHooks = new ObjectAppearanceHooks(); }
public IEnumerator Cells_TryCheck(int equalsCellsCount, bool isVertical) { #region Create Managers And Board IMasterManager masterManager; ICellRegistrator cellRegistrator; IBoard board = ObjectsCreator.CreateBoard(equalsCellsCount + 3, equalsCellsCount + 3, out masterManager, out cellRegistrator); IUpdateManager updateManager = masterManager.UpdateManager; IGameplayLogicManager gameplayLogicManager = ObjectsCreator.CreateGameplayLogicManager(); INotifier gameplayNotifier = masterManager.GameplayNotifier; ISpawnManager spawnManager = masterManager.SpawnManager; IInputManager inputManager = new InputManager(gameplayNotifier); ICheckManager checkManager = new CheckManager(); #endregion #region Create Cells int startX = 2; int startY = 2; ICell swipedCell = null; for (int i = 0; i < equalsCellsCount; i++) { int x = startX; int y = startY; if (isVertical) { if (i == Mathf.Floor(equalsCellsCount / 2)) { x = startX + 1; } else { x = startX; } y = startY + i; } else { if (i == Mathf.Floor(equalsCellsCount / 2)) { y = startY + 1; } else { y = startY; } x = startX + i; } ICell cell = new NormalCell(x, y); cell.CurrentGameObject = spawnManager.SpawnPrefab(GameElementTypesEnum.RedCircle, new Vector3(x, y, 0)); cellRegistrator.RegistrateNormalCell(cell as NormalCell); board.Cells[cell.TargetX, cell.TargetY] = cell; if (i == Mathf.Floor(equalsCellsCount / 2)) { swipedCell = board.Cells[cell.TargetX, cell.TargetY]; } } #endregion yield return(new WaitForSeconds(1f)); #region SetUp Board And Managers board.Initial(); checkManager.Board = board; gameplayLogicManager.Board = board; gameplayLogicManager.CheckManager = checkManager; gameplayLogicManager.SpawnManager = spawnManager; gameplayLogicManager.Notifier = masterManager.UINotifier; inputManager.AddSubscriber(gameplayLogicManager); updateManager.AddUpdatable(inputManager as IUpdatable); updateManager.IsUpdate = true; #endregion yield return(new WaitForSeconds(1f)); #region Create And SetUp MacroCommand to use swap cells ICommand[] commands; if (isVertical) { commands = new ICommand[] { new SwipeLeftCommand(swipedCell), new SwipeRightCommand(board.Cells[swipedCell.TargetX - 1, swipedCell.TargetY]), }; } else { commands = new ICommand[] { new SwipeDownCommand(swipedCell), new SwipeUpCommand(board.Cells[swipedCell.TargetX, swipedCell.TargetY - 1]), }; } ICommand macroCommand = new MacroCommand(commands); gameplayLogicManager.MacroCommand = macroCommand; #endregion #region Try Swap Cells and get Check gameplayLogicManager.MacroCommand.Execute(); yield return(new WaitForSeconds(1f)); gameplayLogicManager.TryCheckSwipedCells(swipedCell); #endregion #region Remove From Scene yield return(new WaitForSeconds(0.2f)); updateManager.IsUpdate = false; foreach (var boadrdCell in board.Cells) { updateManager.RemoveUpdatable(boadrdCell as IUpdatable); } foreach (var cell in board.Cells) { GameObject.Destroy(cell.CurrentGameObject); } #endregion }
public RemoveAction() { _factionManager = Locator.Instance.Find <IFactionManager>(); _spawnManager = Locator.Instance.Find <ISpawnManager>(); }