Exemplo n.º 1
0
 public void setOriginalState(float h, float l, float i, float p, float s,float t)
 {
     m_originalState = new Hlips(h,l,i,p,s,t);
 }
Exemplo n.º 2
0
    public void load(BinaryReader buf,bool completeLoad, string version)
    {
        //camera
        //chargement données montage
        Hlips toload;
        toload.m_h = buf.ReadSingle();
        toload.m_l = buf.ReadSingle();
        toload.m_i = buf.ReadSingle();
        toload.m_p = buf.ReadSingle();
        toload.m_s = buf.ReadSingle();
        toload.m_t = buf.ReadSingle();

        Debug.Log ("Chargement toload   " + toload.m_h + "  " + toload.m_l + "  " + toload.m_i + "  " + toload.m_p + "  " + toload.m_s + "  "+ toload.m_t + "  ");

        //chargement données origine (gyro)
        m_originalState = new Hlips();

        m_originalState.m_h = buf.ReadSingle();
        m_originalState.m_l = buf.ReadSingle();
        m_originalState.m_i = buf.ReadSingle();
        m_originalState.m_p = buf.ReadSingle();
        m_originalState.m_s = buf.ReadSingle();
        m_originalState.m_t = buf.ReadSingle();

        Debug.Log ("OriginalState   " + m_originalState.m_h + "  " + m_originalState.m_l + "  " + m_originalState.m_i + "  " + m_originalState.m_p + "  " + m_originalState.m_s + "  "+ m_originalState.m_t + "  ");

        m_cameraData.Clear();
        if(completeLoad)
        {
            m_cameraData.Add(toload);//données sauvegardées
            GameObject.Find("camPivot").GetComponent<SceneControl>().loadFromModel();
        }
        else
        {
            m_cameraData.Add(m_originalState);//données sauvegardées
            GameObject.Find("camPivot").GetComponent<SceneControl>().loadFromModel();
        //			/*m_cameraData.*/setFromOriginal();//données originales(gyroscope si photo prise de l'ipad)
        }

        //		//ce serait mieux de faire un "fireSceneModelChange" a la fin du load mais bon ...
        //		//ptet plus tard

        //		//light
        //		LightData.Clear();
        Ahibp liteToLoad = new Ahibp(0,0,0,0,0,128.0f,128.0f,128.0f);
        liteToLoad.m_a = buf.ReadSingle();
        liteToLoad.m_h = buf.ReadSingle();
        liteToLoad.m_i = buf.ReadSingle();
        liteToLoad.m_b = buf.ReadSingle();
        liteToLoad.m_p = buf.ReadSingle();

        SetNightMode(false);
        if(!LibraryLoader.numVersionInferieur(version,"1.2.1"))
        {
            liteToLoad.m_img_r = buf.ReadSingle();
            liteToLoad.m_img_g = buf.ReadSingle();
            liteToLoad.m_img_b = buf.ReadSingle();

        }
        if(!LibraryLoader.numVersionInferieur(version,"1.2.2"))
        {
            _nightMode = buf.ReadBoolean();
        }

        m_lightData.Clear();
        m_lightData.Add(liteToLoad);
        GameObject.Find("LightPivot").GetComponent<LightConfiguration>().LoadFromModel();
        //		LightData.Add(buf.ReadSingle()); //FLOAT
        //		LightData.Add(buf.ReadSingle()); //FLOAT
        //		LightData.Add(buf.ReadSingle()); //FLOAT
        //		LightData.Add(buf.ReadSingle()); //FLOAT
        //		LightData.Add(buf.ReadSingle()); //FLOAT
        //
        //		GameObject.Find("LightPivot").GetComponent<LightConfiguration>().loadFromModel(LightData);
        //
        //Reflex
        m_reflex.m_id = buf.ReadInt32();
        m_reflex.m_rate = buf.ReadSingle();
        Debug.Log("LOADED ID" + m_reflex.m_id + " taux "+ m_reflex.m_rate);
        //		GameObject.Find("LightPivot").GetComponent<LightConfiguration>().setReflexionLimits(m_reflex.m_id);
        GameObject.Find("LightPivot").GetComponent<LightConfiguration>().loadReflex(m_reflex.m_rate,m_reflex.m_id);

        //background
        float scaleY = buf.ReadSingle();

        isFromPhototheque = buf.ReadBoolean();

        Vector3 tmp = GameObject.Find("backgroundImage").transform.localScale;
        tmp.y = scaleY;
        GameObject.Find("backgroundImage").transform.localScale = tmp;

        if(isFromPhototheque)
        {
            backgroundPath = buf.ReadString();
            background = GameObject.Find("MainScene").GetComponent<GUIStart>().getPicFromPhototheque(int.Parse(backgroundPath));

            GameObject.Find("MainScene").GetComponent<Montage>().reset();

            GameObject.Find("MainScene").GetComponent<GUIMenuMain>().setStarter(false);
            GameObject.Find("MainScene").GetComponent<GUIMenuMain>().SetHideAll(true);
        }
        else
        {
            int len = buf.ReadInt32();
            int w = buf.ReadInt32();
            int h = buf.ReadInt32();
            byte[] bytes = buf.ReadBytes(len);

            background = new Texture2D(w,h,TextureFormat.RGB24,false);
            background.LoadImage(bytes);

            GameObject.Find("MainScene").GetComponent<Montage>().reset();

            GameObject.Find("MainScene").GetComponent<GUIMenuMain> ().setStarter (false);
            GameObject.Find("MainScene").GetComponent<GUIMenuMain>().SetHideAll(true);
        //			GameObject.Find("MainScene").GetComponent<Montage>().loadBgFromOutside(backgroundPath);
        }

           // -- Mode2D --
        if(!LibraryLoader.numVersionInferieur(version,"1.3.2"))
        {
            bool m2d_empty = buf.ReadBoolean();
            if(!m2d_empty)
            {
                Rect org = new Rect();
                org.x = buf.ReadSingle();
                org.y = buf.ReadSingle();
                org.width = buf.ReadSingle();
                org.height = buf.ReadSingle();

                Rect saved = new Rect();
                saved.x = buf.ReadSingle();
                saved.y = buf.ReadSingle();
                saved.width = buf.ReadSingle();
                saved.height = buf.ReadSingle();

                Vector2 old = new Vector2();
                old.x = buf.ReadSingle();
                old.y = buf.ReadSingle();

                float   zoomO    = buf.ReadSingle();
                Vector2 translaO = new Vector2(buf.ReadSingle(), buf.ReadSingle());
                float   rotaO    = buf.ReadSingle();
                float[] lineData = null;
                bool    oldSave    = false;

                if(LibraryLoader.numVersionInferieur(version,"1.6.4"))
                {
                    oldSave = true; // Tag the save as old so the Mode2D knows it must not load everything
                    buf.ReadSingle(); // Old "ZoomImg" variable
                }
                else
                {
                    //DEBUG_SAVE
                    int countLigneData=(int)buf.ReadSingle();
                    lineData = new float[countLigneData+1];
                 	lineData[0] = countLigneData;
                    for(int i=1; i<lineData.Length; i++)    // New lineData
                        lineData[i] = buf.ReadSingle();

                }

                bool image = buf.ReadBoolean();
                if(image)
                {
                    int len = buf.ReadInt32();
                    int w = buf.ReadInt32();
                    int h = buf.ReadInt32();
                    byte[] bytes = buf.ReadBytes(len);

                    Texture2D img = new Texture2D(w,h);
                    img.LoadImage(bytes);

                    m_mode2D.Set(org, saved, old, zoomO, translaO, rotaO, lineData, img, oldSave);
                }
                else
                    m_mode2D.Set(org, saved, old, zoomO, translaO, rotaO, lineData, null, oldSave);
            }
        }
    }