HTML5游戏制作之路_07_egret的声音播放的三种方式

原创 2015年11月19日 22:47:02

/*

我目前使用的版本是egret2.5

*/

egret支持的声音格式是mp3.获取资源的方式和之前的一样。

1. 使用URLLoader方式加载

/**
 * 这是使用URL方法加载。
 * Created by 13641 on 2015/11/19.
 */
class SoundControl extends egret.DisplayObjectContainer{

    public constructor() {
        super();
        this.addEventListener(egret.Event.ADDED_TO_STAGE, this.mainFunc, this);
    }

    private mainFunc():void{
        this.loadSound();
    }


    private loader:egret.URLLoader;

    private loadSound():void{
        //新建一个URLLoader
        this.loader= new egret.URLLoader();
        this.loader.addEventListener(egret.Event.COMPLETE,this.soundPlayComplete,this);
        //新建一个数据表单
        this.loader.dataFormat = egret.URLLoaderDataFormat.SOUND;
        //将声音添加进去
        this.loader.load(new egret.URLRequest("resource/assets/Hai.mp3"))
    }

    private soundPlayComplete(event:egret.Event){

        //取得表单数据
        var sound:egret.Sound = this.loader.data;
        sound.play();
        //alert("声音播放完毕");

    }
}
2.使用RES方式加载

json格式

/**
 * 这是使用RES方法加载。
 * Created by 13641 on 2015/11/19.
 */
class SoundControl extends egret.DisplayObjectContainer{

    public constructor() {
        super();
        this.addEventListener(egret.Event.ADDED_TO_STAGE, this.mainFunc, this);
    }

    private mainFunc():void{
        this.loadSound();
    }

    private loadSound():void{
        RES.addEventListener(RES.ResourceEvent.GROUP_COMPLETE,this.loadSoundComplete,this);
        RES.loadConfig("resource/default.res.json","resource/");
        RES.loadGroup("MPsound");
    }

    private loadSoundComplete(event:RES.ResourceEvent):void{
        var sound:egret.Sound = RES.getRes("mp0");
        sound.play();
    }
    
}
3.直接播放

  var sound:egret.Sound = new egret.Sound();
  sound.addEventListener(egret.Event.COMPLETE, function loadOver(event:egret.Event) {
      sound.play();
  }, this);
  sound.addEventListener(egret.IOErrorEvent.IO_ERROR, function loadError(event:egret.IOErrorEvent) {
      console.log("loaded error!");
  }, this);
  sound.load("resource/sound/sound.mp3");



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

HTML5游戏制作之路_08_egret对于声音的控制

/* egret版本:2.5 */ 一.点击发声 /** * 这是使用RES方法加载。 * Created by 13641 on 2015/11/19. */ class So...

【egret】 IOS加载音频文件

egret 在 IOS 系统加载音频文件,会出现无法加载,从而卡在加载界面的情况。解决方法: 将声音资源转换成 44100Hz,96kbps。 如果有问题再转一...

【Egret】里使用audio标签达到默认播放背景音乐

" autoplay='autoplay' loop="loop">你的浏览器不支持audio标签。 function setBgm(play){ var bgm = document.get...
  • arvin0
  • arvin0
  • 2016年05月09日 19:50
  • 10871

Egret)ios建议声音编码

由于 webAudio 对声音的格式有特定要求,在 ios 系统上如果测试碰到音频文件解码失败的情况,请使用具体来转换下格式(码率 44100Hz 96kbs ;工具推荐 绿色版glodwave)。...

HTML5之Cancas基础篇

/* W3c:http://www.w3school.com.cn/tags/html_ref_canvas.asp 推荐本书:Html5游戏编程和新技术与实战 使用的工具:DW 在每个实例中可能会出...

HTML5游戏制作之路_09_2D骨骼动画工具DragonBone

/* 我目前使用的egret版本为2.5 */ DragonBone是制作动画或骨骼动画的工具,具体使用教程地址:DragonBone 很简单很暴力,省去了大量的时间。 我在这里主要介绍如何使用Dra...

HTML5游戏制作之路_06_egret关于精灵表单spritesheet

/* 采用位图的版本:2.5 采用的编辑器webstrom */ 精灵表单就是将很多图片合成在一张图片中,然后 我们可以获取其中的任何一张图,这样做可以加快游戏的图片加载,类似于unity‘中的图集,...

HTML5游戏制作之路_06_egret文本及相关属性

一.创建文本 显示结果: 二.添加一些属性 三.绘制矩形并添加文字描边 /** * Created by 13641 on 2015/11/19. */ class Textt...

HTML5游戏制作之路_03_egret的资源加载机制

/* 前一篇的链接: 使用的egret版本为2.5 */ h5支持矢量图(目测),自带的那个例子可以自由缩放,可以自适应(这让我很爽)。在egret里面叫bitmap(位图)实际上这个名称并不...

HTML5游戏制作之路_04_来做个动画吧

/* 使用的egret版本:2.5 编辑器采用webstrom */ 通过上一篇03成功可以加载资源,这一篇我们在上一篇的基础上,通过位图来搞一个动画。 如果想参看注释请回到上一篇。 直接...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HTML5游戏制作之路_07_egret的声音播放的三种方式
举报原因:
原因补充:

(最多只允许输入30个字)