这是一个用于计算510K扑克游戏得分的应用程序,包含React前端和FastAPI后端。
510K是一种流行的扑克牌游戏,该游戏帮助玩家记录每轮的得分情况,特别是炸弹数量对得分的影响,并计算最终的盈亏情况。
- 支持4人游戏设置
- 动态输入玩家姓名和底金
- 记录每轮的5-9炸数量
- 根据底金和炸弹类型自动计算得分(前端计算)
- 支持团队模式,可选择获胜团队
- 获胜团队成员获得底金分数,失败团队成员扣除底金分数
- 实时计算总分
- 查看历史轮次详情
- 前端:React + TypeScript
- 后端:Python + FastAPI
- 数据传输:JSON via REST API
- 进入后端目录:
cd backend- 安装依赖:
pip install -r requirements.txt- 启动服务器:
uvicorn main:app --host 0.0.0.0 --port 8000服务器将在 http://localhost:8000 上运行。
- 进入前端目录:
cd frontend- 安装依赖:
npm install- 启动开发服务器:
npm start前端将在 http://localhost:3000 上运行。
- 在首页输入4位玩家的姓名
- 点击"开始游戏"初始化游戏
- 在每轮中输入每位玩家的炸弹数量和得分变化
- 点击"添加本轮"保存当前轮次数据
- 点击"查看总分"查看当前累计得分
- 点击"重新开始"重置游戏
POST /game/setup- 设置游戏玩家POST /game/round- 添加游戏轮次GET /game/scores- 获取当前分数DELETE /game/reset- 重置游戏POST /game/calculate-scores- 计算510K得分
新增团队功能,支持以下操作:
- 将玩家分配到不同团队(如红队、蓝队)
- 选择获胜团队
- 获胜团队的每个成员获得底金分数,失败团队的每个成员扣除底金分数
- 每个玩家只能加入一个团队
poker-calculator/
├── backend/
│ ├── main.py
│ └── requirements.txt
└── frontend/
├── src/
│ ├── App.tsx
│ ├── api.ts
│ └── App.css
└── package.json
- 确保后端服务在前端启动前已经运行
- 前端默认连接到
http://localhost:5656的后端API - 每轮必须为所有玩家输入数据才能继续下一轮