私は現在、ハイスコア テーブルを作成しています。ハイ スコア テーブルの 1 つはスペル クイズ用です。
highscores.xml
次のようなというローカル ファイルがあります。
<highscores>
<spelling>
<first>0</first>
<second>0</second>
<third>0</third>
<fourth>0</fourth>
<fifth>0</fifth>
</spelling>
</highscores>
highscores.xml
これは、ファイルをロードした後に実行される AS3 関数です。
function highScoresLoaded(e:Event)
{
highScoresXML = new XML(urlLoader.data);
highScoresArray = new Array();
highScoresArray.push(highScoresXML.spelling.first);
highScoresArray.push(highScoresXML.spelling.second);
highScoresArray.push(highScoresXML.spelling.third);
highScoresArray.push(highScoresXML.spelling.fourth);
highScoresArray.push(highScoresXML.spelling.fifth);
highScoresArray.push(points);
highScoresArray = highScoresArray.sort(Array.DESCENDING);
highScoresArray.pop();
firstScoreTXT.text = highScoresArray[0];
secondScoreTXT.text = highScoresArray[1];
thirdScoreTXT.text = highScoresArray[2];
fourthScoreTXT.text = highScoresArray[3];
fifthScoreTXT.text = highScoresArray[4];
highScoresXML.spelling.first = highScoresArray[0];
highScoresXML.spelling.second = highScoresArray[1];
highScoresXML.spelling.third = highScoresArray[2];
highScoresXML.spelling.fourth = highScoresArray[3];
highScoresXML.spelling.fifth = highScoresArray[4];
trace(highScoresXML);
}
しかし、関数の最後のトレース出力は次のようになります (クイズで 4250 点を獲得しました)。
<highscores>
<spelling>
<first>4250</first>
<second>0</second>
<third>0</third>
<first>4250</first>
<fifth>0</fifth>
</spelling>
</highscores>
この行を削除すると、正常に動作します。
highScoresXML.spelling.fourth = highScoresArray[3];
私はプログラミングが得意ではなく、理解できないようです。
どんな助けでも大歓迎です!