ツクールVXAceについてです。
デフォルトでメッセージウィンドウの表示位置は 上・中・下 の3つ中から指定できますが、
この 下 の位置を少し上に上げたいと思っています。
↑のSSだとピンクの枠がデフォルトの位置(下)・黄色の枠が希望したい表示箇所(下)です。
よろしければどなたか、お教え願います。
【解決!】メッセージ表示位置(下)について
【解決!】メッセージ表示位置(下)について
最後に編集したユーザー サワラ [ 2016年12月06日(火) 17:45 ], 累計 1 回
Re: メッセージ表示位置(下)について
ただ単純に改造するだけなら、Window_Messageのデフォルト196行目~にこんなのがあるので# ここ を追加して完成です。数値の24は適当に変えてください。
※おまけの素材
コード: 全て選択
#--------------------------------------------------------------------------
# ● ウィンドウ位置の更新
#--------------------------------------------------------------------------
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
コード: 全て選択
#--------------------------------------------------------------------------
# ● ウィンドウ位置の更新
#--------------------------------------------------------------------------
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
self.y -= 24 if @position == 2 # ここ
end
※おまけの素材
コード: 全て選択
=begin
◆概要
メッセージウィンドウのY座標を調整できるようにします。
◆機能
・設定項目でどうぞ。
・イベントコマンドで「set_meswindow_pos(表示位置番号, y)」と記入すると、
その表示位置でのY座標調整をyにします。
・イベントコマンドで「plus_meswindow_pos(表示位置番号, y)」と記入すると、
その表示位置でのY座標調整にyを加算します。ループでちょっとずつ調整したい人向け。
・イベントコマンドで「init_meswindow_pos」と記入すると、
全ての表示位置でのY座標調整を初期化します。
◆仕様
・そもそもピッタリなので、X座標はいじれません。
◆使用上の注意
・★……エイリアス ○……新規定義
◆作者:faida @faida3983
=end
module FAI_MWPOS
# 設定項目:表示位置ごとの初期調整 [上, 中, 下]
INI_MWPOS = [24, 0, -24]
end
#==============================================================================
# ■ Game_Message
#==============================================================================
class Game_Message
include FAI_MWPOS
#--------------------------------------------------------------------------
# ○ 公開インスタンス変数
#--------------------------------------------------------------------------
attr_accessor :window_pos # ☆追加
#--------------------------------------------------------------------------
# ★ オブジェクト初期化
#--------------------------------------------------------------------------
alias fai_mwpos_initialize clear
def initialize
fai_mwpos_initialize
initialize_placement
end
#--------------------------------------------------------------------------
# ○ 初期設定に戻す
#--------------------------------------------------------------------------
def initialize_placement(pos = nil)
if pos
@window_pos[pos] = INI_MWPOS[pos]
else
@window_pos = INI_MWPOS
end
end
end
class Game_Interpreter
#--------------------------------------------------------------------------
# ○ 追加イベントコマンド
#--------------------------------------------------------------------------
def set_meswindow_pos(pos, y)
if pos
$game_message.window_pos[pos] = y
else
(0...$game_message.window_pos.size).each{|i|$game_message.window_pos[i]=y}
end
end
def plus_meswindow_pos(pos, y)
if pos
$game_message.window_pos[pos] += y
else
(0...$game_message.window_pos.size).each{|i|$game_message.window_pos[i]+=y}
end
end
def init_meswindow_pos(pos = nil)
$game_message.initialize_placement(pos)
end
end
#==============================================================================
# ■ Window_Message
#==============================================================================
class Window_Message < Window_Base
#--------------------------------------------------------------------------
# ★ ウィンドウ位置の更新
#--------------------------------------------------------------------------
alias fai_mwpos_update_placement update_placement
def update_placement
fai_mwpos_update_placement
self.y += $game_message.window_pos[@position]
@gold_window.y = y >= @gold_window.height ? 0 :
Graphics.height - @gold_window.height # ここ再定義みたいなもの
end
end
------------------------------------------------------------------
自作の(改造でない)スクリプト、プラグイン素材に
関しては、リードミーもしくは作中に
「faida」と記名していただければ
利用可能です。
自作の(改造でない)スクリプト、プラグイン素材に
関しては、リードミーもしくは作中に
「faida」と記名していただければ
利用可能です。
Re: メッセージ表示位置(下)について
わああfaidaさんこんにちは、早速ありがとうございます!!
デフォルトの位置だとあまりにも下に寄り過ぎている気がして、気になって仕方がなかったのですが今回もとても助かりました(*'ω'*)
改造も上手くいき、おまけのスクリプトも大事に使わせていただこうと思います!!
デフォルトの位置だとあまりにも下に寄り過ぎている気がして、気になって仕方がなかったのですが今回もとても助かりました(*'ω'*)
改造も上手くいき、おまけのスクリプトも大事に使わせていただこうと思います!!