Files
tcg-server/tasks-api.md
chnxianyi 02b47f7ecf 更新
2025-09-30 17:39:59 +08:00

120 lines
2.2 KiB
Markdown

# 任务系统接口文档
## 概述
任务系统允许玩家完成各种游戏内任务以获得奖励。系统支持多种任务类型,包括日常任务、成就任务等。
## API端点
### 获取所有任务配置
```
GET /api/tasks
```
**响应**
```json
[
{
"id": "login_task_1",
"name": "每日登录",
"desc": "每日登录游戏",
"condition": 1,
"value1": 1,
"value2": "",
"value3": "",
"rewardTypes": [0 , 1],
"rewardNums": [100 , 6],
"isDailyTask": true,
"durationHours": 24
},
{
"id": "win_task_1",
"name": "胜利之路",
"desc": "获得3场对战胜利",
"condition": 3,
"value1": 3,
"value2": "",
"value3": "",
"rewardTypes": [0],
"rewardNums": [200],
"isDailyTask": true,
"durationHours": 24
}
]
```
### 获取玩家任务数据
```
GET /api/tasks/{userId}
```
**响应**
```json
{
"tasks": [
{
"taskId": "login_task_1",
"assignedTime": 16409952000000000,
"expireTime": 16410816000000000,
"status": 1,
"progress": 1
}
],
"lastDailyTaskAssigned": 16409952000000000
}
```
### 保存玩家任务数据
```
POST /api/tasks/{userId}
```
**请求体**
```json
{
"tasks": [
{
"taskId": "login_task_1",
"assignedTime": 16409952000000000,
"expireTime": 16410816000000000,
"status": 1,
"progress": 1
}
],
"lastDailyTaskAssigned": 16409952000000000
}
```
**响应**
```json
{
"success": true,
"error": ""
}
```
## 枚举值定义
### 任务条件类型 (TaskConditionType)
| 值 | 名称 | 描述 |
|---|------|------|
| 1 | LoginGame | 登入游戏 |
| 2 | PlayGames | 进行X场对战 |
| 3 | WinGames | 胜利X场 |
| 4 | DefeatHeroWithAttributes | 击败Y属性和Z属性的英雄X次 |
| 5 | SummonHeroWithAttributes | 召唤Y属性和Z属性的英雄X次 |
| 6 | UseHeroSkillWithAttributes | 使用Y属性和Z属性英雄的技能X次 |
### 任务奖励类型 (TaskRewardType)
| 值 | 名称 | 描述 |
|---|------|------|
| 0 | Coins | 金币 |
| 1 | Crystal | 钻石 |
### 任务状态 (TaskStatus)
| 值 | 名称 | 描述 |
|---|------|------|
| 0 | Active | 激活 |
| 1 | Completed | 完成 |
| 2 | Expired | 过期 |
| 3 | Claimed | 已领取 |