戦闘メッセージのレイアウトを変更【RPGツクールMZ&MVプラグイン】

2022年01月31日

 戦闘メッセージのレイアウトを変更するプラグインです。
 ウィンドウの配置や大きさなどを変更可能です。


 行動順序の画面表示プラグインとの併用を想定して作ったものですが、それ以外の用途にも使えます。

 主な特徴は以下の通りです。

  • 公式プラグインのSimpleMsgSideViewに対応。
    MZ版のSimpleMsgSideViewMZも大丈夫です。
  • グラデーションに対応。
  • 通常ウィンドウ(枠付き)に切替可能。
  • 背景色や透明度を変更可能。
  • メッセージが長い場合、ウィンドウ幅に合わせて縮小。
  • 反対に文字列長にウィンドウ幅を合わせることも可能。
  • スキルのメモ欄に<NoName>と記述すればスキル名を非表示に。

目次


導入方法

更新履歴

使用例

右空け&グラデーション

ドラクエスタイル

枠付き中央

味方と敵で位置を変更

バトラーの頭上


プラグインパラメータ(配置関連)

X座標(x)

Y座標(y)

前面表示する(showFront)


プラグインパラメータ(サイズ関連)

横幅(width)

横幅を文字数に合わせる(autoWidth)

一行の縦幅(lineHeight)


プラグインパラメータ(メッセージ関連)

フォントサイズ(fontSize)

メッセージの余白(padding)


プラグインパラメータ(背景関連)

通常ウィンドウにする(normalWindow)

背景色(backColor)

背景不透明度(backPaintOpacity)

グラデーション方式(gradientType)

開始グラデーション幅(startGradientSize)

終了グラデーション幅(endGradientSize)


導入方法


 以下のファイルをダウンロードし 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMV、MZの両方で有効です。

 NRP_WindowBattleLogLayout.js ver1.041(2023/01/18)

更新履歴


2022/01/31 -> 2023/01/18(ver1.04 -> 1.041)

  • CounterExtend.jsとの競合対策用に『横幅を文字数に合わせる』場合の挙動を微調整。
  • ウィンドウの右寄せ方法を追記。(2022/04/23)
  • 競合によって数式使用時にエラーとなる問題への対策。
    (2023/01/18 ver1.041)

2020/10/23(ver1.03)

  • スキルのメモ欄に<NoName>と記述すればスキル名を非表示に。

2020/08/27(ver1.02 -> 1.021)

  • ツクールMZに対応。
  • フロントビューでエラーになる不具合修正。(ver1.021)

2020/06/17(ver1.01)

  • 英語対応。

2020/05/01(ver1.00)

  • 公開!

使用例


右空け&グラデーション

 右側を空けることによって、行動順序にかぶらないようにしています。さらに横向きグラデーションをかけて切れ目を自然にしました。


  • 横幅:this.windowWidth() - 150
  • 背景不透明度:128
  • グラデーション方式:1(横)
  • 開始グラデーション幅:0
  • 終了グラデーション幅:200

 『this.windowWidth()』は画面全体の横幅です。-150して画面右側を150ピクセル空けてみました。
 背景不透明度は初期値の64だと、透明度が高すぎてグラデーションが分かりにくかったので濃くしました。お好みでどうぞ。
 終了グラデーション幅だけに値を入れることで、右側だけにグラデーションをかけています。

ドラクエスタイル

 画面下にメッセージを表示するドラクエスタイルです。


  • Y座標:446
  • 前面表示する:true
  • 通常ウィンドウにする:true

 前面表示にしないとステータスの下に隠れてしまいます。
 実用性は怪しいですが、その他のレイアウト変更系プラグインと組合わせれば使えるかもしれません。
 ※MZでは下のウィンドウが消えるので挙動が怪しいです。

