From b6f5926c4b2bbf929e336f1cdbcc8e18b55dbe62 Mon Sep 17 00:00:00 2001 From: mengchengzhen <13682025901@163.com> Date: Thu, 15 Apr 2021 19:13:56 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E8=A3=85=E5=A4=87=E5=8D=87=E6=98=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/activity/ActivityType.java | 1 + .../logic/activity/ActivityTypeEnum.java | 1 + .../logic/activity/EquipUpLevelActivity.java | 23 +++++++ .../activity/event/EquipUpLevelEvent.java | 22 +++++++ .../main/java/config/SComposeActivity.java | 57 ++++++++++++++++ .../src/main/java/config/SComposeBook.java | 66 +++++++++++++++++++ 6 files changed, 170 insertions(+) create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java create mode 100644 tablemanager/src/main/java/config/SComposeActivity.java create mode 100644 tablemanager/src/main/java/config/SComposeBook.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java index 3770447d7..89b76a32c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java @@ -82,6 +82,7 @@ public interface ActivityType { int COW_FLY_SKY = 62;//牛气冲天 int LUCKY_GET = 63;//福星高照 int FIFTEEN_LOGIN = 64;//十五日签到 + int EQUIP_UPLEVEL = 65; int SUB_ACTIVITY = 8000;//易经宝库 int SKIN_RECHARGE_ACTIVITY = 71; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java index 1e8165a13..09e7dd157 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java @@ -69,6 +69,7 @@ public enum ActivityTypeEnum { COW_FLY_SKY(ActivityType.COW_FLY_SKY,CowFlySkyActivity::new), FIFTEEN_LOGIN(ActivityType.FIFTEEN_LOGIN,FifteenActivity::new), LUCKY_GET(ActivityType.LUCKY_GET,LuckyGetActivity::new), + EQUIP_UPLEVEL(ActivityType.EQUIP_UPLEVEL,EquipUpLevelActivity::new), ; private int type; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java new file mode 100644 index 000000000..db76db7f8 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java @@ -0,0 +1,23 @@ +package com.ljsd.jieling.logic.activity; + +import com.ljsd.jieling.logic.activity.event.EquipUpLevelEvent; +import com.ljsd.jieling.logic.activity.event.IEvent; +import com.ljsd.jieling.logic.activity.event.Poster; +import com.ljsd.jieling.logic.dao.UserManager; +import com.ljsd.jieling.logic.dao.root.User; + +public class EquipUpLevelActivity extends AbstractActivity { + public EquipUpLevelActivity(int id) { + super(id); + Poster.getPoster().listenEvent(this, EquipUpLevelEvent.class); + } + + @Override + public void onEvent(IEvent event) throws Exception { + if (!(event instanceof EquipUpLevelEvent)){ + return; + } + User user = UserManager.getUser(((EquipUpLevelEvent) event).getuId()); + } + +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java new file mode 100644 index 000000000..5b93e259b --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java @@ -0,0 +1,22 @@ +package com.ljsd.jieling.logic.activity.event; + +public class EquipUpLevelEvent implements IEvent { + private int uId; + private int equipId; + + public int getuId() { + return uId; + } + + public void setuId(int uId) { + this.uId = uId; + } + + public int getEquipId() { + return equipId; + } + + public void setEquipId(int equipId) { + this.equipId = equipId; + } +} diff --git a/tablemanager/src/main/java/config/SComposeActivity.java b/tablemanager/src/main/java/config/SComposeActivity.java new file mode 100644 index 000000000..af2eeeaa4 --- /dev/null +++ b/tablemanager/src/main/java/config/SComposeActivity.java @@ -0,0 +1,57 @@ +package config; + +import manager.Table; + +@Table(name ="SComposeActivity") +public class SComposeActivity implements BaseConfig { + private int id; + private int activityId; + private int[] needItems; + private int count; + private int composeType; + + @Override + public void init() throws Exception { + + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public int getActivityId() { + return activityId; + } + + public void setActivityId(int activityId) { + this.activityId = activityId; + } + + public int[] getNeedItems() { + return needItems; + } + + public void setNeedItems(int[] needItems) { + this.needItems = needItems; + } + + public int getCount() { + return count; + } + + public void setCount(int count) { + this.count = count; + } + + public int getComposeType() { + return composeType; + } + + public void setComposeType(int composeType) { + this.composeType = composeType; + } +} diff --git a/tablemanager/src/main/java/config/SComposeBook.java b/tablemanager/src/main/java/config/SComposeBook.java new file mode 100644 index 000000000..5316ad4d7 --- /dev/null +++ b/tablemanager/src/main/java/config/SComposeBook.java @@ -0,0 +1,66 @@ +package config; + +import manager.Table; + +@Table(name ="SComposeBook") +public class SComposeBook implements BaseConfig { + private int id; + private int[] needItems; + private int[] needCost; + private int[] goalItems; + private int type; + private String desc; + + @Override + public void init() throws Exception { + + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public int[] getNeedItems() { + return needItems; + } + + public void setNeedItems(int[] needItems) { + this.needItems = needItems; + } + + public int[] getNeedCost() { + return needCost; + } + + public void setNeedCost(int[] needCost) { + this.needCost = needCost; + } + + public int[] getGoalItems() { + return goalItems; + } + + public void setGoalItems(int[] goalItems) { + this.goalItems = goalItems; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + public String getDesc() { + return desc; + } + + public void setDesc(String desc) { + this.desc = desc; + } +} From 2cafa21e1dc9b2d994a9d68adca296674fb7d093 Mon Sep 17 00:00:00 2001 From: mengchengzhen <13682025901@163.com> Date: Fri, 16 Apr 2021 14:02:11 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E4=BA=91=E6=B8=B8=E5=95=86=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/activity/ActivityType.java | 2 +- .../main/java/config/SComposeActivity.java | 33 ++++++++++++++++++- .../src/main/java/config/SComposeBook.java | 21 +++++++++++- 3 files changed, 53 insertions(+), 3 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java index 89b76a32c..e047f9e6d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java @@ -82,7 +82,7 @@ public interface ActivityType { int COW_FLY_SKY = 62;//牛气冲天 int LUCKY_GET = 63;//福星高照 int FIFTEEN_LOGIN = 64;//十五日签到 - int EQUIP_UPLEVEL = 65; + int EQUIP_UPLEVEL = 65;//云游商人 int SUB_ACTIVITY = 8000;//易经宝库 int SKIN_RECHARGE_ACTIVITY = 71; diff --git a/tablemanager/src/main/java/config/SComposeActivity.java b/tablemanager/src/main/java/config/SComposeActivity.java index af2eeeaa4..bcfc38296 100644 --- a/tablemanager/src/main/java/config/SComposeActivity.java +++ b/tablemanager/src/main/java/config/SComposeActivity.java @@ -1,7 +1,14 @@ package config; +import manager.STableManager; import manager.Table; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + @Table(name ="SComposeActivity") public class SComposeActivity implements BaseConfig { private int id; @@ -10,9 +17,33 @@ public class SComposeActivity implements BaseConfig { private int count; private int composeType; + private Map> configMap; + private Map>> itemMap; + @Override public void init() throws Exception { - + Map> tempConfigMap = new HashMap<>(); + Map>> tempItemMap = new HashMap<>(); + Map config = STableManager.getConfig(SComposeActivity.class); + for(SComposeActivity activity : config.values()){ + if(tempConfigMap.containsKey(activity.getActivityId())){ + tempConfigMap.get(activity.getActivityId()).put(activity.getComposeType(),activity); + List list = Arrays.stream( activity.getNeedItems() ).boxed().collect(Collectors.toList()); + tempItemMap.get(activity.getActivityId()).put(activity.getComposeType(),list); + }else{ + Map map1 = new HashMap<>(); + map1.put(activity.getComposeType(),activity); + tempConfigMap.put(activity.getActivityId(),map1); + Map> map2 = new HashMap<>(); + List list = Arrays.stream( activity.getNeedItems() ).boxed().collect(Collectors.toList()); + map2.put(activity.getComposeType(),list); + tempItemMap.put(activity.getActivityId(),map2); + } + } + if(configMap == null){ + configMap = tempConfigMap; + itemMap = tempItemMap; + } } public int getId() { diff --git a/tablemanager/src/main/java/config/SComposeBook.java b/tablemanager/src/main/java/config/SComposeBook.java index 5316ad4d7..4f1f47908 100644 --- a/tablemanager/src/main/java/config/SComposeBook.java +++ b/tablemanager/src/main/java/config/SComposeBook.java @@ -1,7 +1,11 @@ package config; +import manager.STableManager; import manager.Table; +import java.util.HashMap; +import java.util.Map; + @Table(name ="SComposeBook") public class SComposeBook implements BaseConfig { private int id; @@ -11,9 +15,24 @@ public class SComposeBook implements BaseConfig { private int type; private String desc; + private Map> typeMap; + @Override public void init() throws Exception { - + Map> tempTypeMap = new HashMap<>(); + Map config = STableManager.getConfig(SComposeBook.class); + for(SComposeBook book : config.values()){ + if(tempTypeMap.containsKey(book.getType())){ + tempTypeMap.get(book.getType()).put(book.getGoalItems()[0],book); + }else{ + Map map = new HashMap<>(); + map.put(book.getGoalItems()[0],book); + tempTypeMap.put(book.getType(),map); + } + } + if(typeMap == null){ + typeMap = tempTypeMap; + } } public int getId() { From 92d850c470e0d59aac6c04665b00ed750d050cc3 Mon Sep 17 00:00:00 2001 From: mengchengzhen <13682025901@163.com> Date: Fri, 16 Apr 2021 17:16:30 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E8=A3=85=E5=A4=87=E5=8D=87=E6=98=9F?= =?UTF-8?q?=EF=BC=88=E4=BA=91=E6=B8=B8=E5=95=86=E4=BA=BA=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/globals/BIReason.java | 2 + .../logic/activity/EquipUpLevelActivity.java | 33 ++++++++--- .../activity/event/EquipUpLevelEvent.java | 22 ------- .../ljsd/jieling/logic/item/ItemLogic.java | 57 +++++++++++++++++++ .../main/java/config/SComposeActivity.java | 18 +++++- .../src/main/java/config/SComposeBook.java | 6 +- 6 files changed, 104 insertions(+), 34 deletions(-) delete mode 100644 serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/globals/BIReason.java b/serverlogic/src/main/java/com/ljsd/jieling/globals/BIReason.java index 2fd46609e..379eb8e9d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/globals/BIReason.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/globals/BIReason.java @@ -326,4 +326,6 @@ public interface BIReason { int ACTIVE_USERSKIN = 1089;// 激活玩家皮肤 int ACTIVE_TITLE = 1090;// 激活玩家称号 int ACTIVE_MOUNT = 1091;// 激活玩家坐骑 + int EQUIP_UPLEVEL_COST = 1092;//装备升星消耗 + int EQUIP_UPLEVEL_REWARD = 1093;//装备升星获得 } \ No newline at end of file diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java index db76db7f8..a52d4b19d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/EquipUpLevelActivity.java @@ -1,23 +1,38 @@ package com.ljsd.jieling.logic.activity; -import com.ljsd.jieling.logic.activity.event.EquipUpLevelEvent; -import com.ljsd.jieling.logic.activity.event.IEvent; -import com.ljsd.jieling.logic.activity.event.Poster; -import com.ljsd.jieling.logic.dao.UserManager; +import com.ljsd.jieling.jbean.ActivityMission; +import com.ljsd.jieling.jbean.ActivityProgressInfo; import com.ljsd.jieling.logic.dao.root.User; +import config.SComposeActivity; + +import java.util.HashMap; +import java.util.Map; public class EquipUpLevelActivity extends AbstractActivity { public EquipUpLevelActivity(int id) { super(id); - Poster.getPoster().listenEvent(this, EquipUpLevelEvent.class); } @Override - public void onEvent(IEvent event) throws Exception { - if (!(event instanceof EquipUpLevelEvent)){ - return; + public void initActivity(User user) throws Exception { + ActivityMission mission = new ActivityMission(); + Map> configMap = SComposeActivity.getConfigMap(); + Map useTypeMap = new HashMap<>(); + for(Map.Entry entry : configMap.get(id).entrySet()){ + useTypeMap.put(entry.getKey(),entry.getValue().getCount()); } - User user = UserManager.getUser(((EquipUpLevelEvent) event).getuId()); + for(Map.Entry entry : useTypeMap.entrySet()){ + ActivityProgressInfo activityProgressInfo = new ActivityProgressInfo(); + activityProgressInfo.setProgrss(entry.getValue()); + activityProgressInfo.setState(0); + mission.getActivityMissionMap().put(entry.getKey(), activityProgressInfo); + } + mission.setOpenType(1); + mission.setV(0); + mission.setActivityState(ActivityType.OPEN_STATE); + user.getActivityManager().getActivityMissionMap().put(id, mission); + } + } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java deleted file mode 100644 index 5b93e259b..000000000 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/EquipUpLevelEvent.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.ljsd.jieling.logic.activity.event; - -public class EquipUpLevelEvent implements IEvent { - private int uId; - private int equipId; - - public int getuId() { - return uId; - } - - public void setuId(int uId) { - this.uId = uId; - } - - public int getEquipId() { - return equipId; - } - - public void setEquipId(int equipId) { - this.equipId = equipId; - } -} 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 61f25736a..afe4949ba 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 @@ -9,6 +9,8 @@ import com.ljsd.jieling.globals.BIReason; import com.ljsd.jieling.globals.Global; import com.ljsd.jieling.globals.GlobalItemType; import com.ljsd.jieling.handler.map.MapManager; +import com.ljsd.jieling.jbean.ActivityMission; +import com.ljsd.jieling.jbean.ActivityProgressInfo; import com.ljsd.jieling.ktbeans.ReportEventEnum; import com.ljsd.jieling.ktbeans.ReportUtil; import com.ljsd.jieling.logic.activity.event.EspecialEquipUpEvent; @@ -888,4 +890,59 @@ public class ItemLogic { MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.JEWEL_BUILD_RESPONSE_VALUE,null,true); } + + /** + *装备升星(云游商人) + */ + public void equipUpLevel(ISession session, int activityId,int equipId,int itemId,int itemNum, + MessageTypeProto.MessageType messageType) throws Exception{ + PlayerInfoProto.EquipUpLevelResponse.Builder response = PlayerInfoProto.EquipUpLevelResponse.newBuilder(); + response.setResult(false); + User user = UserManager.getUser(session.getUid()); + int type = SComposeActivity.getTypeById(activityId,equipId); + if(type == -1){ + LOGGER.error("type找不到配置,活动id:{},装备id:{}",activityId,equipId); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + throw new ErrorCodeException(ErrorCode.CFG_NULL); + } + SComposeBook config = SComposeBook.getBookById(type,equipId); + if(config == null){ + LOGGER.error("config找不到配置,type:{},装备id:{}",type,equipId); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + throw new ErrorCodeException(ErrorCode.CFG_NULL); + } + int[] itemC = config.getNeedCost(); + if(itemC[0] != itemId || itemC[1] != itemNum){ + LOGGER.error("itemCost不匹配,item:{},num:{},conItem:{},conNum:{}",itemId,itemNum,itemC[0],itemC[1]); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + throw new ErrorCodeException(ErrorCode.CFG_NULL); + } + ActivityMission misson = user.getActivityManager().getActivityMissionMap().get(activityId); + if(misson == null){ + LOGGER.error("misson为空,activityId:{}",activityId); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); + } + ActivityProgressInfo progress = misson.getActivityMissionMap().get(type); + if(progress == null){ + LOGGER.error("progress为空,type:{}",type); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); + } + if(progress.getProgrss() <= 0){ + LOGGER.error("progress次数不足,num:{}",progress.getProgrss()); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + throw new ErrorCodeException(ErrorCode.REFRESH_WHEL_TIME_NOT); + } + boolean itemCost = ItemUtil.itemCost(user, new int[][]{{equipId, 1},{itemId, itemNum}}, BIReason.EQUIP_UPLEVEL_COST, equipId); + if(!itemCost){ + LOGGER.error("item不足,equipId:{},itemId:{},itemNum:{}",equipId,itemId,itemNum); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH); + } + CommonProto.Drop.Builder drop = ItemUtil.drop(user,new int[][]{{config.getGoalItems()[0],config.getGoalItems()[1]}},BIReason.EQUIP_UPLEVEL_REWARD); + response.setResult(true); + response.setDrop(drop); + MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + } } diff --git a/tablemanager/src/main/java/config/SComposeActivity.java b/tablemanager/src/main/java/config/SComposeActivity.java index bcfc38296..c6cea3bc1 100644 --- a/tablemanager/src/main/java/config/SComposeActivity.java +++ b/tablemanager/src/main/java/config/SComposeActivity.java @@ -17,8 +17,8 @@ public class SComposeActivity implements BaseConfig { private int count; private int composeType; - private Map> configMap; - private Map>> itemMap; + private static Map> configMap; + private static Map>> itemMap; @Override public void init() throws Exception { @@ -46,6 +46,20 @@ public class SComposeActivity implements BaseConfig { } } + public static Map> getConfigMap(){ + return configMap; + } + + public static int getTypeById(int actId,int equipId){ + for(Map.Entry> entry : itemMap.get(actId).entrySet()){ + if(entry.getValue().contains(equipId)){ + return entry.getKey(); + } + } + return -1; + } + + public int getId() { return id; } diff --git a/tablemanager/src/main/java/config/SComposeBook.java b/tablemanager/src/main/java/config/SComposeBook.java index 4f1f47908..529455ebc 100644 --- a/tablemanager/src/main/java/config/SComposeBook.java +++ b/tablemanager/src/main/java/config/SComposeBook.java @@ -15,7 +15,7 @@ public class SComposeBook implements BaseConfig { private int type; private String desc; - private Map> typeMap; + private static Map> typeMap; @Override public void init() throws Exception { @@ -35,6 +35,10 @@ public class SComposeBook implements BaseConfig { } } + public static SComposeBook getBookById(int type,int equipId){ + return typeMap.get(type).get(equipId); + } + public int getId() { return id; } From d94c0233276c0e26a4457a040af4ca853483ab41 Mon Sep 17 00:00:00 2001 From: mengchengzhen <13682025901@163.com> Date: Fri, 16 Apr 2021 17:19:10 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E8=A3=85=E5=A4=87=E5=8D=87=E6=98=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/activity/EquipUpLevelHandler.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/handler/activity/EquipUpLevelHandler.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/EquipUpLevelHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/EquipUpLevelHandler.java new file mode 100644 index 000000000..79ada67c3 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/activity/EquipUpLevelHandler.java @@ -0,0 +1,26 @@ +package com.ljsd.jieling.handler.activity; + +import com.ljsd.jieling.handler.BaseHandler; +import com.ljsd.jieling.logic.activity.ActivityLogic; +import com.ljsd.jieling.logic.item.ItemLogic; +import com.ljsd.jieling.network.session.ISession; +import rpc.protocols.MessageTypeProto; +import rpc.protocols.PlayerInfoProto; + +public class EquipUpLevelHandler extends BaseHandler { + @Override + public MessageTypeProto.MessageType getMessageCode() { + return MessageTypeProto.MessageType.EQUIP_UPLEVEL_REQUEST; + } + + @Override + public void processWithProto(ISession iSession, PlayerInfoProto.EquipUpLevelRequest proto) throws Exception { + int activityId = proto.getActivityId(); + int equipId = proto.getEquipId(); + int itemId = proto.getItemId(); + int itemNum = proto.getItemNum(); + ItemLogic.getInstance().equipUpLevel(iSession,activityId,equipId,itemId,itemNum, + MessageTypeProto.MessageType.EQUIP_UPLEVEL_RESPONSE); + + } +} From 423bb145c55424fe95dc1511d600ce000a3932cb Mon Sep 17 00:00:00 2001 From: mengchengzhen <13682025901@163.com> Date: Fri, 16 Apr 2021 17:35:53 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E6=8E=92=E8=A1=8C=E6=A6=9C=E7=9A=AE?= =?UTF-8?q?=E8=82=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/player/ActiveUserMountHandler.java | 2 +- .../handler/player/ActiveUserTitleHandler.java | 2 +- .../logic/rank/rankImpl/CarDealyGuildRank.java | 10 +++++++++- .../logic/rank/rankImpl/CarDealyRank.java | 4 ++++ .../rank/rankImpl/DeathPathEveryGuildRank.java | 16 +++++++++++++++- .../rank/rankImpl/DeathPathTotalGuildRank.java | 13 +++++++++++-- .../logic/rank/rankImpl/GuildSheJiScoreRank.java | 6 +++++- 7 files changed, 46 insertions(+), 7 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/player/ActiveUserMountHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/player/ActiveUserMountHandler.java index 2b71cfe5c..315fc7b2a 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/player/ActiveUserMountHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/player/ActiveUserMountHandler.java @@ -35,7 +35,7 @@ public class ActiveUserMountHandler extends BaseHandler data, PlayerInfoProto.RankResponse.Builder builder) throws Exception { - + User everyUser = UserManager.getUser(Integer.parseInt(data.getValue()), true); + if (everyUser == null){ + return; + } String value = data.getValue(); int guildId = Integer.parseInt(value); GuildInfo guildInfo = GuilidManager.guildInfoMap.get(guildId); @@ -42,6 +46,10 @@ public class CarDealyGuildRank extends AbstractRank{ CommonProto.UserRank everyRank = CommonProto.UserRank.newBuilder() .setGuildName(familyName) .setRankInfo(everyRankInfo) + .setSex(everyUser.getPlayerInfoManager().getSex()) + .setUserSkin(everyUser.getPlayerInfoManager().getUserSkin()) + .setUserTitle(everyUser.getPlayerInfoManager().getUserTitle()) + .setUserMount(everyUser.getPlayerInfoManager().getUserMount()) .build(); builder.addRanks(everyRank); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/CarDealyRank.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/CarDealyRank.java index 614aa7909..33430d422 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/CarDealyRank.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/CarDealyRank.java @@ -34,6 +34,10 @@ public class CarDealyRank extends AbstractRank{ CommonProto.UserRank everyRank = CommonProto.UserRank.newBuilder() .setUserName(everyUser.getPlayerInfoManager().getNickName()) .setRankInfo(everyRankInfo) + .setSex(everyUser.getPlayerInfoManager().getSex()) + .setUserSkin(everyUser.getPlayerInfoManager().getUserSkin()) + .setUserTitle(everyUser.getPlayerInfoManager().getUserTitle()) + .setUserMount(everyUser.getPlayerInfoManager().getUserMount()) .build(); builder.addRanks(everyRank); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathEveryGuildRank.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathEveryGuildRank.java index 2d2827555..d162341f0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathEveryGuildRank.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathEveryGuildRank.java @@ -2,6 +2,7 @@ package com.ljsd.jieling.logic.rank.rankImpl; import com.ljsd.jieling.db.redis.RedisUtil; import com.ljsd.jieling.logic.dao.GuilidManager; +import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.GuildInfo; import com.ljsd.jieling.logic.dao.root.User; import rpc.protocols.CommonProto; @@ -21,6 +22,15 @@ public class DeathPathEveryGuildRank extends AbstractRank { protected void getOptional(int index, ZSetOperations.TypedTuple data, PlayerInfoProto.RankResponse.Builder builder) { GuildInfo guildInfo = GuilidManager.guildInfoMap.get(Integer.parseInt(data.getValue())); + User everyUser = null; + try{ + everyUser = UserManager.getUser(Integer.parseInt(data.getValue()), true); + if (everyUser == null){ + return; + } + }catch(Exception e){ + e.printStackTrace(); + } CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder() .setRank(index) .setParam1(getParam1(data.getScore())) @@ -29,7 +39,11 @@ public class DeathPathEveryGuildRank extends AbstractRank { CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder() .setUid(guildInfo.getId()) .setGuildName(guildInfo.getName()) - .setRankInfo(everyRankInfo); + .setRankInfo(everyRankInfo) + .setSex(everyUser.getPlayerInfoManager().getSex()) + .setUserSkin(everyUser.getPlayerInfoManager().getUserSkin()) + .setUserTitle(everyUser.getPlayerInfoManager().getUserTitle()) + .setUserMount(everyUser.getPlayerInfoManager().getUserMount()); builder.addRanks(everyRank); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathTotalGuildRank.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathTotalGuildRank.java index 3e0e56b89..3b0890cab 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathTotalGuildRank.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/DeathPathTotalGuildRank.java @@ -3,6 +3,7 @@ package com.ljsd.jieling.logic.rank.rankImpl; import com.ljsd.jieling.db.redis.RedisKey; import com.ljsd.jieling.db.redis.RedisUtil; import com.ljsd.jieling.logic.dao.GuilidManager; +import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.GuildInfo; import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.family.DeathChallengeCount; @@ -39,7 +40,11 @@ public class DeathPathTotalGuildRank extends AbstractRank{ } protected void getOptional(int index, ZSetOperations.TypedTuple data, PlayerInfoProto.RankResponse.Builder builder) throws Exception { - GuildInfo guildInfo = GuilidManager.guildInfoMap.get(Integer.parseInt(data.getValue())); + User everyUser = UserManager.getUser(Integer.parseInt(data.getValue()), true); + if (everyUser == null){ + return; + } + GuildInfo guildInfo = GuilidManager.guildInfoMap.get(Integer.parseInt(data.getValue())); DeathChallengeCount countInfo = RedisUtil.getInstence().get(RedisKey.DEATH_PATH_TOTAL_CHALLENGE_COUNT, String.valueOf(guildInfo.getId()), DeathChallengeCount.class); CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder() .setRank(index) @@ -49,7 +54,11 @@ public class DeathPathTotalGuildRank extends AbstractRank{ CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder() .setUid(guildInfo.getId()) .setGuildName(guildInfo.getName()) - .setRankInfo(everyRankInfo); + .setRankInfo(everyRankInfo) + .setSex(everyUser.getPlayerInfoManager().getSex()) + .setUserSkin(everyUser.getPlayerInfoManager().getUserSkin()) + .setUserTitle(everyUser.getPlayerInfoManager().getUserTitle()) + .setUserMount(everyUser.getPlayerInfoManager().getUserMount()); builder.addRanks(everyRank); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/GuildSheJiScoreRank.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/GuildSheJiScoreRank.java index b4e80dfea..a85d738ea 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/GuildSheJiScoreRank.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/GuildSheJiScoreRank.java @@ -46,7 +46,11 @@ public class GuildSheJiScoreRank extends AbstractRank { .setUid(user.getId()) .setLevel(user.getPlayerInfoManager().getLevel()) .setGuildName(guildInfo.getName()) - .setRankInfo(everyRankInfo); + .setRankInfo(everyRankInfo) + .setSex(user.getPlayerInfoManager().getSex()) + .setUserSkin(user.getPlayerInfoManager().getUserSkin()) + .setUserTitle(user.getPlayerInfoManager().getUserTitle()) + .setUserMount(user.getPlayerInfoManager().getUserMount()); builder.addRanks(everyRank); }