ゲーム制作ツール RPGツクールVX_Ace 【RGSS3】デフォルトメッセージウィンドウの幅及び位置の調整


This topic contains 0件の返信, has 1件の返信, and was last updated by  はしもと (Lv.29) 4 年 11 ヶ月.

  • 需要はあると思うのですが、基本的すぎる事項だからなのか、ネット上であまり情報が見つからなかったので個人的にわかったことを書置きしておきます。

    【ウィンドウの幅の変更】

    スクリプト「ウィンドウ」のWindows_Messageの24行目あたり

    #————————————————————————–
    # ● ウィンドウ幅の取得
    #————————————————————————–
    def window_width
    Graphics.width
    end

    #————————————————————————–
    # ● ウィンドウ幅の取得
    #————————————————————————–
    def window_width
    Graphics.width - 24
    end

    等と書き換えることにより、Graphics.widthから引き算した数値の分だけウィンドウ幅が縮まります。

     

    【ウィンドウの位置の変更】

    スクリプト「ウィンドウ」のWindows_Messageの200行目あたり

    #————————————————————————–
    # ● ウィンドウ位置の更新
    #————————————————————————–
    def update_placement
    @position = $game_message.position
    self.y = @position * (Graphics.height – height) / 2 
    @gold_window.y = y > 0 ? 0 : Graphics.height – @gold_window.height
    end

    と記述がありますので、これを以下のように書き換えることで、

    self.yに加えた数値の分だけウィンドウが下に、

    self.xに代入した数値の分だけウィンドウが右にずれます。

    #————————————————————————–
    # ● ウィンドウ位置の更新
    #————————————————————————–
    def update_placement
    @position = $game_message.position
    self.y = @position * (Graphics.height – height) / 2 + 12
    @gold_window.y = y > 0 ? 0 : Graphics.height – @gold_window.height
    self.x = 12
    end

    なお、上記はウィンドウの表示位置が「上」の時に合うように調整したものです。癪に「下」に合わせる場合はself.yから-12とかにすればよいと思います。

     

    メッセージの表示位置を場合によって使い分ける必要がある場合は、もう少し記述を加えて例えば下記のようにすると良いみたいです。

    #————————————————————————–

    # ● ウィンドウ位置の更新
    #————————————————————————–
    def update_placement
    @position = $game_message.position
    @yshift = 12 if @position == 0
    @yshift = 0 if @position == 1
    @yshift = -12 if @position == 2
    self.y = @position * (Graphics.height – height) / 2 + @yshift
    @gold_window.y = y > 0 ? 0 : Graphics.height – @gold_window.height
    self.x = 12
    end

     

    もっと良い方法をご存じの方は是非教えてください。よろしくお願いします。messe-jitesuto

このナレッジに返信するにはログインしてください。