枠付き中央

 SimpleMsgSideViewとの併用によって、枠付きウィンドウで中央にスキル名を表示します。


  • SimpleMsgSideViewプラグインをON
  • X座標:this.windowWidth() / 2 - this.width / 2
  • Y座標:20
  • 横幅:300
  • 通常ウィンドウにする:true

 X座標の式は中央寄せするためのものです。『this.windowWidth() / 2』で画面幅の半分、『this.width / 2』でウィンドウ幅の半分となります。

 Y座標や横幅、メッセージの余白などはお好みで調整してください。
 なお、枠内にスキル名が収まらない場合は縮小表示されます。

味方と敵で位置を変更

 使用者がアクターなら右上、敵キャラなら左上にスキル名を表示します。


  • SimpleMsgSideViewプラグインをON
  • X座標:a._enemy ? 20 : 380
  • Y座標:20
  • 横幅:300
  • 通常ウィンドウにする:true

 『a』で行動主体のスプライト情報を参照できます。
 『a.x』『a.y』でX・Y座標、『a.width』『a.height』で横幅・縦幅が参照できます。
 『a._enemy』は行動主体が敵の場合のみ値が入ります。

 『a._enemy ? 20 : 380』というのは『a._enemy』が有効(=敵)の場合は20、それ以外(=味方)は380がX座標になるという意味です。

右寄せ(2022/04/23)

 スキル使用者がアクターの場合にウィンドウを右寄せしたい場合は、X座標を『a._enemy ? 20 : 660 - this.width』というように変更すればOKです。
 ウィンドウサイズ(this.width)を減算することで、ウィンドウが横長になった場合でも自動で左にズレるように調整しています。

バトラーの頭上

 ロマサガシリーズのようにキャラの頭上にスキル名を表示します。


  • SimpleMsgSideViewプラグインをON
  • X座標:a.x - this.width / 2
  • Y座標:a.y - a.height - 80
  • 前面表示する:true
  • 横幅:300
  • 通常ウィンドウにする:true

 ただし、演出中も消えないので邪魔です。もう一工夫しないと実用には耐えないかも……。
 それでも書いておけば、誰かの役に立ったりしませんかね。

プラグインパラメータ(配置関連)


X座標(x)

Y座標(y)

 ウィンドウのX座標とY座標です。(数式可)

前面表示する(showFront)

 ウィンドウを前面表示します。
 下位のプラグインで制御しているウィンドウに対しては、前面表示できない場合があります。(主にNRP_VisualTurn.jsを想定)
 その場合、プラグイン一覧で並び順を調整してください。

プラグインパラメータ(サイズ関連)


横幅(width)

 ウィンドウの横幅です。(数式可)
 初期値の『this.windowWidth()』は、画面横幅に一致します。

 例えば『this.windowWidth() - 200』に変更すると、画面幅より200ピクセル短くなります。もちろん、普通に数値を入れても構いません。

横幅を文字幅に合わせる(autoWidth)

 ウィンドウの横幅を文字数に合わせて自動調整します。
 初期状態ではオフになっています。
 オンにした場合も、↑の『横幅』が最大サイズとなります。

 基本的にSimpleMsgSideViewとの併用を想定しています。

一行の縦幅(lineHeight)

 一行の縦幅です。
 初期値は36です。

プラグインパラメータ(メッセージ関連)


フォントサイズ(fontSize)

 フォントの大きさを指定します。
 初期値は28です。

メッセージの余白(padding)

 ウィンドウとメッセージ間の余白を指定します。
 初期値は18です。

プラグインパラメータ(背景関連)


通常ウィンドウにする(normalWindow)

 通常メッセージと同様の枠付きウィンドウに変更します。
 なお、オンにした場合は以下「背景色〜グラデーション」の項目はいずれも無効となります。

背景色(backColor)

 背景色を指定します。
 16進数でRGB値(参考)を指定してください。初期値の『#000000』は黒となります

背景不透明度(backPaintOpacity)

 背景の不透明度を指定します。
 初期値は64です。

グラデーション方式(gradientType)

 ウィンドウのグラデーション方向を選択できます。
 横と縦が選択可能です。

