Пример #1
0
    void DrawListData()
    {
        if (listData != null)
        {
            Indent();

            // Draw bool_list_field
            bool needsSave = false;
            DrawLabel("bool_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_bool_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewBool))
            {
                listData.bool_list_field.Add(false);
                listData.Set_bool_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.bool_list_field.RemoveAt(indexToRemove);
                listData.Set_bool_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.bool_list_field.Count; i++)
            {
                if (i > 0)
                {
                    DrawLabel("|");
                }

                bool oldVal = listData.bool_list_field[i];
                listData.bool_list_field[i] = DrawBool(listData.bool_list_field[i]);

                needsSave = (listData.bool_list_field[i] != oldVal) | needsSave;
            }
            if (needsSave)
            {
                listData.Set_bool_list_field();
            }

            NewLine(2);
            Indent();

            // Draw float_list_field
            needsSave = false;
            DrawLabel("float_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_float_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewFloat))
            {
                listData.float_list_field.Add(0);
                listData.Set_float_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.float_list_field.RemoveAt(indexToRemove);
                listData.Set_float_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.float_list_field.Count; i++)
            {
                if (i > 0)
                {
                    DrawLabel("|");
                }

                float oldVal = listData.float_list_field[i];
                listData.float_list_field[i] = DrawFloat(listData.float_list_field[i]);

                needsSave = (listData.float_list_field[i] != oldVal) | needsSave;
            }
            if (needsSave)
            {
                listData.Set_float_list_field();
            }

            NewLine(2);
            Indent();

            // Draw int_list_field
            needsSave = false;
            DrawLabel("int_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_int_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewInt))
            {
                listData.int_list_field.Add(0);
                listData.Set_int_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.int_list_field.RemoveAt(indexToRemove);
                listData.Set_int_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.int_list_field.Count; i++)
            {
                if (i > 0)
                {
                    DrawLabel("|");
                }

                int oldVal = listData.int_list_field[i];
                listData.int_list_field[i] = DrawInt(listData.int_list_field[i]);

                needsSave = (listData.int_list_field[i] != oldVal) | needsSave;
            }
            if (needsSave)
            {
                listData.Set_int_list_field();
            }

            NewLine(2);
            Indent();

            // Draw string_list_field
            needsSave = false;
            DrawLabel("string_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_string_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewString))
            {
                listData.string_list_field.Add(string.Empty);
                listData.Set_string_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.string_list_field.RemoveAt(indexToRemove);
                listData.Set_string_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.string_list_field.Count; i++)
            {
                if (i > 0)
                {
                    NewLine();
                    Indent(2);
                }

                string oldVal = listData.string_list_field[i];
                listData.string_list_field[i] = DrawString(listData.string_list_field[i]);

                needsSave = (listData.string_list_field[i] != oldVal) | needsSave;
            }
            if (needsSave)
            {
                listData.Set_string_list_field();
            }

            NewLine(2);
            Indent();

            // Draw vector2_list_field
            needsSave = false;
            DrawLabel("vector2_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_vector2_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewVec2))
            {
                listData.vector2_list_field.Add(Vector2.zero);
                listData.Set_vector2_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.vector2_list_field.RemoveAt(indexToRemove);
                listData.Set_vector2_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.vector2_list_field.Count; i++)
            {
                if (i > 0)
                {
                    NewLine();
                    Indent(2);
                }

                Vector2 oldVal = listData.vector2_list_field[i];
                listData.vector2_list_field[i] = DrawVector2(listData.vector2_list_field[i]);

                needsSave = (listData.vector2_list_field[i] != oldVal) | needsSave;
            }
            if (needsSave)
            {
                listData.Set_vector2_list_field();
            }

            NewLine(2);
            Indent();

            // Draw vector3_list_field
            needsSave = false;
            DrawLabel("vector3_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_vector3_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewVec3))
            {
                listData.vector3_list_field.Add(Vector3.zero);
                listData.Set_vector3_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.vector3_list_field.RemoveAt(indexToRemove);
                listData.Set_vector3_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.vector3_list_field.Count; i++)
            {
                if (i > 0)
                {
                    NewLine();
                    Indent(2);
                }

                Vector3 oldVal = listData.vector3_list_field[i];
                listData.vector3_list_field[i] = DrawVector3(listData.vector3_list_field[i]);

                needsSave = (listData.vector3_list_field[i] != oldVal) | needsSave;
            }
            if (needsSave)
            {
                listData.Set_vector3_list_field();
            }

            NewLine(2);
            Indent();

            // Draw vector4_list_field
            needsSave = false;
            DrawLabel("vector4_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_vector4_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewVec4))
            {
                listData.vector4_list_field.Add(Vector4.zero);
                listData.Set_vector4_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.vector4_list_field.RemoveAt(indexToRemove);
                listData.Set_vector4_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.vector4_list_field.Count; i++)
            {
                if (i > 0)
                {
                    NewLine();
                    Indent(2);
                }

                Vector4 oldVal = listData.vector4_list_field[i];
                listData.vector4_list_field[i] = DrawVector4(listData.vector4_list_field[i]);

                needsSave = (listData.vector4_list_field[i] != oldVal) | needsSave;
            }
            if (needsSave)
            {
                listData.Set_vector4_list_field();
            }

            NewLine(2);
            Indent();

            // Draw custom_list_field
            needsSave = false;
            DrawLabel("custom_list_field:");
            Indent();

            if (DrawButton(SetDataSceneStrings.Reset))
            {
                listData.Reset_custom_list_field();
            }
            if (DrawButton(SetDataSceneStrings.AddNewCustom))
            {
                GDESetCustomData newCustom = new GDESetCustomData(Random.value.ToString());
                newCustom.description = SetDataSceneStrings.KeyLbl + " \"" + newCustom.Key + "\"";

                listData.custom_list_field.Add(newCustom);
                listData.Set_custom_list_field();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                listData.custom_list_field.RemoveAt(indexToRemove);
                listData.Set_custom_list_field();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < listData.custom_list_field.Count; i++)
            {
                if (i > 0)
                {
                    NewLine();
                    Indent(2);
                }

                DrawLabel(listData.custom_list_field[i].Key + ":");

                string oldKey = listData.custom_list_field[i].Key;
                newKey = DrawString(newKey);

                string oldVal = listData.custom_list_field[i].description;
                listData.custom_list_field[i].description = DrawString(listData.custom_list_field[i].description);

                if (oldKey != newKey && DrawButton(SetDataSceneStrings.SetRefBtn))
                {
                    listData.custom_list_field[i] = new GDESetCustomData(newKey);

                    needsSave = true;
                }

                needsSave = (listData.custom_list_field[i].description != oldVal) | needsSave;
            }

            if (needsSave)
            {
                listData.Set_custom_list_field();
            }
        }
    }
Пример #2
0
    void OnGUI()
    {
        skin = GUI.skin;
        size = Vector2.zero;
        if (content == null)
        {
            content = new GUIContent();
        }

        ResetToTop();

        DrawLabel(SetDataSceneStrings.HeaderLbl);
        DrawLabel(SetDataSceneStrings.DescriptionLbl);
        NewLine();

                #if !UNITY_WEBPLAYER
        if (DrawButton(SetDataSceneStrings.SaveAllBtn))
        {
            GDEDataManager.Save();
        }
        if (DrawButton(SetDataSceneStrings.CreateRandomBtn))
        {
            var newItem = new GDESetCustomData(Guid.NewGuid().ToString().Replace("-", ""));
            newItem.bool_field    = Convert.ToBoolean(Random.Range(0, 1));
            newItem.int_field     = Random.Range(-100, 100);
            newItem.float_field   = Random.Range(-100f, 100f);
            newItem.description   = "My ID is: " + newItem.Key;
            newItem.vector2_field = new Vector2(Random.Range(0f, 1f), Random.Range(0f, 1f));
            newItem.vector3_field = new Vector3(Random.Range(0f, 1f), Random.Range(0f, 1f), Random.Range(0f, 1f));
            newItem.color_field   = new Color(Random.Range(0f, 1f), Random.Range(0f, 1f), Random.Range(0f, 1f), Random.Range(0f, 1f));
        }
        if (DrawButton(SetDataSceneStrings.ReloadAllBtn))
        {
            LoadItems();
        }
                #endif

        if (DrawButton(SetDataSceneStrings.ResetAllBtn))
        {
            singleData.ResetAll();
            listData.ResetAll();
            twoDListData.ResetAll();

                        #if !UNITY_WEBPLAYER
            GDEDataManager.ClearSaved();
                        #endif
        }

        NewLine(2);

        DrawLabel(SetDataSceneStrings.SingleOrListLbl);
        NewLine();
        if (DrawButton(SetDataSceneStrings.SingleBtn))
        {
            selectedType = DataType.Single;
        }
        if (DrawButton(SetDataSceneStrings.ListBtn))
        {
            selectedType = DataType.List;
        }

        NewLine(2);

        DrawLabel(SetDataSceneStrings.TwoDListLbl);
        NewLine();
        if (DrawButton("Bool 2D"))
        {
            selectedType = DataType.Bool2D;
        }
        if (DrawButton("Int 2D"))
        {
            selectedType = DataType.Int2D;
        }
        if (DrawButton("Float 2D"))
        {
            selectedType = DataType.Float2D;
        }
        if (DrawButton("String 2D"))
        {
            selectedType = DataType.String2D;
        }
        if (DrawButton("Vec2 2D"))
        {
            selectedType = DataType.Vec2_2D;
        }
        if (DrawButton("Vec3 2D"))
        {
            selectedType = DataType.Vec3_2D;
        }
        if (DrawButton("Vec4 2D"))
        {
            selectedType = DataType.Vec4_2D;
        }
        if (DrawButton("Color 2D"))
        {
            selectedType = DataType.Color_2D;
        }
        if (DrawButton("Custom 2D"))
        {
            selectedType = DataType.Custom_2D;
        }

        NewLine(2);

        DrawLabel(SetDataSceneStrings.SetDataLbl);
        NewLine(3);
        if (selectedType.Equals(DataType.Single))
        {
            DrawSingleData();
        }
        else if (selectedType.Equals(DataType.List))
        {
            DrawListData();
        }
        else if (selectedType.Equals(DataType.Bool2D))
        {
            DrawBoolData();
        }
        else if (selectedType.Equals(DataType.Int2D))
        {
            DrawIntData();
        }
        else if (selectedType.Equals(DataType.Float2D))
        {
            DrawFloatData();
        }
        else if (selectedType.Equals(DataType.String2D))
        {
            DrawStringData();
        }
        else if (selectedType.Equals(DataType.Vec2_2D))
        {
            DrawVector2Data();
        }
        else if (selectedType.Equals(DataType.Vec3_2D))
        {
            DrawVector3Data();
        }
        else if (selectedType.Equals(DataType.Vec4_2D))
        {
            DrawVector4Data();
        }
        else if (selectedType.Equals(DataType.Color_2D))
        {
            DrawColorData();
        }
        else if (selectedType.Equals(DataType.Custom_2D))
        {
            DrawCustomData();
        }
    }
Пример #3
0
    void DrawCustomData()
    {
        bool needsSave = false;

        DrawLabel("2D Custom List");

        NewLine();
        Indent();

        if (DrawButton(SetDataSceneStrings.AddNewList))
        {
            twoDListData.custom_2dlist.Add(new List <GDESetCustomData>());
        }

        indexToRemove = DrawInt(indexToRemove);
        if (DrawButton(SetDataSceneStrings.RemoveList))
        {
            twoDListData.custom_2dlist.RemoveAt(indexToRemove);
            twoDListData.Set_custom_2dlist();
        }

        if (DrawButton(SetDataSceneStrings.Reset))
        {
            twoDListData.Reset_custom_2dlist();
        }

        NewLine(2);
        Indent();

        foreach (var subList in twoDListData.custom_2dlist)
        {
            if (DrawButton(SetDataSceneStrings.AddNewCustom))
            {
                GDESetCustomData newCustom = new GDESetCustomData(Random.value.ToString());
                newCustom.description = SetDataSceneStrings.KeyLbl + " \"" + newCustom.Key + "\"";

                subList.Add(newCustom);
                twoDListData.Set_custom_2dlist();
            }
            Indent();
            indexToRemove = DrawInt(indexToRemove);
            if (DrawButton(SetDataSceneStrings.RemoveIndexLbl))
            {
                subList.RemoveAt(indexToRemove);
                twoDListData.Set_custom_2dlist();
            }

            NewLine();
            Indent(2);

            for (int i = 0; i < subList.Count; i++)
            {
                if (i > 0)
                {
                    NewLine();
                    Indent(2);
                }

                DrawLabel(subList[i].Key + ":");

                string oldKey = subList[i].Key;
                newKey = DrawString(newKey);

                string oldVal = subList[i].description;
                subList[i].description = DrawString(subList[i].description);

                if (oldKey != newKey && DrawButton(SetDataSceneStrings.SetRefBtn))
                {
                    subList[i] = new GDESetCustomData(newKey);
                    needsSave  = true;
                }

                needsSave = (subList[i].description != oldVal) | needsSave;
            }

            NewLine(2);
            Indent();
        }

        if (needsSave)
        {
            twoDListData.Set_custom_2dlist();
        }
    }