void Start()
    {
        stateInformation = new StateInformation();
        interfaceManager = InterfaceManager.GetInstance();
        prefabsManager   = PrefabsManager.GetInstance();
        levelController  = LevelController.instance;
        levelDataManager = LevelDataManager.GetInstance();

        startupModule           = (IStartupModule)StartupModule.GetInstance();
        objectDeletionModule    = (IObjectDeletionModule)ObjectDeletionModule.GetInstance();
        objectPlacementModule   = (IObjectPlacementModule)ObjectPlacementModule.GetInstance();
        objectEditingModule     = (IObjectEditingModule)ObjectEditingModule.GetInstance();
        objectInformationModule = (IObjectInformationModule)ObjectInformationModule.GetInstance();


        GameObject leftMouseButtonObject = Instantiate(mouseButtonPrefab, transform);

        leftMouseButton = leftMouseButtonObject.GetComponent <MouseButton>();
        GameObject rightMouseButtonObject = Instantiate(mouseButtonPrefab, transform);

        rightMouseButton = rightMouseButtonObject.GetComponent <MouseButton>();

        leftMouseButton.Setup(0, mouseButtonLeftPressedTime);
        rightMouseButton.Setup(1, cameraDragTime);

        prefabsManager.AddPrefabs();
        interfaceManager.SetupUI(prefabsManager.GetPrefabTable());

        InitializeLevel(initialLevelWidth, initialLevelHeight);
        SetupLevel();
    }
Beispiel #2
0
 private void Awake()
 {
     Instance     = this;
     _dataManager = GetComponent <LevelDataManager>();
     Pool         = GetComponent <Pool>();
     _spawner     = GetComponent <Spawner>();
 }
Beispiel #3
0
 private static ILevelDataManager GetOrSetInstance()
 {
     if (_instance == null)
     {
         _instance = new LevelDataManager();
     }
     return(_instance);
 }
 public void Setup(Dictionary <int, IPlacedObject> inScenePlacedObjects, IObjectDeletionModule objectDeletionModule, IObjectInformationModule objectInformationModule, Sprite wallSprite, ILevelDataManager levelDataManager)
 {
     this.inScenePlacedObjects    = inScenePlacedObjects;
     this.wallSprite              = wallSprite;
     this.objectInformationModule = objectInformationModule;
     this.objectDeletionModule    = objectDeletionModule;
     this.levelDataManager        = levelDataManager;
 }
 public void Setup(IObjectDeletionModule objectDeletionModule, IObjectPlacementModule objectPlacementModule, IObjectInformationModule objectInformationModule, IObjectEditingModule objectEditingModule, ILevelDataManager levelDataManager, ILevelController levelController, IPrefabsManager prefabsManager)
 {
     this.objectInformationModule = objectInformationModule;
     this.objectDeletionModule    = objectDeletionModule;
     this.levelDataManager        = levelDataManager;
     this.objectPlacementModule   = objectPlacementModule;
     this.objectEditingModule     = objectEditingModule;
     this.levelController         = levelController;
     this.prefabsManager          = prefabsManager;
 }
Beispiel #6
0
 public void Setup(IObjectInformationModule objectInformationModule, Dictionary <int, IPlacedObject> inScenePlacedObjects, ILevelDataManager levelDataManager)
 {
     this.objectInformationModule = objectInformationModule;
     this.levelDataManager        = levelDataManager;
     this.inScenePlacedObjects    = inScenePlacedObjects;
 }