★小ネタ★条件分岐で使える便利なメソッド

こんばんは^^
今日は特にネタがないのでツクールVXAceで使える小ネタでも…
いや、ネタがないなら更新するなって話だけど、このまま放置してたら自分の性格上
ずっとそうしそうなので^^;
無印VXを使っていたとき記事にしてた小ネタのお時間略して…(黒歴史)の続きです。

例えば、イベントで罠の付いてる宝箱を作ったとします。
そして、その罠を解除できるシーフツールという装飾品も作ったとします。
で、パーティの誰かがそれを装備していたら罠に掛からないというイベントを作る
予定だとします。
通常、こういうイベントを作ろうと思ったら、パーティの人数分シーフツールを
装備しているかどうかで、条件分岐を使ってイベントを組まなければなりません。
パーティの総人数がが4,5人ならまだしも10人も20人もいたら大変な作業量となります。
そんなときに、スクリプトを使った便利な条件分岐を紹介しましょう。

長くなりそうなので気になる方は続きから!

>拍手、コメ
少しでもお役に立ててよかったです。
製作頑張ってください^^
まずは、スクリプトエディタを開いてGame_Partyの235行目辺りを見てください。
● 指定アイテムがメンバーの装備品に含まれているかを判定というのがあって
その下にmembers_equip_include?(item)というメソッドがあると思います。
これが今回紹介する条件分岐で使える便利なメソッドです。

このメソッドが意味するところは、パーティの誰かが指定した装備品を
装備しているかどうか?を判定するというものです。

エディタに戻ってみましょう。
さっきのGame_Partyの3から5行目辺りを見てください。
このクラスのインスタンスは $game_party で参照されます。
と書いてあると思います。

つまりこれは、$game_partyというグローバル変数をレシーバにメソッドを
呼び出すことが出来るということです。
レシーバの意味を知りたい場合ははググってみてね!
自分も詳しく説明できるほど知っているわけではないので^^;
ここでは、ピリオド(.)の前にある呼び出しもとの変数とでも思っておいて下さい。

では、早速呼び出してみましょう。
イベントコマンドの条件分岐を選んでスクリプトを開いてください。
まずは、そこに$game_party.members_equip_include?(item)と入力しましょう。
このままでは何の装備かを指定してませんので、それを指定してやります。

それ、というのはさっき上で書いた、シーフツールのことですね。
装飾品なので、もちろんデータベースの防具の欄に作っています。
ここは62番目ということにしましょうか。
で、これを指定してやりましょう。

データベースは、$data~で参照できます。
この辺りはヘルプに詳しく書いてありますね。
防具なので$data_armorsで参照、さらに62番目なので$data_armors[62]となります。
そこにシーフツールの情報が記されています。

さっき、条件分岐で入力した
$game_party.members_equip_include?(item)に戻ります。
どこで指定するのかというと(item)という部分です。
これは引数というものなのですが今回は詳しい説明は省きます。
itemとなっているので非常に分かりやすいですね。

指定するとこうなります。
$game_party.members_equip_include?($data_armors[62])
日本語に訳すと、
パーティメンバーの誰かが防具ID62番目の防具を装備しているか?となります。
その下にイベントを入れてやれば、装備中に起こるイベントを
それ以外には、誰も装備していないときのイベントとで分岐できます。

これは非常に手間が省けて便利ですね!
他にも色んなイベントで応用が利くと思うので、いろいろと試してみてくださいね。

ちなみに、このメソッドはツクールVXAceで新たに作られたメソッドです
無印VXでは使えませんので、ご注意を。
Aceになってこういう便利なメソッドが増えました。
また、機会があれば紹介したいと思います。

最後までお付き合い頂き、ありがとうございました^^
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

mo-to

Author:mo-to
RGSSとJavaScriptを学んで弄って遊んでいます。
まだまだひよっこですが宜しくお願いします。
所持ツクールはXP、VX、VXAce、MV
Twitter

リンクはフリーです。ご自由にどうぞ。

最新記事
最新コメント
カテゴリ
カウンター
T.COOL人気記事ランキング
検索フォーム
リンク
月別アーカイブ
QRコード
QR