いわゆるスカッシュ


カーソルキー(矢印キー)で下の棒を操作し、

ボールを跳ね返して下さい。

何回当てられるかチャレンジ!

ボールと棒が同じ速度なので、

ボールがやってくる場所を予測して移動する必要があり、

意外と難しく、ゲーム要素になっています。

 

0.9.4 以降では速く動作しますが、
むしろスカッシュらしく快適に操作できると思います。

 

MSX 版 で作っていたものを移植しています。

MSX ではスプライトが使えます。

一方 ichigoJam では文字で表示させているので、
描いて、消しての繰り返しです。

なので全然違うプログラムになっています。

左右がつながっていない等の違いがあります。

 

PanCake 版 もあります。


IchigoJam BASIC 0.9.9〜

MixJuice ダウンロード ?"MJ GET kidspod.club/mj/584

MicJack ダウンロード ?"MJ GKP 584

最近のバージョンや IchigoJam BASIC RPi などでは処理速度がはやくなり、操作しづらくなります。

BTN(LEFT)・BTN(RIGHT) に変更して押しっぱなしでも移動できるようにすると良いです。

 

210 '

220 IF (P>1)*(BTN(LEFT)) LET P,P-1

230 IF (P<28)*(BTN(RIGHT)) LET P,P+1


IchigoJam BASIC 0.8.9〜0.9.8

0.9.8 よりキャラクターコードが変わっていますので、

下記を変更して下さい。

 

100 LC X,Y:? CHR$(232);:LC P-1,25


解説

110〜120 は IchigoJam では PRINT 文を重ねて出力した方が速くなるので、

(厳密には LOCATE 等の処理が行われなくなる分速くなります。そのため2行にしています)

P=1 および P=32 の条件で壁か空白を描く事で処理を最適化しています。

正しい場合は 1 となり、CHR$(1) の ■(壁)、

そうでなければ 0→CHR$(0) で空白を描いて、移動した自機を消しています。

これによって Facebook グループ IchigoJam-FAN で公開していた版より速く動くようになっています。

 

220〜230 を下記にすると 4・6 キー (テンキーも可能) で操作できます。

 

220 IF (P>1)*(I=ASC("4")) LET P,P-1

230 IF (P<32)*(I=ASC("6")) LET P,P+1

 

IF は THEN をなくしたり、一部は論理式にする事ができるのですが、

IchigoJam BASIC ではそうすると速度が遅くなる事が判明したため、あえて速くするために IF に変えています。

(IchigoJam BASIC 0.9.3 までの話で、IchigoJam BASIC 0.9.4 以降は論理式の方がはやいです)

また、変数の代入もあえて LET にしてあります。


改良版

電子工作マガジン AUTUMN 2015(2015年11月号)P121〜122(マイコンBASICマガジン 内 スペシャルコーナー)に

江崎 徳秀 さん改良によるワイヤレスキーパッド(P49〜)対応版が公開されています。