Cocos2d-x开发中国象棋《十一》在游戏中添加背景音乐

上一节中实现了悔棋,在这节将介绍如何在游戏中添加背景音乐

看一下效果:

实现思路:

当单击后游戏中播放背景音乐,并且背景音乐切换按钮由变成

当单击后停止播放背景音乐,并且背景音乐切换按钮由变成

当游戏进入后台后停止播放背景音乐

当游戏恢复后继续播放背景音乐

实现代码:

在SceneGame类中定义一个成员函数Voice(CCObject*)用于实现背景音乐的切换,Voice(CCObject*)中的代码

//播放背景音乐
void SceneGame::Voice(CCObject*)
{
    static int i = 0;

    if(0 == i)
    {
        //播放背景音乐
        CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic("floor.wav",true);

        //显示停止播放背景音乐按钮
        itemCloseVoice->setVisible(true);

        i++;
    }
    else
    {
        //停止播放背景音乐
        CocosDenshion::SimpleAudioEngine::sharedEngine()->stopBackgroundMusic();

        //隐藏停止播放背景音乐按钮
        itemCloseVoice->setVisible(false);

        i--;
    }
}

将AppDelegate.cpp下的函数void AppDelegate::applicationDidEnterBackground() 中的代码

// This function will be called when the app is inactive. When comes a phone call,it's be invoked too
void AppDelegate::applicationDidEnterBackground() {
    CCDirector::sharedDirector()->stopAnimation();

    // if you use SimpleAudioEngine, it must be pause
    //SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
}

改成(去掉代码前的注释)

// This function will be called when the app is inactive. When comes a phone call,it's be invoked too
void AppDelegate::applicationDidEnterBackground() {
    CCDirector::sharedDirector()->stopAnimation();

    // if you use SimpleAudioEngine, it must be pause
    SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
}

将AppDelegate.cpp下的函数void AppDelegate::AppDelegate::applicationWillEnterForeground() 中的代码

// this function will be called when the app is active again
void AppDelegate::applicationWillEnterForeground() {
    CCDirector::sharedDirector()->startAnimation();

    // if you use SimpleAudioEngine, it must resume here
   // SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
}

改成(去掉代码前的注释)

