2021-04-24-飞机大战-002-游戏退出和关于按钮的实现
1 游戏退出按钮
void SceneStart::Quit()
{
Director::getInstance()->end();
exit(0);
}
2 关于按钮
2.0 切换关于场景
点击关于按钮,显示当前游戏的相关信息。
void SceneStart::About()
{
Util::replaceLayer(SceneAbout::create());
}
替换场景函数,场景之间的切换在游戏中可能被使用多次,因此写在Util.h头文件中。
切换场景过程
1:创建一个新的场景scene;
2:将要切换的层layer添加至scene;
3:调用Director导演切换至创建的场景scene。
static void replaceLayer(Layer* layer)
{
Scene* scene = Scene::create();
scene->addChild(layer);
//Director::getInstance()->replaceScene(scene);
Director::getInstance()->replaceScene(TransitionFade::create(1, scene));
//Director::getInstance()->replaceScene(TransitionFadeBL::create(1, scene));
//Director::getInstance()->replaceScene(TransitionFadeDown::create(1, scene));
//Director::getInstance()->replaceScene(TransitionFadeTR::create(1, scene));
//Director::getInstance()->replaceScene(TransitionFadeUp::create(1, scene));
//Director::getInstance()->replaceScene(TransitionCrossFade::create(1, scene));
//Director::getInstance()->replaceScene(TransitionFlipAngular::create(1, scene));
//Director::getInstance()->replaceScene(TransitionJumpZoom::create(1, scene));
//Director::getInstance()->replaceScene(TransitionPageTurn::create(1, scene, true));
}
Transition…函数为场景切换过渡动画,Fade(消失),FadeBL(Fade Bottom Left,从左下角到右上角逐渐消失)其他过渡动画可以自行尝试。
2.1 “关于”类实现
“关于类中,定义三种读取关于信息的方式以及定义一个返回按钮。
Director作为最上面的场景,依次在Directo