70 lines
1.6 KiB
Plaintext
70 lines
1.6 KiB
Plaintext
|
|
package managecenterModel
|
|||
|
|
|
|||
|
|
import "goutil/stringUtil"
|
|||
|
|
|
|||
|
|
// 大区对象
|
|||
|
|
type Area struct {
|
|||
|
|
// 大区Id
|
|||
|
|
AreaId int32 `json:"AreaId"`
|
|||
|
|
|
|||
|
|
//大区名字
|
|||
|
|
AreaName string `json:"AreaName"`
|
|||
|
|
|
|||
|
|
//客户端显示名字
|
|||
|
|
ClientName string `json:"ClientName"`
|
|||
|
|
|
|||
|
|
//区服范围
|
|||
|
|
ServerRange string `json:"ServerRange"`
|
|||
|
|
|
|||
|
|
//资源包下载地址
|
|||
|
|
ResourceURL string `json:"ResourceURL"`
|
|||
|
|
|
|||
|
|
//推荐服开关:0关闭,1:打开
|
|||
|
|
RecommendStitch int32 `json:"RecommendStitch"`
|
|||
|
|
|
|||
|
|
//推荐最大注册人数
|
|||
|
|
MaxRegistration int32 `json:"MaxRegistration"`
|
|||
|
|
|
|||
|
|
//限制注册的开关
|
|||
|
|
RegRestrictionSwitch int32 `json:"RegRestrictionSwitch"`
|
|||
|
|
|
|||
|
|
//玩家数量大于该数量,自动开服
|
|||
|
|
AutoOpenServerPlayers int32 `json:"AutoOpenServerPlayers"`
|
|||
|
|
|
|||
|
|
//大区维护状态(1:正常;2:维护)
|
|||
|
|
AreaMaintainStatus int32 `json:"AreaMaintainStatus"`
|
|||
|
|
|
|||
|
|
//维护消息
|
|||
|
|
AreaMaintainMsg string `json:"AreaMaintainMsg"`
|
|||
|
|
|
|||
|
|
//大区页签集合
|
|||
|
|
AreaLabelList []*AreaLabel `json:"AreaLabelList"`
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//
|
|||
|
|
//检测服务器是否在大区的区间范围
|
|||
|
|
func (this *Area) CheckServerIdIsInRange(serverId int32) (isVaild bool) {
|
|||
|
|
isVaild = false
|
|||
|
|
for _, serverRangeItem := range stringUtil.Split(this.ServerRange, []string{","}) {
|
|||
|
|
serverRange, _ := stringUtil.SplitToInt32Slice(serverRangeItem, "-")
|
|||
|
|
lower := serverRange[0]
|
|||
|
|
upper := serverRange[1]
|
|||
|
|
|
|||
|
|
//如果范围大小顺序不对,则换位
|
|||
|
|
if lower > upper {
|
|||
|
|
temp := lower
|
|||
|
|
lower = upper
|
|||
|
|
upper = temp
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//如果服务器在该大区的任意区服区间,则返回true
|
|||
|
|
if serverId >= lower && serverId <= upper {
|
|||
|
|
isVaild = true
|
|||
|
|
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
return
|
|||
|
|
}
|