From cab256396e50e19a1bc4bdb52df5374b83217f03 Mon Sep 17 00:00:00 2001 From: by <123456@qq.com> Date: Thu, 6 Feb 2025 11:14:01 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=B9=B4=E5=85=BD=E6=B4=BB=E5=8A=A8?= =?UTF-8?q?=E6=97=B6=E5=8C=BA=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- worldsrv/action_nian.go | 44 +++++++++++++++++++++-------------------- worldsrv/rankmatch.go | 12 ++++++----- worldsrv/taskmgr.go | 20 +++++++++++-------- 3 files changed, 42 insertions(+), 34 deletions(-) diff --git a/worldsrv/action_nian.go b/worldsrv/action_nian.go index cb1c7b6..73b9b78 100644 --- a/worldsrv/action_nian.go +++ b/worldsrv/action_nian.go @@ -37,12 +37,8 @@ func CSNianData(s *netlib.Session, packetid int, data interface{}, sid int64) er } startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - start, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := start.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix() - + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) if p.WelfData.NianData != nil && (p.WelfData.NianData.ActivityStartTime != timestamp || p.WelfData.NianData.ActivityEndTime != endTimestamp) { logger.Logger.Infof("CSNianData 年兽活动时间变更 清除之前数据 snid= %d", p.SnId) WelfareMgrSington.ClearActivityNianData(p) @@ -228,11 +224,13 @@ func CSNianAttack(s *netlib.Session, packetid int, data interface{}, sid int64) //判断活动时间 startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix() + /* t, _ := time.Parse(time.DateTime, startTime) + // 转换为时间戳(以秒为单位) + timestamp := t.Unix() + end, _ := time.Parse(time.DateTime, endTime) + endTimestamp := end.Unix()*/ + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() if nowTime < timestamp || nowTime > endTimestamp { return nil @@ -677,11 +675,13 @@ func CSNianSignAward(s *netlib.Session, packetid int, data interface{}, sid int6 //判断活动时间 startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix() + /* t, _ := time.Parse(time.DateTime, startTime) + // 转换为时间戳(以秒为单位) + timestamp := t.Unix() + end, _ := time.Parse(time.DateTime, endTime) + endTimestamp := end.Unix()*/ + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() if nowTime < timestamp || nowTime > endTimestamp { return nil @@ -792,11 +792,13 @@ func CSNianChange(s *netlib.Session, packetid int, data interface{}, sid int64) //判断活动时间 startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix() + /* t, _ := time.Parse(time.DateTime, startTime) + // 转换为时间戳(以秒为单位) + timestamp := t.Unix() + end, _ := time.Parse(time.DateTime, endTime) + endTimestamp := end.Unix()*/ + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() if nowTime < timestamp || nowTime > endTimestamp { return nil diff --git a/worldsrv/rankmatch.go b/worldsrv/rankmatch.go index 351d577..274874b 100644 --- a/worldsrv/rankmatch.go +++ b/worldsrv/rankmatch.go @@ -952,11 +952,13 @@ func (r *RankMatchMgr) NianRankAward() { } startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix() + /* t, _ := time.Parse(time.DateTime, startTime) + // 转换为时间戳(以秒为单位) + timestamp := t.Unix() + end, _ := time.Parse(time.DateTime, endTime) + endTimestamp := end.Unix()*/ + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() if nowTime < timestamp || nowTime-86400 > endTimestamp { return diff --git a/worldsrv/taskmgr.go b/worldsrv/taskmgr.go index ec6089c..9f95ed0 100644 --- a/worldsrv/taskmgr.go +++ b/worldsrv/taskmgr.go @@ -209,10 +209,12 @@ func (t *TaskHandle) AllTask(id int, data any) { } startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - start, _ := time.Parse(time.DateTime, startTime) - timestamp := start.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix() + /* start, _ := time.Parse(time.DateTime, startTime) + timestamp := start.Unix() + end, _ := time.Parse(time.DateTime, endTime) + endTimestamp := end.Unix()*/ + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) if now.Unix() < timestamp || now.Unix() > endTimestamp { continue } @@ -349,10 +351,12 @@ func IsTaskReward(p *Player, id int32) bool { } startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - start, _ := time.Parse(time.DateTime, startTime) - timestamp := start.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix() + /* start, _ := time.Parse(time.DateTime, startTime) + timestamp := start.Unix() + end, _ := time.Parse(time.DateTime, endTime) + endTimestamp := end.Unix()*/ + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) if timestamp > 0 { return data.Ts >= timestamp && data.Ts < endTimestamp } From 7aee41e78a2c6a7f764e8b83b3ad74544d311637 Mon Sep 17 00:00:00 2001 From: by <123456@qq.com> Date: Thu, 6 Feb 2025 11:17:35 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=B9=B4=E5=85=BD=E6=B4=BB=E5=8A=A8?= =?UTF-8?q?=E6=97=B6=E5=8C=BA=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- worldsrv/rankmatch.go | 1 + 1 file changed, 1 insertion(+) diff --git a/worldsrv/rankmatch.go b/worldsrv/rankmatch.go index 274874b..a44b0e5 100644 --- a/worldsrv/rankmatch.go +++ b/worldsrv/rankmatch.go @@ -959,6 +959,7 @@ func (r *RankMatchMgr) NianRankAward() { endTimestamp := end.Unix()*/ timestamp := common.StrTimeToTs(startTime) endTimestamp := common.StrTimeToTs(endTime) + end, _ := time.Parse(time.DateTime, endTime) nowTime := time.Now().Unix() if nowTime < timestamp || nowTime-86400 > endTimestamp { return From 768dd92e2def6e30f84b5e904a639dcff8f59eab Mon Sep 17 00:00:00 2001 From: by <123456@qq.com> Date: Thu, 6 Feb 2025 11:19:50 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E5=B9=B4=E5=85=BD=E6=B4=BB=E5=8A=A8?= =?UTF-8?q?=E6=97=B6=E5=8C=BA=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- worldsrv/rankmatch.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/worldsrv/rankmatch.go b/worldsrv/rankmatch.go index a44b0e5..4e9d7d0 100644 --- a/worldsrv/rankmatch.go +++ b/worldsrv/rankmatch.go @@ -959,7 +959,6 @@ func (r *RankMatchMgr) NianRankAward() { endTimestamp := end.Unix()*/ timestamp := common.StrTimeToTs(startTime) endTimestamp := common.StrTimeToTs(endTime) - end, _ := time.Parse(time.DateTime, endTime) nowTime := time.Now().Unix() if nowTime < timestamp || nowTime-86400 > endTimestamp { return @@ -1057,7 +1056,8 @@ func (r *RankMatchMgr) NianRankAward() { })).StartByExecutor("NianLuck_Award") } else if info.TypeId == 2 { yesterday := time.Unix(time.Now().Unix()-86400, 0) - if yesterday.Day() != end.Day() { + endDay := time.Unix(endTimestamp, 0) + if yesterday.Day() != endDay.Day() { return } rankAward := info.RankInfo From f6da9d8aa80f2166dd79ab597001b863c0bbbf1b Mon Sep 17 00:00:00 2001 From: by <123456@qq.com> Date: Thu, 6 Feb 2025 12:26:12 +0700 Subject: [PATCH 4/4] =?UTF-8?q?=E5=B9=B4=E5=85=BD=E6=B4=BB=E5=8A=A8?= =?UTF-8?q?=E6=97=B6=E5=8C=BA=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- worldsrv/action_nian.go | 27 ++++++++++++--------------- worldsrv/rankmatch.go | 5 ----- worldsrv/taskmgr.go | 4 ---- 3 files changed, 12 insertions(+), 24 deletions(-) diff --git a/worldsrv/action_nian.go b/worldsrv/action_nian.go index 73b9b78..cbb6362 100644 --- a/worldsrv/action_nian.go +++ b/worldsrv/action_nian.go @@ -224,11 +224,6 @@ func CSNianAttack(s *netlib.Session, packetid int, data interface{}, sid int64) //判断活动时间 startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - /* t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix()*/ timestamp := common.StrTimeToTs(startTime) endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() @@ -610,6 +605,7 @@ func CSNianBuff(s *netlib.Session, packetid int, data interface{}, sid int64) er if p.WelfData.NianData == nil { p.WelfData.NianData = &model.NianData{} } + if p.WelfData.NianData.BuffStatus { pack := &activity.SCNianBuff{ OpRetCode: activity.OpResultCode_Nian_OPRC_Error_Nian, @@ -625,6 +621,16 @@ func CSNianBuff(s *netlib.Session, packetid int, data interface{}, sid int64) er logger.Logger.Trace("CSNianSignAward 活动关闭!") return nil } + //判断活动时间 + startTime := pool.List[0].ActivityStart + endTime := pool.List[0].ActivityEnd + timestamp := common.StrTimeToTs(startTime) + endTimestamp := common.StrTimeToTs(endTime) + nowTime := time.Now().Unix() + if nowTime < timestamp || nowTime > endTimestamp { + return nil + } + StartTs := common.IntToTime(int(pool.List[0].BuffStartTime)).Unix() EndTs := common.IntToTime(int(pool.List[0].BuffEndTime)).Unix() //判断领取时间 @@ -675,11 +681,6 @@ func CSNianSignAward(s *netlib.Session, packetid int, data interface{}, sid int6 //判断活动时间 startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - /* t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix()*/ timestamp := common.StrTimeToTs(startTime) endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() @@ -701,6 +702,7 @@ func CSNianSignAward(s *netlib.Session, packetid int, data interface{}, sid int6 pack.SignAwardTime = p.WelfData.NianData.SignAwardTime var items []*model.Item for _, info := range pool.List[0].SignReward { + items = append(items, &model.Item{ ItemId: info.ItemId, ItemNum: info.ItemNum, @@ -792,11 +794,6 @@ func CSNianChange(s *netlib.Session, packetid int, data interface{}, sid int64) //判断活动时间 startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - /* t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix()*/ timestamp := common.StrTimeToTs(startTime) endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() diff --git a/worldsrv/rankmatch.go b/worldsrv/rankmatch.go index 4e9d7d0..b9bdcda 100644 --- a/worldsrv/rankmatch.go +++ b/worldsrv/rankmatch.go @@ -952,11 +952,6 @@ func (r *RankMatchMgr) NianRankAward() { } startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - /* t, _ := time.Parse(time.DateTime, startTime) - // 转换为时间戳(以秒为单位) - timestamp := t.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix()*/ timestamp := common.StrTimeToTs(startTime) endTimestamp := common.StrTimeToTs(endTime) nowTime := time.Now().Unix() diff --git a/worldsrv/taskmgr.go b/worldsrv/taskmgr.go index 9f95ed0..0f7e9be 100644 --- a/worldsrv/taskmgr.go +++ b/worldsrv/taskmgr.go @@ -351,10 +351,6 @@ func IsTaskReward(p *Player, id int32) bool { } startTime := pool.List[0].ActivityStart endTime := pool.List[0].ActivityEnd - /* start, _ := time.Parse(time.DateTime, startTime) - timestamp := start.Unix() - end, _ := time.Parse(time.DateTime, endTime) - endTimestamp := end.Unix()*/ timestamp := common.StrTimeToTs(startTime) endTimestamp := common.StrTimeToTs(endTime) if timestamp > 0 {