From 3d6c62161889ce90cf1297eee53ddd076fd22edf Mon Sep 17 00:00:00 2001 From: lvxinran Date: Tue, 17 Dec 2019 10:11:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A5=BD=E5=8F=8B=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/logic/dao/CumulationData.java | 2 ++ .../ljsd/jieling/logic/friend/FriendLogic.java | 1 + .../ljsd/jieling/logic/mission/GameEvent.java | 1 + .../ljsd/jieling/logic/mission/MissionType.java | 3 +++ .../mission/data/DataManagerDistributor.java | 1 + .../logic/mission/data/FriendApplyManager.java | 17 +++++++++++++++++ .../mission/event/MissionEventDistributor.java | 5 +++++ 7 files changed, 30 insertions(+) create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/FriendApplyManager.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java index 69ea1eb79..1204d0235 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java @@ -116,6 +116,8 @@ public class CumulationData { public int joinFamilyCount;//加入公会次数 + public int friendApplyCount;//提出好友申请次数 + public Map especialEquipStar = new HashMap<>();//法宝升到%s星级的数量为 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java index 791a3d29c..f3373e320 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/friend/FriendLogic.java @@ -267,6 +267,7 @@ public class FriendLogic { friendManager.addApplyFriend(uid); user.getFriendManager().addMyApplyFriend(inviteUid); sendFriendInfoIndication(uid,inviteUid,1); + user.getUserMissionManager().onGameEvent(user,GameEvent.FRIEND_APPLY); } MessageUtil.sendMessage(iSession, 1, msgId, null, true); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java index b5c6dfd04..dc7561963 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java @@ -70,6 +70,7 @@ public enum GameEvent { TAKE_FRIEND_GIFT,//领取好友赠礼 JOIN_FAMILY,//加入公会次数 + FRIEND_APPLY,//提出好友申请次数 } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java index 9e166da3b..895fc12c2 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java @@ -84,6 +84,7 @@ public enum MissionType { FIND_STAR(65),//占星 TAKE_FRIEND_GIFT(66),//领取好友友情点 JOIN_FAMILY(69), + FRIEND_APPLY(71),//提出%s次好友申请 ; private int missionType; @@ -228,6 +229,8 @@ public enum MissionType { return TAKE_FRIEND_GIFT; case 69: return JOIN_FAMILY; + case 71: + return FRIEND_APPLY; default: return null; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java index 9cd3ea1e4..fceaad3ce 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java @@ -106,6 +106,7 @@ public class DataManagerDistributor { judges.put(MissionType.TAKE_FRIEND_GIFT,new TakeFriendGiftTimesManager()); judges.put(MissionType.JOIN_FAMILY,new JoinFamilyCountManager()); + judges.put(MissionType.FRIEND_APPLY,new FriendApplyManager()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/FriendApplyManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/FriendApplyManager.java new file mode 100644 index 000000000..7b24b0c30 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/FriendApplyManager.java @@ -0,0 +1,17 @@ +package com.ljsd.jieling.logic.mission.data; + +import com.ljsd.jieling.logic.dao.CumulationData; +import com.ljsd.jieling.logic.mission.MissionType; + +/** + * @author lvxinran + * @date 2019/12/17 + * @discribe + */ +public class FriendApplyManager implements BaseDataManager { + @Override + public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { + data.friendApplyCount++; + return new CumulationData.Result(missionType); + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java index 24d4227a9..cbea7e916 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java @@ -284,6 +284,11 @@ public class MissionEventDistributor { eventEnumListMap.put(GameEvent.JOIN_FAMILY,typeList); eventProcessor.put(GameEvent.JOIN_FAMILY,new CumulationDataEventProcessor()); + typeList = new ArrayList<>(); + typeList.add(MissionType.FRIEND_APPLY); + eventEnumListMap.put(GameEvent.FRIEND_APPLY,typeList); + eventProcessor.put(GameEvent.FRIEND_APPLY,new CumulationDataEventProcessor()); + } private static final ThreadLocal>> threadMissionChangeList =