// this function will be called when the app is active again
void AppDelegate::applicationWillEnterForeground() {
    CCDirector::sharedDirector()->startAnimation();

    // if you use SimpleAudioEngine, it must resume here
    SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();



时间: 2024-11-08 19:24:54

Cocos2d-x开发中国象棋《十一》在游戏中添加背景音乐的相关文章

Android在游戏中实现背景音乐功能

1.要在游戏中添加背景音乐  首先你要先增加一个类,这个类是继承Service的,如下.package com.example.android.snake; import android.app.Service; import android.content.Intent;import android.media.MediaPlayer;import android.os.IBinder; public class MusicServer extends Service { private Me

Cocos2d-X开发中国象棋《六》游戏开始功能的实现

我在前面的博客Cocos2d-X开发中国象棋<四>设计游戏场景中介绍了在游戏场景上场景了一个开始按钮,并没有实现开始的功能 游戏开始功能的实现效果: 实现思路: 1.显示随机位置的棋子 2.将棋子移动到棋盘上的指定位置 具体实现方式: 首先在SceneGame类中定义一个initStone()函数用于初始化棋子 initStone()函数实现了3个功能 1.创建棋子 2.将棋子设置到随机位置 3.隐藏棋子 initStone()中的代码: //初始化32个棋子 void SceneGame::

Cocos2d-X开发中国象棋《一》

在介绍开发过程前先展示一下游戏 打开游戏后会进入一个欢迎界面 欢迎界面上有两颗棋子红色的帅和黑色的将,可以通过触摸两颗棋子进入游戏场景 当单击红棋子时,玩家持红旗 当单击黑棋时,玩家持黑棋 单击开始显示棋子 通过鼠标点击走棋 单击悔棋可以实现悔棋 单击新局后再单击开始可以实现重新下棋 单击下面的小喇叭可以实现声音的开关 吃掉对方的将后会显示游戏结果 单击游戏结果后重新开始游戏 移植到Android上的效果 开始界面 游戏界面1 游戏界面2 游戏结果界面 代码和资源下载:http://downlo

【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!

[COCOS2DX-LUA 脚本开发之一]在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途! 分类: [Cocos2dx Lua 脚本开发 ] 2012-04-16 10:08 30803人阅读 评论(18) 收藏 举报 游戏脚本luaanimationpython 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2dx/681.htm

Unity3d游戏中添加移动MM支付SDK问题处理

原地址:http://www.tuicool.com/articles/I73QFb 由于移动mm的SDK将部分资源文件放在jar包中,导致Unity无法识别,提示failed to find resource file(mmiap.xml}错误 需要做以下几步操作: -- 解压mmbilling.2.3.0.jar,提取CopyrightDeclaration.xml.mmiap.xml.VERSION文件,和mmiap文件夹 -- 拷贝mmiap文件夹到Unity项目Assets/Plugi

Cocos2d-X开发中国象棋《十二》游戏结果的显示与隐藏

在上一节中实现了游戏中实现播放背景音乐,这节将实现游戏结果的显示与隐藏 先看一下效果图 当玩家赢了后会显示玩家赢了的对话框 当点击对话框后会隐藏对话框和棋子 单击开始后会改变玩家棋子的颜色 当玩家输了后会显示玩家输了的对话框 游戏结果的实现思路: 1.当玩家赢了后,显示一个对话框,对话框中的内容为"恭喜你,你赢了" 2.当玩家输了后,显示一个对话框,对话框中的内容为"对不起,你输了" 3.当点击对话框后,会隐藏对话框,隐藏棋子 4.单击开始后,会发现改变了玩家棋子的

Cocos2d-X开发中国象棋《四》设计游戏场景

设计完开始界面后就要设计游戏界面了 为了理清设计思路先看一张游戏界面效果图 游戏界面设计思路: 1.在窗口上放一张桌子 2.在桌子上放一个棋盘 3.在棋盘右边添加新局按钮,暂不实现具体的功能 4.在棋盘右边添加开始按钮,暂不实现具体的功能 5.在棋盘右边添加悔棋按钮,暂不实现具体的功能 6.在棋盘右边添加难度按钮,暂不实现具体的功能 7.在棋盘右边添加声音按钮,暂不实现具体的功能 8.在棋盘右边添加返回按钮,暂不实现具体的功能 9.在桌子右边添加一个Voice标签 10.在桌子右边添加一个Ret

Cocos2d-X开发中国象棋《七》新局功能的实现

我在上一节中介绍了开始功能的实现,在这篇博客中将介绍新局功能的实现 首先看一下效果图 通过观察上图的实现效果可知新局的实现思路 1.隐藏选择框 2.隐藏32个棋子 3.初始化32个棋子 首先在SceneGame的init()中添加下面的代码用于创建选择框 //创建一个选择框 //当选中某个棋子的时候,选择框会套在选好的棋子上 _selectSprite = CCSprite::create("selected.png"); addChild(_selectSprite); //隐藏选择

Cocos2d-X开发中国象棋《十》悔棋

在上一节中实现了走棋规则,这节中将实现悔棋 首先看一下悔棋的效果: 通过观察上图中的演示可知,当单击悔棋按钮后,移动了的棋子会回到原来的位置上, 实现方式: 首先在SceneGame类中定义一个成员变量CCArray* _steps,用于保存每步棋的棋子信息 //保存每步走的棋子 CCArray* _steps; 在SceneGame类中的成员函数init()中插入下面的代码用于创建一个数组用于保存每步棋的信息 //创建数组 _steps = CCArray::create(); _steps-