Files
bl/common/data/xmlres/task.go
昔念 b90bceafd9 ```
feat(xmlres): 添加任务数据加载与初始化逻辑

在 xmlres 包中新增 TaskMap 用于存储任务数据,并在 initfile 函数中
加载 task.xml 文件内容。同时调整 login 控制器中的任务重置逻辑,根据
任务类型每日重置任务状态。修复 pet 控制器释放宠物时的数据更新问题。
战斗系统中增加 Effect 的 OnMiss 回调处理,并修正状态效果映射关系。
修复 PVP 邀
2025-10-20 23:59:49 +08:00

42 lines
1.8 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package xmlres
import "github.com/ECUST-XX/xml"
// Tasks 根节点:包含所有任务
type Tasks struct {
XMLName xml.Name `xml:"tasks"`
Tasks []Task `xml:"task"` // 任务列表
}
// Task 任务节点:对应 <task>
type Task struct {
// 任务属性XML属性
ID int `xml:"ID,attr"` // 任务标识
Name string `xml:"name,attr"` // 任务名
Parent string `xml:"parent,attr"` // 父级任务格式ID|ID
IsMat int `xml:"isMat,attr"` // 父级匹配类型0单配/1全配
Type int `xml:"type,attr"` // 任务类型0常规/1日常
IsDir int `xml:"isDir,attr"` // 是否直接完成0否/1是
Doc string `xml:"doc,attr"` // 文档说明
Alert string `xml:"alert,attr"` // 提示说明
IsEnd int `xml:"isEnd,attr"` // 是否结束任务0否/1是
Especial *int `xml:"especial,attr"` // 可选是否需要特殊提示框1是nil表示无
Condition *string `xml:"condition,attr"` // 可选:接任务限制条件
// 任务子节点
Des *string `xml:"des"` // 可选:<des>节点CDATA
TaskDes *string `xml:"taskDes"` // 可选:<taskDes>节点多段CDATA用$$分隔)
ProDes *string `xml:"proDes"` // 可选:<proDes>节点CDATA
Pros []Pro `xml:"pro"` // 步骤列表:<pro>节点集合
}
// Pro 步骤节点:对应 <pro>
type Pro struct {
Name string `xml:"name,attr"` // 步骤名
Parent string `xml:"parent,attr"` // 父级步骤(格式:步骤|步骤)
IsMat string `xml:"isMat,attr"` // 父级步骤匹配类型0单配/1全配可能为空
Doc string `xml:"doc,attr"` // 文档说明
Alert string `xml:"alert,attr"` // 提示说明
IsEnd int `xml:"isEnd,attr"` // 是否最后一步0否/1是可选
}