# Conflicts:
#	comm/imodule.go
#	modules/user/module.go
This commit is contained in:
wh_zcy 2022-12-29 17:38:49 +08:00
commit b2a6df889a
16 changed files with 1026 additions and 206 deletions

File diff suppressed because it is too large Load Diff

View File

@ -127,6 +127,7 @@ type (
BingoSetUserLv(session IUserSession, lv int32) error
// 增加体力
AddUserVit(session IUserSession, add int32) (code pb.ErrorCode)
BingoSetUserVipLv(session IUserSession, lv int32) error
}
//武器模块
IEquipment interface {
@ -142,6 +143,8 @@ type (
NewEquipment(uid, cid string) (code pb.ErrorCode, equip *pb.DB_Equipment)
//添加装备
AddEquipment(session IUserSession, equip *pb.DB_Equipment) (code pb.ErrorCode)
//出售装备
SellEquipments(session IUserSession, equs []string) (code pb.ErrorCode, atno []*pb.UserAtno)
}
IMainline interface {
ModifyMainlineDataByNanduID(uid string, nandu, id int32) (code pb.ErrorCode)

View File

@ -26,6 +26,8 @@ const (
game_item = "game_item.json"
game_vip = "game_vip.json"
game_equip = "game_equip.json" //装备信息表
)
///配置管理基础组件
@ -46,6 +48,7 @@ func (this *MCompConfigure) Init(service core.IService, module core.IModule, com
err = this.LoadConfigure(game_playerlv, cfg.NewGamePlayerlv)
err = this.LoadConfigure(game_facemod, cfg.NewGameFacemod)
err = this.LoadConfigure(game_signreset, cfg.NewGameSignReset)
err = this.LoadConfigure(game_equip, cfg.NewGameEquip)
//err = this.LoadConfigure(game_sign, cfg.NewGameSign)
err = this.LoadConfigure(game_item, cfg.NewGameItem)
err = this.LoadConfigure(game_vip, cfg.NewGameVip)
@ -332,3 +335,22 @@ func (this *MCompConfigure) GetVipConfigureData(lv int32) (item *cfg.GameVipData
return
}
func (this *MCompConfigure) GetItemConfigureByType(useType int32) (item []*cfg.GameItemData) {
if v, err := this.GetConfigure(game_item); err == nil {
for _, v1 := range v.(*cfg.GameItem).GetDataMap() {
if v1.Usetype == useType {
item = append(item, v1)
}
}
}
return
}
func (this *MCompConfigure) GetEquipmentConfigureById(equipmentId string) (configure *cfg.GameEquipData) {
if v, err := this.GetConfigure(game_equip); err == nil {
configure = v.(*cfg.GameEquip).Get(equipmentId)
return
}
return
}

View File

@ -65,7 +65,7 @@ func (this *apiComp) Wash(session comm.IUserSession, req *pb.EquipmentWashReq) (
Lv: equip.AdverbEntry[i].Lv,
AttrName: attrlibrarys[v].Attrkey,
BaseValue: attrlibrarys[v].Attrvar,
Value: attrlibrarys[v].Attrvar + int32(float64(attrlibrarys[v].Addition[equip.AdverbEntry[i].Lv-1])/1000.0*float64(attrlibrarys[v].Attrvar)),
Value: attrlibrarys[v].Attrvar + int32(float64(attrlibrarys[v].Addition[equip.AdverbEntry[i].Lv-1])/1000.0*float64(attrlibrarys[v].AttrvarCorrect)),
}
}
this.module.ModuleRtask.SendToRtask(session, comm.Rtype95, 1)

View File

@ -47,7 +47,7 @@ func (this *apiComp) WashConfirm(session comm.IUserSession, req *pb.EquipmentWas
Lv: v.Lv,
AttrName: attrlibrary.Attrkey,
BaseValue: attrlibrary.Attrvar,
Value: attrlibrary.Attrvar + int32(float64(attrlibrary.Addition[equip.AdverbEntry[i].Lv-1])/1000.0*float64(attrlibrary.Attrvar)),
Value: attrlibrary.Attrvar + int32(float64(attrlibrary.Addition[equip.AdverbEntry[i].Lv-1])/1000.0*float64(attrlibrary.AttrvarCorrect)),
}
}
if err = this.module.modelEquipment.ChangeList(session.GetUserId(), equip.Id, map[string]interface{}{

View File

@ -326,7 +326,12 @@ func (this *modelEquipmentComp) newEquipment(uid string, conf *cfg.GameEquipData
func (this *modelEquipmentComp) upgradeEquipment(equipment *pb.DB_Equipment, equip *cfg.GameEquipData, intensify *cfg.GameEquipIntensifyData) (err error) {
equipment.Lv++
equipment.MainEntry.Lv++
equipment.MainEntry.Value = equipment.MainEntry.BaseValue + int32(float64(equipment.MainEntry.BaseValue)*float64(intensify.Bonus)/1000.0)
var mainconfigure *cfg.GameEquipAttrlibraryData
if mainconfigure, err = this.module.configure.GetEquipmentAttrlibraryConfigureByKey(equipment.MainEntry.Id); err != nil {
this.module.Errorf("升级服务错误 读取主词条配置错误!")
return
}
equipment.MainEntry.Value = equipment.MainEntry.BaseValue + int32(float64(mainconfigure.AttrvarCorrect)*float64(intensify.Bonus)/1000.0)
if !intensify.Activation { //不触发副词条变化
return
}

View File

@ -7,6 +7,7 @@ import (
"go_dreamfactory/modules"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"math"
"github.com/go-redis/redis/v8"
)
@ -175,6 +176,59 @@ func (this *Equipment) AddEquipment(session comm.IUserSession, equip *pb.DB_Equi
return
}
///出售装备
func (this *Equipment) SellEquipments(session comm.IUserSession, equs []string) (code pb.ErrorCode, atno []*pb.UserAtno) {
var (
err error
equipments []*pb.DB_Equipment
confs []*cfg.GameEquipData
sale [][]*cfg.Gameatn
)
if equipments, err = this.modelEquipment.QueryUserEquipmentsByIds(session.GetUserId(), equs); err != nil {
code = pb.ErrorCode_ReqParameterError
return
}
confs = make([]*cfg.GameEquipData, len(equipments))
sale = make([][]*cfg.Gameatn, len(equipments))
for i, v := range equipments {
if v.HeroId != "" || v.Islock {
code = pb.ErrorCode_EquipmentNoCanSell
this.Errorf("NoCanSell %v", v)
return
}
if confs[i], err = this.configure.GetEquipmentConfigureById(v.CId); err != nil {
this.Errorln(err)
code = pb.ErrorCode_EquipmentOnFoundEquipment
return
}
if confs[i].Sale == nil || len(confs[i].Sale) == 0 {
code = pb.ErrorCode_EquipmentNoCanSell
return
}
sale[i] = make([]*cfg.Gameatn, len(confs[i].Sale))
for n, s := range confs[i].Sale {
_s := &cfg.Gameatn{
A: s.A,
T: s.T,
N: s.N + int32(math.Floor(float64(s.N*(v.Lv-1))*float64(confs[i].Salecoef))),
}
sale[i][n] = _s
}
}
sales := make([]*cfg.Gameatn, 0)
for _, v := range sale {
sales = append(sales, v...)
}
if code, atno = this.DispenseAtno(session, sales, true); code != pb.ErrorCode_Success {
return
}
if code = this.DelEquipments(session, equs, true); code != pb.ErrorCode_Success {
return
}
return
}
//Evens--------------------------------------------------------------------------------------------------------------------------------
//推送道具变化消息
func (this *Equipment) equipmentsChangePush(session comm.IUserSession, items []*pb.DB_Equipment) (err error) {

View File

@ -37,6 +37,8 @@ import (
20bingo:cleanitem
21bingo:allequip
21bingo:chat,1
22bingo:itemtype,1,1 // 获取某种类型所有道具(道具类型,数量)
18bingo:viplv,50
*/
//参数校验
func (this *apiComp) CmdCheck(session comm.IUserSession, req *pb.GMCmdReq) (code pb.ErrorCode) {

View File

@ -425,6 +425,50 @@ func (this *GM) CreateCmd(session comm.IUserSession, cmd string) (code pb.ErrorC
log.Field{Key: "uid", Value: session.GetUserId()},
log.Field{Key: "0", Value: datas[0]},
)
} else if len(datas) == 3 && (datas[0] == "itemtype") {
num1, err := strconv.Atoi(datas[1])
if err != nil {
code = pb.ErrorCode_ReqParameterError
return
}
num2, err := strconv.Atoi(datas[2])
if err != nil {
code = pb.ErrorCode_ReqParameterError
return
}
_data := this.configure.GetItemConfigureByType(int32(num1))
for _, v := range _data {
res := &cfg.Gameatn{
A: "item",
T: v.Id,
N: int32(num2),
}
this.DispenseRes(session, []*cfg.Gameatn{res}, true)
}
this.Debug("使用bingo命令:uid = %s ",
log.Field{Key: "uid", Value: session.GetUserId()},
log.Field{Key: "0", Value: datas[0]},
log.Field{Key: "1", Value: datas[1]},
log.Field{Key: "2", Value: datas[2]},
)
} else if len(datas) == 2 && (datas[0] == "viplv") { // 玩家等级
module1, err := this.service.GetModule(comm.ModuleUser)
if err != nil {
return
}
num, err := strconv.Atoi(datas[1])
if err != nil {
code = pb.ErrorCode_ReqParameterError
return
}
if err = module1.(comm.IUser).BingoSetUserVipLv(session, int32(num)); err == nil {
code = pb.ErrorCode_Success
}
this.Debug("使用bingo命令:uid = %s ",
log.Field{Key: "uid", Value: session.GetUserId()},
log.Field{Key: "0", Value: datas[0]},
log.Field{Key: "N", Value: int32(num)},
)
}
}
}

View File

@ -159,6 +159,23 @@ func (this *apiComp) Useitem(session comm.IUserSession, req *pb.ItemsUseItemReq)
if code = this.module.DispenseRes(session, sale, true); code != pb.ErrorCode_Success {
return
}
case 11: //药剂使用
sale := make([]*cfg.Gameatn, 0, len(prop))
for _, v := range itemcf.DecomposeDeplete {
sale = append(sale, &cfg.Gameatn{
A: v.A,
T: v.T,
N: v.N * int32(req.Amount),
})
}
if code = this.module.AddItemforGrid(session, req.GridId, -1*int32(req.Amount), true); code != pb.ErrorCode_Success {
return
}
if code = this.module.DispenseRes(session, sale, true); code != pb.ErrorCode_Success {
return
}
break
default:
code = pb.ErrorCode_ItemsUseNotSupported
return

View File

@ -710,3 +710,24 @@ func (this *User) AddUserVit(session comm.IUserSession, add int32) (code pb.Erro
}
return
}
func (this *User) BingoSetUserVipLv(session comm.IUserSession, lv int32) error {
if lv <= 0 {
return comm.NewCustomError(pb.ErrorCode_ReqParameterError)
}
update := map[string]interface{}{
"vip": lv,
"vipexp": 0,
}
if err := this.modelUser.Change(session.GetUserId(), update); err == nil {
if err := session.SendMsg(string(this.GetType()), UserSubTypeLvChangedPush,
&pb.UserVipChangedPush{Uid: session.GetUserId(), VipExp: 0, VipLv: lv}); err != nil {
this.Error("Bingo玩家等级变化 UserVipChangedPush推送失败",
log.Field{Key: "uid", Value: session.GetUserId()},
log.Field{Key: "vipexp", Value: 0},
log.Field{Key: "viplv", Value: lv},
)
}
}
return nil
}

View File

@ -23,6 +23,7 @@ type apiComp struct {
module *Viking
friend comm.IFriend
chat comm.IChat
equip comm.IEquipment
}
//组件初始化接口
@ -46,5 +47,10 @@ func (this *apiComp) Start() (err error) {
return
}
this.chat = module.(comm.IChat)
if module, err = this.service.GetModule(comm.ModuleEquipment); err != nil {
return
}
this.equip = module.(comm.IEquipment)
return
}

View File

@ -24,12 +24,12 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
var (
mapData map[string]interface{}
reward []*cfg.Gameatn
asset []*pb.UserAssets
bWin bool // 战斗是否胜利
bWin bool // 战斗是否胜利
atno []*pb.UserAtno // atno 类型
del []string // 自动出售的装备
)
mapData = make(map[string]interface{}, 0)
reward = make([]*cfg.Gameatn, 0)
asset = make([]*pb.UserAssets, 0)
code = this.ChallengeOverCheck(session, req)
if code != pb.ErrorCode_Success {
return // 参数校验失败直接返回
@ -96,34 +96,34 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
if code = this.module.DispenseRes(session, vikingCfg.Firstprize, true); code != pb.ErrorCode_Success {
return
}
for _, v := range vikingCfg.Firstprize {
asset = append(asset, &pb.UserAssets{
A: v.A,
T: v.T,
N: v.N,
})
}
}
this.module.CheckRank(session.GetUserId(), req.BossId, req.Difficulty, viking, req.Report)
reward = this.module.configure.GetDropReward(vikingCfg.Drop) // 获取掉落奖励
if code = this.module.DispenseRes(session, reward, true); code != pb.ErrorCode_Success {
if code, atno = this.module.DispenseAtno(session, reward, true); code != pb.ErrorCode_Success {
return
}
for _, v := range reward {
asset = append(asset, &pb.UserAssets{
A: v.A,
T: v.T,
N: v.N,
})
}
for _, v := range req.Star {
for _, v1 := range atno {
if v1.A == "equp" {
cfg := this.configure.GetEquipmentConfigureById(v1.T)
if cfg.Star == v {
del = append(del, v1.O)
}
}
}
}
if len(del) > 0 { // 自动出售
this.equip.SellEquipments(session, del)
}
mapData["bossTime"] = viking.BossTime // 更新时间
code = this.module.ModifyVikingData(session.GetUserId(), mapData)
session.SendMsg(string(this.module.GetType()), VikingChallengeOverResp, &pb.VikingChallengeOverResp{
Data: viking,
Asset: asset,
Asset: atno,
Sell: del,
})
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil {
this.chat.SendSysChatToWorld(comm.ChatSystem14, nil, req.BossId, req.Difficulty, user.Name)

View File

@ -369,61 +369,6 @@ func (x *DBHero) GetHoroscopeProperty() map[string]int32 {
return nil
}
type Floor struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
H4 int32 `protobuf:"varint,1,opt,name=h4,proto3" json:"h4"` // 4星次数
H5 int32 `protobuf:"varint,2,opt,name=h5,proto3" json:"h5"` // 5星次数
}
func (x *Floor) Reset() {
*x = Floor{}
if protoimpl.UnsafeEnabled {
mi := &file_hero_hero_db_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Floor) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Floor) ProtoMessage() {}
func (x *Floor) ProtoReflect() protoreflect.Message {
mi := &file_hero_hero_db_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Floor.ProtoReflect.Descriptor instead.
func (*Floor) Descriptor() ([]byte, []int) {
return file_hero_hero_db_proto_rawDescGZIP(), []int{1}
}
func (x *Floor) GetH4() int32 {
if x != nil {
return x.H4
}
return 0
}
func (x *Floor) GetH5() int32 {
if x != nil {
return x.H5
}
return 0
}
//英雄扩展数据
type DBHeroRecord struct {
state protoimpl.MessageState
@ -447,7 +392,7 @@ type DBHeroRecord struct {
func (x *DBHeroRecord) Reset() {
*x = DBHeroRecord{}
if protoimpl.UnsafeEnabled {
mi := &file_hero_hero_db_proto_msgTypes[2]
mi := &file_hero_hero_db_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@ -460,7 +405,7 @@ func (x *DBHeroRecord) String() string {
func (*DBHeroRecord) ProtoMessage() {}
func (x *DBHeroRecord) ProtoReflect() protoreflect.Message {
mi := &file_hero_hero_db_proto_msgTypes[2]
mi := &file_hero_hero_db_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@ -473,7 +418,7 @@ func (x *DBHeroRecord) ProtoReflect() protoreflect.Message {
// Deprecated: Use DBHeroRecord.ProtoReflect.Descriptor instead.
func (*DBHeroRecord) Descriptor() ([]byte, []int) {
return file_hero_hero_db_proto_rawDescGZIP(), []int{2}
return file_hero_hero_db_proto_rawDescGZIP(), []int{1}
}
func (x *DBHeroRecord) GetId() string {
@ -575,7 +520,7 @@ type DBHeroTalent struct {
func (x *DBHeroTalent) Reset() {
*x = DBHeroTalent{}
if protoimpl.UnsafeEnabled {
mi := &file_hero_hero_db_proto_msgTypes[3]
mi := &file_hero_hero_db_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@ -588,7 +533,7 @@ func (x *DBHeroTalent) String() string {
func (*DBHeroTalent) ProtoMessage() {}
func (x *DBHeroTalent) ProtoReflect() protoreflect.Message {
mi := &file_hero_hero_db_proto_msgTypes[3]
mi := &file_hero_hero_db_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@ -601,7 +546,7 @@ func (x *DBHeroTalent) ProtoReflect() protoreflect.Message {
// Deprecated: Use DBHeroTalent.ProtoReflect.Descriptor instead.
func (*DBHeroTalent) Descriptor() ([]byte, []int) {
return file_hero_hero_db_proto_rawDescGZIP(), []int{3}
return file_hero_hero_db_proto_rawDescGZIP(), []int{2}
}
func (x *DBHeroTalent) GetId() string {
@ -740,56 +685,54 @@ var file_hero_hero_db_proto_rawDesc = []byte{
0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x27, 0x0a, 0x05, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x12,
0x0e, 0x0a, 0x02, 0x68, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x68, 0x34, 0x12,
0x0e, 0x0a, 0x02, 0x68, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x68, 0x35, 0x22,
0xf0, 0x03, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75,
0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28,
0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72,
0x35, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x12, 0x14,
0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6d,
0x74, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18,
0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65,
0x63, 0x6f, 0x72, 0x64, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a,
0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x18, 0x08, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x1c, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
0x2e, 0x53, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
0x09, 0x73, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f,
0x74, 0x61, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a,
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61,
0x79, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x61,
0x79, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79,
0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16,
0x0a, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x1a, 0x3c, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74,
0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72,
0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
0x38, 0x01, 0x22, 0xb6, 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c,
0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a,
0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e,
0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c,
0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74,
0x1a, 0x39, 0x0a, 0x0b, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xf0, 0x03, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72,
0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61,
0x72, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x12,
0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x73, 0x74, 0x61, 0x72, 0x35, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05,
0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64,
0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09,
0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x09, 0x63, 0x6f, 0x6e,
0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x44,
0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x43, 0x6f, 0x6e, 0x64,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65,
0x72, 0x6f, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72,
0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72,
0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72,
0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x63, 0x6f, 0x75, 0x6e,
0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x79, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20,
0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x61, 0x79, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a,
0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f,
0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x18,
0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62, 0x75, 0x79, 0x1a, 0x3c, 0x0a,
0x0e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a, 0x2f, 0x0a, 0x08, 0x48,
0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54,
0x79, 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f,
0x54, 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04,
0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x53,
0x74, 0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb6, 0x01, 0x0a, 0x0c, 0x44, 0x42,
0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06,
0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65,
0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x18, 0x04,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c,
0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x54, 0x61, 0x6c, 0x65, 0x6e,
0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
0x38, 0x01, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f,
0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12,
0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46,
0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (
@ -805,39 +748,38 @@ func file_hero_hero_db_proto_rawDescGZIP() []byte {
}
var file_hero_hero_db_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_hero_hero_db_proto_goTypes = []interface{}{
(HeroType)(0), // 0: HeroType
(*DBHero)(nil), // 1: DBHero
(*Floor)(nil), // 2: Floor
(*DBHeroRecord)(nil), // 3: DBHeroRecord
(*DBHeroTalent)(nil), // 4: DBHeroTalent
nil, // 5: DBHero.PropertyEntry
nil, // 6: DBHero.AddPropertyEntry
nil, // 7: DBHero.EnergyEntry
nil, // 8: DBHero.EnergyPropertyEntry
nil, // 9: DBHero.JuexPropertyEntry
nil, // 10: DBHero.TalentPropertyEntry
nil, // 11: DBHero.HoroscopePropertyEntry
nil, // 12: DBHeroRecord.ConditionEntry
nil, // 13: DBHeroRecord.Star5HeroEntry
nil, // 14: DBHeroTalent.TalentEntry
(*SkillData)(nil), // 15: SkillData
(*DBHeroRecord)(nil), // 2: DBHeroRecord
(*DBHeroTalent)(nil), // 3: DBHeroTalent
nil, // 4: DBHero.PropertyEntry
nil, // 5: DBHero.AddPropertyEntry
nil, // 6: DBHero.EnergyEntry
nil, // 7: DBHero.EnergyPropertyEntry
nil, // 8: DBHero.JuexPropertyEntry
nil, // 9: DBHero.TalentPropertyEntry
nil, // 10: DBHero.HoroscopePropertyEntry
nil, // 11: DBHeroRecord.ConditionEntry
nil, // 12: DBHeroRecord.Star5HeroEntry
nil, // 13: DBHeroTalent.TalentEntry
(*SkillData)(nil), // 14: SkillData
}
var file_hero_hero_db_proto_depIdxs = []int32{
15, // 0: DBHero.normalSkill:type_name -> SkillData
5, // 1: DBHero.property:type_name -> DBHero.PropertyEntry
6, // 2: DBHero.addProperty:type_name -> DBHero.AddPropertyEntry
7, // 3: DBHero.energy:type_name -> DBHero.EnergyEntry
8, // 4: DBHero.energyProperty:type_name -> DBHero.EnergyPropertyEntry
9, // 5: DBHero.juexProperty:type_name -> DBHero.JuexPropertyEntry
14, // 0: DBHero.normalSkill:type_name -> SkillData
4, // 1: DBHero.property:type_name -> DBHero.PropertyEntry
5, // 2: DBHero.addProperty:type_name -> DBHero.AddPropertyEntry
6, // 3: DBHero.energy:type_name -> DBHero.EnergyEntry
7, // 4: DBHero.energyProperty:type_name -> DBHero.EnergyPropertyEntry
8, // 5: DBHero.juexProperty:type_name -> DBHero.JuexPropertyEntry
0, // 6: DBHero.status:type_name -> HeroType
10, // 7: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry
15, // 8: DBHero.equipSkill:type_name -> SkillData
11, // 9: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry
12, // 10: DBHeroRecord.condition:type_name -> DBHeroRecord.ConditionEntry
13, // 11: DBHeroRecord.star5Hero:type_name -> DBHeroRecord.Star5HeroEntry
14, // 12: DBHeroTalent.talent:type_name -> DBHeroTalent.TalentEntry
9, // 7: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry
14, // 8: DBHero.equipSkill:type_name -> SkillData
10, // 9: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry
11, // 10: DBHeroRecord.condition:type_name -> DBHeroRecord.ConditionEntry
12, // 11: DBHeroRecord.star5Hero:type_name -> DBHeroRecord.Star5HeroEntry
13, // 12: DBHeroTalent.talent:type_name -> DBHeroTalent.TalentEntry
13, // [13:13] is the sub-list for method output_type
13, // [13:13] is the sub-list for method input_type
13, // [13:13] is the sub-list for extension type_name
@ -865,18 +807,6 @@ func file_hero_hero_db_proto_init() {
}
}
file_hero_hero_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Floor); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_hero_hero_db_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DBHeroRecord); i {
case 0:
return &v.state
@ -888,7 +818,7 @@ func file_hero_hero_db_proto_init() {
return nil
}
}
file_hero_hero_db_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
file_hero_hero_db_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DBHeroTalent); i {
case 0:
return &v.state
@ -907,7 +837,7 @@ func file_hero_hero_db_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_hero_hero_db_proto_rawDesc,
NumEnums: 1,
NumMessages: 14,
NumMessages: 13,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -240,6 +240,7 @@ type VikingChallengeOverReq struct {
BossId int32 `protobuf:"varint,1,opt,name=bossId,proto3" json:"bossId"` // boos 类型
Difficulty int32 `protobuf:"varint,2,opt,name=difficulty,proto3" json:"difficulty"` // 难度
Report *BattleReport `protobuf:"bytes,3,opt,name=report,proto3" json:"report"` //战报
Star []int32 `protobuf:"varint,4,rep,packed,name=star,proto3" json:"star"` // 自动出售装备的星级
}
func (x *VikingChallengeOverReq) Reset() {
@ -295,14 +296,22 @@ func (x *VikingChallengeOverReq) GetReport() *BattleReport {
return nil
}
func (x *VikingChallengeOverReq) GetStar() []int32 {
if x != nil {
return x.Star
}
return nil
}
// 客户端通知服务器打赢了
type VikingChallengeOverResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data *DBViking `protobuf:"bytes,1,opt,name=data,proto3" json:"data"`
Asset []*UserAssets `protobuf:"bytes,2,rep,name=asset,proto3" json:"asset"` // GameRe // 推送atn
Data *DBViking `protobuf:"bytes,1,opt,name=data,proto3" json:"data"`
Asset []*UserAtno `protobuf:"bytes,2,rep,name=asset,proto3" json:"asset"` // 推送atno
Sell []string `protobuf:"bytes,3,rep,name=sell,proto3" json:"sell"` // 自动出售的装备
}
func (x *VikingChallengeOverResp) Reset() {
@ -344,13 +353,20 @@ func (x *VikingChallengeOverResp) GetData() *DBViking {
return nil
}
func (x *VikingChallengeOverResp) GetAsset() []*UserAssets {
func (x *VikingChallengeOverResp) GetAsset() []*UserAtno {
if x != nil {
return x.Asset
}
return nil
}
func (x *VikingChallengeOverResp) GetSell() []string {
if x != nil {
return x.Sell
}
return nil
}
// 购买
type VikingBuyReq struct {
state protoimpl.MessageState
@ -576,35 +592,37 @@ var file_viking_viking_msg_proto_rawDesc = []byte{
0x0a, 0x06, 0x62, 0x6f, 0x73, 0x73, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
0x62, 0x6f, 0x73, 0x73, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63,
0x75, 0x6c, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x69, 0x66, 0x66,
0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x22, 0x77, 0x0a, 0x16, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67,
0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71,
0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
0x52, 0x06, 0x62, 0x6f, 0x73, 0x73, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66, 0x66,
0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x69,
0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f,
0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c,
0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22,
0x5b, 0x0a, 0x17, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e,
0x67, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61,
0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x22, 0x8b, 0x01, 0x0a, 0x16, 0x56, 0x69, 0x6b, 0x69, 0x6e,
0x67, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x52, 0x65,
0x71, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x73, 0x73, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x05, 0x52, 0x06, 0x62, 0x6f, 0x73, 0x73, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x66,
0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64,
0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70,
0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74,
0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x04,
0x73, 0x74, 0x61, 0x72, 0x22, 0x6d, 0x0a, 0x17, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x68,
0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12,
0x1d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e,
0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1f,
0x0a, 0x05, 0x61, 0x73, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e,
0x55, 0x73, 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x05, 0x61, 0x73, 0x73, 0x65, 0x74, 0x12,
0x12, 0x0a, 0x04, 0x73, 0x65, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x73,
0x65, 0x6c, 0x6c, 0x22, 0x24, 0x0a, 0x0c, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79,
0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2e, 0x0a, 0x0d, 0x56, 0x69, 0x6b,
0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61,
0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b,
0x69, 0x6e, 0x67, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x05, 0x61, 0x73, 0x73,
0x65, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41,
0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x05, 0x61, 0x73, 0x73, 0x65, 0x74, 0x22, 0x24, 0x0a, 0x0c,
0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x22, 0x2e, 0x0a, 0x0d, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x52,
0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x09, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x04, 0x64, 0x61,
0x74, 0x61, 0x22, 0x47, 0x0a, 0x11, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b,
0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x73, 0x54,
0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x73, 0x54,
0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20,
0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, 0x39, 0x0a, 0x12, 0x56,
0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73,
0x70, 0x12, 0x23, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x0d, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x52,
0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x69, 0x6e, 0x67, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x47, 0x0a, 0x11, 0x56, 0x69, 0x6b,
0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1a,
0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
0x52, 0x08, 0x62, 0x6f, 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72,
0x69, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x72, 0x69, 0x65,
0x6e, 0x64, 0x22, 0x39, 0x0a, 0x12, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b,
0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x23, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x6b,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69,
0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x42, 0x06, 0x5a,
0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -635,7 +653,7 @@ var file_viking_viking_msg_proto_goTypes = []interface{}{
(*BattleFormation)(nil), // 11: BattleFormation
(*BattleInfo)(nil), // 12: BattleInfo
(*BattleReport)(nil), // 13: BattleReport
(*UserAssets)(nil), // 14: UserAssets
(*UserAtno)(nil), // 14: UserAtno
(*DBVikingRank)(nil), // 15: DBVikingRank
}
var file_viking_viking_msg_proto_depIdxs = []int32{
@ -644,7 +662,7 @@ var file_viking_viking_msg_proto_depIdxs = []int32{
12, // 2: VikingChallengeResp.info:type_name -> BattleInfo
13, // 3: VikingChallengeOverReq.report:type_name -> BattleReport
10, // 4: VikingChallengeOverResp.data:type_name -> DBViking
14, // 5: VikingChallengeOverResp.asset:type_name -> UserAssets
14, // 5: VikingChallengeOverResp.asset:type_name -> UserAtno
10, // 6: VikingBuyResp.data:type_name -> DBViking
15, // 7: VikingRankListResp.ranks:type_name -> DBVikingRank
8, // [8:8] is the sub-list for method output_type

View File

@ -15,6 +15,7 @@ type GameEquipAttrlibraryData struct {
Libraryid int32
Attrkey string
Attrvar int32
AttrvarCorrect int32
Probability int32
Addition []int32
}
@ -30,6 +31,7 @@ func (_v *GameEquipAttrlibraryData)Deserialize(_buf map[string]interface{}) (err
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["libraryid"].(float64); !_ok_ { err = errors.New("libraryid error"); return }; _v.Libraryid = int32(_tempNum_) }
{ var _ok_ bool; if _v.Attrkey, _ok_ = _buf["attrkey"].(string); !_ok_ { err = errors.New("attrkey error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["attrvar"].(float64); !_ok_ { err = errors.New("attrvar error"); return }; _v.Attrvar = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["attrvar_correct"].(float64); !_ok_ { err = errors.New("attrvar_correct error"); return }; _v.AttrvarCorrect = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["probability"].(float64); !_ok_ { err = errors.New("probability error"); return }; _v.Probability = int32(_tempNum_) }
{
var _arr_ []interface{}