a22_edu12
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
* 初心者向けプログラミング体験ワークショップ#12
-(by [[K]], 2022.03.04)
** (0)
-今回紹介するのは、「迷路脱出ゲーム」です。42行で書けます。
-このページは[[「初心者向けプログラミング体験ワークショッ...
** (1) ストーリー & ルール
-(検討中)
----
-なお、HLXでは現在開いているゲームウィンドウよりも大きな...
** (2-1) HLX-BASICでのプログラム(42行)
-プログラム中に日本語で説明を書き込んでいますが、その部分...
CANVAS 47,32,"MAZE"; ← ゲ...
INT DX[4]={ 1, -1, 0, 0 };
INT DY[4]={ 0, 0, 1, -1 };
INT DA[4];
HI=99999;
FOR;
CHARBOX@ 47,31,0,0,1,2,0; ← こ...
CHAR@ 1,1,0,0,0;
LOOP 1000000;
X=RND(23)*2+1; ← 掘...
Y=RND(15)*2+1;
IF GETCH@(X,Y)==0 THEN ← そ...
FOR;
FOR I=0,4; ← 4方...
DA[I]=0;
TX=X+DX[I];
TY=Y+DY[I];
IF 0<TX AND TX<46 AND 0<TY AND TY<30 THEN ...
DA[I]=GETCH@(TX,TY)*GETCH@(TX+DX[I],TY+DY[I]);
FI;
NEXT;
I=ARGMAXRND(DA,0,4); ← DA[...
IF DA[I]==0 BREAK; ← DA[...
LOOP 2; X+=DX[I]; Y+=DY[I]; CHAR@ X,Y,0,0,0; NEX...
NEXT;
FI;
NEXT;
X=1; Y=1; T=0; ← ここから迷路の中を歩く処理
FOR;
PRINT@ 0,31,7,0,"TIME:%5d HIGH:%5d ",T,HI;
CHAR@ X,Y,6,6,0;
IF X==45 AND Y==29 BREAK;
I=INKEY@WRC(100);
CHAR@ X,Y,0,0,0;
TX=X+XMOVE(I); ← とりあえキー入力に合わせて動いた座...
TY=Y+YMOVE(I);
IF GETCH@(TX,TY)==0 THEN X=TX; Y=TY; FI; ← もし移動...
T++; ← 時間を1増やす。
NEXT;
HI=MIN(HI,T);
WAITKEY@ 10;
NEXT;
-ほそく説明:
--PRINT@の中の%以降には、数字のゼロや小文字のdがあります...
--色番号の表
|0:黒|1:青|2:みどり|3:水色|4:赤|5:むらさき|6:黄色|7:白|
--色を2つの数字で表すときは、1つ目の数がキャラクターの色...
--キャラクターの表示位置は、2つの数字で表します。1つ目が...
---このゲームでは32x24マスを用意しているので、0,0~31,23...
--キャラクター番号の表
|0:空白|1:四角|2:丸|3:バツ|4:よこぼう|5:たてぼう|6:顔マー...
--RND(23)について: RNDは乱数(らんすう)の命令で、RND(23...
** (2-2) HLX-BASICのプログラムを実行するための方法(大人...
-もしWindowsでHLX-BASICを使うなら、話は簡単です!
-[[a21_hlx003]]のページへ行って、 hlx003c.zip をダウンロ...
-このhlx_x86_win.exeを適当なフィルだ内において、同じフォ...
--入力の際にはまずテキストエディタを開き(メモ帳でもいい...
--キーを見つけられないときは、ほらここにあるよと教えてあ...
--そうすると、「これは全部自分がやった。」という満足感が...
--(何回もやって慣れてきたら、自分でプログラムを読んで入...
-入力が終わったら、先ほどのhlx_x86_win.exeを起動して、そ...
hlx>run maze.txt
-と入力してください。入力ミスがなければゲームが始まるはず...
-ミスがあった場合は、エラーメッセージを見ながら間違いを探...
-なおゲーム中のキー操作は、ゲーム画面が入力アクティブにな...
-Windows以外のOSの方は、[[a21_hlx003]]のページを見て、ソ...
** (2-3) 改造のポイント
-(検討中)
** (3-1) C言語でのプログラム(aclライブラリ利用)(39行)
-内容的に、(2-1)とほぼ一対一で対応しているので、細かい説...
-(準備中)
** (3-2) C言語のプログラムを実行するための方法(大人の方...
-このプログラムは、C言語でありながらHLXのサポート範囲内の...
-使い方もほとんど同じで、maze.cを作って、
hlx>run maze.c
-とするだけでOKです。
-もし、HLXを使わずに普通のCコンパイラとaclライブラリの組...
-そのほかの操作方法や改造方法などは、(2-2)、(2-3)と同等な...
* こめんと欄
#comment
終了行:
* 初心者向けプログラミング体験ワークショップ#12
-(by [[K]], 2022.03.04)
** (0)
-今回紹介するのは、「迷路脱出ゲーム」です。42行で書けます。
-このページは[[「初心者向けプログラミング体験ワークショッ...
** (1) ストーリー & ルール
-(検討中)
----
-なお、HLXでは現在開いているゲームウィンドウよりも大きな...
** (2-1) HLX-BASICでのプログラム(42行)
-プログラム中に日本語で説明を書き込んでいますが、その部分...
CANVAS 47,32,"MAZE"; ← ゲ...
INT DX[4]={ 1, -1, 0, 0 };
INT DY[4]={ 0, 0, 1, -1 };
INT DA[4];
HI=99999;
FOR;
CHARBOX@ 47,31,0,0,1,2,0; ← こ...
CHAR@ 1,1,0,0,0;
LOOP 1000000;
X=RND(23)*2+1; ← 掘...
Y=RND(15)*2+1;
IF GETCH@(X,Y)==0 THEN ← そ...
FOR;
FOR I=0,4; ← 4方...
DA[I]=0;
TX=X+DX[I];
TY=Y+DY[I];
IF 0<TX AND TX<46 AND 0<TY AND TY<30 THEN ...
DA[I]=GETCH@(TX,TY)*GETCH@(TX+DX[I],TY+DY[I]);
FI;
NEXT;
I=ARGMAXRND(DA,0,4); ← DA[...
IF DA[I]==0 BREAK; ← DA[...
LOOP 2; X+=DX[I]; Y+=DY[I]; CHAR@ X,Y,0,0,0; NEX...
NEXT;
FI;
NEXT;
X=1; Y=1; T=0; ← ここから迷路の中を歩く処理
FOR;
PRINT@ 0,31,7,0,"TIME:%5d HIGH:%5d ",T,HI;
CHAR@ X,Y,6,6,0;
IF X==45 AND Y==29 BREAK;
I=INKEY@WRC(100);
CHAR@ X,Y,0,0,0;
TX=X+XMOVE(I); ← とりあえキー入力に合わせて動いた座...
TY=Y+YMOVE(I);
IF GETCH@(TX,TY)==0 THEN X=TX; Y=TY; FI; ← もし移動...
T++; ← 時間を1増やす。
NEXT;
HI=MIN(HI,T);
WAITKEY@ 10;
NEXT;
-ほそく説明:
--PRINT@の中の%以降には、数字のゼロや小文字のdがあります...
--色番号の表
|0:黒|1:青|2:みどり|3:水色|4:赤|5:むらさき|6:黄色|7:白|
--色を2つの数字で表すときは、1つ目の数がキャラクターの色...
--キャラクターの表示位置は、2つの数字で表します。1つ目が...
---このゲームでは32x24マスを用意しているので、0,0~31,23...
--キャラクター番号の表
|0:空白|1:四角|2:丸|3:バツ|4:よこぼう|5:たてぼう|6:顔マー...
--RND(23)について: RNDは乱数(らんすう)の命令で、RND(23...
** (2-2) HLX-BASICのプログラムを実行するための方法(大人...
-もしWindowsでHLX-BASICを使うなら、話は簡単です!
-[[a21_hlx003]]のページへ行って、 hlx003c.zip をダウンロ...
-このhlx_x86_win.exeを適当なフィルだ内において、同じフォ...
--入力の際にはまずテキストエディタを開き(メモ帳でもいい...
--キーを見つけられないときは、ほらここにあるよと教えてあ...
--そうすると、「これは全部自分がやった。」という満足感が...
--(何回もやって慣れてきたら、自分でプログラムを読んで入...
-入力が終わったら、先ほどのhlx_x86_win.exeを起動して、そ...
hlx>run maze.txt
-と入力してください。入力ミスがなければゲームが始まるはず...
-ミスがあった場合は、エラーメッセージを見ながら間違いを探...
-なおゲーム中のキー操作は、ゲーム画面が入力アクティブにな...
-Windows以外のOSの方は、[[a21_hlx003]]のページを見て、ソ...
** (2-3) 改造のポイント
-(検討中)
** (3-1) C言語でのプログラム(aclライブラリ利用)(39行)
-内容的に、(2-1)とほぼ一対一で対応しているので、細かい説...
-(準備中)
** (3-2) C言語のプログラムを実行するための方法(大人の方...
-このプログラムは、C言語でありながらHLXのサポート範囲内の...
-使い方もほとんど同じで、maze.cを作って、
hlx>run maze.c
-とするだけでOKです。
-もし、HLXを使わずに普通のCコンパイラとaclライブラリの組...
-そのほかの操作方法や改造方法などは、(2-2)、(2-3)と同等な...
* こめんと欄
#comment
ページ名: