ASAさんの「プチコンのン」

「プチコンで悩む若人のために!」 プチコンを愛する男、ASAさん(@fusuian)のプチコン初心者講座第三回「ヘビゲーム編」です。 ※コが作者(周辺の)都合によりキャンセルとなりました 続きを読む
1
ASA @fusuian

プチコンのンの巻開幕です。コの巻じゃないの? その謎はいずれ明かされるでしょうフッフッフ。今回はヘビゲームを作ります。ンの巻ですがハッシュタグは変わらず #p4petitcom ですヨロシク。

2012-11-16 19:30:24
ASA @fusuian

手はじめはこれ。四方向移動する丸顔です。ちょっと長いけど、うまくコピペして楽して入力しましょう。 #p4petitcom http://t.co/KJCYKWya

2012-11-16 19:33:36
拡大
ASA @fusuian

15行めの空白を黒丸●に変えると、移動するほどスルスル胴体が伸びて行くように見えます。これがヘビゲームの基本です。画面端で動きがおかしくなるのは後で直します。 #p4petitcom http://t.co/6Pot67Jt

2012-11-16 19:46:03
拡大
ASA @fusuian

14,19行を追加して当たり判定を入れます。伸びていく自分の胴体に自分で食いついてしまったらミス。これがヘビゲームの掟! #p4petitcom http://t.co/4Z6qVnyO

2012-11-16 20:09:37
拡大
ASA @fusuian

画面端チェック入れます。今回はXY座標値を判定するのではなく、画面内に囲いを作ります。 2行めにGOSUB ◎MAPを入れて、まず壁判定。16,24,25行を追加します。 #p4petitcom http://t.co/ujydumQV

2012-11-17 00:30:05
拡大
ASA @fusuian

実際に囲いを作るのはこの◎MAPサブルーチン。2行めのGOSUB文でここへ飛び、最後のRETURNで3行めに戻ります。 #p4petitcom http://t.co/YqCn8Wop

2012-11-17 00:33:42
拡大
ASA @fusuian

ヘビゲームにもいろいろありますが、今回はシッポの長さは一定にしましょう。変数X,Yを頭の座標としてるのと同じように、BX,BYをシッポの座標とします。BACKのBと思って下さい。 #p4petitcom http://t.co/axT6MiuS

2012-11-17 00:52:31
拡大
ASA @fusuian

TAILのTでTX,TYとした方がシッポっぽいけど、さっきTEMPORARYのTで使っちゃったから代わりのB。頭の移動とともにシッポを消し、新しいサブルーチン◎FINDTAILを呼びます。 #p4petitcom http://t.co/EHXLECj3

2012-11-17 00:55:26
拡大
ASA @fusuian

これがその◎FINDTAIL。BX,BYの上下左右をチェックし、●があったらそれをシッポとするサブルーチンです。 #p4petitcom http://t.co/CGeZe29N

2012-11-17 00:57:57
拡大
ASA @fusuian

FINDTAILのリストは右が切れちゃったので、各自Nを継ぎ立してください。 #p4petitcom

2012-11-17 01:21:12
ASA @fusuian

アットマークをカタツムリに見立てて5匹出現。 #p4petitcom http://t.co/ztGFqZkY

2012-11-17 01:22:38
拡大
ASA @fusuian

エサ処理。頭がアットマークと重なったら食べたことになり、シッポが伸びます。40行GOで切れた先はTO ◎NOMOVE 。 #p4petitcom http://t.co/XN5MmRDC

2012-11-17 01:27:52
拡大
ASA @fusuian

エサをパクッと食べたら◎YUMサブルーチンに飛びます。まだ音が出るだけですが。 #p4petitcom http://t.co/mvC9Dqvh

2012-11-17 01:31:35
拡大
ASA @fusuian

おや、スタートボタンで開始すると、Bが1024になっててちょっと変ですね。修正します。 #p4petitcom http://t.co/5vSCW3rd

2012-11-17 01:37:29
拡大
ASA @fusuian

実はシッポのそばを通ると首が分離したり変になります^^; 眠いので明日直しましょう。おやすみなさい… #p4petitcom

2012-11-17 01:39:15
ASA @fusuian

◎MAPを拡張して、碁盤状の壁を表示します(65〜70行)。これなら頭が飛んで行くバグは出ません。 #p4petitcom http://t.co/TjfUh8te

2012-11-17 09:09:10
拡大
ASA @fusuian

ついでに色をつけましたがちょっと変^^; #p4petitcom http://t.co/OVdgxTlF

2012-11-17 09:10:08
拡大
ASA @fusuian

今、最初に現れたスネイル(カタツムリ)を全部食べるとそれっきりなので、面クリア〜次の面スタートという流れを作ります。長いようですが17〜22行はいじってません。 #p4petitcom http://t.co/nAa9CLGi

2012-11-17 09:37:50
拡大
ASA @fusuian

スネイルの数を表す変数NSNAILが0になったら◎STAGECLRにジャンプ。音楽を鳴らして再び◎NEWSTAGEに飛びます。おお、アーケードゲームっぽい流れ!(昔のだけど) #p4petitcom http://t.co/vXLyJGdY

2012-11-17 09:42:19
拡大
ASA @fusuian

NSNAILはいつ減るかというと、スネイルを食べた時です。 #p4petitcom http://t.co/HaowaBym

2012-11-17 09:44:12
拡大
ASA @fusuian

画面ショット。スネイルが動かないから食べ放題みたいで、まだゲームにはなってない。ということで、次はいよいよスネイルを動かしましょう!(≧∇≦) #p4petitcom http://t.co/uehLyoSa

2012-11-17 09:49:29
拡大
ASA @fusuian

そうそう、ヘビ本体に色をつけるのはここ。 #p4petitcom http://t.co/i7WmKbAZ

2012-11-17 09:52:45
拡大
ASA @fusuian

まずは下ごしらえ。配列変数DXとDYを設定します。これを使って、0,1,2,3という数字を右、下、左、上という方向(direction)に変換します。まあ、わからなくても構わないのでどんどん打ち込みましょう。 #p4petitcom http://t.co/2x3bECvk

2012-11-17 13:57:44
拡大
ASA @fusuian

スネイルの配置にも配列変数を使います。5匹のスネイルにそれぞれ0,1,2,3,4と番号を振っているわけです。スネイルのSに生きてる(live)のL、歩数(steps)のS、それにXY座標。 #p4petitcom http://t.co/jShEW2Ob

2012-11-17 14:01:21
拡大
ASA @fusuian

ヘビの移動。変数ATE(食べた)が1の時、シッポを伸ばす処理を追加。また、5匹のスネイルの処理。ステージクリア判定も変数Fに変わっています。 #p4petitcom http://t.co/UWWKRv98

2012-11-17 14:12:12
拡大