Esempio n. 1
0
    public static void StoreObject(StringWriterEx str, GameObject obj)
    {
        Component[] components = obj.GetComponents <Component>();

        str.WriteLine(obj.activeSelf);

        str.WriteLine(components.Length);



        foreach (Component c in components)
        {
            str.WriteLine(c.GetType().Name);
            if (c is Behaviour)
            {
                str.WriteLine((c as Behaviour).enabled);
            }
            else
            {
                str.WriteLine("true");
            }

            StoreComponent(str, c);
            //StoreClass<Component>(str,c);
        }
    }
Esempio n. 2
0
        public override void Save(StringWriterEx str, object obj)
        {
            Rigidbody2D r = obj as Rigidbody2D;

            str.WriteLine(r.isKinematic);
            str.WriteLine(r.gravityScale);
        }
Esempio n. 3
0
        public override void Save(StringWriterEx str, object obj)
        {
            Transform tr = obj as Transform;

            str.WriteLine(tr.position);
            str.WriteLine(tr.localScale);
            str.WriteLine(tr.rotation.eulerAngles);
        }
Esempio n. 4
0
        public override void Save(StringWriterEx str, object obj)
        {
            Animator          a = obj as Animator;
            AnimatorStateInfo s = a.GetCurrentAnimatorStateInfo(0);

            str.WriteLine(s.nameHash);
            str.WriteLine(s.normalizedTime);
        }
Esempio n. 5
0
        public static void GenerateReportToHttpResponseAsZipArchive(IEnumerable <ReportParameters> parametersCollection, string zipFileName, Encoding encoding)
        {
            if (parametersCollection == null)
            {
                throw new ArgumentNullException("parametersCollection");
            }

            HttpContext context = HttpContext.Current;

            if (context == null)
            {
                throw new InvalidOperationException("HttpContext is not present.");
            }

            HttpResponse resp = context.Response;

            resp.Clear();
            //resp.ContentEncoding = encoding;
            try
            {
                ZipFile zf = new ZipFile();
                foreach (ReportParameters parameters in parametersCollection)
                {
                    StringWriterEx sw = new StringWriterEx(encoding);
                    GenerateReport(parameters, sw);
                    zf.AddFileWithContent(parameters.TargetFilePathParts, sw.ToString(), encoding);
                }

                parametersCollection = null;

                byte[] zipBytes = zf.SaveToBytes();
                resp.BinaryWrite(zipBytes);
                if (context.Request.Browser.Browser == "IE")
                {
                    resp.ContentType = ContentTypes.OctetStream;
                }

                else
                {
                    resp.ContentType = ContentTypes.Zip;
                }

                if (string.IsNullOrEmpty(zipFileName) == false)
                {
                    AddContentDispositionHeader(zipFileName);
                }
            }
            catch (Exception)
            {
                resp.Clear();
                throw;
            }
            resp.End();
        }
Esempio n. 6
0
    public static void Checkpoint()
    {
        StringWriterEx str = new StringWriterEx();


        EnemyShipController[] enemies = GameObject.FindObjectsOfType <EnemyShipController>();

        str.WriteLine(enemies.Length);

        foreach (EnemyShipController es in enemies)
        {
            //EnemyShipController es = enemy.GetComponent<EnemyShipController>();

            Debug.Log("Save: storing " + es.PrefabName);
            str.WriteLine(es.PrefabName);


            //str.WriteLine(es.transform.position);

            //StoreClass<EnemyShipController>(str,es);
            ObjectSerializer.StoreObject(str, es.gameObject);
        }

        PlanetController planet = GameObject.FindGameObjectWithTag("Planet").GetComponent <PlanetController>();

        ObjectSerializer.StoreObject(str, planet.gameObject);
        ObjectSerializer.StoreObject(str, planet.Gun.gameObject);

        UIController ui = GameObject.Find("UICanvas").GetComponent <UIController>();

        ObjectSerializer.StoreComponent(str, ui.HpBar);
        ObjectSerializer.StoreComponent(str, ui.Score);
        ObjectSerializer.StoreComponent(str, planet.Multiplier.Indicator);

        EnemyGeneratorController eg = GameObject.Find("EnemyGenerator").GetComponent <EnemyGeneratorController>();

        ObjectSerializer.StoreComponent(str, eg);
        StageController[] stages = eg.GetComponentsInChildren <StageController>(true);

        foreach (StageController s in stages)
        {
            ObjectSerializer.StoreObject(str, s.gameObject);
        }


        StreamWriter log = new StreamWriter("g:/unity-dev/OrbitalDefender/log.txt", false);

        log.WriteLine(str.ToString());
        log.Close();


        PlayerPrefs.SetString(CheckpointName, str.ToString());
    }
Esempio n. 7
0
    public static StringBuilder AsJson <T>(T input, JsonSerializerSettings settings, bool newLineEscapingDisabled)
    {
        var serializer = JsonSerializer.Create(settings);
        var builder    = new StringBuilder();

        using var stringWriter = new StringWriterEx(builder, newLineEscapingDisabled);
        using var writer       = new JsonTextWriter(stringWriter)
              {
                  QuoteChar = QuoteChar,
                  QuoteName = false
              };
        serializer.Serialize(writer, input);
        return(builder);
    }
Esempio n. 8
0
        public virtual void Save(StringWriterEx str, object obj)
        {
            Type t = obj.GetType();

            var fields = t.GetFields(getFieldFlags).Where(f => f.GetCustomAttributes(typeof(StoreThis), true).Length > 0).ToArray();

            str.WriteLine(fields.Length);
            //Debug.Log("   > Class has "+fields.Length+" fields");
            foreach (FieldInfo f in fields)
            {
                str.WriteLine(f.Name);

                str.WriteLine(StoreBase.SaveField(f, obj));
            }
        }
Esempio n. 9
0
 public static void StoreComponent(StringWriterEx str, Component c)
 {
     GetClassSerializer(c).Save(str, c);
 }
Esempio n. 10
0
		public static void GenerateReportToHttpResponseAsZipArchive(IEnumerable<ReportParameters> parametersCollection, string zipFileName, Encoding encoding)
		{
			if (parametersCollection == null)
				throw new ArgumentNullException("parametersCollection");

			HttpContext context = HttpContext.Current;
			if (context == null)
				throw new InvalidOperationException("HttpContext is not present.");

			HttpResponse resp = context.Response;
			resp.Clear();
			//resp.ContentEncoding = encoding;
			try
			{
				ZipFile zf = new ZipFile();
				foreach (ReportParameters parameters in parametersCollection)
				{
					StringWriterEx sw = new StringWriterEx(encoding);
					GenerateReport(parameters, sw);
					zf.AddFileWithContent(parameters.TargetFilePathParts, sw.ToString(), encoding);
				}

				parametersCollection = null;

				byte[] zipBytes = zf.SaveToBytes();
				resp.BinaryWrite(zipBytes);
				if (context.Request.Browser.Browser == "IE")
					resp.ContentType = ContentTypes.OctetStream;

				else
					resp.ContentType = ContentTypes.Zip;

				if (string.IsNullOrEmpty(zipFileName) == false)
					AddContentDispositionHeader(zipFileName);
			}
			catch (Exception)
			{
				resp.Clear();
				throw;
			}
			resp.End();
		}