位置: IT常识 - 正文

Html5钢琴块游戏制作(音乐游戏)(钢琴块小游戏在线玩)

编辑:rootadmin
Html5钢琴块游戏制作(音乐游戏)

推荐整理分享Html5钢琴块游戏制作(音乐游戏)(钢琴块小游戏在线玩),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:钢琴块在线游戏免费,钢琴块儿小游戏,在线钢琴块游戏,钢琴块在线游戏试玩,钢琴块在线游戏试玩,钢琴块在线玩游戏,钢琴块小游戏在线玩,钢琴块在线游戏试玩,内容如对您有帮助,希望把文章链接给更多的朋友!

当年一款手机节奏音游,相信不少人都玩过或见过。最近也是将其做了出来分享给大家。

游戏的基本玩法:点击下落的黑色方块,弹奏音乐。(下落的速度会越来越快) 

可以进行试玩,手机玩起来效果会更好些。

点击试玩

游戏使用了一首儿歌乐谱,听出来是啥了吗^ ^

Html5钢琴块游戏制作(音乐游戏)(钢琴块小游戏在线玩)

----------------------------------------------------------------------

   长期更新不同类型 H5 游戏,进行经验分享

   对游戏感兴趣的小伙伴,加个关注哈

----------------------------------------------------------------------

实现功能制作了简单的近乎黑白的显示界面。加入了音频乐谱,可以快速弹奏出一首简单的音乐。游戏加入了Game Over的判断,当点击两次,或为点击黑色方块时,游戏结束。

源码地址:pro.youyu001.com

制作思路游戏的主场景使用了js绘图进行制作,里面的方块都是程序画出来的。音乐方面采用了weixin的js控件,进行了预加载处理。不同的音色,找了10几个音节的Mp3文件,演奏时进行播放控制。声音播放时做了一个音频对象池子,进行音乐的播放和停止后的回收。

以上为开发的一些思路和关键点。欢迎一起讨论

代码说明

1、通过绘图方式,制作了游戏中钢琴按键的效果。

this.graphics = new PIXI.Graphics();this.graphics.beginFill(this.color, 1);this.graphics.drawRect(0, 0, w, h);this.addChild(this.graphics);

2、游戏的按钮进行了对象化处理,控制了按钮的下落速度,显示状态与点击事件等。

