初次提交

This commit is contained in:
2026-01-07 11:34:02 +08:00
parent 48298c38bc
commit 327df5d61c
12 changed files with 19906 additions and 1 deletions

71
config.js Normal file
View File

@@ -0,0 +1,71 @@
// 游戏配置文件
const GameConfig = {
// WebSocket配置
websocket: {
baseUrl: 'ws://localhost:8501',
reconnectAttempts: 5,
reconnectDelay: 1000,
heartbeatInterval: 30000, // 心跳间隔(毫秒)
connectionTimeout: 10000, // 连接超时(毫秒)
},
// 游戏配置
game: {
maxDotsPerSquare: 100, // 每个方块最大圆点数
dotLifetime: 30000, // 圆点生命周期(毫秒)
gridSize: {
width: 400,
height: 400
},
animationDuration: 300, // 动画持续时间(毫秒)
},
// UI配置
ui: {
showStatusBar: true,
showKeyboardHints: true,
autoHideHints: true,
hintsHideDelay: 5000, // 提示自动隐藏延迟(毫秒)
},
// 性能配置
performance: {
enableAnimations: true,
enableHoverEffects: true,
enableBackdropFilter: true,
maxFPS: 60,
},
// 调试配置
debug: {
enableLogging: true,
logLevel: 'info', // 'debug', 'info', 'warn', 'error'
showConnectionDetails: false,
}
};
// 环境检测
const isDevelopment = window.location.hostname === 'localhost' || window.location.hostname === '127.0.0.1';
const isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
// 根据环境调整配置
if (isDevelopment) {
GameConfig.debug.enableLogging = true;
GameConfig.debug.logLevel = 'debug';
} else {
GameConfig.debug.enableLogging = false;
GameConfig.performance.enableAnimations = true;
}
if (isMobile) {
GameConfig.ui.showKeyboardHints = false;
GameConfig.performance.enableHoverEffects = false;
GameConfig.game.maxDotsPerSquare = 50; // 移动端减少圆点数量
}
// 导出配置
if (typeof module !== 'undefined' && module.exports) {
module.exports = GameConfig;
} else {
window.GameConfig = GameConfig;
}