Exemplo n.º 1
0
    public void Sample()
    {
        manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();

        if (GUILayout.Button("Sample", GUILayout.Height(30), GUILayout.Width(100f)))
        {
            manager.ListClear();
            manager.ResetFileStatus();
            manager.selectedMark = "";

            XML_Data xmldata = new XML_Data();
            for (int i = 0; i < xmldata.Sample().Count; i++)
            {
                manager.xmlArrayList.Add(xmldata.Sample() [i]);
            }

            manager.xmlDic = new Dictionary <string, int> ();

            for (int i = 0; i < manager.xmlArrayList.Count; i++)
            {
                Xml_Manager.XmlMarker tmp_xmlData = manager.xmlArrayList [i] as Xml_Manager.XmlMarker;
                manager.xmlDic.Add(tmp_xmlData.locationName, i);
            }
        }
    }
Exemplo n.º 2
0
    public void AddClear()
    {
        manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();

        if (GUILayout.Button("Add Item", GUILayout.Height(30), GUILayout.Width(100f)))
        {
            AddList();
        }

        if (GUILayout.Button("Clear Items", GUILayout.Height(30), GUILayout.Width(100f)))
        {
            manager.ListClear();
            manager.ResetFileStatus();
        }
    }
Exemplo n.º 3
0
    public void Open()
    {
        manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();

        GUILayout.BeginHorizontal();

        if (GUILayout.Button("Open", GUILayout.Height(30), GUILayout.Width(100f)))
        {
            LoadData();
        }

        EditorGUILayout.HelpBox(message, MessageType.Info, true);

        string tex = System.Enum.GetName(typeof(FileStatus), manager.loadFileStatus);

        switch ((FileStatus)System.Enum.Parse(typeof(FileStatus), tex))
        {
        case FileStatus.Ready:
            GUI.color = Color.gray;
            message   = "Opens an existing XML file";
            GUI.color = Color.white;
            break;

        case FileStatus.Cancel:
            GUI.color = Color.red;
            message   = "File operation cancel";
            GUI.color = Color.white;
            break;

        case FileStatus.Success:
            if (FileName != null)
            {
                GUI.color = Color.white;
                string[] s = FileName.Split('/');
                message   = "Selected file  : " + s [s.Length - 1];
                GUI.color = Color.white;
            }
            break;

        default:
            break;
        }

        GUILayout.EndHorizontal();
    }
Exemplo n.º 4
0
    public void Save()
    {
        manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();

        GUILayout.BeginHorizontal();
        if (GUILayout.Button("Save", GUILayout.Height(30), GUILayout.Width(100f)))
        {
            SaveData();
        }
        EditorGUILayout.HelpBox(message, MessageType.Info, true);

        string tex = System.Enum.GetName(typeof(FileStatus), manager.saveFileStatus);

        switch ((FileStatus)System.Enum.Parse(typeof(FileStatus), tex))
        {
        case FileStatus.Ready:
            GUI.color = Color.gray;
            message   = "Saves the current xml file.";
            GUI.color = Color.white;
            break;

        case FileStatus.Cancel:
            GUI.color = Color.red;
            message   = ("File operation cancel.");
            GUI.color = Color.white;
            break;

        case FileStatus.Error:
            GUI.color = Color.red;
            message   = ("You can't save the content is empty.");
            GUI.color = Color.white;
            break;

        case FileStatus.Success:
            GUI.color = Color.white;
            message   = "Save Path : " + Application.streamingAssetsPath + "/MarkData";
            GUI.color = Color.white;
            AssetDatabase.Refresh();
            break;

        default:
            break;
        }
        GUILayout.EndHorizontal();
    }
