Beispiel #1
0
    private void Start()
    {
        DungeonGenerator = GetComponentInChildren <RuntimeDungeon>();
        DungeonGenerator.Generator.OnGenerationStatusChanged += OnGenerationStatusChanged;

        GenerateRandom();
    }
Beispiel #2
0
        protected virtual void Awake()
        {
            if (gameObject.scene.name.ToLower() != "master")
            {
                current = this;
            }
            if (!playerStart)
            {
                PlayerSpawner playerSpawner = GameObject.FindObjectOfType <PlayerSpawner>();
                if (playerSpawner)
                {
                    playerStart = playerSpawner.transform;
                }
            }
#if DUNGEN
            dungeonNavMeshAdapter = this.GetComponentInChildren <UnityNavMeshAdapter>();
            if (dungeonNavMeshAdapter)
            {
                // Prevent Unity to crash when generating dungeon
                dungeonNavMeshAdapter.enabled = false;
            }
            dungeonGenerator = this.GetComponentInChildren <RuntimeDungeon>();
            if (dungeonGenerator)
            {
                dungeonGenerator.Generator.OnGenerationStatusChanged += OnGenerationStatusChanged;
                GenerateDungeon();
            }
#endif
        }
Beispiel #3
0
    private void Start()
    {
        RuntimeDungeon runtimeDungeon = Component.FindObjectOfType <RuntimeDungeon>();

        if (runtimeDungeon != null)
        {
            transform.forward = -runtimeDungeon.Generator.UpVector;
        }
    }
        public override void OnInspectorGUI()
        {
            RuntimeDungeon dungeon = target as RuntimeDungeon;

            if (dungeon == null)
            {
                return;
            }

            dungeon.GenerateOnStart = EditorGUILayout.Toggle("Generate on Start", dungeon.GenerateOnStart);

            EditorGUILayout.BeginVertical("box");
            EditorUtil.DrawDungeonGenerator(dungeon.Generator, true);
            EditorGUILayout.EndVertical();

            if (GUI.changed)
            {
                EditorUtility.SetDirty(dungeon);
            }
        }
Beispiel #5
0
        public override void OnInspectorGUI()
        {
            RuntimeDungeon dungeon = target as RuntimeDungeon;

            if (dungeon == null)
            {
                return;
            }

            dungeon.GenerateOnStart = EditorGUILayout.Toggle("Generate on Start", dungeon.GenerateOnStart);
            dungeon.Root            = EditorGUILayout.ObjectField(new GUIContent("Root", "An optional root object for the dungeon to be parented to. If blank, a new root GameObject will be created named \"" + Constants.DefaultDungeonRootName + "\""), dungeon.Root, typeof(GameObject), true) as GameObject;

            EditorGUILayout.BeginVertical("box");
            EditorUtil.DrawDungeonGenerator(dungeon.Generator, true);
            EditorGUILayout.EndVertical();

            if (GUI.changed)
            {
                EditorUtility.SetDirty(dungeon);
            }
        }