「アフィリエイトを利用した記事があります」

RPGツクール MV でスコアボード的な何かを作る方法

RPGツクール MV

RPGツクールMVでオフラインのスコアボード的なもの…

先日フリゲのタイピングゲームを作ったんですが、その時にスコアボード的な物が欲しいなぁと。

まぁプレイするのは一人なので、スコアボードは無くても良かったんですが…
何となくあった方がそれっぽいかなと…

それでプラグインなしで、作る方法を探していて、ツクマテさんとかも参考にしたんですが
それだとコードの知識がない私にはわからなく…

結局変数を利用して何とかなりました。

今回はRPGツクールMVで、プラグインなしでオフラインのスコアボード的なものを作る方法をご紹介します!

RPGツクール MV でオフラインスコアボードを作る!

まず、どんな感じになるのかをSSでご紹介します。

テストなので、第1位しか表示されてませんが…(-_-;)

こんな感じで、第10位まで表示されるようになります。
ちなみに、こちらのランキング表示は、トリアコンタンさんの★ゲーム内用語辞典を使わせていただいてます。

では、まず変数を用意します。
今回は第10位まで表示するので、11人目のNullのプレイヤーを用意して、それで順位を表示します。

変数の1~21までがスコアボードで使う変数になります。

ちなみに、ゲーム内用語辞典のアイテムのメモ欄には、こんな感じに記述します。

実際に記入するのは、一か所。
スクリプトのみです。

そちらもご紹介しますと。

こんな感じになります。
文章でもご紹介しますね。

// ゲーム変数 11-21 で、21番にプレイヤーの点数が入っている

var myScore = $gameVariables.value(21);

// 11-20のゲーム変数を並び替えて保存

var scores = [$gameVariables.value(11),$gameVariables.value(12),$gameVariables.value(13),$gameVariables.value(14),$gameVariables.value(15),$gameVariables.value(16),$gameVariables.value(17),$gameVariables.value(18),$gameVariables.value(19),$gameVariables.value(20),$gameVariables.value(21)];

scores.sort(function(a,b){ if(a>b) return -1;if(b>a) return 1;return 0;});

for(var i=0;i<10;i++ ){$gameVariables.setValue(11+i,scores[0+i]);}

// ゲーム変数21を空にしておく

$gameVariables.setValue(21, 0);

// ゲーム変数22に、プレイヤーの順位(0ならランク外)を保存

$gameVariables.setValue(22, scores.indexOf(myScore)+1);

こちらわかりやすいように注釈がついてますが、わかっている方は、もちろん必要ありません。

ということで、こちらを使えばランキング表示ができるようになります。

今回のスコアボードは、タイピングゲームに使ったので、点数を例えば、こんな感じに表示させます。

変数21の値を変数25に入れて表示させてますが、これはあくまで一例なので、いきなり変数21に値を入れても全然OKです。

それでは駆け足になりましたが、オフラインのスコアボード的なイベントを作る方法でした。

需要があるかわかりませんが、備忘録的な意味で残しておきます。

それでは、記事が参考になりましたら嬉しいです!^^