Loading/Saving Help! Coroutines inc.

Hey Unity community,
Currently I am making an Incremental (Cookie clicker) style game.
I currently have a very, very simple Save/load system which brings me onto my first problem.
It uses a Coroutine to work out how many of the currency you should get a second so I want it to save this value so that you can load it when you return.

This is my code which saves how many “Cookies” you will get per click, this part is successful, but now I want to add the part which is how many Cookies you get a second but I do not know how to do this.

public void SaveGame()
    {
        PlayerPrefs.SetFloat("Dollars", CookieCount);
        PlayerPrefs.SetFloat ("ClickCookie", CookiePerClick);
        Debug.Log("Game Saved!");
    }

    //Very much the same as Save Game but instead loads the Floats that were saved.
    public void LoadGame()
    {
        CookieCount = PlayerPrefs.GetFloat("Dollars");
        CookiePerClick = PlayerPrefs.GetFloat("ClickCookie");
        Debug.Log ("Save Loaded!");
    }

    //This deletes the save file by deleting the floats that were saved by the Save Game button.
    public void DeleteSave()
    {
        PlayerPrefs.DeleteKey ("Dollars"); //("Dollars") Is the name I set to save the float as. See line 32
        PlayerPrefs.DeleteKey ("ClickCookie"); //Similarly see line 33
        GetComponent<AudioSource>().PlayOneShot(sadvoilin);
        Debug.Log("Save Deleted!"); //Prints to console to say it had worked.
    }

This is the Coroutine to calculate how many Cookies you get per second.

using UnityEngine;
using System.Collections;

public class CookiePerSec : MonoBehaviour {
   
    //Variables
    public UnityEngine.UI.Text CookiePerSecond;
    public Click click;
    public ItemManager[] items;


    //Starts the script which calculates how many Cookies you get per second.
    void Start()
    {
        StartCoroutine (AutoTick ());
    }

    void Update()
    {
        CookiePerSecond.text = GetCookiePerSec() + " Dollars/Sec";
    }

    public float GetCookiePerSec()
    {
        float tick = 0;
        foreach (ItemManager item in items)
        {
            tick += item.count * item.tickValue;
        }
        return tick;
    }

    public void AutoCookiePerSec()
    {
        click.CookieCount += GetCookiePerSec () / 10;
    }

    IEnumerator AutoTick()
    {
        while (true)
        {
            AutoCookiePerSec();
            yield return new WaitForSeconds (0.10f);
        }
    }

}

If I am missing something please let me know, Also please be kind as I have had quite a break from Unity and have been back for about a week.

you’re not going to be able to “save” the cookies per second since it’s a derived value, even if you loaded it back in you won’t be able to continue to calculate it.

You need to look at saving off the contents of “items” so you can continue to calculate the value

Ok, Ill put a little research into this to see what I can rustle up. Thanks.