Skip to main content

夏休み特別企画

夏休みはゲーム作るよ

夏休みだ。ゲームを作る(準備編)

夏休みはゲームを作る。 自宅にあるパソコンに、Visualstudioをセットアップするところから始める。 DxLibも自分で設定しなきゃない。 DxLibを始めるにあたってのテンプレ...

夏休みだゲームを作る(コンソールゲーム)

このチャプターでは、C言語を使ってコンソール上で動く「HIT&BLOWゲーム」を作ります。 HIT&BLOWは、コンピュータが用意した重複しない4桁の数字を、プレイヤーが予想して当てるゲームで...

目次

📔 C言語でHIT&BLOWゲームを作ろう この教材では、コンソール上で動くHIT&BLOWゲームを、C言語で少しずつ作っていきます。 単に完成したプログラムを書き写すのではなく、ゲーム制作の途...

第1回 HIT&BLOWを作ってみよう(計画)

🎮 第1回 HIT&BLOWを作ってみよう まずは、小手調べとC言語の復習を兼ねて、コンソール上で動くゲームを作ります。 今回作るのは、HIT&BLOWです。 1.HIT&BLOWのルール ...

第2回 文字列と数字と入力

🔤 第2回 4桁の入力を文字列で扱おう 今回は、プレイヤーが入力する4桁を、どのような変数へ保存すればよいか考えます。 1.まずは整数として入力してみる 「4桁の数字を入力する」と聞くと、最初...

第3回 問題を作る処理を作る問題

🎲 第3回 重複しない4桁の問題を作ろう 今回は、コンピュータが出題する4桁の問題を作ります。 条件は、次のとおりです。 使用する数字は0~9 同じ数字を2回使わない 実行するたびに違う並びに...

第4回 入力処理

🔁 第4回 プレイヤーの入力を繰り返し受け取ろう 問題が作れるようになったので、次はプレイヤーの入力を受け取ります。 HIT&BLOWでは、正解するまで何度も入力します。 入力メッセージを表示 ...

第5回 入力チェック

✅ 第5回 入力エラーを調べよう 4桁を何度も入力できるようになりました。 しかし、プレイヤーが必ず正しい形式で入力するとは限りません。 12 12345 1b35 abcd 1123 ゲーム...

第6回 HITとBLOWカウント

🎯 第6回 HITとBLOWを数えよう 問題作成と入力エラーチェックまで完成しました。 今回は、正解と入力を比較して、HITとBLOWを数えます。 正解:1 2 3 4 入力:1 3 2 5...

第7回 正誤判定とゲーム化

🏆 第7回 正解判定を入れてゲームを完成させよう HITとBLOWを表示できるようになりました。 最後に、入力が正解と一致したらループを終了し、正解メッセージを表示します。 1.文字列は ==...

付録 今回の補足

付録 C言語の仕組みとゲームプログラムの考え方 この付録では、第2回と第3回の途中で出てくる、少し引っかかりやすいC言語の仕組みをまとめます。 ゲームを完成させるために、すべてを暗記する必要はあ...

GUIゲームを作ろう

GUIのゲームといっても、結局ヒット&ブローゲーム。前に作った関数たちを使ってDxLibでグラフィカルなゲームに進化させよう。コンソールで作るときと、グラフィック付きで作るときのゲームの処理の流...

第1回 コンソール版から画面付きゲームへ

第1回 コンソール版から画面付きゲームへ この章では、コンソール版で作ったHIT&BLOWを、DxLibを使った画面付きゲームへ作り替えていきます。 今回は、コンソール版と画面付きゲームの違いを...

第2回 DxLibに移してゆくぅ

第2回 ゲームのルールをDxLibへ移そう 前回は、画面付きゲームで使用するInitialize()、Update()、Draw()とゲームループを確認しました。 今回は、コンソール版HIT&B...

第3回 ゲーム画面の作成

第3回 画像を使ってゲーム画面を作ろう 前回は、コンソール版から次の4つの関数を移し、仮入力"1234"のHIT数とBLOW数を画面へ表示しました。 MakeProblem() CheckAns...

第4回 入力用GUIを作る!