開始グラデーション幅(startGradientSize)

終了グラデーション幅(endGradientSize)

 開始〜終了側のグラデーション幅です。(数式可)
 いずれも初期値は18です。

 グラデーション方式が『横』の場合、左から右。
 グラデーション方式が『縦』の場合、上から下となります。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 23:59 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする

【RPG制作講座】物語の転換点

2022年01月21日

 起承転結の『転』――物語の転換点について考察してみる。


 ここで言う転とは、主に物語の目的が転換するポイントを指す。例えば「魔王を倒したら、それを影で操る大魔王が現れた」などが典型だ。
 物語が根底から覆るような衝撃的な変化をした場合は『どんでん返し』なんて言葉でも呼ばれる。ストーリー制作者なら、一度は憧れた方も多いのではないだろうか。

 目的自体が変化しなくとも、動機や手段に大きな変化をもたらすイベントも転換点となる。例えば、主人公の出生の秘密が明らかになることによって、大きな葛藤が発生するといった展開である。

 転は物語半ばの山場である。長い物語をプレイヤーに飽きさせないために、重要な役割を果たす。
 物語の評価において「起承転結が弱い」なんて言われる作品は大抵の場合、転が弱いことを意味する。

 転は1つである必要はない。『起承転承転結』というように複数回の転を作ることも有効である。
 ……そもそも、起承転結は元々は漢詩の構成法らしいので、長編RPGにそのまま適用するのは無理があったりする。

 特に長編になればなるほど、複数回の転が欲しくなってくる。
 例えば、長い長い中盤に全く転がないドラクエ7は中だるみするゲームとして有名だ。そうならないためにも、転を中心として全体の構成を考えてみたい。

目次


転を作ろう

転と起

転の例

転を強調しよう

主人公側に関わるもの

世界・舞台に関わるもの

転の注意点

まとめ


転を作ろう


 転は起承転結の中でも比較的難易度が高い。
 というのも『起承結』の三つは物語の最低限の構成要素であって、それなしではそもそも物語の成立は困難である。
 どんな初心者でも物語の完成までたどり着けたならば、『起承結』は盛り込まれているのが普通だろう。

 対して、転はなくとも一応の物語が成立してしまう。ゆえに、初心者と上級者の実力差が強く出る部分だと言える。
 しかしだからこそ、不慣れであっても転を意識して作ることに挑戦して欲しい。難しいからこそ、経験を積むことが重要となる。

 実際に転となる部分を考えてみると、

「こいつが黒幕なのはバレバレじゃないだろうか?」
「この展開はありがちじゃないだろうか?」

 などと不安になってくるかもしれない。
 個人的にはそれでもないよりはマシだと思う。
 たとえ、ありがちだったとしても、平坦なまま物語を終えるよりは強い印象を与えられるからだ。

 必ずしも、ミステリー作家のような秀逸などんでん返しである必要はないし、プレイヤーが見たこともないような奇想天外なものである必要もない。
 まずはベタな展開でもよいから流れを変えてみよう。試してみれば、それだけで物語が引き締まってくるのが実感できると思う。

転と起


 実は起承転結の『起』も『転』と似たような特徴を持っている。
 『起』とは大抵の場合、『平常からの転換』なのだから当然といえば当然。冒頭に『転』を持ってくれば『起』になるというわけだ。
 よって『転』について考えることは『起』の参考にもなるかもしれない。

転の例


 というわけで、転の例を挙げてみたい。
 これを見れば僕のような発想力の乏しい貧弱一般人でも、一応の『転』を作れるようになる……はず。

 前述の通り、転とは主に物語の目的の転換である。それを具体化するところから始めてみたい。

 よくある目的は『宿敵』に関わるものだ。
 ここでいう『宿敵』とは単なるライバルキャラではなく、物語の目的に直結する敵――ラスボスまたはそれに準ずる敵のことである。
 例えば、DQ3のバラモスやDQ6のムドーのような『偽のラスボス』もここには含まれる。

