public List <SlotSaveData> SaveInfo() { List <SlotSaveData> saveData = new List <SlotSaveData>(); //Hotbar for (int i = 0; i < hotbarSlots.Length; i++) { SlotSaveData temp = hotbarSlots[i].SaveInfo(); temp.ID[0] = i; temp.ID[1] = 999; saveData.Add(temp); } for (int i = 0; i < inventorySlotRows.Length; i++) { for (int k = 0; k < inventorySlotRows[i].rowSlots.Length; k++) { SlotSaveData temp = inventorySlotRows[i].rowSlots[k].SaveInfo(); temp.ID[0] = i; temp.ID[1] = k; saveData.Add(temp); } } return(saveData); }
public void Save(System.Type type) { inventorySaveData = new InventorySaveData(); for (int i = 0; i < slots.Count; i++) { if (slots[i].itemCount > 0 && slots[i].isActive) { SlotSaveData slotdata = new SlotSaveData(); //slotdata.itemStored = slots[i].itemlist[0].gameObject.GetComponent<ItemsDescription>().GetType().ToString(); slotdata.itemStored = slots[i].itemStored.itemProperties.itemDescription.GetItemType().ToString(); slotdata.parent = slots[i].imageSlotPrefab.transform.parent.name; //slotdata.position.x = slots[i].imageSlotPrefab.transform.position.x; //slotdata.position.y = slots[i].imageSlotPrefab.transform.position.y; slotdata.isActive = slots[i].isActive; slotdata.siblingIndex = slots[i].imageSlotPrefab.transform.GetSiblingIndex(); //InventorySaveData.instance.slots.Add(slotdata); //inventorySaveData.slots.Add(slotdata); } } for (int i = 0; i < inventorySaveData.slots.Count; i++) { Debug.Log(inventorySaveData.slots[i].itemStored + "Inventory slot data item stored"); Debug.Log(inventorySaveData.slots[i].isActive + "Inventory slot data active status"); Debug.Log(inventorySaveData.slots[i].numberOfItemsStored + "Inventory slot data number of items stored"); Debug.Log(inventorySaveData.slots[i].siblingIndex + "Inventory sibling index"); } if (activeItem != null) { inventorySaveData.activeItem = activeItem.itemProperties.itemDescription.GetType().ToString(); // inventorySaveData.activeItem = activeItem.itemProperties.name; } else { // Debug.LogError("Active item is null"); inventorySaveData.activeItem = null; } Debug.Log("Created inventory save obj>>>>>>" + inventorySaveData.activeItem); if (type.Equals(typeof(SaveManager))) { SaveManager.saveObject.AddObject(inventorySaveData); } else if (type.Equals(typeof(CheckPointManager))) { CheckPointManager.checkPointData.AddObject(inventorySaveData); } Debug.Log("Added to the save object list successfully"); }
public SlotSaveData SaveInfo() { SlotSaveData saveData = new SlotSaveData(); saveData.hotBarPointers = hotBarPointers; saveData.hotBarQuantDisplay = hotBarQuant; return(saveData); }
public void LoadInfo(SlotSaveData info) { hotBarPointers = info.hotBarPointers; hotBarQuant = info.hotBarQuantDisplay; }
public void LoadGame() { NewGame(); //load from file string filePath = path + "/" + gameDataFileName; if (File.Exists(filePath)) { string[] dataAsJson = File.ReadAllLines(filePath); //Stage 1 get Save Data List <SlotSaveData> inventorySaveData = new List <SlotSaveData>(); //Inventory Save Data List <SlotSaveData> storageSaveData = new List <SlotSaveData>(); //Storage Save Data List <FluctuationSaveData> itemDatabaseSaveData = new List <FluctuationSaveData>(); //Item Save Data TickSaveData tickSaveData = new TickSaveData(); //Day Save Data List <CollectionSaveData> collectionSaveData = new List <CollectionSaveData>(); int bankData = 0; MainMissionSaveData mainMissionSaveData = new MainMissionSaveData(); SideMissionManagerSaveData sideMissionSaveData = new SideMissionManagerSaveData(); int phase = 0; for (int i = 0; i < dataAsJson.Length; i++) { string line = dataAsJson[i]; if (line != "BREAK") { switch (phase) { case 0: //invent SlotSaveData tempI = JsonUtility.FromJson <SlotSaveData>(line); inventorySaveData.Add(tempI); break; case 1: //storage SlotSaveData tempS = JsonUtility.FromJson <SlotSaveData>(line); storageSaveData.Add(tempS); break; case 2: //items FluctuationSaveData tempIt = JsonUtility.FromJson <FluctuationSaveData>(line); itemDatabaseSaveData.Add(tempIt); break; case 3: //tick tickSaveData = JsonUtility.FromJson <TickSaveData>(line); break; case 4: //tick bankData = int.Parse(line); break; case 5: //Main Missions mainMissionSaveData = JsonUtility.FromJson <MainMissionSaveData>(line); break; case 6: //Side Missions sideMissionSaveData = JsonUtility.FromJson <SideMissionManagerSaveData>(line); break; default: //Plots e.g. anything thats not the first 4 fixed things CollectionSaveData tempC = JsonUtility.FromJson <CollectionSaveData>(line); collectionSaveData.Add(tempC); break; } } else { phase = phase + 1; } }//End for //Stage 2, load inventory.LoadInfo(inventorySaveData); storage.LoadInfo(storageSaveData); itemDatabase.LoadInfo(itemDatabaseSaveData); tickAll.LoadInfo(tickSaveData); bank.LoadGame(bankData); mainMissions.LoadGame(mainMissionSaveData); sideMissions.LoadGame(sideMissionSaveData); for (int i = 0; i < plotCollections.Length; i++) { plotCollections[i].LoadInfo(collectionSaveData[i]); } } }