テキストのスクロール表示
ポケコンぽくするためには、テキストをスクロール表示できた方がいいと思って、Luaridaでスクロールのプログラムを作ってみました。下記です。
------------------------------------------ --スクロールするテキスト表示(printscrl) -- str:テキスト, fontsize:フォントサイズ, fcolor: 文字色, bcolor: 背景色 ------------------------------------------ function printscrl( str, fontsize, fcolor, bcolor ) local w,h = canvas.getviewSize() local sc --一度、見えないところにテキストを書いて、改行数を求める sc = canvas.drawTextBox( str, 0, h+1, fontsize, fcolor, w ) --画面の絵をワークエリアに取り込みます canvas.getg( 0, fontsize*sc, w-1, h-1, 0, fontsize*sc, w-1, h-1 ) --取り込んだ画面をスクロールさせて描きます canvas.putg( 0, 0, w-1, h-fontsize*sc-1, 0, fontsize*sc, w-1, h-1 ) --書き出す部分をバックカラーで塗り潰します canvas.drawRect( 0, h-fontsize*sc-1, w, h, bcolor, 1 ) --フラッシュします canvas.putflush() --スクロールしたところにテキストを書きます canvas.drawTextBox( str, 0, h-fontsize*sc, fontsize, fcolor, w ) end
やっていることは、画面をキャプチャしてスクロールアップした位置に描き戻し、テキストを表示部を消して、新たにテキストを書いているだけです。
これだけでは、物足りないので、ポケコンのようなプログラムを作ってみました。次のブログです。