using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; public class PlayerController : MonoBehaviour { public string playerName; public int playerHP; public int playerMP; public int playerScore; public Text playerScoreText; private Vector3 playerPosition; private Vector3 playerRotation; void Start() { playerScoreText = GameObject.Find("playerScoreText").GetComponent(); if (SceneManager.GetActiveScene().buildIndex != 0) { LoadData(); } } void Update() { playerScoreText.text = playerScore.ToString(); playerPosition = transform.position; playerRotation = transform.localEulerAngles; } void OnCollisionEnter(Collision collision) { if(collision.gameObject.tag == "Coin") { playerScore += 100; Destroy(collision.gameObject); } if (collision.gameObject.name == "Goal") { SaveData(); SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex + 1); } } public void SaveData() { ES3.Save("playerName", playerName); ES3.Save("playerHP", playerHP); ES3.Save("playerMP", playerMP); ES3.Save("playerScore", playerScore); ES3.Save("playerPosition", playerPosition); ES3.Save("playerRotation", playerRotation); } public void LoadData() { playerName = ES3.Load("playerName"); playerHP = ES3.Load("playerHP"); playerMP = ES3.Load("playerMP"); playerScore = ES3.Load("playerScore"); } }