Exemplo n.º 5
0
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /// Utility
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    void Utility()
    {
        GUI.backgroundColor = Color.cyan;
        GUIStyle myButtonStyle = new GUIStyle(GUI.skin.box);

        myButtonStyle.normal.textColor = Color.white;
        GUILayout.Box("Utility", myButtonStyle, GUILayout.ExpandWidth(true));
        GUI.backgroundColor = Color.white;
        GUILayout.Space(2f);

        if (GUILayout.Button("Create Mark"))
        {
            if (GameObject.Find("Manager").GetComponent <Xml_Manager> () == null)
            {
                GameObject.Find("Manager").AddComponent <Xml_Manager>();
            }
            EditorWindow.GetWindow <XML_Window> (false, "Mark Maker", true);
            Xml_Manager manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();
            manager.ListClear();
        }

        GUILayout.Space(2f);
        if (GUILayout.Button("Building Layout Tools"))
        {
            EditorWindow.GetWindow <BuildingLayout> (false, "Building Layout", true);
        }
        GUILayout.Space(2f);
        if (GUILayout.Button("Other Option"))
        {
            EditorWindow.GetWindow <OtherOption> (false, "Other Option", true);
        }
        GUILayout.Space(2f);
        if (GUILayout.Button("Delete Temporary Files"))
        {
            DeleteFiles("Assets/MapToolkit_2.0/Temp/BuildingData");
            DeleteFiles("Assets/MapToolkit_2.0/Temp/MarkData");
            AssetDatabase.Refresh();
        }
    }
Exemplo n.º 6
0
    void LoadData()
    {
        Xml_Manager manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();

        FileName = EditorUtility.OpenFilePanel("XML Maker", "Assets/MapToolkit_2.0/Temp/XmlData", "xml");

        if (FileName == null || FileName == "")
        {
            manager.LoadFileStatus((int)FileStatus.Cancel);
            return;
        }
        else
        {
            manager.ListClear();
            manager.ResetFileStatus();
        }

        XML_Mark_Container xmlMarkCollection = XML_Mark_Container.Load(FileName);

        for (int i = 0; i < xmlMarkCollection.XML_Marks.Length; i++)
        {
            Xml_Manager.XmlMarker xmlData = new Xml_Manager.XmlMarker();

            xmlData.locationName = xmlMarkCollection.XML_Marks [i].Name;
            xmlData.coordinate_x = xmlMarkCollection.XML_Marks [i].coordinate_x;
            xmlData.coordinate_y = xmlMarkCollection.XML_Marks [i].coordinate_y;

            xmlData.normalPixelInset_x = xmlMarkCollection.XML_Marks [i].normalPixelInset_x;
            xmlData.normalPixelInset_y = xmlMarkCollection.XML_Marks [i].normalPixelInset_y;
            xmlData.normalPixelInset_w = xmlMarkCollection.XML_Marks [i].normalPixelInset_w;
            xmlData.normalPixelInset_h = xmlMarkCollection.XML_Marks [i].normalPixelInset_h;


            xmlData.normalSprite  = xmlMarkCollection.XML_Marks [i].normalSprite;
            xmlData.normalColor_r = xmlMarkCollection.XML_Marks [i].normalColor_r;
            xmlData.normalColor_g = xmlMarkCollection.XML_Marks [i].normalColor_g;
            xmlData.normalColor_b = xmlMarkCollection.XML_Marks [i].normalColor_b;
            xmlData.normalColor_a = xmlMarkCollection.XML_Marks [i].normalColor_a;

            xmlData.hoverSprite  = xmlMarkCollection.XML_Marks [i].hoverSprite;
            xmlData.activeSprite = xmlMarkCollection.XML_Marks [i].activeSprite;

            xmlData.textPixelInset_x = xmlMarkCollection.XML_Marks [i].textPixelInset_x;
            xmlData.textPixelInset_y = xmlMarkCollection.XML_Marks [i].textPixelInset_y;

            xmlData.textFontSize = xmlMarkCollection.XML_Marks [i].textFontSize;
            xmlData.textShow     = xmlMarkCollection.XML_Marks [i].textShow;

            xmlData.textColor_r = xmlMarkCollection.XML_Marks [i].textColor_r;
            xmlData.textColor_g = xmlMarkCollection.XML_Marks [i].textColor_g;
            xmlData.textColor_b = xmlMarkCollection.XML_Marks [i].textColor_b;
            xmlData.textColor_a = xmlMarkCollection.XML_Marks [i].textColor_a;


            manager.xmlArrayList.Add(xmlData);
        }

        Xml_Manager.XmlMarker tmp_xmlData2 = manager.xmlArrayList [0] as Xml_Manager.XmlMarker;

        manager.selection        = tmp_xmlData2.locationName;
        manager.selection_number = 0;
        manager.SelectMarkClear();
        manager.selectedMark = "";

        manager.LoadFileStatus((int)FileStatus.Success);
    }
