# include // OpenSiv3D v0.6.10 void Main() { // 背景の色を設定する | Set the background color Scene::SetBackground(ColorF{ 0.6, 0.8, 0.7 }); // 絵文字からテクスチャを作成する | Create a texture from an emoji const Texture emoji{ U"🦖"_emoji }; // 太文字のフォントを作成する | Create a bold font with MSDF method const Font TitleFont{ FontMethod::MSDF, 48, Typeface::Bold }; // テキストに含まれる絵文字のためのフォントを作成し、font に追加する | Create a font for emojis in text and add it to font as a fallback const Font emojiFont{ 48, Typeface::ColorEmoji }; TitleFont.addFallback(emojiFont); //int gameState = 0; //0:タイトル 1:プレイ画面 2:ゲームオーバー //列挙型 enumurate enum gState { TITLE, PLAY, GAMEOVER, HIGHSCORE, }; gState gameState = gState::TITLE; while (System::Update()) { //if (TitleFont(U"タイトル画面").drawAt(Scene::Center(), Palette::Navy).leftClicked()) //{ // TitleFont(U"プレイ画面").drawAt(Scene::Center(), Palette::Lightyellow); //} if (MouseL.up()) { switch (gameState) { case gState::TITLE: gameState = gState::PLAY; break; case gState::PLAY: gameState = gState::GAMEOVER; break; case gState::GAMEOVER: gameState = gState::TITLE; break; default: gameState = gState::PLAY; } } if (gameState == 0) { TitleFont(U"タイトル画面").drawAt(Scene::Center(), Palette::Navy); } else if (gameState == 1) { TitleFont(U"プレイ画面").drawAt(Scene::Center(), Palette::Lightyellow); //すごろく本体 } else TitleFont(U"GAME OVER").drawAt(Scene::Center(), Palette::Crimson); } }