Ejemplo n.º 1
0
    public void LoadByPath(string _path)
    {
        if (_sing == null)
        {
            _sing = FindObjectOfType <CubeGridSingletonObject>() as CubeGridSingletonObject;
        }

        CurrentLevel = _path;
        _sing.Grid.ClearDictionary();
        _sing.Grid = CubeGridXML.ToGrid(_path);
        GlobalOptions.Refresh();
    }
Ejemplo n.º 2
0
    public void LoadByIndex(int _index)
    {
        if (_sing == null)
        {
            _sing = FindObjectOfType <CubeGridSingletonObject>() as CubeGridSingletonObject;
        }

        CurrentLevel = LevelList[_index].path;

        _sing.Grid.ClearDictionary();
        _sing.Grid = CubeGridXML.ToGrid(CurrentLevel);
        GlobalOptions.Refresh();
    }
Ejemplo n.º 3
0
    static void CreateGrid()
    {
        CubeGridSingletonObject sing = GameObject.FindObjectOfType <CubeGridSingletonObject>();

        if (sing == null)
        {
            GameObject EmptyObject = new GameObject("Empty_Singleton");
            sing = EmptyObject.AddComponent <CubeGridSingletonObject>();
        }

        m_Instance = ScriptableObject.FindObjectOfType <CubeGrid>();
        if (!m_Instance)
        {
            m_Instance = ScriptableObject.CreateInstance <CubeGrid>();
        }

        sing.Grid = m_Instance;
        Selection.activeObject = m_Instance;
    }
Ejemplo n.º 4
0
    private bool processGUIMenus(SceneView _view)
    {
        Rect _rect = new Rect(10, 10, 100, 400);

        GUILayout.BeginArea(_rect);

        int selectedGridIndex = 0;

        switch (m_editMode)
        {
        case EditMode.addBlock: {
            selectedGridIndex = 0;
            break;
        }

        case EditMode.delBlock: {
            selectedGridIndex = 1;
            break;
        }
        }

        string[] _buttons = new string[] { "Add", "Delete", "Clear", "Destroy hiden", "Save", "Load", "Exit" };

        int oldButtonSelected = selectedGridIndex;

        selectedGridIndex = GUILayout.SelectionGrid(selectedGridIndex, _buttons, 1);

        GUILayout.EndArea();

        processSelectionGridMenu(_view);

        if (oldButtonSelected != selectedGridIndex)
        {
            switch (selectedGridIndex)
            {
            case 0: {
                m_editMode = EditMode.addBlock;
                break;
            }

            case 1: {
                m_editMode = EditMode.delBlock;
                break;
            }

            case 2: {
                m_Instance.ClearDictionary();
                break;
            }

            case 3: {
                DeleteHidenObjects();
                break;
            }

            case 4: {
                string path = EditorUtility.SaveFilePanelInProject("Select level path", "Level", "xml", "Select a file");
                if (path.Length != 0)
                {
                    m_Instance.SerializeMe(path);
                }
                break;
            }

            case 5: {
                string path = EditorUtility.OpenFilePanel("Select level path", Application.dataPath, "xml");
                if (path.Length != 0)
                {
                    m_Instance.ClearDictionary();
                    ScriptableObject.DestroyImmediate(m_Instance);
                    m_Instance = CubeGridXML.ToGrid(path);

                    CubeGridSingletonObject sing = GameObject.FindObjectOfType <CubeGridSingletonObject>();
                    if (sing != null)
                    {
                        sing.Grid = m_Instance;
                    }
                }
                break;
            }

            case 6: {
                DeselectThisGrid();
                break;
            }
            }

            return(true);
        }
        ;

        return(false);
    }
Ejemplo n.º 5
0
 void Start()
 {
     _sing = FindObjectOfType <CubeGridSingletonObject>() as CubeGridSingletonObject;
     RefreshLevelList(GetLevelFolder());
 }