contents.draw_text()メゾッドの引数に改行を用いたい

much
記事: 48
登録日時: 2017年11月09日(木) 01:01

contents.draw_text()メゾッドの引数に改行を用いたい

投稿記事by much » 2022年10月23日(日) 11:26

コード: 全て選択

$win1 = Window_Base.new(4, 10, 250, 51)
$win1.opacity = 255
$win1.contents.draw_text(0, 0, 200, 21,"HP " + $game_actors[1].hp.to_s + "/" + $game_actors[1].param(0).to_s)


と記述すれば、画面にはウィンドウが表示され、メッセージを出すことができますが、
この時、draw_textの第五引数に改行コードを適応させて、表示されるメッセージを改行したいのですが可能でしょうか?

TOMO
記事: 335
登録日時: 2015年11月16日(月) 20:12
連絡を取る:

Re: contents.draw_text()メゾッドの引数に改行を用いたい

投稿記事by TOMO » 2022年10月24日(月) 00:52

Window_Baseなら、contents.draw_textでなくdraw_text_exの方を使ったら?
こっちなら改行文字(\n)で自動で改行してくれます

$win1.contents.draw_text(x, y, width, height, text, align = 0)

$win1.draw_text_ex(x, y, text)


どうしてもdraw_textの方が良い場合は、

コード: 全て選択

文字列.split("\n").each_with_index {|text, i| $win1.contents.draw_text(0, 21 * i, 200, 21, text) }
で可能です
(splitで括弧内の文字で分割して配列にし、each_with_indexでループさせてます)
much
記事: 48
登録日時: 2017年11月09日(木) 01:01

Re: contents.draw_text()メゾッドの引数に改行を用いたい

投稿記事by much » 2022年10月24日(月) 16:39

おおー!そんなのあるんですね!
ちなみに何ですが、ツクールVXACEのメゾットの使用例などが記載されているリファレンスとかってあったりしますか?
TOMO
記事: 335
登録日時: 2015年11月16日(月) 20:12
連絡を取る:

Re: contents.draw_text()メゾッドの引数に改行を用いたい

投稿記事by TOMO » 2022年10月25日(火) 18:56

VXAceのスクリプト(RGSS3)の講座サイト等を見て下さい
(VXの方でもある程度なら…)

それで足りない時はRubyの方のサイトで基本のメソッドを調べ、
VXAceのヘルプで専用のメソッドを調べるくらいしかないかと…


※RGSS2の講座サイト(CACAO SOFT様)
https://cacaosoft.mars.jp/

※Ruby 1.9.3のリファレンスサイト(VXAceは1.9.2だけど…)
https://docs.ruby-lang.org/ja/1.9.3/lib ... iltin.html

“VX / Ace:質問” へ戻る