ページ 11

複数エンディングの場合の達成・未達成の表示

Posted: 2017年12月21日(木) 06:09
by シノヅカ
お世話になっております。

複数エンディングがあるゲームを作ったのですが、
エンディングの達成表を作りたいと考えております。
------------------------------------------------------
■例 ●が達成 ×が未達成
ED1 × ED2 ● ED3 ● ED4×
------------------------------------------------------
……このようにテキスト欄に、スイッチED1~ED4までが
ONであった場合● OFFであった場合× と表示したいと思います。

あるいは別の方法で、こうした複数エンディングの場合、達成状況が分かる様な表現方法や
プラグインでも構いませんがお教えいただけたらと思います。よろしくお願いします。

Re: 複数エンディングの場合の達成・未達成の表示

Posted: 2017年12月21日(木) 14:02
by にゃたま
シノヅカ様

シノヅカ さんが書きました:------------------------------------------------------
■例 ●が達成 ×が未達成
ED1 × ED2 ● ED3 ● ED4×
------------------------------------------------------
……このようにテキスト欄に、スイッチED1~ED4までが
ONであった場合● OFFであった場合× と表示したいと思います。


スイッチ1:ED1〜スイッチ4:ED4とした場合、以下のようにスクリプト記述すれば
スイッチの状態によりメッセージウィンドゥに出力可能です。
但し$gameMessage.addは改行されてしまう為、改行させない方法は調べる必要があります。

コード: 全て選択

if($gameSwitches.value(1)){$gameMessage.add("ED1:●")}else{$gameMessage.add("ED1:☓")}
if($gameSwitches.value(2)){$gameMessage.add("ED2:●")}else{$gameMessage.add("ED2:☓")}
if($gameSwitches.value(3)){$gameMessage.add("ED3:●")}else{$gameMessage.add("ED3:☓")}
if($gameSwitches.value(4)){$gameMessage.add("ED4:●")}else{$gameMessage.add("ED4:☓")}

Re: 複数エンディングの場合の達成・未達成の表示

Posted: 2017年12月21日(木) 17:54
by ビービー
改行したくない場合でスイッチが連番だった場合なら以下のスクリプトの10と13を書き換えれば可能です。
(10と13はスイッチのIDを指しています。この場合10~13のスイッチ)

コード: 全て選択

var text = "";
var j = 1;
for(i = 10; i <= 13; i++){
if($gameSwitches.value(i)){var a = "ED" + j+ ":● "}else{var a = "ED" + j+ ":☓ "};
text += a;
j += 1;
}
$gameMessage.add(text);

連番でない場合は

コード: 全て選択

var text = "";
if($gameSwitches.value(10)){var a = "ED1:● "}else{var a = "ED1:☓ "};
text += a;
if($gameSwitches.value(11)){var a = "ED2:● "}else{var a = "ED2:☓ "};
text += a;
if($gameSwitches.value(12)){var a = "ED3:● "}else{var a = "ED3:☓ "};
text += a;
if($gameSwitches.value(13)){var a = "ED4:●"}else{var a = "ED4:☓"};
text += a;
$gameMessage.add(text);

10,11,12,13を各スイッチのIDに書き換えてください。

ちなみに
$gameMessage.add(text);
の部分を
$gameVariables.setValue(1,text);
のように書き換えると変数1に代入されるので
イベントコマンドの文章の表示から制御文字で表示することも可能です。
ほかの文章と同時に表示したい場合などではこちらのほうがやりやすいかと思います。

Re: 複数エンディングの場合の達成・未達成の表示

Posted: 2017年12月21日(木) 18:44
by シノヅカ
にゃたま様
教えて頂きましてありがとうございます。おかげ様で、考えていた通りの感じに出来そうです。

ビービー様
丁度改行しない方法を調べておりました。助かりました。ありがとうございます。

お二人とも、お教えいただきましてありがとうございます。