[もどる]
一括表示
0980 好感度の処理の仕方
投稿者:みさき 2007/07/08(日) 00:49

こんばんは。
みさきと申します。

このたび、初めてYU-RISでゲームを作らせていただこうと思っております。
YU-RISでは他の製作ツールでは自作しなければならないような機能がデフォルトで使えるので、大変心強いです。

そこで、ご教授いただきたいことがあり書き込みさせていただきました。

選択肢で好感度のアップダウンをやりたくて、それには変数を使うのだと思うのですが、その場合、一つの変数に対して、1ずつ足したり、1ずつ引いていくということができますでしょうか。

初心者的な質問で恐縮ですが、ご教授願えますでしょうか。

もし、マニュアルの読み落としでしたら大変申し訳ありません。

0981 変数の四則演算、表示、分岐について
投稿者:たくみ 2007/07/08(日) 05:37

> こんばんは。
> みさきと申します。
>
> このたび、初めてYU-RISでゲームを作らせていただこうと思っております。
> YU-RISでは他の製作ツールでは自作しなければならないような機能がデフォルトで使えるので、大変心強いです。
>
> そこで、ご教授いただきたいことがあり書き込みさせていただきました。
>
> 選択肢で好感度のアップダウンをやりたくて、それには変数を使うのだと思うのですが、その場合、一つの変数に対して、1ずつ足したり、1ずつ引いていくということができますでしょうか。
>
> 初心者的な質問で恐縮ですが、ご教授願えますでしょうか。
>
> もし、マニュアルの読み落としでしたら大変申し訳ありません。

みさきさんどうもです。
そういえば確かにERISマニュアルには変数での分岐の事だけしか書いてませんでした(汗
ひとまずここで説明しまして、後日ERISマニュアルのほうに追記しておきます。
まず変数の代入ですが、以下のようになります。

@L.I(1)=5 // ローカル変数1番に5を入れる

次に変数の四則演算は以下のようになります。

@L.I(1)=@L.I(1)+2 // ローカル変数1番に2を足した結果を入れる(つまり、ローカル変数1番に2を足す)
@L.I(1)=@L.I(1)-3 // ローカル変数1番から3を引いた結果を入れる(つまり、ローカル変数1番から3を引く)
@L.I(1)=@L.I(1)*4 // ローカル変数1番に4を掛けた結果を入れる(つまり、ローカル変数1番に4を掛ける)
@L.I(1)=@L.I(1)/5 // ローカル変数1番を5で割った結果を入れる(つまり、ローカル変数1番を5で割る)
@L.I(1)=@L.I(1)%6 // ローカル変数1番を6で割り、その余りのほうを入れる

また、上のような計算なら、簡単に以下のようにも書けます。

@L.I(1)+=2 // ローカル変数1番に2を足す
@L.I(1)-=3 // ローカル変数1番から3を引く
@L.I(1)*=4 // ローカル変数1番に4を掛ける
@L.I(1)/=5 // ローカル変数1番を5で割る
@L.I(1)%=6 // ローカル変数1番を6で割り、その余りのほうを入れる

ほかにも、普通に計算式のように、

@L.I(1)=2+3*5 // ローカル変数1番に2+3*5の結果を入れる。掛け算が先に計算されて、結果的に17が入る.
@L.I(1)=@L.I(2) // ローカル変数1番に、ローカル変数2番の値を入れる
@L.I(1)=@L.I(2)+@L.I(3) // ローカル変数1番に、ローカル変数2番と3番を足した値を入れる

と書けます。
他に特殊な書き方として、こういう書き方も出来ます。

@L.I(1)=(@L.I(2)<5) // ローカル変数2番が5未満なら式が正しいので1が、5以上なら式が正しくないので0が、ローカル変数1番に入る



あとは、値の確認方法として、

\DIALOG($@L.I(1))

と書けば、その時点での @L.I(1) の値がダイアログで表示されます。
$@ と書くことで、数値変数が文字列変数に変換されるので、
\DIALOG命令を使って文字列として表示できるようになります。
複数の変数を一気に確認したい場合は、ちょっと強引ですが、

\DIALOG($@L.I(1)+","+$@L.I(2)+","+$@L.I(3))

と書けば、変数 @L.I(1), @L.I(2), @L.I(3) がくっついて表示できます。

\DIALOG("好感度1="+$@L.I(1)+",好感度2="+$@L.I(2)+",好感度3="+$@L.I(3))

と書いておくと、見るときに分かりやすいかもしれません。
書くのがちょっと面倒ですが;
次のバージョンアップでは、変数の簡単確認機能もつける予定です。



分岐のさせ方の方法は、

例えばキャラAの好感度が @L.I(1) に入っているとしたら、

//------------------------------------------------------------------

今日は誰に会おうか?

//↓好感度が5以上ならラベルDAY0708_01_1 へ、違ったらラベルDAY0708_01_2へ
\GO.IF(@L.I(1)>=5, DAY0708_01_1, DAY0708_01_2)

#DAY0708_01_1

キャラAに会うことにした。
\GO(〜)

#DAY0708_01_2

帰ることにした。
\GO(〜)

//------------------------------------------------------------------

みたいに書くことが出来ます。

参考になりましたらと思います。

0982 変数の四則演算、表示、分岐について
投稿者:みさき 2007/07/08(日) 10:28

おはようございます。みさきです。

早速の回答、ありがとうございます。
また大変丁寧に教えていただき、重ねて御礼申し上げます。

お忙しい中、本当にありがとうございました。
次期YU-RISを楽しみにしております(^^)。

日々暑いので、どうぞご自愛なさって下さい。