- タイトル
UFOキャプチャー(電子工作マガジン2018年SUMMER号掲載) - 開発環境
IchigojamBASIC1.2.1 - 内容
UFOを操作してキャラクタをキャプチャ(捕獲)するゲームです。 - 遊び方
UFOの横方向と縦方法の移動位置を入力するとUFOがキャラクタを捕獲します。
キャラクタは1度に7個まで捕獲することができます。
捕獲したキャラクタは画面右の捕獲エリアに並べて保管されます。
この時、同じキャラクタを3つ以上並べると並んだキャラクタが消え、得点が得られます。
多数消し、連鎖消しにより高得点が得られます。 - 操作方法
「ヨコ:」と表示されたら、UFOの横方向の移動位置(画面上部の数字)を入力しEnterを押します。
「タテ:」と表示されたら、UFOの縦方法の移動位置(画面左右の数字)を入力しEnterを押します。
するとUFOが移動してキャラクタを捕獲します。 - プログラムのしくみ
変数表 [0]~[48] キャラクタの配置 [50]~[56] 捕獲したキャラクタ I,J ループ用一時変数 X UFO移動横位置 Y UFO移動縦位置 C 捕獲配列のキャラクタコード D 捕獲配列の次のキャラクタコード R 捕獲配列の同一キャラクタ連続数 Z 捕獲している数 L 連鎖フラグ A 表示キャラクタの増分 S スコア
各行の処理 1行 初期画面表示 2行 UFO移動位置の入力 3行 UFO左移動、捕獲アニメーション、捕獲配列へキャラを転送 4行 捕獲ビーム消去、UFO右移動、捕獲配列のキャラ連続チェック 5行 最上段のキャラチェック、キャラせり上げ、最下段補充 6行 ループ 7行 1段補充&描画 8行 連続キャラ消し、加点 9行 捕獲エリア描画 - プログラムの具体的な入力方法
プログラムリスト中の「□」はスペース1個です。(例:「□□□」はスペース3個)
カードの枠線および、UFOは「左ALT+(SHIFT)+キー」で入力します。
- 左ALT+SHIFT+H │ 左ALT+SHIFT+I └ 左ALT+SHIFT+Q ┘ 左ALT+SHIFT+R ← 左ALT+0(ゼロ) ○ 左ALT+8 → 左ALT+1 - プログラムの改造
現時点で空きメモリが0バイトなので改造は難しいと思いますが、1行目の枠線表示をしないようにすれば、メモリに空きができるので改造がしやすくなります。
7行のRND文で表示キャラクタを決めています。キャラクタの種類を増減したい場合は、RND文の"6"を増減してください。別のキャラクタを表示するようにするには"235"を変更してください。
UFOの移動アニメーション速度を変更したい場合は、WAIT文(5ヶ所)の数値を変更してください。
プログラム |
---|
1 cls:clv:fori=0to6:j=i*2:LC0,j+6:?i;"│":lc17,j+6:?"│";i,"□□│□□□│":?"□│":lc17,j+7:?"│□□□□□│□□□│":lcj+3,0:?i:gsb7:next:lc0,19:?"□└---------------┘□□□□□└---┘" 2 lc20,0:?"SCORE:";s:lc0,20:?chr$(12):input"ヨコ:",x:input"タテ:",y:x=abs(x%7):y=abs(y%7) 3 fori=10toxstep-1:lci*2+4,2:?"□□□":lci*2+2,2:?"←○→":wait9:next:lcx*2+3,4:?"^":fori=0toy:lcx*2+3,i*2+6:?"^":wait9:next:fori=yto0step-1:c=[i*7+x]:ifc[56-z]=c:[i*7+x]=0:z=z+1 4 lcx*2+3,i*2+6:?chr$(0):wait9:next:lcx*2+3,4:?chr$(0):fori=xto11:lci*2,2:?"□□□":lci*2+2,2:?"←○→":wait9:next:gsb9:c=[50]:r=0:l=0:fori=1to7:d=[50+i]:ifd=cr=r+(c!=0)elsec=d:gosub8:r=0 5 next:fori=0to6:i=i+[i]:next:ifi<7fori=0to6:forj=0to6:[i*7+j]=[i*7+j+7]:lcj*2+3,i*2+6:?chr$([i*7+j]):next:next:gsb7 6 goto2 7 forj=0to6:[i*7+j]=rnd(6+a)+235:lcj*2+3,i*2+6:?chr$([i*7+j]):next:rtn 8 ifr<2rtnelse:forj=i-1to0step-1:[50+j]=[49+j-r]*(j-r>0):next:i=0:z=z-r-1:s=s+r*r*5/20*10+l*20:l=1:a=s/100 9 forj=0to6:lc25,j*2+6:?chr$([50+j]):wait5:next:if![49]rtnelselc25,4:?chr$([49]):lc0,21:?chr$(12);"GAME OVER" |
MixJuiceでのダウンロードURLは下記になります。
UFOcapture http://tagiyasoft.blog.jp/UFOcapture.bin
以下のように入力してD/Lしてください。
NEW ? MJ GET http://tagiyasoft.blog.jp/UFOcapture.bin |
ブラウザでD/LしてIchigoJamに転送する場合は、通信ソフトでバイナリ送信をしてください。
(例:TeraTermの場合は、メニューの[ファイル]-[ファイル送信]で当該ファイルを送信します)
コメント