Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SaveSystem2.cs
- using UnityEngine;
- using UnityEngine.UI;
- using System.IO;
- using System;
- using System.Runtime.Serialization.Formatters.Binary;
- public class SaveSystem : MonoBehaviour
- {
- public InputField importValue;
- public InputField exportValue;
- public static string json = "";
- protected static string encryptKey = "frick,this key is hidden :D!";
- protected static string savePath = "/playerdataV1.test";
- public static void SavePlayer(PlayerData2 data)
- {
- using (StreamWriter writer = new StreamWriter(Application.persistentDataPath + savePath))
- {
- json = JsonUtility.ToJson(data);
- ConvertStringToBase64(writer, json);
- writer.Close();
- }
- }
- public static string ConvertStringToBase64(StreamWriter writer, string x)
- {
- var plainTextBytes = System.Text.Encoding.UTF8.GetBytes(x);
- string stringTemp = Convert.ToBase64String(plainTextBytes);
- writer.WriteLine(SimpleAES.EncryptString(stringTemp, encryptKey));
- return stringTemp;
- }
- public static void LoadPlayer(ref PlayerData2 data)
- {
- if (!File.Exists(Application.persistentDataPath + savePath))
- File.CreateText(Application.persistentDataPath + savePath);
- using (StreamReader reader = new StreamReader(Application.persistentDataPath + savePath))
- {
- json = ConvertBase64ToString(reader);
- data = JsonUtility.FromJson<PlayerData2>(json);
- reader.Close();
- }
- }
- public static string ConvertBase64ToString(StreamReader reader)
- {
- string stringConvert = reader.ReadLine();
- var base64EncodedBytes = Convert.FromBase64String(SimpleAES.DecryptString(stringConvert, encryptKey));
- return System.Text.Encoding.UTF8.GetString(base64EncodedBytes);
- }
- public void ImportPlayer2(EthereumController playerData)
- {
- using (StreamWriter writer = new StreamWriter(Application.persistentDataPath + savePath))
- {
- writer.WriteLine(importValue.text);
- writer.Close();
- using (StreamReader reader = new StreamReader(Application.persistentDataPath + savePath))
- {
- json = ConvertBase64ToString(reader);
- playerData.data = JsonUtility.FromJson<PlayerData2>(json);
- reader.Close();
- }
- }
- }
- public void ExportPlayer2()
- {
- using (StreamReader reader = new StreamReader(Application.persistentDataPath + savePath))
- {
- string outputData = reader.ReadLine();
- Debug.Log(outputData);
- reader.Close();
- exportValue.text = outputData;
- }
- }
- }
- EthereumController.cs
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.UI;
- using System;
- using BreakInfinity;
- [Serializable]
- public class PlayerData2
- {
- public BigDouble ethereumForkVersion; // BigDouble is a double but bigger basically
- public BigDouble currentStat;
- public BigDouble hardforkStat;
- public BigDouble wallet_Faucet;
- public float hardforkRunTime;
- public PlayerData2()
- {
- ethereumForkVersion = 1;
- currentStat = 1;
- hardforkStat = 1;
- wallet_Faucet = 0;
- hardforkRunTime = 0;
- }
- }
- public class EthereumController : MonoBehaviour
- {
- public PlayerData2 data;
- public void Start()
- {
- SaveSystem.LoadPlayer(ref data);
- }
- public void Update()
- {
- SaveSystem.SavePlayer(data);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement