diff --git a/bin/json/game_smithy.json b/bin/json/game_smithy.json index 2b8d357d7..385cbd52e 100644 --- a/bin/json/game_smithy.json +++ b/bin/json/game_smithy.json @@ -11,12 +11,7 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 5 - }, - { - "a": "item", - "t": "10013", + "t": "120001", "n": 1 } ], @@ -59,12 +54,7 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 5 - }, - { - "a": "item", - "t": "10013", + "t": "120001", "n": 1 } ], @@ -89,13 +79,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 10 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 2 } ], "probability": 100, @@ -137,13 +122,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 10 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 2 } ], "desk": "", @@ -167,13 +147,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 15 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 3 } ], "probability": 80, @@ -215,13 +190,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 15 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 3 } ], "desk": "", @@ -245,13 +215,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 20 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 4 } ], "probability": 80, @@ -293,13 +258,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 20 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 4 } ], "desk": "", @@ -323,13 +283,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 25 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 5 } ], "probability": 80, @@ -371,13 +326,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 25 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 5 } ], "desk": "", @@ -401,13 +351,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 30 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 6 } ], "probability": 80, @@ -449,13 +394,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 30 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 6 } ], "desk": "", @@ -479,13 +419,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 35 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 7 } ], "probability": 80, @@ -527,13 +462,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 35 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 7 } ], "desk": "", @@ -557,13 +487,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 40 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 8 } ], "probability": 80, @@ -605,13 +530,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 40 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 8 } ], "desk": "", @@ -635,13 +555,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 45 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 9 } ], "probability": 80, @@ -683,13 +598,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 45 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 9 } ], "desk": "", @@ -750,13 +660,8 @@ "orderneed": [ { "a": "item", - "t": "50001", - "n": 50 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 10 } ], "desk": "", @@ -780,12 +685,7 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 5 - }, - { - "a": "item", - "t": "10013", + "t": "120001", "n": 1 } ], @@ -828,12 +728,7 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 5 - }, - { - "a": "item", - "t": "10013", + "t": "120001", "n": 1 } ], @@ -858,13 +753,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 10 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 2 } ], "probability": 80, @@ -906,13 +796,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 10 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 2 } ], "desk": "", @@ -936,13 +821,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 15 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 3 } ], "probability": 80, @@ -984,13 +864,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 15 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 3 } ], "desk": "", @@ -1014,13 +889,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 20 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 4 } ], "probability": 80, @@ -1062,13 +932,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 20 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 4 } ], "desk": "", @@ -1092,13 +957,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 25 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 5 } ], "probability": 80, @@ -1140,13 +1000,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 25 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 5 } ], "desk": "", @@ -1170,13 +1025,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 30 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 6 } ], "probability": 80, @@ -1218,13 +1068,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 30 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 6 } ], "desk": "", @@ -1248,13 +1093,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 35 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 7 } ], "probability": 80, @@ -1296,13 +1136,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 35 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 7 } ], "desk": "", @@ -1326,13 +1161,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 40 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 8 } ], "probability": 80, @@ -1374,13 +1204,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 40 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 8 } ], "desk": "", @@ -1404,13 +1229,8 @@ "starupneed": [ { "a": "item", - "t": "50002", - "n": 45 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 9 } ], "probability": 80, @@ -1452,13 +1272,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 45 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 9 } ], "desk": "", @@ -1519,13 +1334,8 @@ "orderneed": [ { "a": "item", - "t": "50002", - "n": 50 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 10 } ], "desk": "", @@ -1549,12 +1359,7 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 5 - }, - { - "a": "item", - "t": "10013", + "t": "120001", "n": 1 } ], @@ -1597,12 +1402,7 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 5 - }, - { - "a": "item", - "t": "10013", + "t": "120001", "n": 1 } ], @@ -1627,13 +1427,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 10 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 2 } ], "probability": 80, @@ -1675,13 +1470,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 10 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 2 } ], "desk": "", @@ -1705,13 +1495,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 15 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 3 } ], "probability": 80, @@ -1753,13 +1538,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 15 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 3 } ], "desk": "", @@ -1783,13 +1563,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 20 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 4 } ], "probability": 80, @@ -1831,13 +1606,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 20 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 4 } ], "desk": "", @@ -1861,13 +1631,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 25 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 5 } ], "probability": 80, @@ -1909,13 +1674,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 25 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 5 } ], "desk": "", @@ -1939,13 +1699,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 30 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 6 } ], "probability": 80, @@ -1987,13 +1742,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 30 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 6 } ], "desk": "", @@ -2017,13 +1767,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 35 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 7 } ], "probability": 80, @@ -2065,13 +1810,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 35 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 7 } ], "desk": "", @@ -2095,13 +1835,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 40 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 8 } ], "probability": 80, @@ -2143,13 +1878,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 40 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 8 } ], "desk": "", @@ -2173,13 +1903,8 @@ "starupneed": [ { "a": "item", - "t": "50003", - "n": 45 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 9 } ], "probability": 80, @@ -2221,13 +1946,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 45 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 9 } ], "desk": "", @@ -2288,13 +2008,8 @@ "orderneed": [ { "a": "item", - "t": "50003", - "n": 50 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 10 } ], "desk": "", diff --git a/bin/json/game_smithystove.json b/bin/json/game_smithystove.json index 9b0d84780..d582a454c 100644 --- a/bin/json/game_smithystove.json +++ b/bin/json/game_smithystove.json @@ -10,12 +10,7 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 5 - }, - { - "a": "item", - "t": "10013", + "t": "120001", "n": 1 } ], @@ -35,13 +30,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 10 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 2 } ], "probability": 100, @@ -60,13 +50,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 15 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 3 } ], "probability": 100, @@ -85,13 +70,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 20 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 4 } ], "probability": 100, @@ -110,13 +90,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 25 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 5 } ], "probability": 100, @@ -135,13 +110,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 30 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 6 } ], "probability": 100, @@ -160,13 +130,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 35 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 7 } ], "probability": 100, @@ -185,13 +150,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 40 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 8 } ], "probability": 100, @@ -210,13 +170,8 @@ "starupneed": [ { "a": "item", - "t": "50001", - "n": 45 - }, - { - "a": "item", - "t": "10013", - "n": 1 + "t": "120001", + "n": 9 } ], "probability": 100, diff --git a/comm/const.go b/comm/const.go index 20367f6bc..8bd932ee9 100644 --- a/comm/const.go +++ b/comm/const.go @@ -599,8 +599,9 @@ const ( // 邮件ID const ( - Yueka_1 string = "Activity_PrivilegeCardDailyReward_lv1" - Yueka_2 string = "Activity_PrivilegeCardDailyReward_lv2" + Yueka_1 string = "Activity_PrivilegeCardDailyReward_lv1" //月卡1 + Yueka_2 string = "Activity_PrivilegeCardDailyReward_lv2" // 月卡2 + VipDaily string = "VipLvReward" // vip每日奖励 ) // open funcName diff --git a/comm/imodule.go b/comm/imodule.go index bb5b5fc4a..9e9fa7bdc 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -21,7 +21,7 @@ type ( //邮件业务模块对外接口定义 提供给其他模块使用的 Imail interface { - CreateNewMail(session IUserSession, mail *pb.DBMailData) bool + SendMailByCid(session IUserSession, cid string, res []*pb.UserAssets) bool SendNewMail(mail *pb.DBMailData, uid ...string) bool // 批量发送邮件 支持跨服 IReddot } diff --git a/modules/hero/module.go b/modules/hero/module.go index c38b1ef93..b4c5b87ed 100644 --- a/modules/hero/module.go +++ b/modules/hero/module.go @@ -78,9 +78,7 @@ func (this *Hero) CreateRepeatHero(session comm.IUserSession, heroCfgId string, if heroConf == nil { return } - if heroConf.Handbook == -1 { // 不需要记录图鉴 - return - } + if result, err1 := this.ModuleUser.GetUserExpand(uid); err1 == nil { initUpdate := map[string]interface{}{} sz := result.GetTujian() @@ -89,7 +87,12 @@ func (this *Hero) CreateRepeatHero(session comm.IUserSession, heroCfgId string, } if _, ok := result.GetTujian()[heroCfgId]; !ok { - sz[heroCfgId] = 0 + if heroConf.Handbook == -1 { + sz[heroCfgId] = 0 + } else { + sz[heroCfgId] = 1 + } + initUpdate["tujian"] = sz this.ModuleUser.ChangeUserExpand(uid, initUpdate) } diff --git a/modules/mail/model_mail.go b/modules/mail/model_mail.go index 9b3c587f4..6a057f216 100644 --- a/modules/mail/model_mail.go +++ b/modules/mail/model_mail.go @@ -138,7 +138,7 @@ func (this *modelMail) checkReddot26(uid string) bool { return false } for _, v := range mailinfo { - if v.Reward && len(v.Items) > 0 { + if !v.Reward && len(v.Items) > 0 { return true } } @@ -151,6 +151,9 @@ func (this *modelMail) checkReddot30(uid string) bool { if err != nil { return false } + if len(mailinfo) == 0 { + return false + } for _, v := range mailinfo { if !v.Check { return true diff --git a/modules/mail/module.go b/modules/mail/module.go index 090ed884d..b0a822e25 100644 --- a/modules/mail/module.go +++ b/modules/mail/module.go @@ -46,41 +46,6 @@ func (this *Mail) OnInstallComp() { this.configure_comp = this.RegisterComp(new(Configure_Comp)).(*Configure_Comp) } -func (this *Mail) CreateNewMail(session comm.IUserSession, mail *pb.DBMailData) bool { - t := configure.Now() - defer func() { - log.Debugf("创建邮件 耗时:%v", time.Since(t)) - }() - if mail == nil { - return false - } - if db.IsCross() { // 如果是跨服 则取本服的db - tag, _, b := utils.UIdSplit(session.GetUserId()) - if b { - if conn, err := db.ServerDBConn(tag); err == nil { - dbModel := db.NewDBModel(comm.TableMail, time.Hour, conn) - mail.ObjId = primitive.NewObjectID().Hex() - mail.Check = false - mail.Reward = true - - if len(mail.GetItems()) > 0 { - mail.Reward = false - } - _, err = dbModel.DB.InsertOne(comm.TableMail, mail) - } - } - } else { - err := this.modelMail.MailInsertUserMail(mail) - if err != nil { - this.Errorf("create mail failed :%v", err) - return false - } - } - // 通知玩家 - this.AddNewMailPush(session, mail) - - return true -} func (this *Mail) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) { err = this.ModuleBase.Init(service, module, options) this.service = service.(base.IRPCXService) @@ -143,11 +108,15 @@ func (this *Mail) Reddot(session comm.IUserSession, rid ...comm.ReddotType) (red case comm.Reddot26: if isredot := this.modelMail.checkReddot26(session.GetUserId()); isredot { reddot[comm.Reddot26] = true + } else { + reddot[comm.Reddot26] = false } break case comm.Reddot30: if isredot := this.modelMail.checkReddot30(session.GetUserId()); isredot { reddot[comm.Reddot30] = true + } else { + reddot[comm.Reddot30] = false } break } @@ -176,3 +145,45 @@ func (this *Mail) Rpc_Mail(ctx context.Context, args *pb.DBMailData) (err error) } return } +func (this *Mail) SendMailByCid(session comm.IUserSession, cid string, res []*pb.UserAssets) bool { + + // 构建一个每日奖励邮件对象 + mail := &pb.DBMailData{ + ObjId: primitive.NewObjectID().Hex(), + Uid: session.GetUserId(), + CreateTime: uint64(configure.Now().Unix()), + DueTime: uint64(configure.Now().Unix() + 30*24*3600), + Items: res, + Cid: cid, + Param: []string{}, + } + mail.Check = false + mail.Reward = true + + if len(mail.GetItems()) > 0 { + mail.Reward = false + } + + if db.IsCross() { // 如果是跨服 则取本服的db + tag, _, b := utils.UIdSplit(session.GetUserId()) + if b { + if conn, err := db.ServerDBConn(tag); err == nil { + dbModel := db.NewDBModel(comm.TableMail, time.Hour, conn) + + if _, err = dbModel.DB.InsertOne(comm.TableMail, mail); err != nil { + this.Errorf("InsertOne mail failed:%v", err) + } + } + } + } else { + err := this.modelMail.MailInsertUserMail(mail) + if err != nil { + this.Errorf("create mail failed :%v", err) + return false + } + } + // 通知玩家 + this.AddNewMailPush(session, mail) + + return true +} diff --git a/modules/privilege/module.go b/modules/privilege/module.go index 0681b167e..1f41b1a3d 100644 --- a/modules/privilege/module.go +++ b/modules/privilege/module.go @@ -242,14 +242,14 @@ func (this *Privilege) CheckDailyPrivilegeMail(session comm.IUserSession) { if v.ETime < configure.Now().Unix() { // 判断当前特权是否过期 update := map[string]interface{}{} - for _, id := range conf.PrivilegeId { // 找到过期的特权 并删除 + for _, id := range conf.PrivilegeId { // 找到过期的特权 计算过期天数 data := this.configure.GetPrivilegeData(id) if data != nil { if v, ok := privilgeList.Privilege[data.PrivilegeType]; ok { for i, v1 := range v.PrivilegeID { - if v1 == id { // 找到了 就删除 + if v1 == id { v.PrivilegeID = append(v.PrivilegeID[:i], v.PrivilegeID[i+1:]...) break } @@ -273,6 +273,13 @@ func (this *Privilege) CheckDailyPrivilegeMail(session comm.IUserSession) { dt := configure.Now().Unix() - utils.GetZeroTime(v.RewardTime) count := dt / (24 * 3600) this.SendDailyMail(session, v.CId, int32(count+1), conf.PType) + // 找特权类型为1的 + listVip, err := this.modelVip.getVipList(session.GetUserId()) + if err == nil { + if v, ok := listVip.Privilege[comm.PrivilegeType1]; ok { + this.SendDailyPrivilegeMail(session, v.PrivilegeID) + } + } } } } @@ -295,26 +302,12 @@ func (this *Privilege) SendDailyMail(session comm.IUserSession, cId string, coun }) } - // 构建一个每日奖励邮件对象 - mail := &pb.DBMailData{ - ObjId: "", - Uid: session.GetUserId(), - CreateTime: uint64(configure.Now().Unix()), - DueTime: uint64(configure.Now().Unix() + 30*24*3600), - Check: false, - Reward: false, - Items: res, - Param: []string{}, - } if pType == 1 { - mail.Cid = comm.Yueka_1 + this.mail.SendMailByCid(session, comm.Yueka_1, res) } else if pType == 2 { - mail.Cid = comm.Yueka_2 - } - for i := 0; i < int(count); i++ { - mail.ObjId = primitive.NewObjectID().Hex() - this.mail.CreateNewMail(session, mail) + this.mail.SendMailByCid(session, comm.Yueka_1, res) } + } func (this *Privilege) CheckAllPrivilege(session comm.IUserSession) map[int32]*pb.PrivilegeList { @@ -367,3 +360,26 @@ func (this *Privilege) AddVipData(session comm.IUserSession, oldVip, newVip int3 session.SendMsg(string(this.GetType()), PrivilegeGetListResp, &pb.PrivilegeVipListResp{Data: vip}) } + +// 发送特权每日奖励 +func (this *Privilege) SendDailyPrivilegeMail(session comm.IUserSession, cId []int32) { + var ( + res []*pb.UserAssets + totalCount int32 // 获得的钻石累加 + ) + + for _, id := range cId { + conf := this.configure.GetPrivilegeData(id) + if conf != nil { + totalCount += conf.PrivilegeParameter + } + } + if totalCount > 0 { + res = append(res, &pb.UserAssets{ + A: "attr", + T: "diamond", + N: totalCount, + }) + this.mail.SendMailByCid(session, comm.VipDaily, res) + } +} diff --git a/modules/user/api_gettujian.go b/modules/user/api_gettujian.go index fc641e3f2..0adc57c77 100644 --- a/modules/user/api_gettujian.go +++ b/modules/user/api_gettujian.go @@ -23,8 +23,10 @@ func (this *apiComp) GetTujian(session comm.IUserSession, req *pb.UserGetTujianR this.module.Error("玩家扩展数据", log.Fields{"uid": uid, "err": err.Error()}) return } else { - for k := range result.Tujian { - rsp.Heroids = append(rsp.Heroids, k) + for k, v := range result.Tujian { + if v == 0 { + rsp.Heroids = append(rsp.Heroids, k) + } } } err := session.SendMsg(string(this.module.GetType()), UserGetTujianResp, rsp) diff --git a/modules/user/api_login.go b/modules/user/api_login.go index 2ad67e0fd..b25ab7a34 100644 --- a/modules/user/api_login.go +++ b/modules/user/api_login.go @@ -7,7 +7,6 @@ import ( "go_dreamfactory/sys/configure" "go_dreamfactory/utils" - "go.mongodb.org/mongo-driver/bson/primitive" "go.mongodb.org/mongo-driver/mongo" "google.golang.org/protobuf/proto" ) @@ -149,20 +148,6 @@ func (this *apiComp) Login(session comm.IUserSession, req *pb.UserLoginReq) (cod this.module.ModuleRtask.SendToRtask(session, comm.Rtype7, 1) this.module.ModulePrivilege.CheckDailyPrivilegeMail(session) - //推送登录公告 - if this.module.modelUser.isLoginFirst(lastLoginTime) { - this.chat.SendSysChatToUser(session, comm.ChatSystem2, 0, 0) - mail := &pb.DBMailData{ - ObjId: primitive.NewObjectID().Hex(), - Uid: user.Uid, - Title: "system mail", - Contex: "Congratulations on getting a login exclusive gift pack", - CreateTime: uint64(configure.Now().Unix()), - DueTime: uint64(configure.Now().Unix()) + 30*24*3600, // 30天需要走配置文件 - Check: false, - Reward: false, - } - this.mail.CreateNewMail(session, mail) - } + return }