// Orsinium defines two blocks at [-1,-1] private void LayoutOrsinium(ref DFLocation location) { // Create dungeon layout and handle misplaced block foreach (var block in location.Dungeon.Blocks) { if (block.X == -1 && block.Z == -1 && block.BlockName == "N0000065.RDB") { continue; } GameObject go = RDBLayout.CreateGameObject(block.BlockName, block.IsStartingBlock, DungeonTextureTable, Summary.DungeonType, Summary.ID); go.transform.parent = this.transform; go.transform.position = new Vector3(block.X * RDBLayout.RDBSide, 0, block.Z * RDBLayout.RDBSide); DaggerfallRDBBlock daggerfallBlock = go.GetComponent <DaggerfallRDBBlock>(); if (block.IsStartingBlock) { FindStartMarker(daggerfallBlock); } } }
private void LayoutDungeon(ref DFLocation location) { //// Start timing //Stopwatch stopwatch = Stopwatch.StartNew(); //long startTime = stopwatch.ElapsedMilliseconds; // Create dungeon layout foreach (var block in location.Dungeon.Blocks) { GameObject go = RDBLayout.CreateGameObject(block.BlockName, block.IsStartingBlock, DungeonTextureTable, Summary.DungeonType, Summary.ID); go.transform.parent = this.transform; go.transform.position = new Vector3(block.X * RDBLayout.RDBSide, 0, block.Z * RDBLayout.RDBSide); DaggerfallRDBBlock daggerfallBlock = go.GetComponent <DaggerfallRDBBlock>(); if (block.IsStartingBlock) { FindStartMarker(daggerfallBlock); } } //// Show timer //long totalTime = stopwatch.ElapsedMilliseconds - startTime; //DaggerfallUnity.LogMessage(string.Format("Time to layout dungeon: {0}ms", totalTime), true); }