Example #1
0
 private void DeserializeRover(Dictionary <string, IPowerable> powerableMap)
 {
     Rovers.RoverInput rovIn = GameObject.FindObjectOfType <Rovers.RoverInput>();
     rovIn.Data = this.RoverData;
     rovIn.transform.position = this.RoverData.Position;
     rovIn.transform.rotation = this.RoverData.Rotation;
     powerableMap.Add(rovIn.PowerableInstanceID, rovIn);
 }
Example #2
0
        public void OnBeforeSerialize()
        {
#if UNITY_EDITOR
            reflectionRuns = 0;
            reflectionCheckTime.Reset();
            reflectionPropertyTime.Reset();
#endif
            this._MarshalManyFromScene <ResourceComponent, CrateData>((crates) => this.Crates = crates);
            this._MarshalManyFromScene <ConstructionZone, ConstructionData>((zones) => this.ConstructionZones            = zones);
            this._MarshalManyFromScene <ResourcelessGameplay, ResourcelessModuleData>((modules) => this.ResourcelessData = modules);
            this._MarshalManyFromScene <MultipleResourceModuleGameplay, MultipleResourceModuleData>((modules) => this.MultiResourceContainerData = modules);
            this._MarshalManyFromScene <SingleResourceModuleGameplay, SingleResourceModuleData>((modules) => this.SingleResourceContainerData    = modules);
            this._MarshalManyFromScene <Pipe, PipelineData>((pipes) => this.PipeData            = pipes);
            this._MarshalManyFromScene <Powerline, PowerlineData>((powerline) => this.PowerData = powerline);
            this._MarshalManyFromScene <IceDrill, IceDrillData>((drill) => this.IceDrillData    = drill);
            this._MarshalManyFromScene <PowerCube, PowerCubeData>((power) => this.PowerCubeData = power);
            this._MarshalManyFromScene <MobileSolarPanel, MobileSolarPanelData>((panel) => this.MobileSolarPanelData = panel);
            this._MarshalManyFromScene <Pump, FacingData>((pump) => this.PumpData                   = pump);
            this._MarshalManyFromScene <Toolbox, ToolboxData>((box) => this.ToolboxData             = box);
            this._MarshalManyFromScene <Minilab, MinilabData>((lab) => this.MinilabData             = lab);
            this._MarshalManyFromScene <Deposit, DepositData>((dep) => this.Deposits                = dep);
            this._MarshalManyFromScene <CargoLander, CargoLanderData>((lander) => this.CargoLanders = lander);
            this._MarshalManyFromScene <LandingZone, LandingZoneData>((lz) => this.LandingZones     = lz);

            this._MarshalHabitats();

            Rovers.RoverInput rovIn = GameObject.FindObjectOfType <Rovers.RoverInput>();
            if (rovIn != null)
            {
                this.RoverData = (RoverData)rovIn.Data.Marshal(rovIn.transform);
            }

#if UNITY_EDITOR
            UnityEngine.Debug.Log(String.Format("serialize reflection: {0} run, type checks: {1}ms, property reflection: {2}ms", reflectionRuns, reflectionCheckTime.ElapsedMilliseconds, reflectionPropertyTime.ElapsedMilliseconds));
#endif
        }