目的の達成

 目的の達成は物語の転換点になる。ゲーム中盤に大きな目的を達成して、次なる展開に進むというRPGはよく見かけると思う。

 最も王道なのは『宿敵との決着』である。
 大抵の場合は下の『新たな目的の登場』へと続く。……というか、そうでないと物語が終わってしまう。

新たな目的の登場

 目的を達成した後も物語を続けたい場合は、新たな目的が必要となる。
 次なる目標をプレイヤーに掲示しよう。

 代表的なのはやはり『新たな宿敵の登場』だろう。
 「魔王を倒したら、それを影で操る大魔王が現れた」というような流れは定番。
 他にも、重要人物が裏切って新たな敵となるパターンは、最もどんでん返しらしいどんでん返しである。

 ラスボスの確定は転によって行われることが多い。
 印象的な『ラスボス確定演出』ができれば、それだけで全体のストーリーも印象的になる。ぜひとも狙ってみるとよいだろう。

目的の明確化

 物語の目的が明確化される。
 こちらは途中まで大きな目標を示さなかった場合、もしくは明確に示さなかった場合を前提としている。

 目的の明確化は、起承転結の『起』でやることも多いのだが、実際には例外もある。
 例えば、DQ5の序盤に当たる少年期では、主人公は父に従う形で旅をする。その間、主人公自身は大きな目的を持つことはない。
 その後、父の遺言によって「母を探す」という目的が明確化される。

 その他には宿敵が明確になる場合などがある。
 今まで存在をつかめなかった悪の組織の首領が、ついに正体を現すようなパターンだ。

目的の変化

 目的を達成しない段階で、目的が変化してしまうパターン。

 例えば『宿敵』が部下の裏切りによって、死亡するパターンが挙げられる。多くの場合は、そのまま部下がラスボスとして君臨する。
 いわゆる下剋上型のラスボスである。

 あるいは、もっと大がかりなどんでん返しもあり得る。
 今まで敵だと思っていた人物が正義の味方で、本来の敵は別にいたことが明らかになるなど。

目的の難化

 大まかな目的は変わらないまでも、それが難化するというパターン。

 代表的なところでは敵の復活イベントだろうか。
 「主人公達の奔走は報われず、邪神の復活を許してしまう」とかそんな感じ。
 これにより「邪神の復活を阻止」するという目的が「邪神の封印・討伐」へと格上げされる。
 まあ、邪神の復活が阻止されたら、物語にならないし仕方ないね。

 他にも、宿敵のパワーアップイベントなどもそうだろう。
 なるべく劇的なパワーアップイベントを作ろう。
 「封印されし力を得た」とかそんな感じである。
 「ちょっと修行したら強くなった」だけではさすがに転とは言い難い。

 ついでに破壊イベントや強制敗北イベントを作ってみてもよい。
 破壊イベントとは、力を手に入れた敵が町を見せしめに破壊したりするアレである。
 他にも最強と思っていた師匠キャラが、パワーアップした敵に殺されてしまうなんてのも定番だろう。

 物理的に強くなるだけでもよいが、他にも色々と考えられる。

  • 主人公は父の仇を討つために、大国の軍人である男を追う。
  • 旅の末、大国にたどり着いたはいいが、男は大国の王になっていた。
  • 男を倒すには、大国そのものと戦う覚悟が必要となる。
  • 主人公は大国と戦う反乱軍に身を投じることに。

 目的の難化に伴い、「個人的な復讐劇」が「国家的な騒乱劇」に格上げされたことに注目して欲しい。
 このように『目的の難化』には物語の流れを変える効果もある。

目的に対する手段の変化

 大きな目的は変わらないが、手段や中期的な目的が変化する場合。
 これも立派な転換点である。

 どのような時に手段が変化するかは、下記の『目的の失敗』や『目的に関する新事実』を見ていただければ。

