void InitializeConnections() { if (roomInitialized) { return; } roomInitialized = true; gameManager.rooms.Add(this); Debug.LogWarning("Starting Build"); for (int i = 0; i < nextRoomIndex.Count; i++) { Debug.LogWarning("Loop Count: " + i); Transform bridge = gameManager.bridgePool.SpawnFromPool(roomPos); bridge.eulerAngles = transform.eulerAngles + new Vector3(0, (wallAngle * nextRoomIndex[i]), 0); Renderer bridgeRend = bridge.GetComponentInChildren <Renderer> (); if (bridgeRend != null) { bridgeRend.material = MyGameManager.state.bridgeMat; } MyGameRoom newRoom = gameManager.baseRoomPool.SpawnFromPool(roomPos + roomDiff); nextRoom.Add(newRoom); newRoom.transform.RotateAround(roomPos, Vector3.up, 18 + transform.eulerAngles.y + (wallAngle * nextRoomIndex[i])); newRoom.Initialize(gameManager, this, gameManager.rooms.Count >= gameManager.curRoomCount); } }
void GenerateScene() { narrativeState++; curRoomCount = UnityEngine.Random.Range(roomNumMin, roomNumMax + 1); SetWorldState(); MyGameRoom startRoom = baseRoomPool.SpawnFromPool(Vector3.zero); startRoom.Initialize(this); if (player == null) { player = Instantiate(playerPrefab, startRoom.transform.position + new Vector3(-10, 16, -30), Quaternion.identity) as Controller2; } else { player.transform.position = startRoom.transform.position + new Vector3(-10, 16, -30); player.transform.rotation = Quaternion.identity; } }