龙币变化通知

This commit is contained in:
sk 2024-07-02 18:33:28 +08:00
parent 78d6a109fe
commit aaf15d2b3d
13 changed files with 1206 additions and 1173 deletions

Binary file not shown.

View File

@ -801,7 +801,7 @@
1, 1,
0 0
], ],
"Type": 13, "Type": 19,
"Effect0": [ "Effect0": [
0, 0,
0, 0,

Binary file not shown.

Binary file not shown.

View File

@ -75,6 +75,7 @@ type PlayerDiffData struct {
RankScore map[int32]int64 // 排位积分 RankScore map[int32]int64 // 排位积分
PhoneScore int64 //手机积分 PhoneScore int64 //手机积分
InviteScore int64 // 邀请积分 InviteScore int64 // 邀请积分
Long int64 // 龙币
} }
type PlayerBaseData struct { type PlayerBaseData struct {

File diff suppressed because it is too large Load Diff

View File

@ -318,6 +318,7 @@ message PlayerData {
int32 Age = 47; // int32 Age = 47; //
repeated WeekInfo WeekCard = 48;// repeated WeekInfo WeekCard = 48;//
repeated int32 RequestAddFriend = 49;// repeated int32 RequestAddFriend = 49;//
int64 Long = 50; //
} }
// //
@ -360,6 +361,7 @@ message SCPlayerDataUpdate {
map<int32,int64> RankScore = 12; // map<int32,int64> RankScore = 12; //
int64 PhoneScore = 13; // int64 PhoneScore = 13; //
int64 InviteScore = 14; // int64 InviteScore = 14; //
int64 Long = 15; //
} }
// //

2
public

@ -1 +1 @@
Subproject commit 8c59aeb37871428f135c6423cde777c09ad0e3f0 Subproject commit 63eadb869736b9d3e16c993cd99675c0e0de638c

View File

@ -595,7 +595,7 @@ func CSPermitInfo(s *netlib.Session, packetid int, data interface{}, sid int64)
pack := &welfare.SCPermitInfo{ pack := &welfare.SCPermitInfo{
Exp: exp, Exp: exp,
Level: level, Level: level,
Timestamp: []int64{startTs, endTs}, Timestamp: []int64{startTs, endTs - 1},
IsPermit: p.GetIsPermit(), IsPermit: p.GetIsPermit(),
RefreshTs: common.GetDayNextStartTs(time.Now().Unix()), RefreshTs: common.GetDayNextStartTs(time.Now().Unix()),
} }
@ -777,8 +777,8 @@ func CSPermitAward(s *netlib.Session, packetid int, data interface{}, sid int64)
p.WelfData.PermitAward[v.GetRank()*1000] = now.Unix() p.WelfData.PermitAward[v.GetRank()*1000] = now.Unix()
} }
} else { } else {
if v.GetRank() == msg.GetId() { if v.GetRank()*1000 == msg.GetId() {
if IsPermitCanReward(p, v.GetRank()*1000) { if IsPermitCanReward(p, msg.GetId()) {
for _, vv := range v.GetAward2() { for _, vv := range v.GetAward2() {
pack.Award2 = append(pack.Award2, &welfare.PropInfo{ pack.Award2 = append(pack.Award2, &welfare.PropInfo{
ItemId: vv.GetItemId(), ItemId: vv.GetItemId(),
@ -1020,26 +1020,26 @@ func CSPermitExchange(s *netlib.Session, packetid int, data interface{}, sid int
// 检查背包是否足够 // 检查背包是否足够
var items []*Item var items []*Item
var costItems []*Item var costItems []*Item
for k, v := range exchangeConfig.GetCost() { for _, v := range exchangeConfig.GetCost() {
item := BagMgrSingleton.GetItem(p.SnId, int32(k)) item := BagMgrSingleton.GetItem(p.SnId, v.GetItemId())
if item == nil || item.ItemNum < v.GetItemNum() { if item == nil || item.ItemNum < v.GetItemNum() {
send(welfare.OpResultCode_OPRC_ErrCost) send(welfare.OpResultCode_OPRC_ErrCost)
return nil return nil
} }
info := srvdata.PBDB_GameItemMgr.GetData(int32(k)) info := srvdata.PBDB_GameItemMgr.GetData(v.GetItemId())
if info != nil { if info != nil {
costItems = append(costItems, &Item{ costItems = append(costItems, &Item{
ItemId: int32(k), ItemId: v.GetItemId(),
ItemNum: v.GetItemNum(), ItemNum: v.GetItemNum(),
Name: info.Name, Name: info.Name,
}) })
} }
} }
for k, v := range exchangeConfig.GetGain() { for _, v := range exchangeConfig.GetGain() {
info := srvdata.PBDB_GameItemMgr.GetData(int32(k)) info := srvdata.PBDB_GameItemMgr.GetData(v.GetItemId())
if info != nil { if info != nil {
items = append(items, &Item{ items = append(items, &Item{
ItemId: int32(k), ItemId: v.GetItemId(),
ItemNum: v.GetItemNum(), ItemNum: v.GetItemNum(),
Name: info.Name, Name: info.Name,
}) })
@ -1055,11 +1055,7 @@ func CSPermitExchange(s *netlib.Session, packetid int, data interface{}, sid int
} }
} }
if !isExchange { send(welfare.OpResultCode_OPRC_Sucess)
pack.OpRetCode = welfare.OpResultCode_OPRC_Error
}
p.SendToClient(int(welfare.SPacketID_PACKET_SCPermitExchange), pack)
logger.Logger.Tracef("SCPermitExchange: %v", pack)
return nil return nil
} }

View File

@ -314,6 +314,9 @@ func (this *BagMgr) AddItems(p *Player, addItems []*Item, add int64, gainWay int
}) })
} }
} }
if v == common.ItemIDLong {
p.SendDiffData()
}
} }
if code != bag.OpResultCode_OPRC_Sucess { if code != bag.OpResultCode_OPRC_Sucess {

View File

@ -99,6 +99,7 @@ func (r *PermitMgr) OnDayTimer() {
if len(items) == 0 { if len(items) == 0 {
break break
} }
logger.Logger.Infof("PermitMgr rank award snid:%v rank:%v", player.SnId, rank)
// 发邮件 // 发邮件
var newMsg *model.Message var newMsg *model.Message
task.New(nil, task.CallableWrapper(func(o *basic.Object) interface{} { task.New(nil, task.CallableWrapper(func(o *basic.Object) interface{} {

View File

@ -60,6 +60,7 @@ const (
UpdateField_RankScore UpdateField_RankScore
UpdateField_PhoneScore UpdateField_PhoneScore
UpdateField_InviteScore UpdateField_InviteScore
UpdateField_Long
) )
const ( const (
@ -2269,6 +2270,10 @@ func (this *Player) ResetPermit() {
permitStartTs := PlatformMgrSingleton.GetConfig(this.Platform).PermitStartTs permitStartTs := PlatformMgrSingleton.GetConfig(this.Platform).PermitStartTs
if (this.PermitStartTs == 0 || this.PermitStartTs < permitStartTs) && permitStartTs > 0 { if (this.PermitStartTs == 0 || this.PermitStartTs < permitStartTs) && permitStartTs > 0 {
this.PermitStartTs = permitStartTs this.PermitStartTs = permitStartTs
this.Permit = time.Time{}
this.WelfData.PermitAward = make(map[int32]int64)
this.WelfData.PermitExchange = make(map[int32][]int64)
this.dirty = true
// 清理数据 // 清理数据
bag := BagMgrSingleton.GetBagInfo(this.SnId) bag := BagMgrSingleton.GetBagInfo(this.SnId)
if bag != nil { if bag != nil {
@ -2281,13 +2286,10 @@ func (this *Player) ResetPermit() {
ItemNum: model.GameParamData.PermitInitScore, ItemNum: model.GameParamData.PermitInitScore,
ObtainTime: time.Now().Unix(), ObtainTime: time.Now().Unix(),
} }
this.Permit = time.Now()
} }
} }
} }
this.Permit = time.Time{}
this.WelfData.PermitAward = make(map[int32]int64)
this.WelfData.PermitExchange = make(map[int32][]int64)
this.dirty = true
} }
} }
@ -2557,6 +2559,14 @@ func (this *Player) SendDiffData() {
if len(pack.RankScore) == 0 { if len(pack.RankScore) == 0 {
pack.RankScore = nil pack.RankScore = nil
} }
// 龙币
itemLong := BagMgrSingleton.GetItem(this.SnId, common.ItemIDLong)
if itemLong != nil && this.diffData.Long != itemLong.ItemNum {
dirty = true
pack.Long = proto.Int64(itemLong.ItemNum)
this.diffData.Long = itemLong.ItemNum
pack.UpdateField += UpdateField_Long
}
if dirty { if dirty {
FriendMgrSington.UpdateInfo(this.Platform, this.SnId) FriendMgrSington.UpdateInfo(this.Platform, this.SnId)
@ -2996,10 +3006,12 @@ func (this *Player) SendPlayerInfo() {
scPlayerData.Data.ReliefFundTimes = this.WelfData.ReliefFundTimes scPlayerData.Data.ReliefFundTimes = this.WelfData.ReliefFundTimes
} }
if item := BagMgrSingleton.GetItem(this.SnId, VCard); item != nil { if item := BagMgrSingleton.GetItem(this.SnId, VCard); item != nil {
scPlayerData.Data.VCoin = int64(item.ItemNum) //V卡 scPlayerData.Data.VCoin = item.ItemNum //V卡
}
// 龙币
if item := BagMgrSingleton.GetItem(this.SnId, common.ItemIDLong); item != nil {
scPlayerData.Data.Long = item.ItemNum
} }
// 排位积分 // 排位积分
scPlayerData.Data.RankScore = RankMgrSingleton.GetPlayerRankScore(this.SnId) scPlayerData.Data.RankScore = RankMgrSingleton.GetPlayerRankScore(this.SnId)

Binary file not shown.