RPGツクールMZにおいて、GUIでのイベントの処理で、プログラミングで言うところの「コメントアウト」的なものは用意されていません。しかしツクールのデフォルト機能でも、疑似的にコメントアウトと同じ挙動を実現することができます。
目次
コメントアウトとは
コメントアウトとは、プログラミングにおいてソースコードの一部をコメント化することによって、その部分の処理を実行させないための手法です。
- 処理(イベント)が想定と異なる挙動をしてしまう、つまり不具合がある場合に、どの部分で不具合が起きているのか、問題を切り分けるため
- コードを書き換えた際、古いコードを消す前に、本当にその部分を消しても問題ないか確認するため
などの場合に使います。
例えば次のような具合です。
i = int(input()) if i < 100: print("100未満です") else: print("100以上です") """ if i < 5: print("5未満です") else: print("5以上です") """
これはPythonのコードで、”””で囲まれている、薄くなっている部分がコメントアウトされた部分です。
RPGツクールMZで疑似的にコメントアウトを実現する方法
RPGツクールでも、処理の確認や不具合の原因切り分け、イベント処理の書き換えなどで、処理を部分的にコメントアウトしたい場合があります。
まぁ日本語でプログラミング処理を書いているようなものですからね。
ツクールのデフォルト機能に「ここ部分をコメントアウト」みたいな機能はありませんが、「ラベル」と「ラベルジャンプ」を使うことによって疑似的にコメントアウトと同様の処理が可能です。
例えば次のイベントはよくある、「決定ボタンを押すとプレイヤーが物の上に乗って、乗った時に特定のスイッチをONにする」というものです。
この手のイベントが不具合を起こすパターンとして、「なんかプレイヤーが操作不能になった」というものがあります。
こういう時の対処として、いったん「プレイヤーの移動」部分だけコメントアウトしてみたりします。
RPGツクールMZで疑似的なコメントアウトを実現するには次のように、コメントアウトしたい箇所を「ラベルジャンプ」と「ラベル」で囲みます。
この場合は「テスト」という名前の付いたラベルのところまで処理をスキップするわけですね。
これで問題なく動作するのであれば、コメントアウトした「プレイヤーの移動」部分で問題が起きていることがわかります。
このように、コメントアウト(疑似だけど)を使えば、問題が起きている部分を切り分けして原因の特定に役立てることができます。
余談ですが、
画像のイベントではプレイヤーが机の上に乗るとともにスイッチ103番がONになるはずなのですが、例えば机の上に乗った後、さらにプレイヤーを「移動できない方向に移動させる」みたいな処理が挟まっている場合、「移動ルート」の処理が完了せず、その時点でずっとウェイトがかかってしまっている場合があります。
その場合は「移動ルートの設定」イベントで「移動を完了できない場合は飛ばす」にチェックを入れると、とりあえずイベント処理を完了させることはできます。(その処理で問題ないのかは場合によりますが)