Esempio n. 1
0
 private void Update()
 {
     if (StartTest)
     {
         StartTest = false;
         var sweapon = WeaponPreserializer.Preserializate(weapon);
         print(JsonUtility.ToJson(sweapon));
         var mweapon = WeaponPreserializer.DeserializeWeapon(sweapon);
     }
 }
Esempio n. 2
0
        public static void SaveToFile()
        {
            SerializableWeaponBundle bundle = new SerializableWeaponBundle();

            bundle.weapons = new PreserializedWeapon[Instance.weapons.Count];
            bundle.partIDs = new string[Instance.spareParts.Count];

            for (int i = 0; i < Instance.weapons.Count; i++)
            {
                bundle.weapons[i] = WeaponPreserializer.Preserializate(Instance.weapons[i]);
            }

            for (int i = 0; i < Instance.spareParts.Count; i++)
            {
                bundle.partIDs[i] = Instance.spareParts[i].PrefabID;
            }

            Save(bundle);
        }
Esempio n. 3
0
        public static void LoadFromFile()
        {
            //var bundle = Load();
            SerializableWeaponBundle bundle = null;

            if (bundle == null)
            {
                print("Bundle is null");
                if ((Instance.weapons?.Count > 0) ||
                    (Instance.spareParts?.Count > 0))
                {
                    return;
                }

                print("Have a set of default parts.");
                bundle         = new SerializableWeaponBundle();
                bundle.weapons = new PreserializedWeapon[0];
                bundle.partIDs = new string[] {
                    "AK47_R_V1",
                    "AK47_B_V1",
                    "A2_M_V1",
                    "9mm",
                    "AK47_St_V1",
                };
            }

            Instance.weapons.Clear();
            for (int i = 0; i < bundle.weapons.Length; i++)
            {
                var weapon = WeaponPreserializer.DeserializeWeapon(bundle.weapons[i]);
                Instance.weapons.Add(weapon);
                ReturnWeapon(weapon);
            }

            Instance.spareParts.Clear();
            for (int i = 0; i < bundle.partIDs.Length; i++)
            {
                var part = GameObject.Instantiate(WAPrefabStore.GetPartPrefab(bundle.partIDs[i]).gameObject).GetComponent <MonoPart>();
                Instance.spareParts.Add(part);
                ReturnPart(part);
            }
        }