目的の失敗

 目的に挑んで失敗する――これもまた転換点となる。

 例えば、物語中盤で宿敵に挑むが、返り討ちに合うような展開だ。
 その後、宿敵を倒すための手段を探すといった展開に。

 あるいはその際に宿敵にヒロインをさらわれるなど、失敗の代償を払わされる展開にしてもよい。当面の目的はヒロインの救出になるわけだ。

 SFなら「地球に衝突する隕石を阻止するためにロケット兵器を打ち上げるが、破壊に失敗した」など、色々と考えられる。

目的に関する新事実

  • 宿敵の正体は主人公の父だった!
  • 敵を倒すためには、大きな犠牲を払う必要がある。

 ……というような展開。

 上の例はFF10だが、「宿敵の正体」「倒すために必要な代償」などが掲示された結果、主人公にとって目的を達成する意味合いが大きく変化してくる。その結果、手段の変更も決意することになる。
 ただし、敵を倒すという目的自体は当初から変化していない。

 他にも「悪だと思っていた敵にも、同情できる事情があった」なんていう王道パターンもこれである。

転を強調しよう


 さらに具体的に転を強調する方法を考えてみよう。

 『主人公側に関わるもの』『世界・舞台に関わるもの』の二種類に分けてみる。これらが『目的の転換』に結びつくことで、印象的な転が生まれるというわけだ。

主人公側に関わるもの

 『転』においては主人公側に関わる出来事が多用される傾向がある。
 主人公やヒロイン、仲間に関わるイベントを起こすことで、印象的な転を作ろう。

主人公の変更

 主人公の変更。これはゲーム性への影響も大きな転換である。

 王道なのは主人公が死亡するなどして、その子世代に主人公が変更されることだろう。この場合は、時間経過と組み合わされることが多い。

主観視点の交代

 単純なところでは、章が変わって視点となるキャラが交代するなど。ただし、それだけでは転としては弱いかも。

 他にも主人公が危機的な状況に陥って、ヒロインなどの他のキャラが第二の主人公として動き出すなど。

主人公の大きな決断

 物語の流れを大きく変えるような主人公の決断。

  • 所属組織からの脱退・離反
  • 悪事

 などが代表例だろうか。

 ストーリー上で強制しても良いし、もちろんプレイヤーに選択させてもよい。
 FF4の冒頭や、タクティクスオウガの一章終盤の選択肢などが有名だろう。

仲間の離脱

 一時的にちょっと離脱するだけなら大したことはないが、死亡などの永久離脱は大きな衝撃になる。
 時にはヒロインや主人公まで対象となったりする。

 FF6のようにメンバー全員が離散するなんて展開も。

重要人物の裏切り

 定番のどんでん返し。
 そのまま仲間だった人物が宿敵になったり、もう一度復縁したりと展開は様々。

重要人物の死亡

 例えば、パワーアップしたラスボスに師匠キャラが殺害されるような展開があれば、ラスボスの印象が強まるだろう。

 宿敵と思っていた相手が黒幕に殺されるとか、主人公に指示を出していた組織の長が殺される――といった展開なら、物語の流れも変わってくる。

 当然、どうでもいいキャラでは転換点にはならない。

主人公やヒロインの秘密が明かされる

 実は王族だったとか、人間じゃなかったとかいうのが最もベタだが、やりようはいくらでもある。
 それによって、新たな展開につながったりする。

協力者の登場

 ネガティブな展開ばかりを書いている気がするけれど、ポジティブな展開も大事。
 協力者の登場によって、絶望的な状況に光明が見えてくる展開など。

 敵側の人物が改心して仲間になってくれるなども効果的だ。もしくは最初からスパイ的な活動をしていただけで、味方だったなどのパターンもある。

恋愛成就

 例えば、主人公がヒロインに告白して成功する――なんて展開も場合によっては立派なターニングポイントになる。
 悪の組織に追われるヒロインを守る――といった動機づけによって、ストーリー展開に大きな影響を与えることも。

 中盤で結婚するDQ5なんかが有名。
 ただし、現代的な恋愛劇として見た場合は、圧倒的に描写が足りないのは玉に瑕。

 逆に振られてしまう場合も立派に印象づけられるけれど、いささかマニアックなのは否めないし、某ラグーンぐらいしか有名作を知らない。

