draw_stringで複数行のテキストを表示 – FlyWithLua

2023年3月4日

draw_string()では基本1行しか表示できない。以下のようにするにはテーブルを使う必要がある。

「i」が「list」のテーブル数、valueがテーブルのテキスト。
draw_stringの3番目にテーブルのテキストが上のように自動的に入ることになる。逆に下から入ることに注意が必要。

function Text_draw()
	list = {"a","b","c","d"}
	for i,value in ipairs(list) do
    		draw_string( 100, 90+(10*i), i .. ":" .. value, 0, 1, 0)
	end
end
do_every_draw("Text_draw()")

こういう方法もある

function Text_draw()
  arr = {"赤","黄","青"}
  for i = 1 , #arr do
  	draw_string( 100, 90+(10*i), arr[i], 0, 1, 0)
  end
end
do_every_draw("Text_draw()")

上から順番にテキスト表示する

3行目、iにマイナスを付けているのが味噌。

function Text_draw()
	for i = 1, 5, 1 do
		draw_string(100, 90 + (10 * -i), i, 0, 1, 0)	--「 −1」で上から下に表示されるようになる。
	end
end

do_every_draw("Text_draw()")