5.ヘルプウィンドウ
1.ヘルプの表示
ヘルプウィンドウは、ベースウィンドウと大した違いはありません。
Window_Help#initialize を見てみると、初期化部分は1行しかありませんね。
つまり、Window_Help.newはWindow_Base.new(0, 56, 544, 56)をするのと
変わりないということですね。
では、イベントコマンド「スクリプト」で次の処理を比べてみてください。
どうでした?同じものだったですよね?
Window_Help#initialize を見てみると、初期化部分は1行しかありませんね。
super(0, 0, 544, WLH + 32)スーパークラス(継承元)のメソッドを呼び出す処理です。
つまり、Window_Help.newはWindow_Base.new(0, 56, 544, 56)をするのと
変わりないということですね。
では、イベントコマンド「スクリプト」で次の処理を比べてみてください。
help = Window_Help.new base = Window_Base.new(0, 56, 544, 56) Graphics.wait(120) help.dispose base.dispose
どうでした?同じものだったですよね?
2.位置、サイズの変更
ヘルプウィンドウの位置やサイズは固定なので変更したい場合は次のようにします。
注意する点としては、ウィンドウのサイズを変更した場合は、
create_contents メソッドで、ウィンドウの内容を描画するための画像を作り直すところです。
help = Window_Help.new help.x = 32 # x座標の変更 help.y = 180 # y座標の変更 help.width = 480 # 横幅の変更 # ウィンドウ内容の再生成 (ウィンドウの幅を変更した場合に必要) help.create_contents Graphics.wait(120) help.disposeベースウィンドウで行うのと何ら変わりありませんね。
注意する点としては、ウィンドウのサイズを変更した場合は、
create_contents メソッドで、ウィンドウの内容を描画するための画像を作り直すところです。
3.文章の表示
では、文章を表示してみましょう。
文字描画には、set_text(text, align = 0)メソッドを使います。
先程のスクリプトに少し加えて次のようにします。
set_text を使用するメリットはそれだけではなく、
表示している文章と同じものだと再描画しない点が重要です。
必要な場合のみ再描画するので、update などで毎フレーム呼び出しても動作が重くなりません。
文字描画には、set_text(text, align = 0)メソッドを使います。
先程のスクリプトに少し加えて次のようにします。
help = Window_Help.new help.set_text("こちらは、ヘルプウィンドウです。") base = Window_Base.new(0, 56, 544, 56) base.contents.draw_text(4, 0, 512, 24, "こちらは、ウィンドウベースです。") Graphics.wait(120) help.dispose base.disposedraw_text を使用するより簡単に文字を表示できますね。
set_text を使用するメリットはそれだけではなく、
表示している文章と同じものだと再描画しない点が重要です。
必要な場合のみ再描画するので、update などで毎フレーム呼び出しても動作が重くなりません。
4.シーン内での処理
5.ウィンドウ内での処理