public void OnProtoDeserialize(ProtobufSerializer serializer)
        {
            Log.Info("// ****************************** Load Data *********************************** //");

            if (ID != null)
            {
                Log.Info($"Loading ARSolutions {ID}");

                string filePath = FilesHelper.GenerateSaveFileString(ID);
                if (File.Exists(filePath))
                {
                    string savedDataJson = File.ReadAllText(filePath).Trim();

                    //LoadData
                    var savedData = JsonConvert.DeserializeObject <SaveData>(savedDataJson);

                    HasBreakerTripped = savedData.HasBreakerTripped;
                    LiveMixin.health  = savedData.Health;
                    Charge            = savedData.Charge;
                    _currentSpeed     = savedData.CurrentSpeed;
                    _turbine.transform.Rotate(Vector3.forward, savedData.DegPerSec);
                    _targetRotation = savedData.TurbineRot.TargetRotationToQuaternion();
                    _currentBiome   = savedData.Biome;
                    _passedTime     = savedData.PassedTime;
                    AISolutionsData.StartingRotation = _targetRotation;
                }
            }
            else
            {
                Log.Error("PrefabIdentifier is null");
            }
            Log.Info("// ****************************** Loaded Data *********************************** //");
        }
        public void OnProtoSerialize(ProtobufSerializer serializer)
        {
            if (!Directory.Exists(Information.GetSaveFileDirectory()))
            {
                Directory.CreateDirectory(Information.GetSaveFileDirectory());
            }

            var saveData = new SaveData
            {
                HasBreakerTripped = HasBreakerTripped,
                TurbineRot        = new TargetRotation(_targetRotation),
                Health            = LiveMixin.health,
                Charge            = Charge,
                DegPerSec         = GetBiomeData(_currentBiome).Speed,
                Biome             = _currentBiome,
                CurrentSpeed      = _currentSpeed,
                PassedTime        = _passedTime
            };

            var output = JsonConvert.SerializeObject(saveData, Formatting.Indented);

            File.WriteAllText(FilesHelper.GenerateSaveFileString(ID), output);

            LoadItems.CleanOldSaveData();
        }