56 lines
1.0 KiB
Go
56 lines
1.0 KiB
Go
package busi
|
|
|
|
import (
|
|
"time"
|
|
|
|
"legu.airobot/lib"
|
|
"legu.airobot/pb"
|
|
)
|
|
|
|
//商店场景
|
|
|
|
var _ lib.IScene = (*ShopScene)(nil)
|
|
|
|
type ShopScene struct {
|
|
lib.Action
|
|
}
|
|
|
|
func (f *ShopScene) Info() lib.SceneInfo {
|
|
return lib.SceneInfo{
|
|
Name: "商店",
|
|
Desc: "测试商店购买",
|
|
}
|
|
}
|
|
|
|
func (f *ShopScene) Run(ai lib.IRobot) (err error) {
|
|
var (
|
|
code pb.ErrorCode
|
|
shops *pb.ShopGetListResp = &pb.ShopGetListResp{}
|
|
)
|
|
if code = ai.SendMsg("gm", "cmd", &pb.GMCmdReq{
|
|
Cmod: "bingo:attr,gold,100000",
|
|
}, &pb.GMCmdResp{}); code != pb.ErrorCode_Success {
|
|
ai.Stop()
|
|
}
|
|
|
|
if code = ai.SendMsg("shop", "getlist", &pb.ShopGetListReq{
|
|
SType: pb.ShopType_GoldShop,
|
|
IsManualRefresh: true,
|
|
}, shops); code != pb.ErrorCode_Success {
|
|
ai.Stop()
|
|
return
|
|
}
|
|
for _, v := range shops.Goods {
|
|
if v.LeftBuyNum > 0 {
|
|
ai.SendMsg("shop", "buy", &pb.ShopBuyReq{
|
|
ShopType: pb.ShopType_GoldShop,
|
|
GoodsId: v.GoodsId,
|
|
BuyNum: 1,
|
|
}, &pb.ShopBuyResp{})
|
|
Sleep(time.Second*0, time.Second*1)
|
|
break
|
|
}
|
|
}
|
|
return nil
|
|
}
|