From c73add3bbaea61f5cdd02c53d73412b612299fbe Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Mon, 17 Mar 2025 15:37:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=A4=B4=E5=83=8F=EF=BC=8C?= =?UTF-8?q?=E8=A1=A8=E6=83=85=E5=A5=96=E5=8A=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/game/Player.go | 33 +++++++++++++++++++++++++++++--- src/server/game/mod/item/Item.go | 2 ++ 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/src/server/game/Player.go b/src/server/game/Player.go index 534f5689..d9d0f2f1 100644 --- a/src/server/game/Player.go +++ b/src/server/game/Player.go @@ -452,7 +452,10 @@ func (p *Player) HandleItem(itemList []*item.Item, Label string) error { ResCard := make([]*msg.CardPack, 0) ResItem := make([]*msg.ItemInfo, 0) ItemMod := p.PlayMod.getItemMod() - + AvatarMod := p.PlayMod.getAvatarMod() + EmojiMod := p.PlayMod.getEmojiMod() + FaceMod := p.PlayMod.getFaceMod() + BackDataType := map[int]struct{}{} for _, v := range itemList { if v.Num == 0 { continue @@ -603,14 +606,30 @@ func (p *Player) HandleItem(itemList []*item.Item, Label string) error { "piggy_bank_id": Effect, "income_from": Label, }) - case item.ITEM_TYPE_AVATAR: + case item.ITEM_TYPE_AVATAR: // 头像框 Effect := itemCfg.GetItemEffectList(v.Id) - AvatarMod := p.PlayMod.getAvatarMod() AvatarMod.Unlock(Effect[0], Effect[1]) p.TeLog("avatarIcon_income", map[string]interface{}{ "avatar_id": Effect[0], "income_from": Label, }) + BackDataType[item.ITEM_TYPE_AVATAR] = struct{}{} + case item.ITEM_TYPE_EMOJI: // 表情 + Effect := itemCfg.GetItemEffectList(v.Id) + EmojiMod.Unlock(Effect[0], Effect[1]) + p.TeLog("emoji_income", map[string]interface{}{ + "emoji_id": Effect[0], + "income_from": Label, + }) + BackDataType[item.ITEM_TYPE_EMOJI] = struct{}{} + case item.ITEM_TYPE_FACE: // 头像 + Effect := itemCfg.GetItemEffectList(v.Id) + FaceMod.Unlock(Effect[0], Effect[1]) + p.TeLog("face_income", map[string]interface{}{ + "face_id": Effect[0], + "income_from": Label, + }) + BackDataType[item.ITEM_TYPE_FACE] = struct{}{} case item.ITEM_TYPE_ACTIVITY_RACE: // 活动竞速 RaceMod := p.PlayMod.getRaceMod() RaceMod.AddCoin(v.Num) @@ -640,6 +659,14 @@ func (p *Player) HandleItem(itemList []*item.Item, Label string) error { Lable: Label, }) } + for k := range BackDataType { + switch k { + case item.ITEM_TYPE_AVATAR: + case item.ITEM_TYPE_EMOJI: + case item.ITEM_TYPE_FACE: + BackUserInfo(p) + } + } CardMod := p.PlayMod.getCardMod() p.PushClientRes(CardMod.NotifyCard()) p.PushClientRes(ItemMod.NotifyItem()) diff --git a/src/server/game/mod/item/Item.go b/src/server/game/mod/item/Item.go index 01fd26d6..8ce5d555 100644 --- a/src/server/game/mod/item/Item.go +++ b/src/server/game/mod/item/Item.go @@ -40,6 +40,8 @@ const ( ITEM_TYPE_ACTIVITY = 106 // 活动道具 ITEM_TYPE_ACTIVITY_RACE = 107 // 竞赛活动道具 ITEM_TYPE_PLAYROOM_VISIT = 108 // playroom拜访道具 + ITEM_TYPE_EMOJI = 109 // 表情 + ITEM_TYPE_FACE = 110 // 头像 ) func (i *ItemMod) InitData() {