第4回 数字ボタンを押して入力しよう 前回は、画像を読み込み、数字ボタンと4桁の入力欄を画面へ並べました。 ただし、前回の数字ボタンは画像を表示しているだけです。 数字ボタンを表示する ...

第5回 HITとBLOW判定の移植

第5回 HITとBLOWを判定しよう 前回は、数字ボタンをクリックして4桁を入力できるようにしました。 現在は、4桁を入力しても判定ボタンが反応しません。 今回は、判定ボタンをクリックしたときに...

第6回 解答履歴を表示しよう

第6回 解答履歴を表示しよう 前回は、判定ボタンを押すとHIT数とBLOW数を求められるようにしました。 現在は、次の入力を行うと前の結果が見えなくなります。 今回は、正常に判定できた結果を最大...

第7回 画面遷移(状態遷移)

第7回 タイトル画面とクリア画面を作ろう 前回までのプログラムは、起動するとすぐにゲームが始まりました。 今回は、次の3つの画面を作ります。 タイトル画面 ゲーム画面 クリア画面 現在の画面に...

第8回 最後の仕上げ

第8回 HIT&BLOWを完成させよう 前回は、タイトル画面、ゲーム画面、クリア画面を切り替えられるようにしました。 今回は、60回以内に正解できなかった場合のゲームオーバー画面を追加します。 ...

スライドパズル(コンソール版)を作ろうか

コマンドプロンプト上で動く16スライドパズルを作ってみよう。のコーナー

第1回 スライドパズルを作ろう

スライドパズルを作ろう これまでC言語を使って、Hit & Blowゲームを作ってきました。 Hit & Blowでは、変数や配列だけでなく、構造体や関数を使って処理を整理する方法や、ゲームを繰...

第2回 盤面の作成

盤面を作って表示しよう まずは、スライドパズルの盤面をプログラムの中に作って、画面に表示してみよう! ここでは、次の4つを作ります。 Board構造体 Position構造体 InitBoar...

第3回 そのタイル動く?

タイルを探して動かせるか調べよう このページでは、指定したタイルが動かせるかどうかを調べます。 スライドパズルでは、空白の上下左右にあるタイルだけを動かせます。 そのためには、まず、 空白はど...

第4回 そのタイル動くよ!

タイルを動かそう スライドパズルでは、動かせるタイルを選んだら、そのタイルを空白の場所へ移動します。 このページでは、実際にタイルを動かすMoveTile()を作ってみよう! タイルを動かすには...

第5回 パズルが出来るようになりそう!

ゲームを完成させよう IsClear()で完成状態を判定して、作ってきた関数をゲームループに組み込んでみよう! 1.クリアしたか調べよう 完成状態では、InitBoard()で入れたときと同...

第6回 解けるようにパズルの問題を作りたい欲

パズルの問題を作ろう ゲーム開始時に盤面を崩して、遊べる問題を作ってみよう! 1.数字をランダムに並べるだけではダメ 例えば、乱数を使って1~16を適当に並べれば、ランダムな盤面は作れそ...

第7回 あとできることって何?

完成!そして自由制作へ C言語版スライドパズルの基本部分が完成したはず。 最後に全体の構成を確認して、自分だけの機能を追加してみよう! こうやって次々出来ることやれることを追加していくと、ゲーム...

Guiでスライドパズル

DxLibでスライドパズルを作ってみるよ。今まで作った関数を、DxLibで作ったゲームループに組み込んでいく。

第1回 ゲームのシーケンス(画面遷移)を作る

第1回 ゲームループと画面の切り替えを作ろう 今回やること 今回から、コンソール版で作ったスライドパズルをDxLibのゲームへ作り替えていきます。 いきなりパズルの盤面を描くのではなく、まずはゲ...

第2回 盤面を描画するまで

第2回 コンソール版の盤面をDxLibで表示しよう 今回やること 第1回では、 TITLE → PLAY → CLEAR → TITLE というゲーム全体の流れを作りました。 今回はPLAY画...

第3回 マウスでタイルを動かす

第3回 マウスでタイルを動かそう 今回やること 前回は、コンソール版のBoardを使い、タイル画像で盤面をDxLibのウィンドウへ表示しました。 今回は、マウスでタイルを選んで動かせるようにしま...

第4回 クリア判定(はとても簡単)と問題生成(すでにある)

