0.0.10 • Published 3 years ago
gm-game-music2 v0.0.10
gm-game-music2
音乐卡点碰撞游戏
安装
npm install gm-game-music2
使用
必须开启 "enableSkia": "true"
如果项目需要使用插件,在window下加上 disablePluginSandBox:“true”
- json
{
"usingComponents": {
"gm-music2": "/pages/components/music2/music2"
}
}
- js
Page({
data: {
show: true,
gameSource: {
isBumpBox: false,//碰撞显示区域
GameType: 0,//默认0
//背景
// bg: { src: "https://img.alicdn.com/imgextra/i4/555657275/O1CN01JDS1F823c02NwGmoV_!!555657275.png", width: 750, height: 1700 },
//滚动背景
rollBg: {
show: false,
width: 750,
height: 1612,
rollSpeed: 0.1,//背景移动速度
src: "https://img.alicdn.com/imgextra/i1/555657275/O1CN01ENSgu823c01ox6H1Q_!!555657275.png",
},
//开局动画
Start: {
time: 1000,//间隔时间
srcArr: [
{ src: "https://img.alicdn.com/imgextra/i2/555657275/O1CN01SN9woF23c02B1cyp0_!!555657275.png", width: 500, height: 247, val: 3 },
{ src: "https://img.alicdn.com/imgextra/i1/555657275/O1CN01vmRdh423c02JOvIqX_!!555657275.png", width: 500, height: 242, val: 2 },
{ src: "https://img.alicdn.com/imgextra/i3/555657275/O1CN01BsfVpF23c02PWpZLf_!!555657275.png", width: 500, height: 238, val: 1 },
{ src: "https://img.alicdn.com/imgextra/i1/555657275/O1CN01i9s9XU23c02MdGKGE_!!555657275.png", width: 500, height: 281, val: 0 },
],
},
Bgmusic: {
left: 700,
top: 193,
loop: true,//是否循环播放
InitPlay: false,//是否初始播放
btn_img: { src: "https://img.alicdn.com/imgextra/i4/555657275/O1CN015azfwR23c01q84KLR_!!555657275.png", width: 29, height: 38, },//开
btn_img1: { src: "https://img.alicdn.com/imgextra/i3/555657275/O1CN01GTfHq323c021u6gwp_!!555657275.png", width: 29, height: 38, },//关
audio: "http://isv-vod.alibabausercontent.com/RGjZJMdpNgKGVQeEyw8/Ltzlgj2ktDZqf9JTHmf?auth_key=1613873043-0-0-7ccaaed0c63c95fceeb5ebe3719adc9e&w=0&h=0&e=sd&t=212c4c7016136138439422136e22ca",
// timeSpot: [0, 10, 3.123, 5, 6.333, 10.45, 15, 18.526, 22.35, 26.11, 28.845, 31.31,],//卡点
timeSpot: [7, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20, 22, 24, 26, 28, 30, 31, 33, 34, 35, 36, 39, 43, 45, 47, 49, 51, 53, 55, 57, 59],//卡点
interval: 5,//没有卡点数据间隔多久生成一次
},
//掉落物
DropData: {
oneTop: 200,//第一个的位置
speed: 5,//物品初始速度
Spacing: 300,//上下物品间距
createPos: 50,//上一个物品走到生成下一个
maxcreateNum: 4,//最大生成数 =左边数量+右边数量
//指引
guide: {
show: false,
num: 3,//步数
text: "点击",
color: "#FFFFFF",
size: 20,
margin: 90,//以屏幕中心字体左右边距
},
//物品
goods: {
show: true,
srcArr: [
{
width: 142,
height: 262,
bumpScore: 2,
bumpArea: [//碰撞区域
{ min: 0, max: 40, score: 1 },//上
{ min: 40, max: 80, score: 3 },//中
{ min: 80, max: 100, score: 2 }//下
],
src: "https://img.alicdn.com/imgextra/i4/555657275/O1CN01BEAUCO23c02OJSfvc_!!555657275.png",
},//
],
},
//加分星
stars: {
show: false,
srcArr: [
// { src: "https://img.alicdn.com/imgextra/i4/555657275/O1CN01QARkEa23c01sU8y7x_!!555657275.png", width: 65, height: 65, val: 20 },//测试
{ src: "https://img.alicdn.com/imgextra/i2/555657275/O1CN01j8FKIp23c02MoKA9k_!!555657275.png", width: 19, height: 20, val: 20, core: 5, },
],
},
//碰撞动画
BumpAinm: {
show: false,
speed: 0.1,// 动画速度 值越大,速度越快
scale: { x: 1, y: 1 },// 动画缩放
srcArr: [
{ src: "https://img.alicdn.com/imgextra/i3/1080040467/O1CN01GiVJFq1FJva0ojk0l_!!1080040467.png", width: 16, height: 27, val: 0 },
{ src: "https://img.alicdn.com/imgextra/i2/1080040467/O1CN01fgY9Hl1FJva5WWo6v_!!1080040467.png", width: 16, height: 27, val: 1 },
{ src: "https://img.alicdn.com/imgextra/i4/1080040467/O1CN01Uj8gqT1FJvZzukPht_!!1080040467.png", width: 16, height: 27, val: 2 },
{ src: "https://img.alicdn.com/imgextra/i1/1080040467/O1CN01jAZw2G1FJvZxmwXTL_!!1080040467.png", width: 16, height: 27, val: 3 },
{ src: "https://img.alicdn.com/imgextra/i1/1080040467/O1CN01EyITGj1FJva3knfJe_!!1080040467.png", width: 16, height: 27, val: 4 },
{ src: "https://img.alicdn.com/imgextra/i2/1080040467/O1CN012gc5k21FJva20z9Xo_!!1080040467.png", width: 16, height: 27, val: 5 },
{ src: "https://img.alicdn.com/imgextra/i3/1080040467/O1CN01PMVAV61FJvZyHaz2t_!!1080040467.png", width: 16, height: 27, val: 6 },
{ src: "https://img.alicdn.com/imgextra/i4/1080040467/O1CN01hf3iKp1FJva0FrSpE_!!1080040467.png", width: 16, height: 27, val: 7 },
{ src: "https://img.alicdn.com/imgextra/i4/1080040467/O1CN01Ays2W61FJvZyHcj7b_!!1080040467.png", width: 16, height: 27, val: 8 },
{ src: "https://img.alicdn.com/imgextra/i2/1080040467/O1CN01v0v42s1FJva4ONIOd_!!1080040467.png", width: 16, height: 27, val: 9 },
],
},
},
//蜜蜂
BeeData: {
top: 710,
left: 100,
//滑动数据
SlideData: {
distance: 120,//距离
speed: 10,//速度
radian: 0,//弧度
rotation: 0,//旋转
printShow: false,//轨迹
noBump: false,//滑动未碰撞是否结束游戏
},
srcArr: [
// { src: "https://img.alicdn.com/imgextra/i4/555657275/O1CN01QARkEa23c01sU8y7x_!!555657275.png", width: 65, height: 65, },//测试
// { src: "https://img.alicdn.com/imgextra/i2/555657275/O1CN01j8FKIp23c02MoKA9k_!!555657275.png", width: 19, height: 20, }
{ src: "https://img.alicdn.com/imgextra/i2/555657275/O1CN01ZbBVVw23c02LRjQ07_!!555657275.png", width: 78, height: 110, },
],
//披带
Particle_Belt: {
show: false,
srcArr: [
// { src: "https://eia.github.io/ironman/2021/demo/2020_10_10-2/particle.png", width: 44, height: 44, },//测试
{ src: "https://img.alicdn.com/imgextra/i2/555657275/O1CN01j8FKIp23c02MoKA9k_!!555657275.png", width: 19, height: 20, },
],
config: {
"alpha": { "start": 0.62, "end": 0, },//alpha 通道
"scale": { "start": 1, "end": 0.5, },//缩放
"color": { "start": "e83828", "end": "e83828", },//颜色
"speed": { "start": 150, "end": 100, },//速度
"acceleration": { "x": 50, "y": 20, },//加快
"startRotation": { "min": 90, "max": 90, },//开始旋转
"rotationSpeed": { "min": 50, "max": 50, },//旋转速度
"lifetime": { "min": 0.2, "max": 0.3, },//生命周期
"blendMode": "normal",//混合模式
"frequency": 0.01,//频率
"emitterLifetime": 0,//发射生命周期
"maxParticles": 150,//最大粒子数
"pos": { "x": -2, "y": 0, },//位置
"addAtBack": false,//是否在后面添加
"spawnType": "circle",//繁殖类型
"spawnCircle": { "x": -2, "y": 0, "r": 20, }//繁殖范围
// "alpha": { "start": 0.62, "end": 0, },//alpha 通道
// "scale": { "start": 1, "end": 0.5, },//缩放
// "color": { "start": "e83828", "end": "e83828", },//颜色
// "speed": { "start": 150, "end": 100, },//速度
// "acceleration": { "x": 50, "y": 20, },//加快
// "startRotation": { "min": 90, "max": 90, },//开始旋转
// "rotationSpeed": { "min": 50, "max": 50, },//旋转速度
// "lifetime": { "min": 0.2, "max": 0.5, },//生命周期
// "blendMode": "normal",//混合模式
// "frequency": 0.01,//频率
// "emitterLifetime": 0,//发射生命周期
// "maxParticles": 100,//最大粒子数
// "pos": { "x": -2, "y": 0, },//位置
// "addAtBack": false,//是否在后面添加
// "spawnType": "circle",//繁殖类型
// "spawnCircle": { "x": -2, "y": 0, "r": 20, }//繁殖范围
}
},
//拖尾
Particle_Tail: {
show: true,
srcArr: [
{ src: "https://img.alicdn.com/imgextra/i1/1080040467/O1CN01WoFqB21FJvcY6nRGA_!!1080040467.png", width: 44, height: 44, },//测试
// { src: "https://img.alicdn.com/imgextra/i4/555657275/O1CN0132nxVN23c02Htt2Rh_!!555657275.png", width: 36, height: 167, },
],
config: {
// "alpha": { "start": 1, "end": 1 },//alpha 通道
// "scale": { "start": 1, "end": 0.5, },//缩放
// "color": { "start": "f39b93", "end": "f39b93", },//颜色
// "speed": { "start": 400, "end": 400 },//速度
// "startRotation": { "min": 90, "max": 90 },//开始旋转
// "rotationSpeed": { "min": 50, "max": 50 },//旋转速度
// "lifetime": { "min": 0.1, "max": 0.1 },//生命周期
// "blendMode": "normal",//混合模式
// "frequency": 0.001,//频率
// "emitterLifetime": 0,//发射生命周期
// "maxParticles": 1000,//最大粒子数
// "pos": { "x": -1, "y": 20 },//位置
// "addAtBack": false,//是否在后面添加
// "spawnType": "circle",//繁殖类型
// "spawnCircle": { "x": -1, "y": 0, "r": 0, }//繁殖范围
"alpha": { "start": 1, "end": 0.31, },//alpha 通道
"scale": { "start": 0.5, "end": 0.3, },//缩放
"color": { "start": "e8a9a8", "end": "e8a9a8", },//颜色
"speed": { "start": 500, "end": 200, },//速度
"acceleration": { "x": 0, "y": 0, },//加快
"startRotation": { "min": 90, "max": 90, },//开始旋转
"rotationSpeed": { "min": 0, "max": 0, },//旋转速度
"lifetime": { "min": 0.1, "max": 0.1, },//生命周期
"blendMode": "normal",//混合模式
"frequency": 0.001,//频率
"emitterLifetime": 0,//发射生命周期
"maxParticles": 150,//最大粒子数
"pos": { "x": -2, "y": 20, },//位置
"addAtBack": false,//是否在后面添加
"spawnType": "circle",//繁殖类型
"spawnCircle": { "x": -2, "y": 0, "r": 0, }//繁殖范围
// "alpha": { "start": 0.62, "end": 0 },//alpha 通道
// "scale": { "start": 0.5, "end": 0.15, },//缩放
// "color": { "start": "f0948d", "end": "f0948d", },//颜色
// "speed": { "start": 400, "end": 200 },//速度
// "startRotation": { "min": 90, "max": 90 },//开始旋转
// "rotationSpeed": { "min": 50, "max": 50 },//旋转速度
// "lifetime": { "min": 0.1, "max": 0.11 },//生命周期
// "blendMode": "normal",//混合模式
// "frequency": 0.001,//频率
// "emitterLifetime": 0,//发射生命周期
// "maxParticles": 1000,//最大粒子数
// "pos": { "x": -1, "y": 30 },//位置
// "addAtBack": false,//是否在后面添加
// "spawnType": "circle",//繁殖类型
// "spawnCircle": { "x": -1, "y": 0, "r": 5, }//繁殖范围
// "alpha": { "start": 1, "end": 0.31, },//alpha 通道
// "scale": { "start": 0.5, "end": 0.3, },//缩放
// "color": { "start": "e8a9a8", "end": "e8a9a8", },//颜色
// "speed": { "start": 500, "end": 200, },//速度
// "acceleration": { "x": 0, "y": 0, },//加快
// "startRotation": { "min": 90, "max": 90, },//开始旋转
// "rotationSpeed": { "min": 0, "max": 0, },//旋转速度
// "lifetime": { "min": 0.1, "max": 0.1, },//生命周期
// "blendMode": "normal",//混合模式
// "frequency": 0.001,//频率
// "emitterLifetime": 0,//发射生命周期
// "maxParticles": 150,//最大粒子数
// "pos": { "x": -2, "y": 20, },//位置
// "addAtBack": false,//是否在后面添加
// "spawnType": "circle",//繁殖类型
// "spawnCircle": { "x": -2, "y": 0, "r": 0, }//繁殖范围
}
},
BeeTail: { src: "https://img.alicdn.com/imgextra/i1/555657275/O1CN01ieEiPI23c02KiZ3xQ_!!555657275.png", width: 9, height: 5, },
},
//倒计时
CountDown: {
top: 150,
left: 100,
type: false,//true为配置时间 false为音频长度时间
Time: 60,//type=true 使用时间
Size: 26,
color: "#000000",
bg: { src: "https://img.alicdn.com/imgextra/i1/555657275/O1CN01LILB7E23c02HHSe7x_!!555657275.png", width: 174, height: 174, },
timeAinm: {
show: false,
scale: { x: 1.5, y: 1.5 },// 动画缩放
srcArr: [
{ src: "https://img.alicdn.com/imgextra/i3/1080040467/O1CN01GiVJFq1FJva0ojk0l_!!1080040467.png", width: 16, height: 27, val: 0 },
],
},
},
//得分
Score: {
Size: 26,
top: 150,
left: 660,
color: "#000000",
bg: { src: "https://img.alicdn.com/imgextra/i3/555657275/O1CN0161NRFo23c02AhVQJj_!!555657275.png", width: 174, height: 174, }
},
//加分
addScore: {
show: true,
margin: 0,//以屏幕中心 左右显示位置
top: 600,//以屏幕顶部为0 上下显示位置
Size: 36,
color: "#e73321",
noType: false,//true移动消失false定时消失
pos_y: 200,//noType=true使用 移动的高度
Speed: 120,//noType=true使用 移动的速度
noTime: 1000,//noType=false使用 移动的时间
},
},
},
onLoad() {
},
onRef(game) {
this.gameComponent = game;
},
beginFun() {
/* my.alert({
content: "游戏开始"
}) */
this.gameComponent.start();
},
resetFun() {
this.gameComponent.reset();
},
onError(e) {
console.log("loader读取资源报错时回调", e)
},
onFinish(data) {
console.log("...游戏结束....", data)
my.alert({
content: "游戏结束" + data.totalScore
})
},
onInitDone() {
console.log("initDone...游戏初始化完成")
/* my.alert({
content: "游戏初始化完成"
}) */
},
onAudioDone() {
my.alert({ content: "音乐缓存完毕" })
}
});
- xaml
<gm-music2 gameSource="{{gameSource}}" onRef="onRef" onInitDone="onInitDone" onUpdate="onUpdate" onFinish="onFinish" onVibrate="onVibrate" onAudioDone="onAudioDone" />