first commit

This commit is contained in:
zzc
2026-04-30 00:13:37 +08:00
commit 493b4709bc
189 changed files with 24791 additions and 0 deletions

View File

@@ -0,0 +1,73 @@
// 保存一些全局的数据
import Utils from "../libs/Utils";
import { GameState, GameStorageKeyConfig } from "./Config";
export class GlobalData {
// 游戏状态
public static gameState: GameState = GameState.PLAYING;
// 每吃到一个音符 增加的分数
public static addScore: number = 1;
//保存用户当前这局的分数
public static curRoundTotalScore: number = 0;
// 定义每一局用户默认剩余几条生命值
public static lifeNumPerRound: number = 2;
// 定义音符移动的速度
public static noteSpeed: number = 800;
// 定义当前音符下落的速率(也是音乐播放的速率)
public static speedRate: number = 1;
// 每次闯关增加的速率
public static speedRateAdd: number = 0.2;
// 获取当前选择的音乐 id
public static get selectedMusicID(): number {
return Utils.getCache(GameStorageKeyConfig.SelectedMusicID) || 1;
}
//设置当前选择的音乐ID
public static set selectedMusicID(value) {
//存储到本地缓存中
Utils.setCache(GameStorageKeyConfig.SelectedMusicID, value);
}
//获取玩家累计的总得分(总的金币数)
public static get totalScore() {
//从本地缓存中获取
let score = Utils.getCache(GameStorageKeyConfig.TotalScore) || 0;
return score ? parseInt(score) : 0;
}
//存储玩家累计的总得分(总的金币数)
public static set totalScore(value) {
//存储到本地缓存中
Utils.setCache(GameStorageKeyConfig.TotalScore, value);
}
//获取玩家最好的成绩
public static get bestScore() {
//从本地缓存中获取
let scoreMap = Utils.getCache(GameStorageKeyConfig.BestScore) || {};
//获取当前选择的音乐ID
let bestScoreKey = GlobalData.selectedMusicID;
//从本地获取最好成绩
let score = scoreMap[bestScoreKey] || 0;
//返回当前选择的音乐ID的最好成绩
return score;
}
//存储游戏的UUID
public static set bestScore(value) {
//获取当前选择的音乐ID
let bestScoreKey = GlobalData.selectedMusicID;
//从本地获取最好成绩的映射
let scoreMap = Utils.getCache(GameStorageKeyConfig.BestScore) || {};
//更新当前选择的音乐ID的最好成绩(转换为整数)
scoreMap[bestScoreKey] = parseInt(value);
//存储到本地缓存中
Utils.setCache(GameStorageKeyConfig.BestScore, scoreMap);
}
// 重置游戏数据
public static resetGameData() {
// 重置当前这一局的得分
GlobalData.curRoundTotalScore = 0;
// 重置生命值
GlobalData.lifeNumPerRound = 2;
// 重置当前这一句的下落速速率
GlobalData.speedRate = 1;
}
}