这一节,我将给游戏添加背景音乐和音效;
代码下载:http://www.kuaipan.cn/file/id_25348935635744873.htm?source=1
先在Resources目录下新建一个sounds目录,把准备好的音效复制到该目录下;
打开MainLayer.js,修改代码如下:
- //
- // CleanerScoreScene class
- //
- var MainLayer = function () {
- cc.log("MainLayer")
- this.scoreLabel = this.scoreLabel || {};
- this.monster = this.monster || {};
- this.score = 123;
- };
- MainLayer.prototype.onDidLoadFromCCB = function () {
- if (sys.platform == 'browser') {
- this.onEnter();
- }
- else {
- this.rootNode.onEnter = function () {
- this.controller.onEnter();
- };
- }
- this.rootNode.schedule(function (dt) {
- this.controller.onUpdate(dt);
- });
- this.rootNode.onExit = function () {
- this.controller.onExit();
- };
- this.rootNode.onTouchesBegan = function (touches, event) {
- this.controller.onTouchesBegan(touches, event);
- return true;
- };
- this.rootNode.onTouchesMoved = function (touches, event) {
- this.controller.onTouchesMoved(touches, event);
- return true;
- };
- this.rootNode.onTouchesEnded = function (touches, event) {
- this.controller.onTouchesEnded(touches, event);
- return true;
- };
- this.rootNode.setTouchEnabled(true);
- };
- MainLayer.prototype.onEnter = function () {
- var flowerParticle = cc.ParticleSystem.create("Resources/particles/flower.plist");
- flowerParticle.setAnchorPoint(cc.p(0.5, 0.5));
- flowerParticle.setPosition(cc.p(60, 160));
- flowerParticle.setPositionType(1);
- this.monster.addChild(flowerParticle);
- cc.AudioEngine.getInstance().playMusic("Resources/sounds/bg_music.mp3", true);
- }
- MainLayer.prototype.monsterMove = function (x, y) {
- this.monster.stopAllActions();
- cc.AnimationCache.getInstance().addAnimations("Resources/snow_frame.plist");//添加帧动画文件
- var action0 = cc.Sequence.create(cc.MoveTo.create(5, cc.p(x, y))); //向前移动
- var actionFrame = cc.Animate.create(cc.AnimationCache.getInstance().getAnimation("monster")); //获取帧动画
- var action1 = cc.Repeat.create(actionFrame, 90000);
- var action2 = cc.Spawn.create(action0, action1); //同步动画
- this.monster.runAction(action2);
- }
- MainLayer.prototype.createParticle = function (name, x, y) {
- var particle = cc.ParticleSystem.create("Resources/particles/" + name + ".plist");
- particle.setAnchorPoint(cc.p(0.5, 0.5));
- particle.setPosition(cc.p(x, y));
- particle.setPositionType(1);
- particle.setDuration(3);
- this.rootNode.addChild(particle);
- }
- MainLayer.prototype.onUpdate = function (dt) {
- this.score += dt;
- this.scoreLabel.setString(Math.floor(this.score));
- }
- MainLayer.prototype.onExitClicked = function () {
- cc.log("onExitClicked");
- }
- MainLayer.prototype.onExit = function () {
- cc.log("onExit");
- }
- MainLayer.prototype.onTouchesBegan = function (touches, event) {
- var loc = touches[0].getLocation();
- }
- MainLayer.prototype.onTouchesMoved = function (touches, event) {
- cc.log("onTouchesMoved");
- }
- MainLayer.prototype.onTouchesEnded = function (touches, event) {
- cc.log("onTouchesEnded");
- var loc = touches[0].getLocation();
- cc.AudioEngine.getInstance().playEffect("Resources/sounds/bomb.mp3", false);
- this.monsterMove(loc.x, loc.y);
- this.createParticle("around", loc.x, loc.y);
- }
点击运行;一切OK;
下一篇文章 我会介绍cocos2d-x editor的悬浮框 笔者(李元友)
相关推荐
本书会介绍Cocos2d-x的音频API,包括音乐播放、音效处理以及音效资源的加载和管理。 此外,书中还会涉及用户输入处理、触摸事件、键盘事件的响应,以及如何实现游戏的交互功能。对于网络编程,Cocos2d-x提供了网络...
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
6. **声音与音乐**:Cocos2d-x支持音频播放,包括背景音乐和音效,可以实现音效的同步和控制。 7. **资源管理**:有效管理和加载图片、音频、字体等资源是游戏开发的关键,Cocos2d-x提供了资源管理工具和缓存机制。...
6. **音频和音乐**:介绍如何在Cocos2d-x中播放背景音乐和音效,以及音乐的控制和管理。 7. **网络与存储**:讨论如何进行网络通信,如下载更新、保存和读取游戏数据。 8. **性能优化**:提供关于代码优化、内存...
这个压缩包“cocos2d-x-cocos2d-x-2.2.2.zip”包含了cocos2d-x 的2.2.2版本,该版本是cocos2d-x发展中的一个重要里程碑,它提供了许多改进和优化,使得开发者能够更加高效地创建2D游戏和应用。 在cocos2d-x 2.2.2中...
Cocos2d-x是一个开源的游戏开发框架,广泛用于2D游戏、实时渲染应用程序和其他互动内容的制作。这个压缩包“cocos2d-x-3.1.zip”包含了Cocos2d-x框架的3.1版本,这是一个经典且相对旧的版本,可能对于那些寻找历史...
cocos2d-x 是一个跨平台的游戏开发框架,它基于C++,同时提供了Lua和JavaScript的绑定,让开发者可以方便地在多种操作系统上创建2D游戏、演示程序和其他图形交互应用。这个“cocos2d-x-3.8.zip”压缩包包含的是cocos...
接下来,把 F:\cocos2d-1.0.1-x-0.9.1\cocos2dx 和 F:\cocos2d-1.0.1-x-0.9.1\CocosDenshion 这两个文件夹里面的全部内容拷贝一份到 D:\cocos2d-xProjects\HelloWorld 中去。 九、设置静态链接库 接下来,打开 F:\...
同时,音效和音乐管理也是游戏体验的重要组成部分,书中会介绍如何使用Cocos2d-x的音频API来播放和控制音频资源。 在实际项目开发中,内存管理和性能优化是关键。本书可能会详细讲解Cocos2d-x中的内存管理机制,如...
资源名称:大富翁手机游戏开发实战基于Cocos2d-x3.2引擎内容简介:李德国编著的《大富翁手机游戏开发实战(基于 Cocos2d-x3.2引擎)》使用Cocos2d-x游戏引擎技术,带领读者一步一步从零开始进行大富翁移动游戏的开发...
cocos2d-x 是一个开源的游戏开发框架,使用 C++ 语言编写,支持多平台发布,包括 iOS、Android、Windows、macOS、Linux 和 Web。cocos2d-x v3.16 是该框架的一个版本号,本文档主要介绍了该版本的安装流程以及环境...
Cocos2d-x是一个广泛使用的开源游戏开发框架,它基于C++,同时支持Lua和JavaScript等多种脚本语言,为开发者提供了高效、跨平台的游戏开发解决方案。在3.13.1版本中,Cocos2d-x对Spine动画引擎的集成进行了更新,这...
而Flash2Cocos2d-x则是一个专为cocos2d-x设计的动画工具,它使得开发者能够将Flash内容轻松地转换为可以在cocos2d-x上运行的游戏资源,极大地提高了开发效率和内容创作的灵活性。 Flash2Cocos2d-x 1.3版本是这个...
1. Cocos2d-x:是一个开源的游戏开发框架,它主要用于开发跨平台的游戏和应用程序,支持iOS、Android、Windows、Mac等多个平台。它允许开发者使用一套代码,就可以在不同的操作系统上部署应用程序。 2. 实战++JS卷...
《cocos2d-x 3.0:游戏开发中的角色移动技术详解》 在游戏开发领域,cocos2d-x是一款广泛使用的开源2D游戏引擎,尤其在移动平台上的应用非常广泛。cocos2d-x 3.0版本带来了许多性能优化和新特性,使得开发者能够更...
cocos2d-x 是一个跨平台的2D游戏开发框架,它为开发者提供了强大的工具和技术支持,使得游戏开发变得更为便捷。2.1.4 版本是这个框架的一个重要里程碑,它在前一版本的基础上进行了一系列的优化和改进,提升了性能,...
10. **资源管理(Resource Management)**:cocos2d-x提供了一套完整的资源加载和管理机制,包括音效、音乐、图片、XML等,确保资源的正确加载和释放,避免内存泄漏。 11. **瓦板球游戏(WaBanQiu)**:从提供的文件名...
《Cocos2d-x实战 JS卷》是一本深入探讨Cocos2d-x游戏开发的专著,主要聚焦于使用JavaScript语言进行游戏编程。Cocos2d-x是一个开源的游戏开发框架,广泛应用于移动设备和桌面平台,支持iOS、Android、Windows等多...
精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发
cocos2d-x-2.1.5