Esempio n. 1
0
    //IUnitCreatePublisher _publisher;


    void Start()
    {
        var updateManagerObject = new GameObject("UpdateManager");

        _updateManager = updateManagerObject.AddComponent <UpdateManager>();

        _objectsStorage  = new ObjectsStorage();
        _elementsCreator = new ElementsCreator(_objectsStorage);
        _levelManager    = new LevelManager(_elementsCreator);
        _logicManager    = new LogicManager(_objectsStorage, _updateManager, _levelManager, _elementsCreator);
        _logicManager.CreateNewElements();
        //_logicManager.Ready();
        //_logicManager.Shift();
        //_logicManager.CreateElements();


        _updateManager.Start(); //начало игры


        // _publisher = new UnitCreatePublisher();
        //_loadManager = new LoadManager();

        // _gameManager = new GameManager(_objectsStorage, _publisher);

        // _objectsStorage.StartListsInitialization();
        // _gameManager.Activate();
    }
    void Start()
    {
        var updateManagerObject = new GameObject("UpdateManager");

        _updateManager = updateManagerObject.AddComponent <UpdateManager>();

        _objectsStorage  = new ObjectsStorage();
        _elementsCreator = new ElementsCreator(_objectsStorage);
        _levelManager    = new LevelManager(_elementsCreator);
        _logicManager    = new LogicManager(_objectsStorage, _updateManager, _levelManager, _elementsCreator);
        _logicManager.CreateNewElements();


        _updateManager.Start(); //начало игры
    }
    }                                        //представление двумерного массива Elements в виде двумерного массива GameObject
                                             //Cells[i, j], где i - координата по X и j - координата по Y
                                             //В процессе работы меняются только свойства объектов, сами они всегда соответствуют своим координатам и неподвижны

    public LogicManager(IObjectsStorage objectsStorage, IUpdateManager updateManager, ILevelManager levelManager, IElementsCreator elementsCreator)
    {
        _objectsStorage  = objectsStorage;
        _updateManager   = updateManager;
        _levelManager    = levelManager;
        _elementsCreator = elementsCreator;

        _updateManager.AddUpdatable(this);

        Rows    = 12; //
        Columns = 12; //в персперктиве данные должны быть получени извне

        _isSelect = false;
        _isReady  = false;
        _isRemove = false;

        Cells = new GameObject[Columns, Rows];

        LoadResources();
    }
Esempio n. 4
0
 public LevelManager(IElementsCreator elementsCreator)
 {
     _elementsCreator = elementsCreator;
     Rows             = 12;
     Columns          = 12;
 }