SHIROのIchigoJam日記

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

リアル大なわとびさっちゃん

リアル100mダッシュ」で自作したマットスイッチを使って、「大なわとびさっちゃん」を遊んでみました。タイミングを合わせてジャンプするのがなかなか難しいです。
動画はこちら。

【IchigoJam】リアル大なわとびさっちゃん
f:id:shiro0922:20191009153345j:plain

プログラム

マットスイッチに乗ると、ダウンカウントしてスタートします。
回るなわを踏まないように、ジャンプして跳んでください。画面左下に跳んだ回数が表示されます。
なわを踏んでしまうとゲームオーバーです。マットスイッチから降りてください。再び乗るとリプレイします。
三角関数や簡易グラフィックを使っているので、ファームウェア1.4βで動かしてください。
※(10/19)跳んだ回数表示を修正

10 @ARUN:'O-Nawatobi Sacchan
20 CLS:OUT 5,-1:OUT 6,-1
30 @RESTART
40 CLV:Z=20
50 LC 15,Z:?"@"
60 X=30:Y=43
70 DRAW X,Y
80 COPY #901,#900,31
90 LC 4,0
100 ?"*O-Nawatobi Sacchan*"
110 IF IN(10) || IN(11) CONT
120 LC 0,21:?"0  "
130 COPY #901,#900,31
140 LC 1,0
150 FOR T=3 TO 1 STEP -1
160 ?T;" ";:BEEP:WAIT 60
170 NEXT
180 ?"START!":BEEP 10,30
190 @LOOP
200 LC 0,21:?S
210 FOR T=-260 TO 90 STEP 10
220 DRAW X,Y,0
230 X=30+COS(T)/12
240 Y=22+SIN(T)/12
250 DRAW X,Y
260 LC 15,Z:?" "
270 IF J Z=Z+V:V=V+1
280 LC 15,Z:?"@"
290 IF V=6 J=0
300 K=IN(10) && IN(11)
310 IF !J && K && !L J=1:V=-5
320 L=K
330 NEXT
340 S=S+1
350 IF Z!=20 GOTO @LOOP
360 BEEP 30,60
370 WAIT 180
380 IF !IN(10) || !IN(11) CONT
390 GOTO @RESTART

「リアル100mダッシュ」と同じく、マットスイッチをOUT5,6端子(IN10、IN11)につないで、100kΩ抵抗でプルアップしています。
(スイッチを踏まない=入力1、踏む=0)
スイッチの接続ポートにより、プログラムを変更してください。

プログラムを見るとわかりますが、「左右両方のスイッチから足が離れた瞬間」にジャンプするようになっています(300~310行)。ですので、リアルのなわとびのように左右交互に足踏みしてもジャンプできます。