function Rect(w, h, rectType) { //对象继承Container PIXI.Container.call(this); //用于控制回掉函数的本对象属性控制 var self = this; this.clicked = true; this.rectType = rectType; this.color = 0x555555; if(this.rectType == 0) { //黑色 this.color = 0x000000; this.clicked = false; } else if(this.rectType == 1){ //白色 this.color = 0xFFFFFF; } this.graphics = new PIXI.Graphics(); this.graphics.beginFill(this.color, 1); this.graphics.drawRect(0, 0, w, h); this.addChild(this.graphics); //添加黑色或白色方块点击事件 if(this.rectType != 2) { this.interactive = true; this.on("click", function(){ self.play(); }); this.on("touchstart", function(){ self.play(); }); } this.play = function() { //方块只能点击一次,添加此验证 if(this.rectType == 0 && this.clicked == false) { //记录点击状态 this.clicked = true; //黑色方块被点击变色 self.graphics.beginFill(0x888888, 1); self.graphics.drawRect(0, 0, 123, 150); //按照乐谱寻找需要播放的音色 var mIndex = musicArrListIndex[music[musicIndex]]; var audio = musicArrList[music[musicIndex]][mIndex]; //播放音乐 audio.play(); //切换同音色的声音对象,解决同音色一起播放问题 mIndex ++; if(mIndex >= 5) { mIndex = 0; } //记录同音色 播放的序列,5选1 musicArrListIndex[music[musicIndex]] = mIndex; musicIndex ++; //乐谱循环播放 if(musicIndex >= music.length - 1) { musicIndex = 0; } //得分 score ++; scoreTxt.text = "score: " + score; } else { //黑色方块被点击变红 self.graphics.beginFill(0xff1111, 1); self.graphics.drawRect(0, 0, 123, 200); over(); } }}//对象继承Container的属性方法Rect.prototype = Object.create(PIXI.Container.prototype);

3、游戏中的音频处理模块,音频预加载。

//iphone手机声音预加载兼容 document.addEventListener("WeixinJSBridgeReady", function () { var controls = document.getElementsByTagName('audio'); for(var i=0; i<controls.length; i++){ controls[i].load(); controls[i].pause(); } }, false);

4、乐谱与音频对象的代码逻辑编写。

//乐谱var music = [1,1,1,3,5,5,5,5,6,6,6,8,5,4,4,6,6,3,3,3,3,2,2,2,2,5,5,1,1,1,3,5,5,5,5,6,6,6,8,5,4,4,4,6,3,3,3,3,3,3,2,2,2,3,1];var musicIndex = 0;//储存声音autio对象var musicArrList = [];var musicArrListIndex = [];for(var i=1;i<10;i++){ //创建声音 var musicArr = []; //初始化9个音色 for(var j = 0; j < 5;j ++) { var audio = new Audio(); audio.autoplay = true; audio.src=''; audio.src = 'audio/'+i+'.mp3'; audio.load(); audio.pause(); audio.preload="auto"; document.body.appendChild(audio); musicArr.push(audio); } musicArrListIndex.push(0); musicArrList.push(musicArr);}
本文链接地址:https://www.jiuchutong.com/zhishi/297272.html 转载请保留说明!

上一篇:微信小程序中如何实现微信支付(微信小程序中如何打开不加检验文件的网页)

下一篇:【CSS】CSS字体样式【CSS基础知识详解】(css中字体样式设置)

  • 怎么改苹果手机的名字(怎么改苹果手机蓝牙名称)

    怎么改苹果手机的名字(怎么改苹果手机蓝牙名称)

  • 页眉和页脚在哪里设置(页眉和页脚在哪个选项卡)

    页眉和页脚在哪里设置(页眉和页脚在哪个选项卡)

  • 微信专清里的文件可以删除吗(微信专清里的文件和日期是聊天发送记录吗)

    微信专清里的文件可以删除吗(微信专清里的文件和日期是聊天发送记录吗)

  • 按什么键选多个文件(选多个快捷键)

    按什么键选多个文件(选多个快捷键)

  • 苹果平板键盘在中间怎么回事(苹果平板键盘在上面)

    苹果平板键盘在中间怎么回事(苹果平板键盘在上面)

  • 滴滴城市修改了两次了怎么办(滴滴车主更改城市能正常接单吗)

    滴滴城市修改了两次了怎么办(滴滴车主更改城市能正常接单吗)

  • 抖音直播满月什么意思(直播间满月是什么意思)

    抖音直播满月什么意思(直播间满月是什么意思)

  • 绿洲看不到对方的关注和粉丝(绿洲搜不到好友)

    绿洲看不到对方的关注和粉丝(绿洲搜不到好友)

  • 唱吧被拉黑还有访客记录吗(唱吧被拉黑还有足迹)

    唱吧被拉黑还有访客记录吗(唱吧被拉黑还有足迹)

  • iphone11支持北斗导航吗(Iphone11支持北斗吗)

    iphone11支持北斗导航吗(Iphone11支持北斗吗)

  • 为什么人脸识别多次失败(为什么人脸识别突然不能用了)

    为什么人脸识别多次失败(为什么人脸识别突然不能用了)

  • 光耦合器原理及作用(光耦合器的结构)

    光耦合器原理及作用(光耦合器的结构)

  • 待机桌面停止运行怎么回事(待机桌面停止运行快捷键)

    待机桌面停止运行怎么回事(待机桌面停止运行快捷键)

  • qq随机匹配聊天在哪里(qq随机匹配聊天叫什么)

    qq随机匹配聊天在哪里(qq随机匹配聊天叫什么)

  • 锐龙r33200u相当于(锐龙r32200u相当于)

    锐龙r33200u相当于(锐龙r32200u相当于)

  • gtx940mx相当于什么显卡

    gtx940mx相当于什么显卡

  • 华为每年什么时候出新机(华为每年什么时候出新平板)

    华为每年什么时候出新机(华为每年什么时候出新平板)

  • 英文版微信怎么转文字(英文版微信怎么艾特所有人)

    英文版微信怎么转文字(英文版微信怎么艾特所有人)

  • i5 6500配什么主板(i5 6500配什么主板和显卡)

    i5 6500配什么主板(i5 6500配什么主板和显卡)

  • 使用微信支付的步骤(使用微信支付的国家)

    使用微信支付的步骤(使用微信支付的国家)

  • 苹果xs max怎么关闭最近使用程序(苹果xsmax怎么关机和开机)

    苹果xs max怎么关闭最近使用程序(苹果xsmax怎么关机和开机)

  • 抖音实名认证要等多久(抖音实名认证要身份证照片吗)

    抖音实名认证要等多久(抖音实名认证要身份证照片吗)

  • 高德打车如何成为司机(高德打车如何成为快车司机)

    高德打车如何成为司机(高德打车如何成为快车司机)

  • windows7系统打开命令行窗口的方法(win7打开启动)

    windows7系统打开命令行窗口的方法(win7打开启动)

  • 提成过高
  • 个人所得税包括绩效工资吗
  • 担保费能否开专票
  • 个人独资企业转个体户怎么办理
  • 增值税申报错误如何重报
  • 2019小规模纳税人税率
  • 法院判决书能做证据使用吗
  • 企业资产永久或实质性损害如何进行所得税处理
  • 临时工工资能否用公户支付
  • 外购货物用于捐赠的会计分录
  • 企业所得税工资薪金支出怎么填
  • 客户未付关税是否可以申请晚交
  • 大病医疗专项附加扣除标准举例
  • 跨年度借款利息的税务处理怎么做?
  • 招标代理服务费收费标准2023
  • 交易或事项对会计等式的影响表格怎么填
  • 外贸公司发票过期怎么办
  • 企事业承包承租方缴纳的管理费税费
  • 税务稽查的四个环节
  • 发票请求流水号不能为空
  • 电商销售进对公账户怎样做账
  • 企业所得税期间费用利息收支
  • 新公司没有实收资本,他的钱从哪来
  • 过桥过闸 增值税
  • 五险会计分录会计处理
  • 电脑右下角总是弹出广告
  • windows无法配置用户文件
  • 电脑显卡排行榜
  • nbr是什么意思中文翻译
  • 项目部可以直接给工人结账吗
  • Content-Disposition使用方法和注意事项
  • 苹果手机最贵的软件是哪个
  • 固定资产如何做账务处理
  • 小茴香的栽培技术
  • 融资租赁租入固定资产是什么意思
  • 印花税申报一直显示办理中什么意思
  • 计提本月银行存款应收利息会计分录
  • day01-GUI坦克大战01
  • 支租赁费用计提印花税吗
  • 制造费用转入什么
  • mysql连接数据库的基本步骤是什么
  • 跨年的房租费用怎么做账
  • 税务怎么认定虚列工资
  • 深圳市企业稳岗补贴标准
  • 发票开错抬头做红字发票的账务处理是?
  • 计提地税会计分录怎么做
  • 食堂菜金属于什么费用
  • 政府资助专项资金是什么
  • 公司找的第三方代缴社保
  • 不允许抵扣进项税额的是
  • 应收账款平账怎么处理
  • 期初建账库存现金如何填写
  • 企业哪些项目可以立项
  • 年底汇算清缴是什么
  • 职工住房补贴能否计入工资总额在税前扣除?
  • 工程公司存货包括哪些科目
  • 如何删除win10系统
  • ubuntu 桌面
  • ntfs权限设置步骤
  • win8设置在哪
  • ubuntu 21.10安装
  • sharedprem.exe - sharedprem是什么进程 有什么作用
  • win7网络正常网页打不开是什么原因
  • linux config
  • win7系统IE浏览器怎么去掉360导航
  • Linux CentOS系统下tomcat配置ssl教程
  • perl正则表达
  • cocos2dx4.0教程
  • 使用nodejs中httpProxy代理时候出现404异常的解决方法
  • android 游戏平台
  • windows 10一
  • 到了这个年纪吉他谱完整版
  • nodejs发送post请求
  • android 像素
  • Android - DrawerLayout的使用
  • 简单的安卓代码
  • js中生成随机数
  • python解析chunked
  • 小规模纳税人网上开专票流程
  • 办公厅机构设置方案
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设