ゲーム本編やタイトル画面を遷移させる方法
ゲームにはタイトル画面やゲーム本編などがあります
プログラムは常にループしているのでループしている状態から切り替える方法が必要です
画面遷移にはswitch文とenum(列挙型)を使用します
流れは
メインループ内にswicth文を置きそこにenumで宣言した値によってループする画面を切り替えます
enum GameState{ GAME_TITLE, // タイトル画面 GAME_MAIN, // ゲーム本編 GAME_CLEAR, // クリア画面 GAME_OVER, // ゲームオーバー画面 }; GameState gamestate = GAME_TITLE;
enumはこんな感じです
列挙型の解説はこちら
ここで宣言したgamestateをswicth文に入れてあげます
seicth(gamestate){ case GAME_TITLE: GameTitle(); break; case GAME_MAIN: GameMain(); break; case GAME_CLEAR: GameClaer(); break; case GAME_OVER: GameOver(); break; }
こうすることでタイトルから始まり
GameTitle()でgamestateの値が変更されることで本編やほかの画面に遷移することができる
またVS2013では
1、swicthと入力
2、TABキーを押す
3、gamestateと入力
4、候補のgamestateをカーソルで選択することで自動的に列挙型を挿入することができる
以上!!