0
Unity3d에서 게임이 끝날 때 점수와 사용자 이름을 저장하려고합니다. 저는 PlayerPrefs를 사용하여 데이터를 가져옵니다. 나는 GUI.TextField에서 사용자 이름을 얻는다. 그리고 데이터를 mysql 데이터베이스에 삽입한다. 그러나 이전 데이터가 데이터베이스에 삽입 될 때마다. 어떻게 해결할 수 있습니까?이전 데이터가 Unity3d의 데이터베이스에 삽입 될 때마다
PlayerPrefs.SetInt("score",databasescore);
PlayerPrefs.SetString("username",username);
PlayerPrefs.Save();
나는 addscore.php와 display.php를 사용합니다. 내 HighScoreController.cs는 다음과 같습니다.
using UnityEngine;
using System.Collections;
public class HighScoreController : MonoBehaviour
{
public static string hs;
public string addScoreURL = "http://localhost:8000/addscore.php?";
public string highscoreURL = "http://localhost:8000/display.php?";
void Start()
{
StartCoroutine (PostScores (PlayerPrefs.GetString ("username"), PlayerPrefs.GetInt ("score")));
StartCoroutine (GetScores());
PlayerPrefs.DeleteAll();
}
public IEnumerator PostScores(string username, int score)
{
string post_url = addScoreURL + "username=" + username + "&score=" + score;
WWW hs_post = new WWW (post_url);
yield return hs_post; // Wait until the download is done
if (hs_post.error != null) {
print ("THERE WAS AN ERROR GETTıNG THE HıGH SCORE: \n" + hs_post.error);
}
}
public IEnumerator GetScores()
{
WWW hs_get = new WWW(highscoreURL);
yield return hs_get;
if (hs_get.error != null)
{
print("THERE WAS AN ERROR GETTıNG THE HıGH SCORE: \n" + hs_get.error);
}
else
{
hs = hs_get.text;
PlayerPrefs.SetString("scores", hs);
Debug.Log(hs);
}
}
}
당신은 또한 당신의'PostScores'와'GetScores' 기능을 보여줄 수,
하지만 없어
이있다? – SirBraneDamuj