# Small_games **Repository Path**: xzbh666/small_games ## Basic Information - **Project Name**: Small_games - **Description**: 设计一些小游戏供上班摸鱼 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-02 - **Last Updated**: 2025-09-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README <<<<<<< HEAD # 小游戏平台 一个基于Node.js + Express的统一管理小游戏平台,支持用户注册登录和管理员功能。 ## 功能特性 ### 用户系统 - 用户注册和登录 - JWT身份验证 - 用户游戏数据独立保存 - 管理员权限管理 ### 游戏功能 - 俄罗斯方块游戏 - 消消乐游戏 - 扫雷游戏 - 贪吃蛇游戏 - 飞翔小鸟游戏 - 记忆翻牌游戏 - 游戏数据云端保存 - 排行榜系统 - 可扩展的游戏架构 ### 管理员功能 - 用户管理(启用/禁用/删除用户) - 平台统计数据 - 游戏排行榜查看 - 系统监控 ## 快速开始 ### 1. 安装依赖 ```bash npm install ``` ### 2. 启动服务器 ```bash # 开发模式(需要安装nodemon) npm run dev # 或者直接启动 npm start ``` ### 3. 访问应用 打开浏览器访问:http://localhost:3000 ### 4. 默认管理员账户 - 用户名:admin - 密码:admin123 ## 项目结构 ``` ├── server.js # 后端服务器 ├── package.json # 项目配置 ├── public/ # 前端静态文件 │ ├── index.html # 主页面 │ ├── styles/ │ │ └── main.css # 样式文件 │ └── js/ │ ├── main.js # 主应用控制器 │ ├── auth.js # 认证管理 │ ├── admin.js # 管理员面板 │ └── tetris.js # 俄罗斯方块游戏 └── README.md # 项目说明 ``` ## API 接口 ### 认证相关 - `POST /api/register` - 用户注册 - `POST /api/login` - 用户登录 - `POST /api/logout` - 退出登录 - `GET /api/user` - 获取当前用户信息 ### 游戏数据 - `POST /api/game-data/:gameName` - 保存游戏数据 - `GET /api/game-data/:gameName` - 获取游戏数据 ### 管理员接口 - `GET /api/admin/users` - 获取用户列表 - `PUT /api/admin/users/:username/toggle` - 启用/禁用用户 - `DELETE /api/admin/users/:username` - 删除用户 - `GET /api/admin/stats` - 获取统计数据 ## 游戏说明 ### 俄罗斯方块 - 使用方向键控制方块移动和旋转 - 空格键暂停游戏 - 消除完整行获得分数 - 游戏数据自动保存到云端 ### 消消乐 - 点击相邻的宝石交换位置 - 连成3个或以上相同颜色的宝石消除 - 达到目标分数获胜 - 限定步数内完成挑战 ### 扫雷 - 左键点击挖掘方块 - 右键标记可疑的地雷位置 - 数字表示周围地雷数量 - 找出所有地雷位置获胜 - 支持简单、中等、困难三种难度 ### 贪吃蛇 - 使用方向键控制蛇的移动 - 吃食物增长身体长度 - 避免撞墙或撞到自己 - 挑战更高的分数 ### 飞翔小鸟 - 点击屏幕或按空格键控制小鸟 - 避开管道障碍物 - 通过管道获得分数 - 简单易上手,难以精通 ### 记忆翻牌 - 点击卡片翻开查看图案 - 找到相同的图案进行配对 - 用最少的步数和时间完成 - 支持多种难度挑战记忆力 ## 扩展开发 ### 添加新游戏 1. 在 `public/index.html` 中添加游戏界面 2. 在游戏菜单中添加游戏卡片 3. 创建游戏逻辑文件 4. 在 `main.js` 中添加游戏切换逻辑 ### 数据库集成 当前使用内存存储,生产环境建议集成: - MongoDB - PostgreSQL - MySQL ## 技术栈 - **后端**: Node.js + Express - **认证**: JWT + bcryptjs - **前端**: 原生JavaScript + HTML5 Canvas - **样式**: CSS3 - **数据存储**: JSON文件数据库 ## 注意事项 1. 当前使用内存数据库,重启服务器会丢失数据 2. JWT密钥需要在生产环境中更改 3. 建议在生产环境中使用HTTPS 4. 可以集成真实数据库以持久化数据 ## 许可证 MIT License ======= # Small_games #### 介绍 设计一些小游戏供上班摸鱼 #### 软件架构 软件架构说明 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) >>>>>>> 72413ecf8e998360036787eb5f0b6ba37646da9f