airobot/lib/param.go
2022-12-13 08:13:44 +08:00

54 lines
1.0 KiB
Go

package lib
import (
"bytes"
"errors"
"fmt"
"strings"
"github.com/sirupsen/logrus"
"legu.airobot/storage"
)
type AIParam struct {
Config *storage.Config
Scenes []IScene
}
type SceneParam struct {
Name string
Desc string
}
func (a *AIParam) Check() error {
var errMsgs []string
if a.Config.Global.UserCountTotal == 0 {
errMsgs = append(errMsgs, "机器人数量至少1个")
}
if a.Config.Global.UserCount == 0 {
errMsgs = append(errMsgs, "每次压入的用户数至少是1")
}
if a.Config.Global.SId == "" {
errMsgs = append(errMsgs, "缺少区服ID")
}
if a.Config.Global.IntervalS < 0 {
errMsgs = append(errMsgs, "压入用户的间隔时间应该是0+")
}
var buf bytes.Buffer
buf.WriteString("AI 参数校验")
if errMsgs != nil {
errMsg := strings.Join(errMsgs, " ")
buf.WriteString(fmt.Sprintf("未通过 (%s)", errMsg))
logrus.Error(buf.String())
return errors.New(errMsg)
}
buf.WriteString(
fmt.Sprintf("通过 机器人数量:%v", a.Config.Global.UserCountTotal))
logrus.Debug(buf.String())
return nil
}