Enjoy programming more!
Kidspod is a post site which supports young programmers.
First step to join us.
Register as a member
For members

川下り その入力と指導用の台本

2018/12/08 15:17:51

川下り その入力と指導用の台本

イチゴジャムおじさん

イチゴジャムおじさん

IchigoJam入門の定番「川下りゲーム」を1行ずつ説明・入力・実行しながら完成させていきます。
キー入力の方法とSAVE LOAD LIST RUNの使い方は既習であること。
キー入力に手間取っていては二兎を追う者は一兎をも得ず。
途中でSAVEできると失敗しても安心。

準備
指導者 IchigoJam 大型モニタ LOAD 0で川下りを保存しておく
児童 IchigoJam プリント

台本
川下りゲームで遊ぼう。
LRUN

←→でVを動かして*にあたらないようによけていきます。
あたっちゃったよ。OKじゃないよ!

NEW
プログラムは消えてしまいました。

IchigoJamの画面は 横32文字 ✕ 縦24文字です。

最初に CLS クリアスクリーン で画面をきれいにします。

10 CLS

10は行番号、IchigoJamは行番号の小さい順に並び替えて覚えています。

LIST
で入力したプログラムを確認できます。

RUN
でプログラムを動かしてみましょう。

NEWは間違ってタイプすると……消えます。
だから時々 SAVE しておくと安心。
LOADで復活できる。

自分のキャラは V これを画面に表示してみましょう。
50 PRINT "V"

場所を変えるには

40 LOCATE X,5

Xに数を入れておくと、

20 X=15

横15 縦5 の場所に Vが表示されました。
X=を変えるとVの場所が変わります。

じゃまな * も表示してみよう。

70 PRINT "*"

場所を決めるのは

60 LOCATE RND(32),23

RNDはランダムの略 RND(32)で0~31のサイコロをふります。
23行目は特別でPRINTする改行で画面がスクロールします。

30 @LP
120 GOTO @LP

@LPはラベル、GOTOで@LPに行きます。

5行目に表示したOが上にスクロールして連なってます。
無限ループになってるので ESCで止めます。

速すぎる!

80 WAIT 10

10/60秒待ちます。

Vを左右に動かそう。

XはVの横の位置
X-1で左 X+1で右に動きます。

90 X=X-BTN(LEFT)
100 X=X+BTN(RIGHT)

BTN(LEFT)は←キーを押してていると1 はなしていると0になります。
BTN(RIGHT)は→キーを押してていると1 はなしていると0になります。
Oが動くようになりました。

*にあたったら終わりにしましょう。

110 IF SCR(X,5) THEN END

SCR(X,5)はOがPRINTされる場所を調べます。
なにも無ければ0が、文字があれば文字コードになります。
IF 0ならば次の行へ 0以外 ならば THEN の後の命令を実行します。
*があれば0じゃないので ぶつかった! ENDでプログラムを終わります。

1 'カワクダリ
を入れておくと分かりやすいです。

せっかく入力したプログラムです。
SAVE 0
で保存しておきましょう。これでスイッチを切っても安心。
SAVE 0~3で4つのプログラムが保存できます。

FILES
で確認。

スイッチを切っても、LOAD 0 で復活できます。

おつかれさまでした。

ここまで

10 CLS
20 X=15
30 @LP
40 LOCATE X,5
50 PRINT "V"
60 LOCATE RND(32),23
70 PRINT "*"
80 WAIT 10
90 X=X-BTN(LEFT)
100 X=X+BTN(RIGHT)
110 IF SCR(X,5) THEN END
120 GOTO @LP

BASICは行番号でソートされるので、説明の順にソースをプリントにしておきます。
指導者はIchigoJamの画面を大型モニタで表示して、タイピング。「先生スゲー」と言わせましょう。
キーボードから入力して、少しずつRUNして動作を確認。SAVE、バックアップのおまじないを最初に教えてもいいかも。FILESとLOADは後回しで。
エラーが出たら、デバッグです。マシン安全バグ退散。IchigoJamならバグっても壊れないので安心。

ぶつかったら音楽がなったらおもしろいのになぁ。
だんだん速くなったむずかしい。
*が増えてもむずかしくなる。
車なら上に進むよ。
Oが動いたら?
上から下に人が動いたらスキーみたいだ。
↓↑があると上下にも動ける。

ちょっと改造

110 IF SCR(X,5)<>0 THEN GOTO @END

130 @END
140 LOCATE 10,5
150 PRINT "ブッツカッタ!"
160 @W
170 IF BTN(UP)=0 THEN GOTO @W
180 RUN


PLAY

Programmers played with this program.0 programmers