From ee6653d58f021aaa405569f5c86a670b1aa24c59 Mon Sep 17 00:00:00 2001 From: duhui Date: Sun, 13 Nov 2022 00:04:08 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9B=B6=E7=82=B9=E6=B8=85=E7=90=86=E9=81=93?= =?UTF-8?q?=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ljsd/jieling/logic/item/ItemLogic.java | 11 +++++++---- .../main/java/com/ljsd/jieling/util/MessageUtil.java | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index c9e678a72..c3539111d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -1086,8 +1086,10 @@ public class ItemLogic { ItemManager itemManager = user.getItemManager(); Map itemMap = new HashMap<>(itemManager.getItemMap()); Map sItemMap = SItem.getsItemMap(); + ArrayList list = new ArrayList<>(); for (Map.Entry itemEntry : itemMap.entrySet()) { - SItem sItem = sItemMap.get(itemEntry.getValue().getItemId()); + Item item = itemEntry.getValue(); + SItem sItem = sItemMap.get(item.getItemId()); if (sItem == null || sItem.getItemType() == GlobalItemType.ONE_RMB_RECHARGE_CARD || sItem.getItemType() == GlobalItemType.DAY_TRUE_RECHARGE_JUAN @@ -1095,12 +1097,13 @@ public class ItemLogic { || sItem.getItemType() == GlobalItemType.DAY_XIAN_RECHARGE_CARD ) { itemManager.removeItem(itemEntry.getKey()); + list.add(CBean2Proto.getItem(item,0)); + LOGGER.info("=================每日零点,清理玩家道具,角色id:{},道具id:{},道具数量:{}",user.getId(),item.getItemId(),item.getItemNum()); } } - List allItemList = ItemUtil.getAllItem(user,false); - if(!allItemList.isEmpty()) { + if(!list.isEmpty()) { ISession session = OnlineUserManager.getSessionByUid(user.getId()); - PlayerInfoProto.UpdateBagIndication build = PlayerInfoProto.UpdateBagIndication.newBuilder().addAllItem(allItemList).setType(0).build(); + PlayerInfoProto.UpdateBagIndication build = PlayerInfoProto.UpdateBagIndication.newBuilder().addAllItem(list).setType(0).build(); MessageUtil.sendIndicationMessage(session, 1, MessageTypeProto.MessageType.UPDATE_BAG_INDICATION_VALUE, build, true); } }catch (Exception e){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java index 146d54f5f..049c66dd6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java @@ -139,7 +139,7 @@ public class MessageUtil { user.getPlayerInfoManager().setReds(reds); } - public static void sendBagIndication(int sendUid,int type, List sendToFront,boolean isMax) { + public static void sendBagIndication(int sendUid,int type, List sendToFront,boolean isMax) { if(!isMax){ if(null!= SimpleTransaction.current()){ PlayerInfoProto.UpdateBagIndication.Builder build = PlayerInfoProto.UpdateBagIndication.newBuilder().addAllItem(sendToFront).setType(type).setIsMax(isMax?1:0);