init: 初始化仓库
This commit is contained in:
67
handler/scoresaber/score.go
Normal file
67
handler/scoresaber/score.go
Normal file
@@ -0,0 +1,67 @@
|
||||
package scoresaber
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
|
||||
"git.lxtend.com/qqbot/handler"
|
||||
"git.lxtend.com/qqbot/model"
|
||||
"git.lxtend.com/qqbot/service/scoresaber"
|
||||
)
|
||||
|
||||
var scoresaberInstance *scoresaber.SSQuery
|
||||
|
||||
func init() {
|
||||
scoresaberInstance = scoresaber.NewSSQuery()
|
||||
handler.RegisterHandler("查ss", getScore)
|
||||
handler.RegisterHandler("绑定ss", bindSS)
|
||||
handler.RegisterHandler("解绑ss", unbindSS)
|
||||
handler.RegisterHandler("最新ss", getRecentScore)
|
||||
}
|
||||
|
||||
func getScore(msg model.Message) (reply model.Reply) {
|
||||
return model.Reply{
|
||||
ReplyMsg: scoresaberInstance.GetScore(strconv.Itoa(int(msg.UserId))),
|
||||
ReferOriginMsg: true,
|
||||
FromMsg: msg,
|
||||
}
|
||||
}
|
||||
|
||||
func bindSS(msg model.Message) (reply model.Reply) {
|
||||
return model.Reply{
|
||||
ReplyMsg: scoresaberInstance.BindSS(strconv.Itoa(int(msg.UserId)), msg.Msg[len("绑定ss "):]),
|
||||
ReferOriginMsg: true,
|
||||
FromMsg: msg,
|
||||
}
|
||||
}
|
||||
|
||||
func unbindSS(msg model.Message) (reply model.Reply) {
|
||||
return model.Reply{
|
||||
ReplyMsg: scoresaberInstance.UnbindSS(strconv.Itoa(int(msg.UserId))),
|
||||
ReferOriginMsg: true,
|
||||
FromMsg: msg,
|
||||
}
|
||||
}
|
||||
|
||||
func getRecentScore(msg model.Message) (reply model.Reply) {
|
||||
count := 1
|
||||
if len(msg.Msg) > len("最新ss ") {
|
||||
var err error
|
||||
count, err = strconv.Atoi(msg.Msg[len("最新ss "):])
|
||||
if err != nil {
|
||||
return model.Reply{
|
||||
ReplyMsg: "",
|
||||
ReferOriginMsg: true,
|
||||
FromMsg: msg,
|
||||
}
|
||||
}
|
||||
}
|
||||
scoreMsg := ""
|
||||
for _, v := range scoresaber.ScoresManager.GetRecentScores(count) {
|
||||
scoreMsg += v.ToString() + "\n"
|
||||
}
|
||||
return model.Reply{
|
||||
ReplyMsg: scoreMsg,
|
||||
ReferOriginMsg: true,
|
||||
FromMsg: msg,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user