はじめに
スペースキー連打でキャラクターが走る IchigoJam BASIC を使ったゲームです。
IchigoJam を複数台ジャンパー線で繋げばリレー形式にもできてしまいます。
シンプルなだけに、大人も子どもも本気になれる。ちょっとしたワークショップにいかがでしょうか。
必要なもの
- IchigoJam (リレーをするなら複数台必要)
- キーボード/モニター等一式
- ジャンパー線 (IchigoJamを4台つなぐなら8本 GND-GND, IN1-OUT1を接続)
シングルダッシュ
5 ' DASH GAME SINGLE
10 CLS:CLT:C=0:P=0
20 LC 31,11:?CHR$(#FF)
30 'IF IN(1)=0 GOTO 30 ELSE CLT:LED1
40 GSB@DISPRUNNER
50 GSB@DISPTIME
60 IF !BTN(32) GSB180:CONT
70 IF BTN(32) GSB180:CONT
80 C=C+1:P=C/2
90 IF !SCR(P+2,11) GOTO40
100 GSB@DISPRUNNER
110 LC 12,11:?"!!GOAL!!":CLK
120 OUT1,1:WAIT5:OUT0
130 END
140 @DISPRUNNER
150 LC P,11:?" ";CHR$(#FB)
160 RTN
170 @DISPTIME
180 T=TICK()
190 LC0,0:?"TIME:";T/60;".";T%60/6
200 RTN
シングルプレイは下記からWebブラウザでも遊べます。
http://ur0.work/Xz1S
RUN もしくは F5キー でゲームスタート。
マルチダッシュ(リレー)
第一走者
5 ' RELAY DASH GAME FOR START
10 CLS:CLT:C=0:P=0
20 LC 31,11:?CHR$(#FF)
40 GSB@DISPRUNNER
50 GSB@DISPTIME
60 IF !BTN(32) GSB180:CONT
70 IF BTN(32) GSB180:CONT
80 C=C+1:P=C/2
90 IF !SCR(P+2,11) GOTO40
100 GSB@DISPRUNNER
110 LC 12,11:?"!!GOAL!!":CLK
120 OUT1,1:WAIT5:OUT0
130 IF IN(1)=0 GSB@DISPTIME:GOTO130 ELSE END
140 @DISPRUNNER
150 LC P,11:?" ";CHR$(#FB)
160 RTN
170 @DISPTIME
180 T=TICK()
190 LC0,0:?"TIME:";T/60;".";T%60/6
200 RTN
- LINE130で第一走者は他のIchigoJamgのプレイヤーがゴールし一周するまで合計タイムをカウントしたまま待つ
- 最後のIchigoJamのプレイヤーがゴールするとIN1への入力が発生しチームとしてゴールとなる
その他の走者
5 ' RELAY DASH GAME FOR OTHER
10 CLS:CLT:C=0:P=0
20 LC 31,11:?CHR$(#FF)
30 IF IN(1)=0 GOTO 30 ELSE CLT:LED1
40 GSB@DISPRUNNER
50 GSB@DISPTIME
60 IF !BTN(32) GSB180:CONT
70 IF BTN(32) GSB180:CONT
80 C=C+1:P=C/2
90 IF !SCR(P+2,11) GOTO40
100 GSB@DISPRUNNER
110 LC 12,11:?"!!GOAL!!":CLK
120 OUT1,1:WAIT5:OUT0
130 END
140 @DISPRUNNER
150 LC P,11:?" ";CHR$(#FB)
160 RTN
170 @DISPTIME
180 T=TICK()
190 LC0,0:?"TIME:";T/60;".";T%60/6
200 RTN
- LINE30でIN1の入力待ち(スタート待ち)
- 接続されている隣のIchigoJamのプレイヤーがゴールするとIN1への入力が発生しスタートとなる
こどもたちとのワークショップ
夏にこどもたちと一緒にやったらこうなりました。熱くて楽しい。
https://www.facebook.com/pcn.takefu/videos/1081691295368381