Exemplo n.º 7
0
 void OnEnable()
 {
     manager    = GameObject.Find("Manager").GetComponent <Xml_Manager> ();
     markXml_ui = target as MarkXmlUI;
 }
Exemplo n.º 8
0
    public void ItemList()
    {
        Xml_Manager manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();

        if (manager.xmlArrayList.Count > 0 && manager.xmlArrayList != null)
        {
            {
                GUILayout.BeginHorizontal();
                GUILayout.Space(3f);
                GUILayout.BeginVertical();

                mScroll = GUILayout.BeginScrollView(mScroll);

                bool delete = false;
                int  index  = 0;

                for (int k = 0; k < manager.xmlArrayList.Count; k++)
                {
                    Xml_Manager.XmlMarker tmp_xmlData = manager.xmlArrayList [k] as  Xml_Manager.XmlMarker;
                    ++index;
                    GUILayout.Space(-1f);

                    bool highlight = (manager.selectedMark == tmp_xmlData.locationName);

                    GUI.backgroundColor = highlight ? Color.white : new Color(0.8f, 0.8f, 0.8f);
                    GUILayout.BeginHorizontal("AS TextArea", GUILayout.MinHeight(20f));
                    GUI.backgroundColor = Color.white;
                    GUILayout.Label(index.ToString(), GUILayout.Width(24f));


                    if (GUILayout.Button(tmp_xmlData.locationName, "OL TextField", GUILayout.Height(20f)))
                    {
                        manager.selection        = tmp_xmlData.locationName;
                        manager.selection_number = k;

                        manager.selectListIndex = k;

                        manager.SelectMark(manager.selection, manager.selection_number);
                    }


                    if (mDelValues.Contains(k))
                    {
                        GUI.backgroundColor = Color.red;

                        if (GUILayout.Button("OK", GUILayout.Width(30f)))
                        {
                            delete = true;
                        }
                        GUI.backgroundColor = Color.green;
                        if (GUILayout.Button("Delete", GUILayout.Width(50f)))
                        {
                            mDelNames.Remove(tmp_xmlData.locationName);
                            mDelValues.Remove(k);
                            delete = false;
                        }
                        GUI.backgroundColor = Color.white;
                    }
                    else
                    {
                        if (GUILayout.Button("Delete", GUILayout.Width(50f)))
                        {
                            mDelNames.Add(tmp_xmlData.locationName);
                            mDelValues.Add(k);
                        }
                    }

                    GUILayout.EndHorizontal();
                }
                GUILayout.EndScrollView();
                GUILayout.EndVertical();
                GUILayout.Space(3f);
                GUILayout.EndHorizontal();

                // If this sprite was marked for deletion, remove it from the atlas
                if (delete)
                {
                    for (int i = 0; i < mDelNames.Count; i++)
                    {
                        for (int j = 0; j < manager.xmlArrayList.Count; j++)
                        {
                            Xml_Manager.XmlMarker tmp_xmlData = manager.xmlArrayList [j] as  Xml_Manager.XmlMarker;
                            if (tmp_xmlData.locationName == mDelNames [i])
                            {
                                manager.xmlArrayList.RemoveAt(j);
                            }
                        }
                    }
                    mDelValues.Clear();
                    mDelNames.Clear();
                }
                if (manager.xmlArrayList.Count == 0)
                {
                    manager.SelectMarkClear();
                }
            }
        }
    }