世界・舞台に関わるもの

 物語の転換点においては、世界・舞台の変化が行われることも多い。

世界・舞台の移動

 魔王が支配する暗黒の世界、雲の上の浮遊大陸、未知の生物が跋扈する地底……。こういった舞台への移動は、大作RPGの醍醐味である。

 SFならば宇宙船で新たな惑星に移動したり、タイムマシンで別の時代に移動したりすることもあるだろう。

 必ずしも、大規模な変化である必要はない。
 FF7の序盤は、都市ミッドガルを舞台に物語が展開されるが、やがて世界を舞台にした物語へと広がっていく。これもまた舞台の移動である。

時間の経過

 時間経過によって、物語を転換させる手法。

 有名なのはDQ5だろう。
 父に連れられていた少年時代から、自ら立って歩く青年時代へと主人公は成長を遂げる。
 さらに再度の時間経過によって、誕生した子供達が成長して戦いに参加するようになる。

 当然ながら、時間が経過すると世界中の住民も歳を取る。そういった住民の変化を実装するのは、なかなかの難作業である。
 そう考えると、序盤の多くの町が登場していない段階で、しかけるのが無難なところか。
 実際、ごく序盤のイベントのみを少年期で行う作品も時々見かける。もっとも、これは『転』というより『起』寄りのような気がしないでもない。

 あるいは、一年程度の時間経過を導入する方法もある。
 こちらならば住民に大きな変化はないはずなので、セリフなどを変更しなくとも違和感はないはず。
 ただし、意味もなく時間経過を導入しても仕方ないので、何らかの変化は必要だが。

舞台の破壊

 町や国が破壊されたり、島や大陸が沈んだりする。
 あるいはFF6のように世界まるごと大打撃を受けてもよい。

 これによって敵の強大さや凶悪さを印象づけたり、主人公側に動機づけを行ったりする。

 『起』でも『転』でも使えるイベント界の優等生。大規模にやると演出が大変になるのが玉に瑕。
 とりあえず主人公の故郷を焼いたりするのは基本。

世界規模での異変

 世界が暗闇に覆われる。雨が永遠に止まらない。世界中の陸地が水没する。モンスターの大量発生。などなど……。
 敵によって人為的に起こされたか、自然現象的なものなのかによって、また展開が変わってくる。

 隕石を阻止するFF7のように、それら天変地異の阻止が最終目的となる場合もある。

 「ラスボスを倒さないと世界がヤバい!」なんて文章を中心に説明する作品は多いけれど、それだけではイマイチ実感が湧かないもの。
 上の『舞台の破壊』もそうだけど、こうやって具体的な演出を入れると効果てきめんだ。

転の注意点


 ここまで熱烈に『転』を推してきたけど、転は万能ではない。強引に転をしかけた場合は、物語に対してマイナスに働く場合もある。

 それはテーマがブレることである。

 例えば「主人公とライバルとの対決」というテーマが物語の全体の多くを占める作品だったとしよう。
 そこで終盤になって唐突に「黒幕の手によって、ライバルが殺害される」という転を導入するとどうなるだろうか?
 これにより「主人公とライバルとの対決」というテーマが終わってしまうため、プレイヤーが興冷めしてしまう可能性は高いだろう。

 こういった場合も、なるべく自然なテーマの変化を目指そう。
 例えば……

 幾度の戦いの末、主人公とライバルはついに和解する。手段は違えど、二人とも世界の平和を目指す志は同じだったのだ。
 だが、ライバルを影で利用していた黒幕は彼を殺害する。
 世界征服を企む黒幕にとって、もはやライバルは邪魔でしかなかったのだ。
 主人公はライバルの目指した世界平和を目指すため、黒幕との最後の戦いに挑む。


 テーマが「ライバルとの対決」から「ライバルの遺志を継ぐ」に転換されたわけだが、これなら比較的違和感は少ないはず。

