Ejemplo n.º 1
0
        public BaseObject CreateObject()
        {
            WarPlane warPlane = new WarPlane
            {
                engine = new Engine()
            };

            return(warPlane);
        }
Ejemplo n.º 2
0
        private string SerializeWarPlane(WarPlane warPlane, List <BaseObject> listObjects)
        {
            // string builder
            string serializedWarPlane = warPlane.GetType().ToString() + " ";

            serializedWarPlane += warPlane.FlightAltitude.ToString() + " ";
            serializedWarPlane += warPlane.Identificator + " ";
            serializedWarPlane += warPlane.Model + " ";
            serializedWarPlane += warPlane.ReleaseYear.ToString() + " ";
            serializedWarPlane += warPlane.Speed.ToString() + " ";
            serializedWarPlane += warPlane.engine.Fuel.ToString() + " ";
            serializedWarPlane += warPlane.engine.Power.ToString() + " ";

            if (warPlane.flattop == null)
            {
                serializedWarPlane += "null ";
            }
            else
            {
                for (int i = 0; i < listObjects.Count; i++)
                {
                    if (warPlane.flattop == listObjects[i])
                    {
                        serializedWarPlane += i.ToString() + " ";
                        break;
                    }
                }
            }

            if (warPlane.Pilot == null)
            {
                serializedWarPlane += "null ";
            }
            else
            {
                for (int i = 0; i < listObjects.Count; i++)
                {
                    if (warPlane.Pilot == listObjects[i])
                    {
                        serializedWarPlane += i.ToString() + " ";
                        break;
                    }
                }
            }

            return(serializedWarPlane);
        }
Ejemplo n.º 3
0
        private void DeserializeWarPlane(string serializedWarPlane, WarPlane warPlane, List <BaseObject> listObjects)
        {
            warPlane.FlightAltitude = int.Parse(serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")));
            serializedWarPlane      = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);

            warPlane.Identificator = serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" "));
            serializedWarPlane     = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);

            warPlane.Model     = serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" "));
            serializedWarPlane = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);

            warPlane.ReleaseYear = int.Parse(serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")));
            serializedWarPlane   = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);

            warPlane.Speed     = int.Parse(serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")));
            serializedWarPlane = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);

            warPlane.engine       = new Engine();
            warPlane.engine.Fuel  = (FuelType)Enum.Parse(typeof(FuelType), serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")));
            serializedWarPlane    = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);
            warPlane.engine.Power = int.Parse(serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")));
            serializedWarPlane    = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);

            if (serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")) == "null")
            {
                warPlane.flattop = null;
            }
            else
            {
                warPlane.flattop = (Flattop)listObjects[int.Parse(serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")))];
            }
            serializedWarPlane = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);

            if (serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")) == "null")
            {
                warPlane.Pilot = null;
            }
            else
            {
                warPlane.Pilot = (Pilot)listObjects[int.Parse(serializedWarPlane.Substring(0, serializedWarPlane.IndexOf(" ")))];
            }
            serializedWarPlane = serializedWarPlane.Remove(0, serializedWarPlane.IndexOf(" ") + 1);
        }