FlyUp/assets/Script/GameData.ts
2024-06-21 18:41:20 +08:00

238 lines
9.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

const {ccclass, property} = cc._decorator;
@ccclass
export default class GameData extends cc.Component {
static _instance: any;
GM_INFO: {};
GAME_DATA: any[];//备用
AudioManager: any;
BLOCK_INFO: { //难度控制
name: string; //块名字
//块名字
speed: number; //每个块的基础速度
thickness: boolean;
}[];
CLICK_DATA: {
type: number; //默认类型
level: number; //层数
block: number; //块的名字
percent: number; //距离中心百分比
getScore: number; //本轮获得分数
totalScore: number; //本轮过后总分数
difficulty: number; //本轮难度系数
height: boolean; //本轮是否增高
combo: number; //连击数
accuracy: number; //精准度 (0-3) 0 失败掉落
jumps: number; //本轮玩家跳跃次数1或者2
timer: number; //本局游戏剩余时间
fake: boolean; //是否有平台干扰项
fakeSpeed: number; //假平台移动速度
speed:number; //真平台移动速度
round:number; //回合数
levelMax:number, //最高层数
difficultyMax:number //最高难度系数
};
LEVEL_INFO: { //难度控制
speed: number; //速度加成基础
addSpeed: number; //速度加成系数
reduceSpeed: number; //速度增加范围
jiansu: number; //速度增加的范围加值
round1: number; //加速范围控制回合档数 2 小于这回合为3double hit
round2: number; //加速范围控制回合档数 1
round3: number; //加速范围控制回合档数 0.5
doubleSuccess: number; //连击次数(N次以上,开启干扰项)
fastSpeed: number; //矮薄块最快速度
slowSpeed: number; //厚块最块速度
doubleHit: number; //连击加成
doubleAdd: number; //每次连击后 连击加成
doubleMax: number; //连击加成最大值
layer: number; //层级加成
layerAdd: number; //每次层级提升,层级加成的加成
star1: number; //获得一颗星百分比
star2: number; //获得两颗星百分比
star3: number; //获得三颗星百分比
scoreMax: number; //暂时总分
levelMax: number; //最高层数
difficultyMax: number; //最高难度系数
};
// 0.15 0.37 0.8 获得三个星星 -2167.675 -2054 两个尺寸的屏幕的补偿值
onLoad () {
if (GameData._instance == null) {
GameData._instance = this;
// cc.game.addPersistRootNode(this.node);
this.AudioManager = this.node.getComponent('BallAudioManager');
}
else {
this.node.destroy();
return;
}
}
start () {
//GAME_DATA 废弃了,暂时不删除以防后面修改回 一整局传一次
this.GAME_DATA = [
]
this.GM_INFO_init(); //GM_INFO存储 一些游戏数据,这些数据至少是当局内不会重置清零的
this.LEVEL_init(); //每局游戏内游戏参数,可复活清零或者重玩清零
this.BLOCK_INFO_init(); //每个游戏不同,此游戏为跳板参数
this.CLICK_init(); //埋点数据,用于上传重要数据
}
GM_INFO_init(){
this.GM_INFO = {
// isEnd: false,
mean_Time:0, //平均放箭速度
total:0, //总共对的个数
currSeed: 203213, //用于随机数种子
gameId:'100001',
userId:"",
guide:true, //是否有引导
url:"http://dev.api.sparkus.cn",
custom: 0,
//从这开始
jumpUpTime:0.5, //起跳时间
jumpDownTime:0.4, //落地时间
jumpHeight:150, //跳跃高度
blockMin:30, //薄块增加高度
blockMax:-10, //厚块增加高度(在自身高度基础上)此值可以为负值
blockScale:5, //次值满值为块种类总个数12,6为百分之50厚50薄个数增加厚度比例降低
distanceMin:100, //落地范围在百分百内必成功,可改参
distanceMax:110, //落地范围最大值,弱大于,判断脚在外面
life:3, //可复活次数
levelMax:1, //最高层数
difficultyMax:1, //最高难度系数
score:0, //总分
success:true, //是否成功
probation:true //试用期
};
}
CLICK_init(){
GameData._instance.CLICK_DATA =
{
type:1, //默认类型
level:0, //层数
block:0, //块的名字
percent:0, //距离中心百分比
getScore:0, //本轮获得分数
totalScore:0, //本轮过后总分数
difficulty:0, //本轮难度系数
height:false, //本轮是否增高
combo:0, //连击数
accuracy:0, //精准度 (0-3) 0 失败掉落
jumps:0, //本轮玩家跳跃次数1或者2
timer:0, //本局游戏剩余时间
fake:false, //是否有平台干扰项
fakeSpeed:0, //假平台移动速度
speed:0, //真平台移动速度
round:0, //回合数
}
}
LEVEL_init(){
this.LEVEL_INFO =
{ //难度控制
speed:1, //速度加成基础
addSpeed:0.015, //速度加成系数
reduceSpeed:0, //速度增加范围
jiansu:3, //速度增加的范围加值
round1:10, //加速范围控制回合档数 2 小于这回合为3double hit
round2:20, //加速范围控制回合档数 1
round3:30, //加速范围控制回合档数 0.5
doubleSuccess:3, //连击次数(N次以上,开启干扰项)
fastSpeed:3.5, //矮薄块最快速度
slowSpeed:4.5, //厚块最块速度
doubleHit:1, //连击加成
doubleAdd:0.05, //每次连击后 连击加成
doubleMax:2, //连击加成最大值
layer:100, //层级加成
layerAdd:2, //每次层级提升,层级加成的加成
star1:0.2, //获得一颗星百分比
star2:0.4, //获得两颗星百分比
star3:0.8, //获得三颗星百分比
scoreMax:120000, //暂时总分
levelMax:1, //最高层数
difficultyMax:1 //最高难度系数
}
}
BLOCK_INFO_init(){
this.BLOCK_INFO = [
{ //难度控制
name:"block1", //块名字
speed:8, //每个块的基础速度
thickness:false, //当前块的厚度
},
{ //难度控制
name:"block2", //块名字
speed:9, //每个块的基础速度
thickness:false, //当前块的厚度
},
{ //难度控制
name:"block3", //块名字
speed:8, //每个块的基础速度
thickness:false, //当前块的厚度
},
{ //难度控制
name:"block4", //块名字
speed:9, //每个块的基础速度
thickness:false, //当前块的厚度
},
{ //难度控制
name:"block5", //块名字
speed:8, //每个块的基础速度
thickness:false, //当前块的厚度
},
{ //难度控制
name:"block6", //块名字
speed:8, //每个块的基础速度
thickness:false, //当前块的厚度
},
{ //难度控制
name:"block7", //块名字
speed:10, //每个块的基础速度
thickness:true, //当前块的厚度
},
{ //难度控制
name:"block8", //块名字
speed:10, //每个块的基础速度
thickness:true, //当前块的厚度
},
{ //难度控制
name:"block9", //块名字
speed:10, //每个块的基础速度
thickness:true, //当前块的厚度
},
{ //难度控制
name:"block10", //块名字
speed:10, //每个块的基础速度
thickness:true, //当前块的厚度
},
{ //难度控制
name:"block11", //块名字
speed:10, //每个块的基础速度
thickness:true, //当前块的厚度
},
{ //难度控制
name:"block12", //块名字
speed:10, //每个块的基础速度
thickness:true, //当前块的厚度
},
{ //难度控制
name:"block0", //块名字
speed:14, //每个块的基础速度
thickness:false, //当前块的厚度
},
]
}
// update (dt) {}
}