- 174 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 00:21:20 ID:J8DrEDup]
- 数年前のとある同人STGのメイン関数。趣味だから何も考えてないね。仕方ないね
int _tmain(int argc, _TCHAR* argv[]){ boost::shared_ptr<GAMEENV> gameenv(new GAMEENV); //D3D,SOUND,INPUT,USERDATA,etc boost::scoped_ptr<SCENE> logo(new LOGO(gameenv)); //ロゴ画面 boost::scoped_ptr<SCENE> demo(new DEMO(gameenv)); //デモ画面 boost::scoped_ptr<SCENE> title(new TITLE(gameenv)); //タイトル画面 boost::scoped_ptr<SCENE> config(new CONFIG(gameenv)); //コンフィグ画面 boost::scoped_ptr<SCENE> stage1(new STAGE1(gameenv)); //ステージ1 (…中略…) boost::scoped_ptr<SCENE> stage8(new STAGE8(gameenv)); //ステージ8 boost::scoped_ptr<SCENE> ending(new ENDING(gameenv)); //エンディング logo->Run(); //ロゴ画面再生 try{ while(1){ demo->Run(); //デモ画面再生 switch(title->Run()){ //タイトル画面再生 case TITLEOPTIONTYPE_GAMESTART: //ゲームスタート try{ //STAGEEXCEPTIONTYPE_GAMEOVERという例外を投げるまでゲーム続行 stage1->Run();stage2->Run();stage3->Run();stage4->Run(); stage5->Run();stage6->Run();stage7->Run();stage8->Run(); ending->Run(); //エンディング画面再生 }catch(STAGEEXCEPTIONTYPE){;}break; //GAMEOVER例外投げてきた case TITLEOPTIONTYPE_CONFIG: //オプション画面再生 config->Run();break; } } } catch(GAMEEXCEPTIONTYPE){;}catch(...){return EXIT_FAILURE;}//糞ゲーだからやめるらしい return EXIT_SUCCESS; }
|

|