Beispiel #1
0
    public void LoadBaseLevel()
    {
        loading = true;
        MazeRoom         mainRoom    = new MazeRoom(new Rect(5, 5, 11, 11));
        LevelDepthConfig depthConfig = generalLevelConfig.GetLevelDepthConfiguration(-1);
        LevelConfig      levelConfig = Resources.Load <LevelConfig>("LevelConfigs/base");

        levelConfig.Randomize();

        MapGenerator.Initialize(levelConfig, depthConfig, ReadyWithBase);
        //MazeCarver carver = mapGenerator.InitializeCarver(worldRect, mapGenerator, levelConfig, depthConfig);
        MazeCarver carver = MapGenerator.InitializeCarver();

        MapGenerator.PlaceRoom(mainRoom);
        carver.FillWithHallway();
        //carver.RemoveFalseWalls();
        carver.Create3DWalls();
        carver.CreateNavMeshes();
        mapPopulator = MapGenerator.InitializeMapPopulator();
        //mapPopulator.SpawnKeyAt(mapGenerator.GetScaled(new Vector3(10, 10, 0)));

        SpawnWandAt(new Vector3(9, 9, 0), depthConfig.PowerLevel);
        SpawnWandAt(new Vector3(7, 9, 0), depthConfig.PowerLevel);
        SpawnWandAt(new Vector3(9, 7, 0), depthConfig.PowerLevel);
        Dummy dummyPrefab = Resources.Load <Dummy>("Dummy");

        Dummy dummy = Instantiate(dummyPrefab, MapGenerator.transform);

        dummy.transform.position = MapGenerator.GetScaled(new Vector3(13, 13, 0));

        mapPopulator.SpawnEndAt(MapGenerator.GetScaled(new Vector3(10, 10, 0)));
        player = mapPopulator.SpawnPlayerAt(MapGenerator.GetScaled(new Vector3(7, 7, 0)));
        mapPopulator.SetUpCamera(player);
        //fullscreenFade.FadeOut(ReadyWithBase);
    }
Beispiel #2
0
 public void Initialize(LevelConfig levelConfig, LevelDepthConfig levelDepthConfig, GenerationComplete callback)
 {
     completeCallback   = callback;
     depthConfig        = levelDepthConfig;
     config             = levelConfig;
     mapPopulatorPrefab = Resources.Load <MapPopulator>("MapPopulator");
     world = new Rect(0, 0, config.Width, config.Height);
     rooms = new List <MazeRoom>();
     Debug.Log("Creating world with size: " + config.Width + ", " + config.Height);
 }
Beispiel #3
0
    public void Initialize()
    {
        floors = GameObject.Find("Floor")?.GetComponent <Tilemap>();
        walls  = GameObject.Find("Walls")?.GetComponent <Tilemap>();
        pits   = GameObject.Find("Pits")?.GetComponent <Tilemap>();

        _random     = new MillerParkLCG();
        _timer      = new Timer();
        _mapPainter = new MapPainter();
        _mapPainter.Initialize(selectedDungeonData.tileSet, selectedDungeonData.pitSet, floors, walls, pits);

        _mapPopulator = new MapPopulator();
        _mapPopulator.Initialize(_random, selectedDungeonData.interactiveObjects, selectedDungeonData.spawnables, selectedDungeonData.trapSet, _mapPainter);
    }
Beispiel #4
0
 public MapPopulator InitializeMapPopulator()
 {
     MapPopulator = Instantiate(mapPopulatorPrefab);
     MapPopulator.Initialize(this, depthConfig);
     return(MapPopulator);
 }