まとめ - ハイスコアボード
CoddyのLuaジャーニー「Logic & Flow」セクションの一部 — レッスン 9/54。
チャレンジ
簡単scores テーブルと newScore 数値を受け取り、上位5つのスコアのみを降順で保持する、更新されたハイスコアボードを返す関数 updateHighScores を作成してください。
新しいスコアをテーブルに追加し、すべてのスコアを高い順に並べ替え、上位5つのスコアのみを保持します。
ロジック:
table.insert()を使用して、新しいスコアを scores テーブルに追加します- カスタム比較関数を指定した
table.sort()を使用して、スコアを降順(高い順)にソートします - テーブルに5つより多くのスコアがある場合は、
table.remove()を使用して上位5つ以外のスコアを削除します - 更新された scores テーブルを返します
パラメータ:
scores(table): 現在のハイスコアを数値として格納しているリスト形式のテーブルnewScore(number): ボードに追加する新しいスコア
戻り値: 高い順にソートされた上位5つのスコアを含むテーブル (table)
自分で試してみよう
function updateHighScores(scores, newScore)
-- ここにコードを記述してください
end