RPGツクールMZで、ここからここまでの一連のイベント処理を1つのコードブロックとして扱いたい。デフォルトの機能を応用すれば疑似的にそんなことも可能です。
目次
コードブロックとは
コメントアウトとは、プログラミングにおいて複数のコード(構文や命令)を1つの括りとしてまとめたもののことです。
といっても何に困ってどう便利にしたのかいまいちわかりづらいと思いますので、私がツクールで何を不便に感じ、どう解決したか順を追って話していきます。
ここからここまでの一連のイベント処理を1つのコードブロックとして扱いたい
別イベントを呼び出して確率抽選をやって各条件で分岐させてそれぞれこういう処理をして…みたいな一連の処理を書き、「よく似た処理」を別の場所で使い回そうとした時、一から書くのが面倒だったので、該当部分のイベントをコピペしてから修正していたのですが、1つの目的をイベント10個くらいで実現しているものもあります。
その際Shiftキーと矢印キーでいちいちイベント10個とか選択するのが面倒でした。
1発でここからここまで選択できればいいのに…ここからここまで1つの目的なんだからブロックにできればいいのに、と。
コモンイベントにすればいいのか
まったく同じ処理ならコモンイベントにすればいいですし、多少場合分けがあるならコモンイベントの中で分岐させればいいのですが
- 分岐が多岐にわたる場合
- かつそれぞれの分岐先を1回しか使わない場合
だとコモンイベントにするのもビミョーな時があります。
いやまぁ「分岐先をそれぞれコモンイベントにして、コモンイベントからコモンイベントを呼び出す」でもできるのですが、コモンイベントの総数が増えすぎると呼び出すときに探しづらくなるというデメリットもあります。
ニュアンスが難しいのですが「わざわざコモンイベントにするほどじゃないんだよなぁ…それぞれ1回しか使わないし」的な場合です。
RPGツクールMZで疑似的にコードブロックを実現する方法
RPGツクールMZに「1つのブロックにまとめる」みたいな機能はないのですが、疑似的にそれに近いことはできます。
「ループ」を使います。
「ループ」は本来同じ処理を繰り返し行うために使うものですが、ループ処理の終わりに「ループの中断」を入れてしまえば1回限りの処理にすることもできます。
そして、「ループ」で囲まれた処理は1つのブロックなので、「ループ」の部分をクリックするだけで中の処理がまとめて選択できます。
これだ!ということでけっこう便利に使っています。
作っている中で「やっぱりコモンイベントにするか…」となったとしても、ループブロック丸ごとコピペしてくればいいしね!
そんなこんなで、RPGツクールMZで複数のイベント処理を疑似的にコードブロックにする方法でした。