- Home /
NullReferenceException error with dreamlo
Hello everyone. I hope you all are fine when reading this. I'm having some difficulties using dreamlo. When I attempt to upload the new highscore, it shows this error.
NullReferenceException: Object reference not set to an instance of an object Highscores.AddNewHighScore (System.String user, Int32 score) (at Assets/Codigo/Highscores.cs:19) Player.CargarInfo () (at Assets/Codigo/Player.cs:50) Player.Update () (at Assets/Codigo/Player.cs:44)
I've been struggling with this error for days. Can someone help me with this? Thanks a lot.
Highscores.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Highscores : MonoBehaviour {
const string privateCode = "ayd1m1W5uUqyihLPs5h3PQihlj5MvDeEGg9_NLJ02u-Q";
const string publicCode = "58741e6eb6dd1500a4ca66df";
const string webURL = "http://dreamlo.com/lb/";
public HighScore[] highScoresList;
static Highscores instance;
DisplayHighScores highscoresDisplay;
void Awake () {
highscoresDisplay = GetComponent<DisplayHighScores> ();
}
public static void AddNewHighScore(string user, int score){
instance.StartCoroutine (instance.UploadNewHighScore (user, score));
}
IEnumerator UploadNewHighScore (string user, int score){
WWW www = new WWW (webURL + privateCode + "/add/" + WWW.EscapeURL(user) + "/" + score);
yield return www;
if (string.IsNullOrEmpty (www.error)) {
print ("Upload OK");
DownloadHighScores ();
} else {
print ("Error upload " + www.error);
}
}
public void DownloadHighScores(){
StartCoroutine ("DownloadHighScoresFromDatabase");
}
IEnumerator DownloadHighScoresFromDatabase (){
WWW www = new WWW (webURL + publicCode + "/pipe");
yield return www;
if (string.IsNullOrEmpty (www.error)) {
FormatHighScores (www.text);
highscoresDisplay.OnHighScoresDownloaded (highScoresList);
} else {
print ("Error Download " + www.error);
}
}
void FormatHighScores (string textStream){
string[] entries = textStream.Split (new char[] { '\n' }, System.StringSplitOptions.RemoveEmptyEntries);
highScoresList = new HighScore[entries.Length];
for(int i = 0; i < entries.Length; i++){
string[] entryInfo = entries [i].Split(new char[] {'|'});
string user = entryInfo [0];
int score = int.Parse(entryInfo [1]);
highScoresList [i] = new HighScore (user, score);
print (highScoresList [i].user + ": " + highScoresList [i].score);
}
}
}
public struct HighScore {
public string user;
public int score;
public HighScore(string _user, int _score){
user = _user;
score = _score;
}
}
Player.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player : MonoBehaviour {
private GameObject menu;
public MainMenu mainMenu;
private GameObject tiempo;
public Timer puntos;
public int health;
public int score;
public string user = "";
// Use this for initialization
void Awake () {
health = 1;
}
void Start () {
user = PlayerPrefs.GetString ("Nombre");
tiempo = GameObject.Find ("Reloj");
puntos = tiempo.GetComponent<Timer> ();
}
// Update is called once per frame
public void OnTriggerEnter (Collider other) {
if (other.gameObject.tag == "Enemy") {
health = 0;
Destroy (other.gameObject);
}
}
public void Update (){
score = puntos.reloj;
Debug.Log (score);
if (health <= 0) {
CargarInfo ();
Destroy (this.gameObject);
}
}
public void CargarInfo (){
Highscores.AddNewHighScore ("" + PlayerPrefs.GetString("Nombre"), score);
}
}
Your answer
Follow this Question
Related Questions
Program received signal: “SIGABRT” 0 Answers
IpointerClick Interface Error 0 Answers
NullReferenceException: Object reference not set to an instance of an object 0 Answers
NullReferenceException on empty project because of ScriptCompilerBase 0 Answers
Vector3.Distance giving me NullReferenceException every time 1 Answer