トップページ > 同人ゲーム > 2021年05月27日 > jA0TPAQy

書き込み順位&時間帯一覧

20 位/233 ID中時間01234567891011121314151617181920212223Total
書き込み数1100000000000000000010014



使用した名前一覧書き込んだスレッド一覧
名無しさん@お腹いっぱい。
ツクールVX Ace 初心者救済、質問スレ Part.4

書き込みレス一覧

ツクールVX Ace 初心者救済、質問スレ Part.4
17 :名無しさん@お腹いっぱい。[sage]:2021/05/27(木) 00:51:21.15 ID:jA0TPAQy
全身画像はメニュー画面の完全改造になるけどbltコマンド使ってcontentsにコピーとか
テキストの縦書きはデフォじゃ用意されてない
そのくらいならあらかじめ画像で用意して上と同じ方法でbltした方が良い
Pictureフォルダに画像を用意して
class Window_Test < Window_Base
def initialize
super(0, 0, 200, 200)
contents.clear
bitmap = Cache.picture("Bustup")
contents.blt(0, 0, bitmap, bitmap.rect)
end
end
とか実行すればウィンドウのcontents内に画像が転送される
ツクールVX Ace 初心者救済、質問スレ Part.4
19 :名無しさん@お腹いっぱい。[sage]:2021/05/27(木) 01:23:39.60 ID:jA0TPAQy
ただのサンプルコードだからな
顔グラフィックを全身画像にするって事はもうパーティ4人分の情報を描画するのではなくほぼ一人用のメニューに改造するって事だろ?
この辺は正確な画面UIに応じて細かい調整しなきゃいけないから具体的な事は言えないが、あくまでサンプルとして

class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# ● リフレッシュ
#--------------------------------------------------------------------------
def refresh
contents.clear
bitmap = Cache.picture("Bustup")
contents.blt(0, 0, bitmap, bitmap.rect)
end
end
とか書けば既存のメニューのステータス情報は全て無くなって全身画像だけ表示される
表示原点は0, 0(左上)
contentsっていうのは言わばキャンバスだから好きな情報を書き込めば良い
ツクールVX Ace 初心者救済、質問スレ Part.4
21 :名無しさん@お腹いっぱい。[sage]:2021/05/27(木) 20:19:17.46 ID:jA0TPAQy
デフォルトのウィンドウサイズ(544*416)を基準にすると
その内のメニューステータスウィンドウのサイズが(384 * 416)
padding(枠の太さ)は基本12だからcontentsのサイズは一回り小さい(360 * 392)
それを横に四分割すると(360 * 98)
顔グラフィックのサイズは一辺96だから本当にデフォルトだと高さがギリギリなんだよ

これを4人分の表示領域のまま顔グラフィックを全身画像に変えたいって画面UIが想像出来ない
どう考えてもはみ出るだろう
96*96に収まる全身画像なら顔グラフィック規格に当て嵌めろって話だし
これ以上アドバイス欲しいなら画面配置図でも描いて上げてくれ
ツクールVX Ace 初心者救済、質問スレ Part.4
24 :名無しさん@お腹いっぱい。[sage]:2021/05/27(木) 23:37:06.77 ID:jA0TPAQy
そっちを先に言ってくれ。つまり縦表示から横表示に変えると
Window_MenuCommandやWindow_MenuStatusのサイズや位置調整方法は簡単だからとりあえず省くけど

まず縦から横に変える方法は
class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# ● 桁数の取得
#--------------------------------------------------------------------------
def col_max
return 4
end
end
詳しい説明は省くけどデフォルトでは桁数1になってるから桁数4に変更
で、表示領域あたりの描画は
class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# ● 項目の描画
#--------------------------------------------------------------------------
def draw_item(index)
actor = $game_party.members[index]
enabled = $game_party.battle_members.include?(actor)
rect = item_rect(index)
draw_item_background(index)
draw_actor_face(actor, rect.x + 1, rect.y + 1, enabled)
draw_actor_simple_status(actor, rect.x + 108, rect.y + line_height / 2)
end
end
この部分でやっている。下二つのdraw_actor_XXって部分を消せば白紙になる
とりあえず対応ピクチャファイル名はBustup_(アクターID).pngとか(例:Bustup_1.png)で保存しておいて
class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# ● アクターのバストアップグラフィックの描画
#--------------------------------------------------------------------------
def draw_actor_bustup(actor, rect, enabled)
dst_center_x = rect.x + rect.width / 2
dst_center_y = rect.y + rect.height
bitmap = Cache.picture("Bustup_#{actor.id}")
x = dst_center_x - (bitmap.rect.width / 2)
y = dst_center_y - bitmap.height
contents.blt(x, y, bitmap, bitmap.rect, enabled ? 255 : translucent_alpha)
end
end
をdraw_actor_faceの代わりに入れれば反映されるはず
引数をx, yからrect引き渡しに変更している点に注意


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。