public void ClickSave()
        {
            InitialConfigLoader   loader = new InitialConfigLoader();
            InitialConfigurations config = loader.loadInitialConfig();

            List <BarrierConfigurations> newBarrierConfig = new List <BarrierConfigurations>();

            for (int i = 0; i < config.barrierConfig.Count; i++)
            {
                string GOname   = "BarrierSkin " + i;
                var    skinitem = barrierMenu.transform.Find("Panel").Find("Scroll Rect").Find("Content Panel").Find(GOname).Find("Panel");

                BarrierConfigurations barrieritem = new BarrierConfigurations();

                barrieritem.name   = skinitem.Find("TextName").GetComponent <Text>().text;
                barrieritem.width  = float.Parse(skinitem.Find("InputField_Thickness").GetComponent <InputField>().text);
                barrieritem.height = float.Parse(skinitem.Find("InputField_Height").GetComponent <InputField>().text);
                barrieritem.Path   = materialPaths[i];
                if (isTextureChanged[i])
                {
                    Material  mat      = (Material)Resources.Load(barrieritem.Path);
                    byte[]    fileData = File.ReadAllBytes(texturePaths[i]);
                    Texture2D tex      = new Texture2D(2, 2);
                    tex.LoadImage(fileData);
                    mat.mainTexture      = tex;
                    mat.mainTextureScale = new Vector2(5, 1);
                }
            }

            config.barrierConfig = newBarrierConfig;
            loader.saveInitialConfig(Path.Combine(Application.persistentDataPath, "ConfigFiles/initialConfig.xml"), config);


            barrierMenu.SetActive(false);
        }
Ejemplo n.º 2
0
        public Barrier(Way w, List <BarrierConfigurations> config)
        {
            id            = w.id;
            type          = getBarrierType(w.tags);
            barrierConfig = getBarrierConfiguration(config, type);

            height          = barrierConfig.height;
            thickness       = barrierConfig.width;
            barrierMaterial = (Material)Resources.Load(barrierConfig.Path);

            BarrierContainer = new GameObject("Barrier" + w.id);
            BarrierContainer.transform.position = new Vector3(0, 0, 0);
            BarrierElements = new List <GameObject>();
            barrierWay      = w;
            generateBarrier(w);
        }