SHIROのIchigoJam日記

マイコン「IchigoJam」(イチゴジャム)の電子工作とプログラミングをメインに

メガネをかけよう

5/5にオンライン(zoom)でのイベント「プチハッカソン大喜利)」に参加しました。
putihack20200505.peatix.com
出されたお題に対して、制限時間20分でプログラムを作る大喜利方式。20分で何か作るのは大変でしたが、面白い経験でした。
その中で出されたお題「メガネ」で作ったのが、今回紹介する「メガネをかけよう」です。
f:id:shiro0922:20200506200258p:plain

遊び方

  • 上からメガネが降ってくるので、人間を左右のカーソルキーで動かして、メガネをかけさせてください。
  • ミスするとゲームオーバーです。キミは何個かけられるか?

プログラム

10 CLV:CLS:X=8
20 POKE 236*8,0,#81,#81,#81,#A5,#DB,#24,0
30 LC 0,0:?S
40 R=RND(15)+1
50 FOR Y=0 TO 19
60 LC R,Y:?" "
70 X=X-BTN(28)*(X>0)+BTN(29)*(X<15)
80 LC X,20:?CHR$(0,249,0)
90 LC R,Y+1:?CHR$(236)
100 WAIT 3
110 NEXT
120 IF X+1=R BEEP:S=S+1:GOTO 30
130 BEEP 30,30

メガネのキャラクターをPCGで作りました。(20行)
後はキャラの左右移動(70行)、当たり判定(120行)と、よくあるプログラムです。
高速処理のために、人間の左右にヌルを表示して移動させている(80行)のが工夫した点でしょうか。
ハッカソンの時はweb版で作ったのですが、IchigoJam実機で動かすとかなり速くて難しいです。メガネが降ってくるスピードは、100行のWAITの数字で変えられます。