まとめ


 以上、色々と例を挙げてみた。
 簡単にできるものから演出的に難しいものまであるけれど、色々と考えてみていただければ。

 なお、実際には複数の要素を組み合わせて『転』を演出することが多い。
 例えば、FF6の中盤の転換点では、『目的の変化』『目的の難化』『目的の失敗』『舞台の破壊』『メンバーの離脱』『時間の経過』など数多くの要素が含まれている。
 強い印象を与えたい場合は、上述の要素を柔軟に組み合わせてみて欲しい。もちろん、ここに挙がっていない方法の中にも、有効なものもあるかもしれない。

>RPG制作講座目次に戻る
posted by 砂川赳 at 11:10 | RPG制作講座 | このブログの読者になる | 更新情報をチェックする

アイテムの入手処理を共通化【RPGツクールMZ&MVプラグイン】

2022年01月08日

 アイテムの入手処理を共通化します。
 ※なお、以下ではアイテムと記載していますが、武器、防具、所持金の全てに対して有効です。


 アイテムの増減時、自動的にコモンイベントを呼び出します。


 さらに直前に入手したアイテムの情報(アイテム名や増減量など)をプラグインコマンドで参照することによって、入手処理の共通化を実現します。

 また、指定のスイッチがオンの間だけ、コモンイベントの呼び出しを禁止することもできます。

 ※ちなみに上記のアイコンのポップアップはIconBalloon.js(シロップ様)によるものです。当プラグインはあくまで処理を共通化するだけとなります。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

MZ用プラグインコマンド(Plugin Command MZ)

MV用プラグインコマンド(Plugin Command MV)

プラグインパラメータ(Plugin Parameter)

所持金コモンイベント(GoldCommonEvent)

アイテムコモンイベント(ItemCommonEvent)

武器コモンイベント(WeaponCommonEvent)

防具コモンイベント(ArmorCommonEvent)

無効化スイッチ(DisableSwitch)


導入方法(install)


 以下のファイルを右クリックで保存し 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMV、MZの両方で有効です。

 NRP_GetItemCommon.js ver1.01(2022/01/08)

更新履歴(History)


2022/01/08(ver1.01)

  • 説明文などの文字列が空の場合、不要な文字列が表示される不具合修正。
  • 他プラグインとの競合対処用に微調整。

2021/12/04(ver1.00)

  • 公開!

使用方法(Usage)


 アイテム入手後に呼び出されるコモンイベントを作成し、プラグインパラメータに設定してください。
 ※アイテム、武器、防具、所持金のそれぞれに対して設定可能ですが、所持金以外は同じコモンイベントでも問題ないと思います。

 プラグインコマンドで入手したアイテムの情報を取得し、変数に格納します。
 以下の例では……

  • アイテム名を変数1
  • 増減量を変数2
  • 説明文を変数3
  • アイコンIDを変数4

 ……にそれぞれ格納しています。

 さらにそれをメッセージで表示します。
 増減量によって、メッセージを分岐させたほうが違和感ないと思います。

アイテム、武器、防具の場合



増減量が1の時

\i[\v[4]]\v[1]を手に入れた!
\v[3]

アイテムの増減量が2以上の時

\i[\v[4]]\v[1]を\v[2]個手に入れた!
\v[3]

アイテムの増減量が−1以下の時

\i[\v[4]]\v[1]を\v[2]個失った……。
\v[3]

※増減量に-1を乗算して反転させています。
所持金の場合

 ※対象が『所持金』の場合は増減量のみが有効となります。



増減量が1以上の時

\v[2]\gを手に入れた!
\v[3]

増減量が−1以下の時

\v[2]\gを失った……。
\v[3]

