"The name 'HighScoreList' does not exist in the current context"

"The name 'HighScoreList' does not exist in the current context"

所以我试图从一个文件中提取玩家姓名和计数,并将它们保存到一个变量中以获得高分..

我不明白为什么会出现此错误。完全没有。 我也试过在 unity 论坛上提问,但这并没有多大帮助。

代码:

using UnityEngine; 
using System.Collections; 
using UnityEngine.UI; 
using System;

public class highscores : MonoBehaviour {

 public int[] HighScoreList;
 public string[] HighScoreListNames;
 public int score;
 public Text HighScore0;
 public Text HighScore1;
 public Text HighScore2;
 public Text HighScore3;
 public Text HighScore4;

 void Awake()
 {
     HighScoreList = new int [5];
     HighScoreList [0] = 0;
     HighScoreList [1] = 0;
     HighScoreList [2] = 0;
     HighScoreList [3] = 0;
     HighScoreList [4] = 0;
     HighScoreListNames = new string [5];
     HighScoreListNames [0] = "";
     HighScoreListNames [1] = "";
     HighScoreListNames [2] = "";
     HighScoreListNames [3] = "";
     HighScoreListNames [4] = "";
 }

 void GetScore () 
 {
     string[] currentscore = System.IO.File.ReadAllLines (@"C:\Users\Plum\Desktop\Pixel Ninjav3.3\Assets\leaderboard.txt");
     score = Convert.ToInt32(currentscore[1]);
     if (score >= HighScoreList[0])
     {
         HighscoreList[4] = HighScoreList[3];
         HighscoreList[3] = HighScoreList[2];
         HighscoreList[2] = HighScoreList[1];
         HighscoreList[1] = HighScoreList[0];
         HighscoreList[0] = score;
         HighScoreListNames[4] = HighScoreListNames[3];
         HighScoreListNames[3] = HighScoreListNames[2];
         HighScoreListNames[2] = HighScoreListNames[1];
         HighScoreListNames[1] = HighScoreListNames[0];
         HighScoreListNames[0] = currentscore[0];
     }
     else if (score >= HighScoreList[1])
     {
         HighscoreList[4] = HighScoreList[3];
         HighscoreList[3] = HighScoreList[2];
         HighscoreList[2] = HighScoreList[1];
         HighscoreList[1] = score;
         HighScoreListNames[4] = HighScoreListNames[3];
         HighScoreListNames[3] = HighScoreListNames[2];
         HighScoreListNames[2] = HighScoreListNames[1];
         HighScoreListNames[1] = currentscore[0];
     }
     else if (score >= HighScoreList[2])
     {
         HighscoreList[4] = HighScoreList[3];
         HighscoreList[3] = HighScoreList[2];
         HighscoreList[2] = score;
         HighScoreListNames[4] = HighScoreListNames[3];
         HighScoreListNames[3] = HighScoreListNames[2];
         HighScoreListNames[2] = currentscore[0];
     }
     else if (score >= HighScoreList[3])
     {
         HighscoreList[4] = HighScoreList[3];
         HighscoreList[3] = score;
         HighScoreListNames[4] = HighScoreListNames[3];
         HighScoreListNames[3] = currentscore[0];
     }
     else if (score >= HighScoreList[4])
     {
         HighscoreList[4] = score;
         HighScoreListNames [4] = currentscore[0];
     }

 }
}

C# 区分大小写。这意味着你不能混合使用 "HighScoreList" 和 "HighscoreList".

您只声明了 HighScoreList。分数大写。但是在您的 ifs 中,您还使用小写分数的 HighscoreList。