Create text to save data in unity

Source: Internet
Author: User

  public void Createyunyd () {GameToolsManager.Instance.effectType = EffectType.        Yunyd;    Createyunorwu ("Effect/yunwu-yd", Vector3.zero); The public void Createyunzy () {GameToolsManager.Instance.effectType = EffectType.        Yunzy;    Createyunorwu ("Effect/yunwu-zy", Vector3.zero); The public void Createwu () {GameToolsManager.Instance.effectType = EffectType.        Wu;    Createyunorwu ("Effect/wu", Vector3.zero);        } Public Gameobject Createyunorwu (string Path,vector3 VEC) {gameobject parent;        Parent = Gameobject.find ("Scene/effect");        Effect = gameobject.instantiate (resources.load (path)) as Gameobject; Effect.        SetActive (TRUE);               Effect.transform.SetParent (Parent.transform);        Effect.transform.localPosition = VEC; Effect.name = Effect.name.Replace ("(Clone)", String.        Empty);            return effect; }///<summary>///Save cloud and fog data///</summary> public void SaveyunorWu () {Transform child;        Gameobject parent;        Parent = Gameobject.find ("Scene/effect");        if (Isexisttxt ()) {cleareffectdata ();            } for (int i=0; i< parent.transform.childCount; i++) {child = Parent.transform.GetChild (i);            Effectdata effectdata = new Effectdata ();            Effectdata.effectname = Child.name;            Effectdata.vectorx = child.localposition.x;            Effectdata.vectory = CHILD.LOCALPOSITION.Y;            Effectdata.vectorz = child.localposition.z;            CreateTextFile ("Effectdata", System.Convert.ToString (Effectdata.effectname));            CreateTextFile ("Effectdata", System.Convert.ToString (Effectdata.vectorx));            CreateTextFile ("Effectdata", System.Convert.ToString (effectdata.vectory));        CreateTextFile ("Effectdata", System.Convert.ToString (Effectdata.vectorz));    } readtextdata ("Effectdata"); }///<summary>//clear the data in the text    </summary> public void Cleareffectdata () {cleardata ("Effectdata"); }///<summary>//TXT file exists////</summary>//<returns></returns> public bool is        Existtxt () {String path = Application.datapath + "/effect/effectdata.txt"; if (!        File.exists (path)) {return false;    } return true;    }///<summary>//Create a text file and write the text data///</summary>//<param name= "FileName" ></param>    <param name= "Strfiledata" ></param> public void CreateTextFile (string fileName, String strfiledata)        {string Strwritefiledata;        Strwritefiledata = Strfiledata;        String path = Application.datapath + "/effect/" + fileName + ". txt"; if (!        File.exists (Path)) {Startcoroutine (path)) (Creattxt);        } StreamWriter writer;        writer = File.appendtext (path); Writer. Write (StrwritefiledatA + "_"); Writer.    Close (); } IEnumerator Creattxt (string path) {FileStream fs = new FileStream (path, FileMode.Create, FileAccess.Write)        ;        Yield return FS; Fs.    Close ();        }///<summary>///Read text data///</summary> public string Readtextdata (string fileName) {        string data;        String path = Application.datapath + "/effect/" + fileName + ". txt"; if (!        File.exists (path)) {return null;        } StreamReader Reader;        Reader = File.OpenText (path); data = reader.        ReadToEnd (); if (data! = null) {reader.            Close ();            Debug.Log (data);        return data; } reader.        Close ();    return data; }///<summary>//Empty the saved data file///</summary> public void ClearData (string fileName) {s        Tring Path = Application.datapath + "/effect/" + fileName + ". txt";   if (file.exists (path)) {         FileStream fs = new FileStream (path, FileMode.Open, FileAccess.Write); Fs.            SetLength (0); Fs.        Close ();    } return; }///<summary>//delete the already loaded cloud and fog////</summary> public void Deleteyunorwu () {Gameobject        Parent        Parent = Gameobject.find ("Scene/effect"); for (int i = 0; i < Parent.transform.childCount; i++) {Destroy (Parent.transform.GetChild (i). Gameobje        CT); }}///<summary>//special effects data///</summary> public struct Effectdata {public string EF        Fectname;        public double Vectorx;        public double vectory;    public double Vectorz;    } dictionary<int, list<float>> effectdata;    Dictionary<int, string> effectnamedic;        <summary>///initialization effect data///</summary> public void Initeffectdata () {Vector3 VEC;        String name;        Effectdata = GetEffectData (); Debug.loG ("Come in");        if (Effectdata = = null) {return; } for (int i = 0; i < Effectnamedic.count; i++) {Debug.Log ("come in?")            ");            name = Effectnamedic[i];            List <float> vecdata = effectdata[i];            Debug.Log (vecdata[1]);            VEC = new Vector3 (vecdata[0],vecdata[1],vecdata[2]);        Startcoroutine (Createsaveeffect (name, VEC)); }}///<summary>//create effects//</summary>//<returns></returns> IEnumerator Cr        Eatesaveeffect (String Name,vector3 vec) {string fullPath = "effect/" + name;            Yield return Createyunorwu (FullPath, VEC); }///<summary>///for special data///</summary> public dictionary<int, list<float>> GETEFFEC        Tdata () {bool changelist = false;        Effectdata = new Dictionary<int, list<float>> ();        Effectnamedic = new Dictionary<int, string> (); STring effectname = null;        list<float> vectordata = new list<float> ();        String data = Readtextdata ("Effectdata");        int count = 0;        if (data = = NULL) {return null;        } Char delimiter = ' _ '; string[] StringData = data.        Split (delimiter); for (int i = 0; i < stringdata.length-1; i++) {if (changelist) {Vectord                ATA = new list<float> ();            Changelist = false;            } if (i% 4 = = 0) {effectname = Stringdata[i];                } if (i% 4 = = 1) {Double Vectorx = System.Convert.ToDouble (Stringdata[i]);            Vectordata.add ((float) vectorx);                } if (i% 4 = = 2) {Double vectory = System.Convert.ToDouble (Stringdata[i]);            Vectordata.add ((float) vectory);        } if (i% 4 = = 3) {        Double Vectorz = System.Convert.ToDouble (Stringdata[i]);                Vectordata.add ((float) vectorz);                Effectdata.add (count, Vectordata);                Effectnamedic.add (count, Effectname);                Vectordata = new list<float> ();                count++;            Debug.Log (count+ "count");        }}//debug.log (Effectdata);        Debug.Log (effectdata[2][1]+ "Effectdata");    return effectdata;    } raycasthit2d hit = new Raycasthit2d ();    Particlesystem par;        Vector3 Mousepos; private void Update () {if (Input.getmousebuttondown (0)) {GameDataManager.Instance.IsMoveCame            RA = false;            Mousepos = Camera.main.ScreenToWorldPoint (input.mouseposition);            Vector2 mousepos2d = new Vector2 (mousepos.x, MOUSEPOS.Y);        Hit = Physics2d.raycast (mousepos2d, Vector2.zero); } if (Input.getmousebutton (0) &&hit.transform!=null&& (hit.transform.namE.equals ("WU") | | Hit.transform.name.Equals ("Yunwu-yd") | | Hit.transform.name.Equals ("Yunwu-zy"))) {Mousepos = Camera.main.ScreenToWorldPoint (input.mouseposition)            ;            Vector2 mousepos2d = new Vector2 (mousepos.x, MOUSEPOS.Y); if (hit.transform! = null && hit.transform.name.Equals ("Yunwu-yd") | | hit.transform.name.Equals ("Yunwu-zy")            )//{//par = hit.transform.getcomponent<particlesystem> (); Par.            Pause ();            } if (Hit.transform.name.Equals ("WU")) {hit.transform.position = mousepos2d; }} if (Input.getmousebuttonup (0) && hit.transform! = null && (hit.transform.name.Equals ("Wu ") || Hit.transform.name.Equals ("Yunwu-yd") | |            Hit.transform.name.Equals ("Yunwu-zy"))) {par = hit.transform.getcomponent<particlesystem> ();   Vector3 Mousepos = Camera.main.ScreenToWorldPoint (input.mouseposition);         Vector3 mousepos3d = new Vector3 (mousepos.x, mousepos.y, 0);            Vector3 VEC = new Vector3 (mousepos.x, mousepos.y, 0);                if (Hit.transform.name.Equals ("Yunwu-yd")) {//vector3 VEC = hit.transform.position; Par.                Stop ();                Destroy (Hit.transform.gameObject);            Startcoroutine (Createsaveeffect ("Yunwu-yd", VEC)); } if (Hit.transform.name.Equals ("Yunwu-zy")) {//vector3 VEC = new Vector3 (mousepos.x                , Mousepos.y, 0);                Destroy (Hit.transform.gameObject);            Startcoroutine (Createsaveeffect ("Yunwu-zy", VEC));            } Hit.transform.localScale = Vector3.one;        GameDataManager.Instance.IsMoveCamera = true; }    }

  

Create text to save data in unity

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.