Exemplo n.º 9
0
    public void SaveData()
    {
        Xml_Manager manager = GameObject.Find("Manager").GetComponent <Xml_Manager> ();

        string sSavePath = EditorUtility.SaveFilePanel("Save Mark XML File", "Assets/MapToolkit_2.0/Temp/MarkData", "noname", "xml");

        if (sSavePath == null || sSavePath == "")
        {
            manager.SaveFileStatus((int)FileStatus.Cancel);
            return;
        }


        if (manager.xmlArrayList == null || manager.xmlArrayList.Count == 0)
        {
            manager.SaveFileStatus((int)FileStatus.Error);
            return;
        }


        string xmlData;

        xmlData = "<MapMarkCollection><XML_Marks>";

        for (int i = 0; i < manager.xmlArrayList.Count; i++)
        {
            Xml_Manager.XmlMarker tmp_xmlData = (Xml_Manager.XmlMarker)manager.xmlArrayList [i] as  Xml_Manager.XmlMarker;

            xmlData += "<XML_Mark name=\"" + tmp_xmlData.locationName + "\">";
            xmlData += "<coordinate_x>" + tmp_xmlData.coordinate_x + "</coordinate_x>";
            xmlData += "<coordinate_y>" + tmp_xmlData.coordinate_y + "</coordinate_y>";

            xmlData += "<normalSprite>" + tmp_xmlData.normalSprite + "</normalSprite>";
            xmlData += "<hoverSprite>" + tmp_xmlData.hoverSprite + "</hoverSprite>";
            xmlData += "<activeSprite>" + tmp_xmlData.activeSprite + "</activeSprite>";

            xmlData += "<normalColor_r>" + tmp_xmlData.normalColor_r + "</normalColor_r>";
            xmlData += "<normalColor_g>" + tmp_xmlData.normalColor_g + "</normalColor_g>";
            xmlData += "<normalColor_b>" + tmp_xmlData.normalColor_b + "</normalColor_b>";
            xmlData += "<normalColor_a>" + tmp_xmlData.normalColor_a + "</normalColor_a>";


            xmlData += "<normalPixelInset_x>" + tmp_xmlData.normalPixelInset_x + "</normalPixelInset_x>";
            xmlData += "<normalPixelInset_y>" + tmp_xmlData.normalPixelInset_y + "</normalPixelInset_y>";
            xmlData += "<normalPixelInset_w>" + tmp_xmlData.normalPixelInset_w + "</normalPixelInset_w>";
            xmlData += "<normalPixelInset_h>" + tmp_xmlData.normalPixelInset_h + "</normalPixelInset_h>";

            xmlData += "<textPixelInset_x>" + tmp_xmlData.textPixelInset_x + "</textPixelInset_x>";
            xmlData += "<textPixelInset_y>" + tmp_xmlData.textPixelInset_y + "</textPixelInset_y>";

            xmlData += "<textFontSize>" + tmp_xmlData.textFontSize + "</textFontSize>";


            int textCheck;
            if (tmp_xmlData.textShow)
            {
                textCheck = 1;
            }
            else
            {
                textCheck = 0;
            }
            xmlData += "<textShow>" + textCheck + "</textShow>";

            xmlData += "<textColor_r>" + tmp_xmlData.textColor_r + "</textColor_r>";
            xmlData += "<textColor_g>" + tmp_xmlData.textColor_g + "</textColor_g>";
            xmlData += "<textColor_b>" + tmp_xmlData.textColor_b + "</textColor_b>";
            xmlData += "<textColor_a>" + tmp_xmlData.textColor_a + "</textColor_a>";

            xmlData += "</XML_Mark>";
        }

        xmlData += "</XML_Marks></MapMarkCollection>";

        XML_Mark_Container xml_Mark_Container = XML_Mark_Container.LoadFromText(xmlData);

        xml_Mark_Container.Save(sSavePath);


        string[] filename = sSavePath.Split('/');
        message = filename [filename.Length - 1] + " ";

        manager.SaveFileStatus((int)FileStatus.Success);
    }