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) { 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 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; }
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow){ namespace hmrv = hmr::viewer; SetWindowIconID(ID_ICON); //hmLib_dxモジュールを初期化 dx::ini("hmrV2500_v1_07a", 960,720); try{ //Message hmrv::cMessage Message; //IO // PCからの出口を管理する hmrv::cIO IO(Message.ComVMC,Message.MessageDriver); //各モジュール宣言 hmrv::cBattery Battery; hmrv::cFullADC FullADC; hmrv::cAccele Accele; hmrv::cCompass Compass; hmrv::cGyro Gyro; hmrv::cGPS GPS; hmrv::cMotor Motor; hmrv::cThermo Thermo; hmrv::cCO2 CO2; hmrv::cCamera Camera; hmrv::cDeviceManage DeviceManage; Message.regist('b', Battery.MsgAgent); Message.regist('f', FullADC.MsgAgent); Message.regist('a', Accele.MsgAgent); Message.regist('c', Compass.MsgAgent); Message.regist('G', Gyro.MsgAgent); Message.regist('g', GPS.MsgAgent); Message.regist('m', Motor.MsgAgent); Message.regist('t', Thermo.MsgAgent); Message.regist('C', CO2.MsgAgent); Message.regist('j', Camera.MsgAgent); Message.regist('D', DeviceManage.MsgAgent); //制御系デバイス hmrv::cController Controller; Controller.connect_Pad(Motor.MsgAgent); Controller.connect_Pad(Battery.MsgAgent); Controller.connect_Pad(Accele.MsgAgent); Controller.connect_Pad(Compass.MsgAgent); Controller.connect_Pad(Gyro.MsgAgent); Controller.connect_Pad(GPS.MsgAgent); Controller.connect_Pad(Thermo.MsgAgent); Controller.connect_Pad(Camera.MsgAgent); Controller.connect_Pad(CO2.MsgAgent); //親ディレクトリ hmrv::cFile File; //Batteryデータ保存 File.regist(Battery.FileAgent); //FullADCデータ保存 File.regist(FullADC.FileAgent); // Thermo データを保存 File.regist(Thermo.FileAgent); // CO2 データを保存 File.regist(CO2.FileAgent); //GPSデータを保存 File.regist(GPS.FileAgent); //GPGGAデータを保存 File.regist(GPS.GPGGAFileAgent); //カメラデータを保存 File.regist(Camera.FileAgent); //画面表示モジュール hmrv::cView View(IO,Message, FullADC, Accele,Compass,Gyro,Camera,GPS,Battery); View.registSUI(DeviceManage.SUI); View.registSUI(IO.GateSwSUI); View.registSUI(IO.BufGateSUI); View.registSUI(IO.ioLogGateSUI); View.registSUI(IO.IODriverSUI); View.registSUI(IO.VMCSUI); View.registSUI(File.SUI); View.registMUI(Motor.MUI); View.registMUI(Battery.MUI); View.registMUI(Accele.MUI); View.registMUI(Compass.MUI); View.registMUI(Gyro.MUI); View.registMUI(GPS.MUI); View.registMUI(Thermo.MUI); View.registMUI(Camera.MUI); View.registMUI(CO2.MUI); View.registMUI(FullADC.MUI); Controller.connect_Keyboard(View); while(!dx::work(30)){ Controller(); IO(); Message(); View(); if(dx::getKey(KEY::ESC)<0)break; } }catch(const std::exception& Escp){ printfDx("===ERROR===\n"); printfDx("%s\n",Escp.what()); while(!dx::work(30)){ if(dx::getKey(KEY::ESC)<0)break; } }catch(const std::string& Escp){ printfDx("===ERROR===\n"); printfDx("%s\n",Escp.c_str()); while(!dx::work(30)){ if(dx::getKey(KEY::ESC)<0)break; } } dx::end(); return 0; }
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { SetWindowIconID(IDI_ICON1); SetMainWindowText(titlebar),ChangeWindowMode(TRUE), SetGraphMode(WIDTH, HEIGHT, 32), DxLib_Init(),SetDrawScreen(DX_SCREEN_BACK); //ウィンドウモード、960*720のサイズ //画像の読み込み GraphicHandle[0] = LoadGraph("image/Title.png"); GraphicHandle[1] = LoadGraph("image/Player.png"); GraphicHandle[2] = LoadGraph("image/Comet.png"); GraphicHandle[3] = LoadGraph("image/Backscreen.png"); GraphicHandle[4] = LoadGraph("image/Clearscreen.png"); GraphicHandle[5] = LoadGraph("image/Sf_title.png"); GraphicHandle[6] = LoadGraph("image/Buttun_on.png"); GraphicHandle[7] = LoadGraph("image/Buttun_off.png"); GraphicHandle[8] = LoadGraph("image/Ready.png"); GraphicHandle[9] = LoadGraph("image/Start.png"); GraphicHandle[10] = MakeScreen(1024, 1024, false); GraphicHandle[11] = LoadGraph("image/Ranking.png"); GraphicHandle[12] = LoadGraph("image/Pause.png"); //音楽の読み込み SoundHandle[0] = LoadSoundMem("music/bgm.mp3"); SoundHandle[1] = LoadSoundMem("music/select.mp3"); SoundHandle[2] = LoadSoundMem("music/deside.mp3"); SoundHandle[3] = LoadSoundMem("music/miss.mp3"); SoundHandle[4] = LoadSoundMem("music/gameover.mp3"); GScoreFont = CreateFontToHandle("Meiryo UI Bold", 20, -1); RScoreFont = CreateFontToHandle("Meiryo UI Bold", 32, -1); CScoreFont = CreateFontToHandle("Meiryo UI Bold", 64, -1); ChangeFont("Meiryo UI Bold"); //フォントの変更 Title_Initialize(); //タイトルの初期化処理 Game_Initialize(); //ゲームの初期化処理 Clear_Initialize(); //クリア画面の初期化処理 Rank_Initialize(); //ランキング画面の初期化処理 Logo_Initialize(); while (Loop() == true) { Keyboard_Update(); GamePad_Update(); switch (NowScene()) { //現在のシーンによって動作を変える case logo: Logo_Update(); break; case title: Title_Update(); Title_Draw(); break; case gamepre: Game_Initialize(); ChangeScene(game); case game: Game_Update(); Game_Draw(); break; case clear: Clear_Update(); Clear_Draw(); break; } } Title_Finalize(); //タイトルの終了処理 Game_Finalize(); //ゲームの終了処理 Clear_Finalize(); //クリア画面の終了処理 Rank_Finalize(); //ランキング画面の終了処理 Logo_Finalize(); //ロゴ画面の終了処理 DxLib_End(); // DXライブラリ使用の終了処理 return 0; }