# 黄金矿工游戏 一个使用Flask后端和Vue前端实现的简单黄金矿工游戏。 ## 项目结构 ``` goldminer/ ├── backend/ # Flask后端 │ ├── app.py # 主应用程序 │ └── requirements.txt ├── frontend/ # Vue前端 │ ├── public/ │ ├── src/ │ │ ├── components/ │ │ │ └── Game.vue # 游戏组件 │ │ ├── App.vue # 主应用组件 │ │ └── main.js # 入口文件 │ ├── package.json │ └── vue.config.js └── start.bat # 一键启动批处理文件 ``` ## 系统架构 下图展示了黄金矿工游戏的系统架构: ![系统架构图](https://mermaid.ink/img/eyJjb2RlIjoiZ3JhcGggVEQ7XG4gICAgQVtcIueUqOaIt+a1j-imvuWZqFwiXSAtLT58orWpl3wgQltcIlZ1ZSDliY3nq69cIl1cbiAgICBCIC0tPnxBUEkg6K-35rGCfCBDW1wiRmxhc2sg5ZCO56uvXCJdXG4gICAgQyAtLT586ZSZ5bqmfCBCXG4gICAgXG4gICAgc3ViZ3JhcGggXCLliY3nq68gbG9jYWxob3N0OjgwODBcIlxuICAgIEIgLS0-fOa4suafk3wgRFtcIkFwcC52dWVcIl1cbiAgICBEIC0tPnzljIXlkKt8IEVbXCJHYW1lLnZ1ZVwiXVxuICAgIEUgLS0-fOa4uOaIj-mAu-i-kXwgRltcIua4uOaIj-W-queOr1wiXVxuICAgIEYgLS0-fOabtOaWsHwgR1tcIkNhbnZhcyDmuLLmn5NcIl1cbiAgICBlbmRcbiAgICBcbiAgICBzdWJncmFwaCBcIuWQjuerryBsb2NhbGhvc3Q6NTAwMFwiXG4gICAgQyAtLT585bGP5oCn5paH5Lu26LWE5rqQfCBIW1wiaW5kZXguaHRtbFwiXVxuICAgIEMgLS0-fEFQSXwgSVtcIi9hcGkvaGVhbHRoXCJdXG4gICAgQyAtLT586ZO+5o6lIENsb3VkfCBKW1wiTXlTUUwg5LqR5pWw5o2u5bqTXCJdXG4gICAgZW5kIiwibWVybWFpZCI6e30sInVwZGF0ZUVkaXRvciI6ZmFsc2UsImF1dG9TeW5jIjp0cnVlLCJ1cGRhdGVEaWFncmFtIjpmYWxzZX0) ## 数据库配置 本项目使用云端MySQL数据库存储用户数据、游戏记录和聊天信息。 数据库配置信息: - 数据库类型:MySQL 8.4.3 - 服务提供商:SQLPub.com - 数据库名称:goldminer - 连接地址:mysql2.sqlpub.com:3307 ## 安装和运行 ### 快速启动(推荐) 直接双击 `start.bat` 文件即可一键启动游戏。 这个脚本会自动: 1. 检查并安装所需的后端依赖 2. 连接到云端数据库并创建必要的表(如果不存在) 3. 同时启动后端和前端服务器 4. 自动在浏览器中打开游戏 ### 手动启动 如果自动脚本出现问题,可以按照以下步骤手动启动: #### 后端 1. 进入后端目录 ``` cd goldminer/backend ``` 2. 安装依赖 ``` pip install -r requirements.txt ``` 3. 运行后端服务器 ``` python app.py ``` 服务器将在 http://localhost:5000 运行。 #### 前端 1. 进入前端目录 ``` cd goldminer/frontend ``` 2. 安装依赖 ``` npm install ``` 3. 开发模式运行 ``` npm run serve ``` 前端开发服务器将在 http://localhost:8080 运行。 ## 游戏说明 - 使用鼠标点击或空格键发射绳索 - 松开鼠标或空格键收回绳索 - 按P键暂停游戏 - 收集金块和钻石以获得分数 - 达到目标分数进入下一关 - 寻找特殊道具提升能力 ## 特殊道具 - 速度提升:增加绳索伸缩速度 - 磁力钩:增加抓取范围 ## 技术栈 - 后端:Flask, SQLAlchemy, PyMySQL - 前端:Vue 3 - 数据库:MySQL 8.4.3 (云端) - 通信:Axios, Socket.IO