【解決済み】ステータス画面下部の余白設定

湯喜乃湯
記事: 35
登録日時: 2016年1月10日(日) 16:05
お住まい: Tokyo
連絡を取る:

【解決済み】ステータス画面下部の余白設定

投稿記事by 湯喜乃湯 » 2016年1月22日(金) 05:47

「Window_Status」内にスクリプトを追加し、ステータス画面にアクターの立ち絵画像を表示させるようにしたのですが、下部に8ピクセルほどの余白があり、画像がその分途切れてしまいます。
この余白設定を無くし、立ち絵画像を途切れないように表示させたいのですが、どうすればいいのでしょうか?
ご教授のほど、よろしくお願いします。

以下、追加したスクリプトです。
#--------------------------------------------------------------------------
# ● ブロック 0 の描画(立ち絵を表示させるブロック0を追加)
#--------------------------------------------------------------------------
def draw_block0(y)
bitmap = Cache.picture("Actor#{@actor.id}")
self.contents.blt(x, y, bitmap, bitmap.rect)
end
添付ファイル
Window_Status.jpg
Window_Status.jpg (65.4 KiB) 閲覧数: 4688 回
最後に編集したユーザー 湯喜乃湯 on 2016年8月24日(水) 01:56 [ 編集 1 回目 ]

faida
記事: 272
登録日時: 2015年12月17日(木) 16:44

Re: ステータス画面下部の余白設定

投稿記事by faida » 2016年1月22日(金) 08:35

おはようございます。

手っ取り早い方法としては、標準パディングサイズを小さくすると、余白の部分まで立ち絵を表示することができます。

コード: 全て選択

class Window_Status < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 標準パディングサイズの取得
  #--------------------------------------------------------------------------
  def standard_padding
    return 4
  end
 end
ただし、文字のレイアウトが崩れてしまうので、自分で調整する必要があります。

もう一つ、立ち絵をスプライトで表示させる方法もあります。

コード: 全て選択

class Window_Status < Window_Selectable
  #--------------------------------------------------------------------------
  # ● ブロック 0 の描画(立ち絵を表示させるブロック0を追加)
  #--------------------------------------------------------------------------
  def draw_block0(y)
    @picture_sprite.dispose if @picture_sprite && !@picture_sprite.disposed?
    @picture_sprite = Sprite.new
    @picture_sprite.bitmap = Cache.picture("Actor#{@actor.id}")
    @picture_sprite.x = x
    @picture_sprite.y = y
    @picture_sprite.z = self.z
  end
  #--------------------------------------------------------------------------
  # ● 解放
  #--------------------------------------------------------------------------
  alias dispose_fai_ss dispose
  def dispose
    @picture_sprite.dispose unless disposed?
    dispose_fai_ss
  end
  #--------------------------------------------------------------------------
  # ● フレーム更新
  #--------------------------------------------------------------------------
  alias update_fai_ss update
  def update
    update_fai_ss; @picture_sprite.update if @picture_sprite
  end
end
レイアウトは崩れないですが、少々重くなる可能性もあります。
添付ファイル
左パディング スプライト右.png
左がパディングで右がスプライト
------------------------------------------------------------------
自作の(改造でない)スクリプト、プラグイン素材に
関しては、リードミーもしくは作中に
「faida」と記名していただければ
利用可能です。
湯喜乃湯
記事: 35
登録日時: 2016年1月10日(日) 16:05
お住まい: Tokyo
連絡を取る:

Re: ステータス画面下部の余白設定

投稿記事by 湯喜乃湯 » 2016年1月22日(金) 14:06

>faidaさん
こんにちわ。
早速ご回答頂きありがとうございます。
毎回毎回・・・本当に感謝です!!(FSMの頃も含めると、ありえんほどお世話になっております)

標準パディングサイズサイズの調整は、各方面のレイアウト調整が自分では厳しいようなので、今回は後述の「スプライトで表示」を使わせて頂こうと思います。

ウィンドウ枠に重ねて表示出来るという事も、選ばせて頂く要因でした。
記載はしていませんでしたが、ウィンドウ枠の上に重ねるレイアウトデザインを以前からやりたかったんで、ドストライクでした。

これにて当質問は解決済みとさせて頂きます。
改めましてfaidaさん、大感謝です!!
湯喜乃湯
記事: 35
登録日時: 2016年1月10日(日) 16:05
お住まい: Tokyo
連絡を取る:

Re: ステータス画面下部の余白設定

投稿記事by 湯喜乃湯 » 2016年1月22日(金) 21:08

一度解決済みとしておいてなんですが・・・捕捉です。

あれから色々とステータス画面レイアウト変更の作業を繰り返し、最終的にはfaidaさんからご回答頂いた「標準パディングサイズ変更」と「立ち絵をスプライトで表示」の2つを組み合わせる事になりました。

「Window_Status」に「標準パディングサイズ変更(0に設定)」を追加した上で各項目の位置調整をし、レイアウト背景用画像(添付画像1)を表示。
「立ち絵をスプライトで表示」にてアクターの立ち絵画像(添付画像2)を表示。
といった感じでステータス画面のレイアウトを変更してみたした(添付画像3)。
注意:添付画像はJPEGなので、透過処理はされていません。

以上、簡単ですが補足説明でした。
では、本当の解決済みという事で、失礼します。
添付ファイル
s_window_01.jpg
添付画像1
s_window_01.jpg (21.86 KiB) 閲覧数: 4646 回
s_window_02.jpg
添付画像2
s_window_02.jpg (17.54 KiB) 閲覧数: 4646 回
s_window_03.jpg
添付画像3
s_window_03.jpg (58.78 KiB) 閲覧数: 4646 回

“VX / Ace:質問” へ戻る