2018/10/22(月) [n年前の日記]
#1 [tic80] TIC-80のマップエディタの使い方についてメモ
TIC-80のマップエディタの使い方について少し分かってきたので一応メモ。
まあ、テキトーに触ってみれば使い方は分かるだろうという気もするのだけど…。
ちなみに環境は、Windows10 x64 + TIC-80 0.70.6。
まあ、テキトーに触ってみれば使い方は分かるだろうという気もするのだけど…。
ちなみに環境は、Windows10 x64 + TIC-80 0.70.6。
◎ マップエディタの使い方のメモ。 :
マップエディタを使ってマップを作るために、まずはスプライトエディタ(ドットエディタ)で、マップ用(BG用)のドット絵をいくつか描いておかないといけない。
スプライトエディタ(ドットエディタ)は、F2キーを押せば表示される。右上に、FG、BGと表示されてるけど、BGがマップ用(BG)の領域。クリックして選択してから、マップ用のドット絵をいくつか描く。1セル(1タイル)、8x8ドット。
ドット絵が描けたら、F3キーを押して、マップエディタに切り替える。ペンツール(Draw)やバケツツール(塗り潰し)で、マップを描く。
ちなみに、マウスの右ボタンドラッグでマップのスクロールができる。(あるいは、手のひらツールを選んで左ボタンドラッグしても同様にスクロールできる。)
注意点(?)。一番上の行(?)にメニューが常時表示されてるので、見た目でマップを作っていくと一番上の一行だけ何も描かれてない状態になってしまう。一画面分ピッタリのマップを作る際は、ちょこっとスクロールしてメニュー表示部分を見えるようにしてから作業することになる。
描画するセル(タイル)は、画面右上の三角をクリックすると選べる。もしくは、SHIFTキー押しっぱなしでも選択ウインドウを表示できる。
カーソルの右上には、セル単位(タイル単位)の位置情報が表示される。
TABキーを押すか、画面上部の「WORLD MAP」アイコンをクリックすると、全体マップの表示になる。マウスの左ボタンドラッグで表示位置を指定できる。ちなみに全体マップの広さは、画面単位で8x8画面分あるっぽい。
スプライトエディタ(ドットエディタ)は、F2キーを押せば表示される。右上に、FG、BGと表示されてるけど、BGがマップ用(BG)の領域。クリックして選択してから、マップ用のドット絵をいくつか描く。1セル(1タイル)、8x8ドット。
ドット絵が描けたら、F3キーを押して、マップエディタに切り替える。ペンツール(Draw)やバケツツール(塗り潰し)で、マップを描く。
ちなみに、マウスの右ボタンドラッグでマップのスクロールができる。(あるいは、手のひらツールを選んで左ボタンドラッグしても同様にスクロールできる。)
注意点(?)。一番上の行(?)にメニューが常時表示されてるので、見た目でマップを作っていくと一番上の一行だけ何も描かれてない状態になってしまう。一画面分ピッタリのマップを作る際は、ちょこっとスクロールしてメニュー表示部分を見えるようにしてから作業することになる。
描画するセル(タイル)は、画面右上の三角をクリックすると選べる。もしくは、SHIFTキー押しっぱなしでも選択ウインドウを表示できる。
カーソルの右上には、セル単位(タイル単位)の位置情報が表示される。
TABキーを押すか、画面上部の「WORLD MAP」アイコンをクリックすると、全体マップの表示になる。マウスの左ボタンドラッグで表示位置を指定できる。ちなみに全体マップの広さは、画面単位で8x8画面分あるっぽい。
◎ マップの表示の仕方。 :
マップを表示する際は、map() が使える。
_map - nesbox/TIC-80 Wiki
_Sprites and Maps - nesbox/TIC-80 Wiki
TIC-80 は 240x136の画面、1セルは 8x8ドットなので、map() に指定する横幅、縦幅は、240/8, 136/8 = 30, 17 前後になる場合が多い、かなと。実際、指定しないと 30, 17 がデフォルト値として使われるらしい。
使用例を書いてみたり。カーソルキーでマップを上下左右にドット単位でスクロールしてみるサンプル。
_maptest.zip (maptest.tic)
_map - nesbox/TIC-80 Wiki
_Sprites and Maps - nesbox/TIC-80 Wiki
map(x, y, w, h, sx, sy, colorkey, scale, remap)
- x, y : 表示したいマップの左上の位置 (セル単位)
- w, h : 表示するマップの横幅、縦幅 (セル単位)
- sx, sy : マップを描画する画面上の位置 (ドット単位)
- colorkey : 透明色として扱うパレット番号。
TIC-80 は 240x136の画面、1セルは 8x8ドットなので、map() に指定する横幅、縦幅は、240/8, 136/8 = 30, 17 前後になる場合が多い、かなと。実際、指定しないと 30, 17 がデフォルト値として使われるらしい。
使用例を書いてみたり。カーソルキーでマップを上下左右にドット単位でスクロールしてみるサンプル。
-- title: game title -- author: game developer -- desc: short description -- script: lua SCRW,SCRH=240,136 x,y=0,0 function TIC() if btn(0) then y=y-1 end if btn(1) then y=y+1 end if btn(2) then x=x-1 end if btn(3) then x=x+1 end if btn(4) then x,y=0,0 end cls(13) local bgx = x % (SCRW*8) local bgy = y % (SCRH*8) local w,h = SCRW/8+1,SCRH/8+1 map(bgx/8,bgy/8,w,h,-(bgx%8),-(bgy%8)) print("x,y="..x..","..y,8,8) end
_maptest.zip (maptest.tic)
[ ツッコむ ]
以上、1 日分です。