カラフル/colorful PV
アニメ映画『カラフル』(2010)
重い感じで始まりますが、どうストーリーが進むのか気になって面白かったです。結末の予想はついていましたが感動で泣いてしまいました。
今回もBASICです。コンソールに表示する文字色と文字色を変えてみます。
color命令で数字を指定すれば、数字に割り当てられている色が設定できます。
書式) COLOR 文字色,背景色
takk@ubu16:~/basictest$ cat color.bas | nl -ba -i10 -v10 10 '$lang: "qb" 20 30 cls 40 50 for i = 0 to 15 60 y = int(i / 8) + 1 70 x = (i mod 8) * 2 + 1 80 locate y,x 90 color i,8 100 print "" & i 110 next takk@ubu16:~/basictest$
では作成中のゲームのマップに色を付けてみましょう。
takk@ubu16:~/basictest$ cat test.bas | nl -ba -i10 -v10 10 '$lang: "qb" 20 30 40 dim map$(30) 50 ' 1 2 3 60 ' 12345678901234567890123456789012345 70 map$(1) = "###################################" 80 map$(2) = "###################################" 90 map$(3) = "###################################" 100 map$(4) = "#######S# # ## ############" 110 map$(5) = "####### ### #### ## ## # #######" 120 map$(6) = "####### # # ## #G## #######" 130 map$(7) = "####### # #### ### ### #### #######" 140 map$(8) = "####### # # #######" 150 map$(9) = "###################################" 160 map$(10) = "###################################" 170 map$(11) = "###################################" 180 190 x = 8 200 y = 4 210 220 while 1 230 cls 240 250 color 2,1 'green on blue 260 for yy = y-3 to y+3 270 print mid$(map$(yy),x-7,15) 280 next 290 300 color 5 'red 310 locate 4,8 320 print "*" 330 340 color ,0 'bgcolor=black 350 360 do 370 let k$ = INKEY$ 380 loop until k$ <> "" 390 400 select case k$ 410 case "j" 420 ck = y + 1 430 if mid$(map$(ck),x,1) <> "#" and ck <= 8 then y = ck 440 case "k" 450 ck = y - 1 460 if mid$(map$(ck),x,1) <> "#" and ck >= 4 then y = ck 470 case "h" 480 ck = x - 1 490 if mid$(map$(y),ck,1) <> "#" and ck >= 8 then x = ck 500 case "l" 510 ck = x + 1 520 if mid$(map$(y),ck,1) <> "#" and ck <= 28 then x = ck 530 end select 540 wend 550 takk@ubu16:~/basictest$
コメント