>> ブロック崩しプログラミング入門トップに戻る

WinMain関数をまとめて完成させよう

最後にWinMain関数をまとめて完成させます。 WinMain関数は以下のようになっています。
#include "pch.h"
#include "control.h"

char key[256];

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
						LPSTR lpCmdLine, int nCmdShow )

{
#ifdef _DEBUG
	_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
	//_CrtSetBreakAlloc( 70 );
#endif

	ChangeWindowMode(TRUE);


	//DXライブラリ初期化
	if(DxLib_Init() ==-1){
		return -1;
	}

	//裏画面に描画
	SetDrawScreen(DX_SCREEN_BACK);

	//キーボードの状態を取得
	

	CONTROL *control = new CONTROL;

	while(ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 && GetHitKeyStateAll(key)==0){


		//ゲームオーバーでtrueを返す
		if(control->All()){
			break;
		}

	}
	

	//DXライブラリ終了
	DxLib_End();

	delete control;

	return 0;
}

まず、CONTROLクラスのポインタを宣言して、インスタンスを作成してます。 次にメインループに入り、All関数を実行しています。 ゲームオーバーになれば、trueが返って来るので、 その場合はループを抜けるようにしています。 最後にcontrolクラスのインスタンスを解放して終了です。 最終的に以下のような動画のものが出来上がります。
ブロック崩し作成の基本説明は以上になります。 他にもブロックを壊したら得点を加えたり、ゲームオーバー回数を調整したりなど色々できると思います。 色々とエフェクトを付けるのもおもしろいかもしれません。 この講座を基にして、おもしろいゲームを作る手助けができたら幸いです。 ここまで見ていただきありがとうございました(*^_^*)
>> ブロック崩しプログラミング入門トップに戻る