```
feat(blazing): 更新怪物刷新规则模型结构 重构 monster_refresh.go 中的 MonsterRefresh 模型,调整字段定义以支持更灵活的刷新配置。 新增 MapID、MinLevel、MaxLevel、FixPos 和 Script 字段,用于支持地图和等级相关的刷新逻辑。 保留部分异色相关字段并标记为待定,便于后续决定是否移除。 新增 MonsterRefreshEX 结构体扩展 MonsterRefresh 并支持数组形式的 MonsterID 和 ShinyID。 修改注释内容以准确反映当前字段含义与用途。 同时修正 dict_info.go 中查询条件错误,将 type in (?) 更正
This commit is contained in:
@@ -5,43 +5,51 @@ import (
|
||||
)
|
||||
|
||||
const (
|
||||
TableNameMonsterRefresh = "monster_refresh" // 怪物刷新规则表
|
||||
|
||||
TableNameMonsterRefresh = "monster_refresh" // 怪物刷新规则表(地图-精灵等级-刷新脚本配置)
|
||||
)
|
||||
|
||||
// MonsterRefresh 怪物刷新规则模型(对应XML中的<monster>标签)
|
||||
// MonsterRefresh 怪物刷新规则模型(对应前端配置的地图/精灵/等级/脚本配置)
|
||||
type MonsterRefresh struct {
|
||||
*cool.Model
|
||||
*cool.Model // 嵌入通用Model(包含ID/创建时间/更新时间等通用字段)
|
||||
|
||||
MonsterID int32 `gorm:"not null;comment:'对应原怪物唯一编号'" json:"monster_id"`
|
||||
ShinyID int32 `gorm:"not null;uniqueIndex;comment:'异色唯一标识ID'" json:"shiny_id"`
|
||||
RefreshScript string `gorm:"type:text;not null;comment:'刷新脚本(JS格式,可包含时间/天气/地形等条件)'" json:"refresh_script"`
|
||||
MapID int32 `gorm:"not null;comment:'地图ID'" json:"map_id"`
|
||||
MonsterID string `gorm:"not null;comment:'精灵ID,填0为填充数组'" json:"monster_id"`
|
||||
MinLevel int32 `gorm:"not null;comment:'精灵最低等级'" json:"min_level"`
|
||||
MaxLevel int32 `gorm:"not null;comment:'精灵最高等级'" json:"max_level"`
|
||||
FixPos int32 `gorm:"not null;comment:'固定位置刷新(0:随机位置,没有固定位置的时候就会取一个随机位置,如果没有随机位置就不刷新,1-9:固定位置)'" json:"fix_pos"`
|
||||
Script string `gorm:"type:text;not null;comment:'刷新脚本(JS格式,对应前端编辑器配置)'" json:"value"`
|
||||
|
||||
ShinyFilter string `gorm:"type:text;not null;comment:'异色滤镜效果(文本描述或配置参数)'" json:"shiny_filter"`
|
||||
ShinyEffect string `gorm:"type:text;not null;comment:'异色光效效果(文本描述或配置参数)'" json:"shiny_effect"`
|
||||
// TODO: 增加ruffle的显示异色效果
|
||||
// 以下为原模型保留的异色相关字段(前端暂未配置,如需移除可删除)
|
||||
ShinyID string `gorm:"not null;comment:'异色唯一标识ID'" json:"shiny_id"`
|
||||
// ShinyFilter string `gorm:"type:text;not null;comment:'异色滤镜效果(文本描述或配置参数)'" json:"shiny_filter"`
|
||||
// ShinyEffect string `gorm:"type:text;not null;comment:'异色光效效果(文本描述或配置参数)'" json:"shiny_effect"`
|
||||
// TODO: 增加ruffle的显示异色效果(如需保留则完善,无需则删除)
|
||||
}
|
||||
|
||||
// TableName MonsterRefresh's table name
|
||||
type MonsterRefreshEX struct {
|
||||
MonsterRefresh
|
||||
MonsterID []uint32 `json:"monster_id"`
|
||||
ShinyID []uint32 `json:"shiny_id"`
|
||||
}
|
||||
|
||||
// TableName 指定MonsterRefresh对应的数据库表名
|
||||
func (*MonsterRefresh) TableName() string {
|
||||
return TableNameMonsterRefresh
|
||||
}
|
||||
|
||||
// GroupName MonsterRefresh's table group
|
||||
// GroupName 指定表所属的分组(保持和参考示例一致)
|
||||
func (*MonsterRefresh) GroupName() string {
|
||||
return "default"
|
||||
}
|
||||
|
||||
// NewMonsterRefresh create a new MonsterRefresh
|
||||
// NewMonsterRefresh 创建一个新的MonsterRefresh实例(初始化通用Model)
|
||||
func NewMonsterRefresh() *MonsterRefresh {
|
||||
return &MonsterRefresh{
|
||||
Model: cool.NewModel(),
|
||||
}
|
||||
}
|
||||
|
||||
// 初始化表结构
|
||||
// init 初始化表结构(程序启动时自动创建/同步表)
|
||||
func init() {
|
||||
|
||||
cool.CreateTable(&MonsterRefresh{})
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user