Exemplo n.º 1
0
 private SatelliteData(SatelliteSerializable serializable, Database database)
 {
     ItemId     = new ItemId <SatelliteData>(serializable.Id, serializable.FileName);
     Name       = serializable.Name;
     ModelImage = new SpriteId(serializable.ModelImage);
     ModelScale = new NumericValue <float>(serializable.ModelScale, 0.1f, 100f);
     SizeClass  = serializable.SizeClass;
     Layout     = new Layout(serializable.Layout);
     Barrels    = serializable.Barrels?.Select(item => BarrelData.Deserialize(item, database)).ToArray();
 }
Exemplo n.º 2
0
        public Satellite(SatelliteSerializable serializable, Database database)
        {
            Id         = new ItemId <Satellite>(serializable.Id, serializable.FileName);
            Name       = serializable.Name;
            ModelImage = serializable.ModelImage;
            ModelScale = new NumericValue <float>(serializable.ModelScale, 0.1f, 100f);
            SizeClass  = serializable.SizeClass;
            Layout     = new Layout(serializable.Layout);
            Barrels    = serializable.Barrels?.Select(item => new Barrel(item, database)).ToArray();

            OnDataDeserialized(serializable, database);
        }
Exemplo n.º 3
0
        private Satellite(SatelliteSerializable serializable, Database.Loader loader)
        {
            Id = new ItemId <Satellite>(serializable.Id);
            loader.AddSatellite(serializable.Id, this);

            Name       = serializable.Name;
            ModelImage = new SpriteId(serializable.ModelImage, SpriteId.Type.Satellite);
            ModelScale = UnityEngine.Mathf.Clamp(serializable.ModelScale, 0.1f, 100f);
            SizeClass  = serializable.SizeClass;
            Layout     = new Layout(serializable.Layout);
            Barrels    = new ImmutableCollection <Barrel>(serializable.Barrels?.Select(item => Barrel.Create(item, loader)));

            OnDataDeserialized(serializable, loader);
        }
Exemplo n.º 4
0
        public SatelliteSerializable Serialize()
        {
            var serializable = new SatelliteSerializable();

            serializable.Id         = ItemId.Id;
            serializable.FileName   = ItemId.Name;
            serializable.ItemType   = (int)ItemType.Satellite;
            serializable.Name       = Name;
            serializable.ModelImage = ModelImage.ToString();
            serializable.ModelScale = ModelScale.Value;
            serializable.SizeClass  = SizeClass;
            serializable.Layout     = Layout.Data;
            serializable.Barrels    = Barrels?.Select(item => item.Serialize()).ToArray();
            return(serializable);
        }
Exemplo n.º 5
0
 public void Save(SatelliteSerializable serializable)
 {
     serializable.Name       = Name;
     serializable.ModelImage = ModelImage;
     serializable.ModelScale = ModelScale.Value;
     serializable.SizeClass  = SizeClass;
     serializable.Layout     = Layout.Data;
     if (Barrels == null || Barrels.Length == 0)
     {
         serializable.Barrels = null;
     }
     else
     {
         serializable.Barrels = Barrels.Select(item => item.Serialize()).ToArray();
     }
     OnDataSerialized(ref serializable);
 }
Exemplo n.º 6
0
 partial void OnDataSerialized(ref SatelliteSerializable serializable);
Exemplo n.º 7
0
 partial void OnDataDeserialized(SatelliteSerializable serializable, Database database);
Exemplo n.º 8
0
 public static SatelliteData Deserialize(SatelliteSerializable serializable, Database database)
 {
     return(new SatelliteData(serializable, database));
 }
Exemplo n.º 9
0
 public static Satellite Create(SatelliteSerializable serializable, Database.Loader loader)
 {
     return(new Satellite(serializable, loader));
 }
Exemplo n.º 10
0
 partial void OnDataDeserialized(SatelliteSerializable serializable, Database.Loader loader);