第4回 スライドパズルをゲームとして完成させよう 今回やること 前回までで、 盤面を描く マウスでタイルを選ぶ タイルを動かす ところまでできました。 ただし、ゲームを始めても盤面は完成状態...

第5回 画面の調整(自分でかっこよくすればいいじゃん)

第5回 タイトル画面とクリア画面を仕上げよう 今回やること 前回までで、 TITLE ↓ PLAY ↓ CLEAR ↓ TITLE と、スライドパズルを最初から最後まで遊べるように...

第6回 あとやれることある?

第6回 完成と自由制作 今回やること 前回までで、基本版のスライドパズルは完成しました。 今回は最初に、完成したプログラムが正しく動くことを確認します。 そのあと、自分で追加したい機能を1つ選ん...

CostcoMan(倉庫番ゲーム)を作ろう

CostcoMan(倉庫番ゲーム)を作ろう現在加筆修正中!一応ソースは動くので作るには作れるよ!

第1回 倉庫お片付けゲーム(コスコマン)を作る

第1回 倉庫お片付けゲーム(コスコマン)を作る これから、倉庫お片付けゲーム(コスコマン) を作ります。 コスコマンは、倉庫の中にある荷物を押して、決められたゴールへ片付けていくパズルゲームです...

第2回 文字でステージを表示しよう

第2回 文字でステージを表示しよう 前回確認したコスコマンのステージを、今回はDxLibのウィンドウへ表示します。 目標は次の画面です。 ########## # # # . ...

第3回 まずコスコマンを動かしてみよう

第3回 まずコスコマンを動かしてみよう 前回は、Mapの数字を文字へ変えてステージを表示しました。 今回は、Mapの中にいるコスコマンを探して、まず実際に動かします。 ここでは、まだ壁や荷物の判...

第4回 移動処理を整理しよう

第4回 移動処理を整理しよう 前回は、WASDごとに移動先を直接計算しました。 W : nextPos.y = playerPos.y - 1; A : nextPos.x = playerPo...

第5回 壁とゴールを判定しよう

第5回 壁とゴールを判定しよう 前回までの移動は、移動先のマスを見ずにHUMANで上書きしていました。 そのため、壁も荷物もゴールも消せます。 📺 第動画で確認 移動するときは、次の順で考えま...

第6回 荷物を押そう

第6回 荷物を押そう 前回は、コスコマンが床とゴールの上を歩き、壁や荷物の前で止まる処理を作りました。 今回は、コスコマンの前にある荷物を1マス押せるようにします。 今回できるようになること こ...

第7回 文字版コスコマンを完成させよう

第7回 文字版コスコマンを完成させよう 前回までで、コスコマンは壁に止まり、ゴールを消さずに歩き、荷物を押せるようになりました。 今回は、文字版をゲームとして最後まで遊べるようにします。 今回で...

第8回 文字を画像へ置き換えよう

第8回 文字を画像へ置き換えよう 第1部では、文字だけでコスコマンを最後まで遊べるところまで作りました。 ここからの第2部では、ゲームのルールはそのまま使い、見た目・動き・音・画面遷移を追加して...

第9回 コスコマンを滑らかに動かそう

第9回 コスコマンを滑らかに動かそう 第8回では、文字で描いていたステージを画像へ置き換えました。 ただし、Map上のコスコマンは1マスずつ移動するため、そのまま描くと画面でも一瞬で次のマスへ移...

第10回 荷物も滑らかに動かそう

第10回 荷物も滑らかに動かそう 第9回で、コスコマンは200msかけて1マス動くようになりました。 荷物を押したときは、コスコマンだけでなく荷物も同じ方向へ1マス動きます。 今回は、第9回で作...

第11回 効果音とBGMをつけよう

第11回 効果音とBGMをつけよう 第10回までで、ゲームとしての動きは完成しました。 今回は、 歩く 荷物を押す ゴールへ押し込む クリアする といった出来事に合わせて効果音を鳴らし、ゲーム...

第12回 TITLE・PLAY・CLEARで仕上げよう

第12回 TITLE・PLAY・CLEARで仕上げよう ここまでで、 ステージのルール 画像表示 滑らかな移動 効果音 BGM まで完成しました。 最後は、ゲーム全体を TITLE PLAY...