Example #1
0
        private void OnGUIx()
        {
            GUI.skin = Resources.Load("RPGMakerAssets/EditorSkinRPGMaker") as GUISkin;
            if (Window.position.width > 600)
            {
                GUILayout.BeginHorizontal();
            }
            else
            {
                GUILayout.BeginVertical();
            }

            if (GUILayout.Button(new GUIContent("RPGAIO", RPGMakerGUI.RPGMakerIcon), "rpgToolBarButton"))
            {
                Rme_Main.Init();
            }
            if (GUILayout.Button(new GUIContent("Prefab Window", PrefabBrowserIcon), "rpgToolBarButton"))
            {
                Rme_Tools_PrefabRepository.Init();
            }
            if (GUILayout.Button(new GUIContent("Save Data", SaveIcon), "rpgToolBarButton"))
            {
                EditorGameDataSaveLoad.SaveGameData();
            }
            if (GUILayout.Button(new GUIContent("Reload Data", LoadIcon), "rpgToolBarButton"))
            {
                EditorGameDataSaveLoad.LoadGameDataFromEditor();
            }
            if (GUILayout.Button(new GUIContent("Combat", CombatIcon), "rpgToolBarButton"))
            {
                CombatNodeWindow.Init();
            }
            if (GUILayout.Button(new GUIContent("Dialog", DialogIcon), "rpgToolBarButton"))
            {
                DialogNodeWindow.Init();
            }
            if (GUILayout.Button(new GUIContent("Events", EventIcon), "rpgToolBarButton"))
            {
                EventNodeWindow.Init();
            }
            if (GUILayout.Button(new GUIContent("Achievements", AchievementIcon), "rpgToolBarButton"))
            {
                AchievementNodeWindow.Init();
            }
            if (GUILayout.Button(new GUIContent("Map", MapIcon), "rpgToolBarButton"))
            {
                WorldMapNodeWindow.Init();
            }

            if (GUILayout.Button(new GUIContent("New Scene", NewSceneIcon), "rpgToolBarButton"))
            {
                AddScene();
            }
            if (GUILayout.Button(new GUIContent("Event Trigger", EventTriggerIcon), "rpgToolBarButton"))
            {
                EventTrigger();
            }
            if (GUILayout.Button(new GUIContent("Level Switch", LevelSwitchIcon), "rpgToolBarButton"))
            {
                LevelSwitch();
            }
            if (GUILayout.Button(new GUIContent("Popup Text", PopupTextIcon), "rpgToolBarButton"))
            {
                PopupText();
            }


            GUILayout.EndHorizontal();
        }
Example #2
0
        public static void WorldMap(Rect fullArea, Rect leftArea, Rect mainArea)
        {
            leftAreaB   = new Rect(leftArea.xMax + 5, leftArea.y, leftArea.width, leftArea.height);
            mainAreaAlt = new Rect(leftAreaB.xMax + 5, leftArea.y, mainArea.width - (leftAreaB.width + 5),
                                   leftArea.height);

            GUI.Box(leftArea, "", "backgroundBox");
            GUI.Box(leftAreaB, "", "backgroundBox");
            GUI.Box(mainAreaAlt, "", "backgroundBox");



            GUILayout.BeginArea(PadRect(leftArea, 0, 0));
            RPGMakerGUI.ListArea(worldAreaList, ref selectedWorldArea, Rm_ListAreaType.WorldAreas, false, false);
            GUILayout.EndArea();

            GUILayout.BeginArea(leftAreaB);
            if (selectedWorldArea != null)
            {
                var rect = RPGMakerGUI.ListArea(selectedWorldArea.Locations, ref selectedWorldAreaLocation, Rm_ListAreaType.Location, false, false, Rme_ListButtonsToShow.AllExceptHelp, true, selectedWorldArea.ID);
            }
            GUILayout.EndArea();

            GUILayout.BeginArea(mainAreaAlt);
            worldAreaScrollPos = GUILayout.BeginScrollView(worldAreaScrollPos);
            RPGMakerGUI.Title("World Areas (Not Finished)");
            if (selectedWorldArea != null)
            {
                selectedWorldArea.Name = RPGMakerGUI.TextField("Name: ", selectedWorldArea.Name);
                selectedWorldArea.ImageContainer.Image = RPGMakerGUI.ImageSelector("Image:", selectedWorldArea.ImageContainer.Image, ref selectedWorldArea.ImageContainer.ImagePath);
                if (GUILayout.Button("Open Interaction Node Tree", "genericButton", GUILayout.MaxHeight(30)))
                {
                    var trees        = Rm_RPGHandler.Instance.Nodes.WorldMapNodeBank.NodeTrees;
                    var existingTree = trees.FirstOrDefault(t => t.ID == selectedWorldArea.ID);
                    if (existingTree == null)
                    {
                        existingTree    = NodeWindow.GetNewTree(NodeTreeType.WorldMap);
                        existingTree.ID = selectedWorldArea.ID;

                        Debug.Log(existingTree.ID + ":::" + existingTree.Name);
                        existingTree.Name = selectedWorldArea.Name;
                        trees.Add(existingTree);
                    }

                    WorldMapNodeWindow.ShowWindow(selectedWorldArea.ID);
                }
            }

            if (selectedWorldArea != null)
            {
                RPGMakerGUI.SubTitle("Location Info:");
                if (selectedWorldAreaLocation != null)
                {
                    var loc = selectedWorldAreaLocation;
                    loc.Name = RPGMakerGUI.TextField("Name:", loc.Name);
                    loc.ImageContainer.Image = RPGMakerGUI.ImageSelector("Name:", loc.ImageContainer.Image, ref loc.ImageContainer.ImagePath);
                    loc.Description          = RPGMakerGUI.TextField("Description:", loc.Description);
                    RPGMakerGUI.SceneSelector("Scene:", ref loc.SceneName);
                    if (RPGMakerGUI.Toggle("Use Custom Spawn Location?", ref loc.UseCustomLocation))
                    {
                        loc.CustomSpawnLocation = EditorGUILayout.Vector3Field("Location:", loc.CustomSpawnLocation);
                    }
                }
                else
                {
                    EditorGUILayout.HelpBox("Select a location in the world area to begin editing it.", MessageType.Info);
                }
            }
            else
            {
                EditorGUILayout.HelpBox("Add or select a new field to customise world areas.", MessageType.Info);
            }
            GUILayout.EndScrollView();
            GUILayout.EndArea();
        }