※増減量に-1を乗算して反転させています。


 これらはあくまで一例です。演出なども自由に挟んでください。

 後は『アイテムの増減』『武器の増減』『防具の増減』『所持金の増減』の各処理を実行した際にメッセージが表示されればOKです。

 また、必ずしも全ての場合に対してメッセージが必要なわけではありません。例えば「アイテムの『増減量が−1以下の時』については、頻度も低いので、通常のイベント内でメッセージを記述する」といった運用でもよいと思います。

 共通処理を実行したくない場合は『無効化スイッチ』を設定することもできますので、柔軟に対応してください。

MZ用プラグインコマンド(Plugin Command MZ)


 直前に入手したアイテムの各情報を変数に格納します。
 メッセージ内で\v[1]のように変数を指定すると、値が表示されます。
 ※対象が『所持金』の場合は増減量のみが有効となります。

アイテム名を取得

 直前に入手したアイテムの名前を変数へ格納します。

増減量を取得

 直前に入手したアイテムの増減量を変数へ格納します。

説明文を取得

 直前に入手したアイテムの説明文を変数へ格納します。
 改行も有効です。

アイコンを取得

 直前に入手したアイテムのアイコンIDを変数へ格納します。

分類を取得

 直前に入手したアイテムの分類を変数へ格納します。

IDを取得

 直前に入手したアイテムIDを変数へ格納します。

タイプを取得

 直前に入手したアイテムのタイプを変数へ格納します。
 アイテム、武器、防具、それぞれのタイプに対応します。

 アイテムの場合は以下の通りです。
  1:通常アイテム、2:大事なもの、3:隠しアイテムA、4:隠しアイテムB
 ※武器防具についてはデータベースの設定値を参照してください。

装備タイプを取得

 直前に入手した防具の装備タイプを変数へ格納します。
 ※選択はできませんが、実際には武器も1が固定で設定される模様です。

メタ値を取得

 直前に入手したアイテムのメタ値を変数へ格納します。
 この項目のみ定義名の指定が必要です。

 メタ値とはメモ欄にユーザが定義した値のことです。
 例えば、<Test:100>と記述した場合、『Test』の部分を定義名に指定すると、変数に100が格納されます。

 独自にアイテムの区別を行いたい場合などに便利かもしれません。
 ※<Important:1>の場合のみ、入手時にファンファーレを鳴らすなど。

MV用プラグインコマンド(Plugin Command MV)


 機能はMZ版と全く同じなので割愛します。
 以下のコマンドを呼び出してください。
 ※大文字個別は区別しません。また[]は含まないでください。

アイテム名を取得

NRP.GetItemCommon.GetName [変数ID]

増減量を取得

NRP.GetItemCommon.GetAmount [変数ID]

説明文を取得

NRP.GetItemCommon.GetDescription [変数ID]

アイコンを取得

NRP.GetItemCommon.GetIcon [変数ID]

分類を取得

NRP.GetItemCommon.GetCategory [変数ID]

IDを取得

NRP.GetItemCommon.GetId [変数ID]

タイプを取得

NRP.GetItemCommon.Type [変数ID]

装備タイプを取得

NRP.GetItemCommon.EquipType [変数ID]

メタ値を取得

NRP.GetItemCommon.GetMetaValue [定義名] [変数ID]


プラグインパラメータ(Plugin Parameter)


所持金コモンイベント(GoldCommonEvent)

 所持金の増減時に呼び出されるコモンイベントです。

アイテムコモンイベント(ItemCommonEvent)

 アイテムの増減時に呼び出されるコモンイベントです。

武器コモンイベント(WeaponCommonEvent)

 武器の増減時に呼び出されるコモンイベントです。

防具コモンイベント(ArmorCommonEvent)

 防具の増減時に呼び出されるコモンイベントです。

無効化スイッチ(DisableSwitch)

 指定のスイッチがオンの間、コモンイベントの呼び出しを無効化します。
 ※なお、コモンイベントの先頭でスイッチ分岐させて『イベント処理の中断』を実行しても同じです。よく考えたらなくてもいいですよね、この項目……。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 18:10 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする