/// <summary>
    /// Stores Character Data in PlayerPrefsCharacterSaver class
    /// </summary>
    /// <returns></returns>
    public PlayerPrefsCharacterSaver StoreCharacterData()
    {
        PlayerPrefsCharacterSaver save = new PlayerPrefsCharacterSaver
        {
            eyebrowSprite = eyebrowSpriteRenderer.sprite.name,
            eyeSprite     = eyeSpriteRenderer.sprite.name,
            mouthSprite   = mouthSpriteRenderer.sprite.name,
            noseSprite    = noseSpriteRenderer.sprite.name,
            hairSprite    = hairSpriteRenderer.sprite.name,
            pupilSprite   = pupilSpriteRenderer.sprite.name
        };

        //saves colors
        save.skinColour.Add(skinColourRenderer.color.r);
        save.skinColour.Add(skinColourRenderer.color.g);
        save.skinColour.Add(skinColourRenderer.color.b);

        save.hairColour.Add(hairSpriteRenderer.color.r);
        save.hairColour.Add(hairSpriteRenderer.color.g);
        save.hairColour.Add(hairSpriteRenderer.color.b);

        save.eyeColour.Add(pupilSpriteRenderer.color.r);
        save.eyeColour.Add(pupilSpriteRenderer.color.g);
        save.eyeColour.Add(pupilSpriteRenderer.color.b);

        return(save);
    }
예제 #2
0
    //****************************************************************//
    // IMPORTANT: ever saving on 0 Slot, we save only 1 custom player.//
    //****************************************************************//

    //Use this for initialization
    void Start()
    {
        if (Instance == null)
        {
            Instance = this;
        }
    }
    //saves character
    public void SaveCharacter()
    {
        PlayerPrefsCharacterSaver save = StoreCharacterData();

        //serialise data and pass to disk
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = File.Create(Application.persistentDataPath + "/gamesave.character");

        bf.Serialize(file, save);
        file.Close();
    }
    public void LoadCharacter()
    {
        if (File.Exists(Application.persistentDataPath + "/gamesave.character"))
        {
            //load data
            BinaryFormatter           bf   = new BinaryFormatter();
            FileStream                file = File.Open(Application.persistentDataPath + "/gamesave.character", FileMode.Open);
            PlayerPrefsCharacterSaver save = (PlayerPrefsCharacterSaver)bf.Deserialize(file);
            file.Close();


            eyebrowSpriteRenderer.sprite = Resources.Load <Sprite>(save.eyebrowSprite);
            eyeSpriteRenderer.sprite     = Resources.Load <Sprite>(save.eyeSprite);
            mouthSpriteRenderer.sprite   = Resources.Load <Sprite> (save.mouthSprite);
            noseSpriteRenderer.sprite    = Resources.Load <Sprite> (save.noseSprite);
            hairSpriteRenderer.sprite    = Resources.Load <Sprite> (save.hairSprite);
            pupilSpriteRenderer.sprite   = Resources.Load <Sprite>(save.pupilSprite);

            skinColourRenderer.color    = new Color(save.skinColour[0], save.skinColour[1], save.skinColour[2], 1);
            hairSpriteRenderer.color    = new Color(save.hairColour[0], save.hairColour[1], save.hairColour[2], 1);
            eyebrowSpriteRenderer.color = new Color(save.hairColour[0], save.hairColour[1], save.hairColour[2], 1);
            pupilSpriteRenderer.color   = new Color(save.eyeColour[0], save.eyeColour[1], save.eyeColour[2], 1);
        }
    }