Exemplo n.º 1
0
    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);
    }
Exemplo n.º 2
0
    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");
    }
Exemplo n.º 3
0
    public SlotSaveData SaveInfo()
    {
        SlotSaveData saveData = new SlotSaveData();

        saveData.hotBarPointers     = hotBarPointers;
        saveData.hotBarQuantDisplay = hotBarQuant;

        return(saveData);
    }
Exemplo n.º 4
0
 public void LoadInfo(SlotSaveData info)
 {
     hotBarPointers = info.hotBarPointers;
     hotBarQuant    = info.hotBarQuantDisplay;
 }
Exemplo n.º 5
0
    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]);
            }
        }
    }