2025-08-16 02:39:25 +00:00
|
|
|
|
package model
|
|
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
|
"blazing/cool"
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
const (
|
2025-11-27 01:23:12 +08:00
|
|
|
|
TableNameMonsterRefresh = "monster_refresh" // 怪物刷新规则表(地图-精灵等级-刷新脚本配置)
|
2025-08-16 02:39:25 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
2025-11-27 01:23:12 +08:00
|
|
|
|
// MonsterRefresh 怪物刷新规则模型(对应前端配置的地图/精灵/等级/脚本配置)
|
2025-08-16 02:39:25 +00:00
|
|
|
|
type MonsterRefresh struct {
|
2025-11-27 01:23:12 +08:00
|
|
|
|
*cool.Model // 嵌入通用Model(包含ID/创建时间/更新时间等通用字段)
|
|
|
|
|
|
|
|
|
|
|
|
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"`
|
|
|
|
|
|
|
|
|
|
|
|
// 以下为原模型保留的异色相关字段(前端暂未配置,如需移除可删除)
|
|
|
|
|
|
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的显示异色效果(如需保留则完善,无需则删除)
|
|
|
|
|
|
}
|
2025-08-30 21:59:52 +08:00
|
|
|
|
|
2025-11-27 01:23:12 +08:00
|
|
|
|
type MonsterRefreshEX struct {
|
|
|
|
|
|
MonsterRefresh
|
|
|
|
|
|
MonsterID []uint32 `json:"monster_id"`
|
|
|
|
|
|
ShinyID []uint32 `json:"shiny_id"`
|
2025-08-16 02:39:25 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-11-27 01:23:12 +08:00
|
|
|
|
// TableName 指定MonsterRefresh对应的数据库表名
|
2025-08-16 02:39:25 +00:00
|
|
|
|
func (*MonsterRefresh) TableName() string {
|
|
|
|
|
|
return TableNameMonsterRefresh
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-11-27 01:23:12 +08:00
|
|
|
|
// GroupName 指定表所属的分组(保持和参考示例一致)
|
2025-08-16 02:39:25 +00:00
|
|
|
|
func (*MonsterRefresh) GroupName() string {
|
|
|
|
|
|
return "default"
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-11-27 01:23:12 +08:00
|
|
|
|
// NewMonsterRefresh 创建一个新的MonsterRefresh实例(初始化通用Model)
|
2025-08-16 02:39:25 +00:00
|
|
|
|
func NewMonsterRefresh() *MonsterRefresh {
|
|
|
|
|
|
return &MonsterRefresh{
|
|
|
|
|
|
Model: cool.NewModel(),
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-11-27 01:23:12 +08:00
|
|
|
|
// init 初始化表结构(程序启动时自动创建/同步表)
|
2025-08-16 02:39:25 +00:00
|
|
|
|
func init() {
|
|
|
|
|
|
cool.CreateTable(&MonsterRefresh{})
|
|
|
|
|
|
}
|