int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { SetMainWindowText( "LED ドットマトリックスカレンダー" ); // ウインドウタイトルの変更 ChangeWindowMode( TRUE ); // ウィンドウモード SetGraphMode( 600, 540, 16 ); // ウィンドウサイズの変更 SetOutApplicationLogValidFlag( false ); // ログを出力しない // DXライブラリの初期化 if( DxLib_Init() == -1 ) { MessageBox( GetMainWindowHandle(), "DXライブラリの初期化に失敗しました。\nアプリケーションを終了します。", "エラーが発生しました", MB_OK + MB_ICONEXCLAMATION ); return -1; } // 画面の描画先をリアバッファーに設定します。 SetDrawScreen( DX_SCREEN_BACK ); // ここから開始 CalSystem cals; cals.CalMain(); // DXライブラリ終了処理 DxLib_End(); return 0; }
void system_init() { SetOutApplicationLogValidFlag(FALSE); SetGraphMode(640, 480, 16); ChangeWindowMode(true); SetWindowSizeExtendRate(1.5); SetMainWindowText("log_test"); }
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { SetWindowIconID(101); SetMainWindowText("Natasha"); ChangeWindowMode(TRUE); SetGraphMode(ScreenWidth, ScreenHeight, 32); Func::setBackgroundColor0x(0x000000); SetOutApplicationLogValidFlag(FALSE);//logを生成しないように設定 if (DxLib_Init() == 1){ return -1; }//初期化に失敗時にエラーを吐かせて終了 Input::get(); Screen::get(); GameMgr::get().loadResource(); GameMgr::get().loadButton(); while( ProcessMessage() == 0) { GameMgr::get().update(); ButtonAdder::addDValBoolButton("ToWhite"); if (DVal::bool_["ToWhite"]){ Screen::setWhiteOut(5); Screen::setShake(10); DVal::bool_["ToWhite"] = false; } if (Input::keyDown(KEY_INPUT_Z)){ Screen::setWhiteOut(5); Screen::setShake(10); } if (Input::keyDown(KEY_INPUT_X)){ } if (Input::keyDown(KEY_INPUT_C)){ } Screen::DrawStart(); //描画開始, ClearScreen { GameMgr::get().draw(); Draw.center(Input::mousePos(), Graph::handle("dot32"), 255); } Screen::DrawEnd(); //描画終了, ScreenFlip //フラグがtrueならゲーム終了 if (gameEndFlag){ break; } } DxLib_End(); return 0; }
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { SetOutApplicationLogValidFlag(FALSE);//Log.txtを生成しないように設定 ChangeWindowMode(TRUE);//非全画面にセット SetGraphMode(SCREEN_WIDTH, SCREEN_HEIGHT, 32);//画面サイズ指定 if (DxLib_Init() == 1) { return -1; }//初期化に失敗時にエラーを吐かせて終了 SetDrawScreen(DX_SCREEN_BACK);//描画先を裏画面に fontHandle = CreateFontToHandle("Segoe UI", 20, 5, DX_FONTTYPE_ANTIALIASING_4X4);//フォントを読み込み std::vector<Enemy> vec; while (ProcessMessage() == 0) { ClearDrawScreen();//裏画面消す GetMousePoint(&mouseX, &mouseY); //マウス座標更新 keyUpdate();//(自作関数)キー更新 // Zキーが押されたらランダムな座標に敵を生成 if (keyState[KEY_INPUT_Z] == 1) { vec.emplace_back(Enemy(GetRand(SCREEN_WIDTH), GetRand(SCREEN_HEIGHT))); // 敵をインスタンス化 } // 画面外の敵を削除 auto iter = vec.begin(); while (iter != vec.end()) { if (iter->x < 0 || iter->x > SCREEN_WIDTH || iter->y < 0 || iter->y > SCREEN_HEIGHT) { //画面外に出ているか確認 iter = vec.erase(iter); } else { iter++; } } for (auto i = vec.begin(); i < vec.end(); i++) { i->update(); } for (auto i = vec.begin(); i < vec.end(); i++) { i->draw(); } DrawFormatStringToHandle(20, 20, GetColor(255, 255, 255), fontHandle, "Zキーで敵を生成 敵の数:%d", vec.size()); ScreenFlip();//裏画面を表画面にコピー } DxLib_End(); return 0; }
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { SetWindowIconID(101); SetMainWindowText("CRYSTAL WINGS"); ChangeWindowMode(TRUE); SetGraphMode(ScreenWidth, ScreenHeight, 32); SetBackgroundColor(255, 255, 255);//背景白に設定 SetOutApplicationLogValidFlag(FALSE);//logを生成しないように設定 if (DxLib_Init() == 1){ return -1; }//初期化に失敗時にエラーを吐かせて終了 Input::get(); Screen::get(); GameMgr::get().loadResource(); while( ProcessMessage() == 0) { GameMgr::get().update(); #if DEBUG == 1 if (Input::keydown(KEY_INPUT_A)){ } #endif Screen::DrawStart(); //描画開始, ClearScreen { GameMgr::get().draw(); GameMgr::get().draw2(); } Screen::DrawEnd(); //描画終了, ScreenFlip //フラグがtrueならゲーム終了 if (mgr.gameEndFlag){ break; } } DxLib_End(); return 0; }
int WINAPI WinMain(HINSTANCE hInstacne, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { #ifndef _DEBUG SetOutApplicationLogValidFlag(false); #endif // ウィンドウの初期化 (strcmp(lpCmdLine, "-f") == 0) ? ChangeWindowMode(false) : ChangeWindowMode(true); SetGraphMode(640, 480, 16); SetWindowText("GF TETRIS"); // DxLib 初期化処理 if (DxLib_Init() == -1) { MessageBox( NULL, "初期化処理に失敗しました。DirectXがインストールされていない可能性があります。", "Init Error", MB_OK | MB_ICONERROR ); return -1; } SetDrawScreen(DX_SCREEN_BACK); // 乱数初期化 srand(time(0)); // ゲームループ while (!ProcessMessage() && !ClearDrawScreen()) { // update Parent::getInstance()->update(); // 裏画面から表画面に描画 ScreenFlip(); } DxLib_End(); return 0; }
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { SetOutApplicationLogValidFlag(FALSE); //SetUseDXArchiveFlag(TRUE); //SetDXArchiveExtension("dat"); //if (MessageBox(NULL, "フルスクリーンで起動しますか?", "起動オプション", MB_YESNO) == IDYES){ //ChangeWindowMode(0); //} //else{ ChangeWindowMode(1); //} std::shared_ptr<SceneManager> mgr = std::make_shared<SceneManager>(Size(1280, 720)); SetGraphMode(mgr->getWindowSize().width, mgr->getWindowSize().height, 16); SetDrawMode(DX_DRAWMODE_BILINEAR); SetWindowText("Looper Rooper"); if (DxLib_Init() == -1) return -1; SetDrawScreen(DX_SCREEN_BACK); Resources::init(); Input_T::initialize(); while (1) { ClearDrawScreen(); Input_T::update(); mgr->update(); ScreenFlip(); if (ProcessMessage() == -1) break; } mgr->finalize(); //#ifndef _DEBUG DxLib_End(); //#endif return 0; }
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){ SetMainWindowText("Give Me Wing"); SetOutApplicationLogValidFlag(FALSE); ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen( DX_SCREEN_BACK ); //ウィンドウモード変更と初期化と裏画面設定 font_db.LoadFontData(); //画像ファイルのロード img_db.LoadImgData(); sound_db.LoadSoundData(); Fps fps; GameLoop loop; bool game_start = FALSE; while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 ){ input.Update(); //キーボード情報の更新 fps.Update(); // ↓ 処理本体をここに書く ↓ if(!game_start){ game_start = TRUE; } if(game_start){ if(loop.Loop() == 1) break; } SetDrawArea(GAME_X,GAME_Y,GAME_X+GAME_WIDTH,GAME_Y+GAME_HEIGHT);//描画エリアをゲーム範囲に設定 efect.Update(); SetDrawArea(0,0,WINDOWSIZE_X,WINDOWSIZE_Y); //描画エリアを元に戻す // ↑ 処理本体をここに書く ↑ fps.Draw(); fps.Wait(); //fps制御 } DxLib_End(); //終了処理 return 0; }
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { //--------------------------------------------初期設定ここから SetGraphMode(WINDOW_SIZE_X, WINDOW_SIZE_Y, 32); SetBackgroundColor(0, 0, 0); SetMainWindowText("initializing..."); SetWindowIconID(101); if (WINDOW_MODE == FALSE) { SetFullScreenResolutionMode(DX_FSRESOLUTIONMODE_DESKTOP); } else { ChangeWindowMode(true); SetWindowSize(1280, 720); } if (DxLib_Init() == -1)return -1; SetWindowSizeChangeEnableFlag(TRUE); SetDrawScreen(DX_SCREEN_BACK); SetOutApplicationLogValidFlag(FALSE); SetAlwaysRunFlag(TRUE); SetMainWindowText("指打"); SetDrawMode(DX_DRAWMODE_BILINEAR); OutputDebugString("game start.\n"); //--------------------------------------------初期設定ここまで //--------------------------------------------メインゲーム処理ここから system_control sys_ctrl; sys_ctrl.init(); sys_ctrl.exec(); //--------------------------------------------メインゲーム処理ここまで DxLib_End(); OutputDebugString("game end.\n"); return 0; }
int WINAPI WinMain( HINSTANCE hInstance , HINSTANCE hPrevInstance , LPSTR lpCmdLine , int nCmdShow ) { SetWindowIconID(101); SetMainWindowText("UNDEAD SISTER REBIRTH"); ChangeWindowMode( TRUE ); SetGraphMode( ScreenWidth , ScreenHeight , 32 ); SetOutApplicationLogValidFlag( FALSE ) ;//logを生成しないように設定 if(DxLib_Init() == 1){return -1;}//初期化に失敗時にエラーを吐かせて終了 SetDrawScreen( DX_SCREEN_BACK ) ; Screen::get(); Input::get().update(); Graph::get(); Sound::get(); GraphDiv::get(); Font::get(); Draw::get(); Datamgr::get(); manager::get(); while( ProcessMessage() == 0) { SetDrawScreen(DX_SCREEN_BACK); ClearDrawScreen();//裏画面消す Input::update();//キー更新・マウス座標更新・経過フレーム更新 manager::get().update(); manager::get().draw(); if (Input::keydown(KEY_INPUT_ESCAPE)){ Sound::stopall(); manager::get().init(); manager::get().gamestate_ = manager::pretitle; } //終了処理 if (manager::get().gamestate_ == manager::exit){ break; } /* //TODO デバッグ情報はstageにも有り //TODO デバッグ用 //敵を生成 if (Input::keydown(KEY_INPUT_X)){ for (int i = -15; i < 15; i++){ manager::get().enemy_.addmarge<emy_rot_l_tos>(i*0.2, -200); } } //敵を生成 if (Input::keydown(KEY_INPUT_C)){ for (int i = 0; i < 50; i++){ manager::get().enemy_.add<emy_goleft>(512 + i * 20, 512); } } //TODO デバッグ用 //武器を変更 auto& w = manager::get().weapon_; for (int i = KEY_INPUT_1; i <= KEY_INPUT_6; i++){ if (Input::keydown(i)){ Sound::playback("menumove"); if (Input::keynow(KEY_INPUT_LSHIFT)){ w.sub = w.subvec[i - KEY_INPUT_1]; for (auto& i : w.subvec){ i->init(); } } else{ w.main = w.mainvec[i - KEY_INPUT_1]; for (auto& i : w.mainvec){ i->init(); } } } } //TODO デバッグ用 //Z押されている時にマウス座標描画 if (Input::keynow(KEY_INPUT_Z)){ SetDrawBlendMode(DX_BLENDMODE_ALPHA, 255); int stry = 300; Draw_::righttext(800, 300, 0xFFFFFF, Font::handle("SegoeUI20"), "MX:" + std::to_string(Input::mousex_()) + " MY:" + std::to_string(Input::mousey_()), 200); Draw_::righttext(800, 320, 0xFFFFFF, Font::handle("SegoeUI20"), "MX:" + std::to_string(Input::mousex()) + " MY:" + std::to_string(Input::mousey()), 200); } */ ScreenFlip();//裏画面を表画面にコピー } DxLib_End(); return 0; }