From 5e1abc8359ca35354eabe44e415c32d51e20b1a7 Mon Sep 17 00:00:00 2001 From: lvxinran Date: Tue, 8 Jun 2021 06:26:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E4=BB=BB=E5=8A=A1=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/handler/map/EventType.java | 2 ++ .../map/behavior/FiftyFiveBehavior.java | 27 +++++++++++++++++++ .../map/behavior/FourtySixBehavior.java | 3 ++- .../jieling/logic/dao/CumulationData.java | 4 +++ .../ljsd/jieling/logic/mission/GameEvent.java | 2 ++ .../jieling/logic/mission/MissionType.java | 4 ++- .../mission/data/DataManagerDistributor.java | 2 ++ .../mission/data/EndlessBigRewardManager.java | 23 ++++++++++++++++ .../data/EndlessSmallRewardManager.java | 23 ++++++++++++++++ .../event/MissionEventDistributor.java | 9 +++++++ .../jieling/logic/store/BuyGoodsNewLogic.java | 2 +- 11 files changed, 98 insertions(+), 3 deletions(-) create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FiftyFiveBehavior.java create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessBigRewardManager.java create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessSmallRewardManager.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java index 48234fb39..2581ced23 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java @@ -123,6 +123,8 @@ public class EventType { public static final int fiftytwo = 52; public static final int fiftythree = 53; public static final int fiftyFour = 54; + public static final int fiftyFive = 55; + public static final int updatePonintEvent = 1; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FiftyFiveBehavior.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FiftyFiveBehavior.java new file mode 100644 index 000000000..a8ea83ed7 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FiftyFiveBehavior.java @@ -0,0 +1,27 @@ +package com.ljsd.jieling.handler.map.behavior; + +import com.ljsd.jieling.handler.map.EventType; +import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.mission.GameEvent; +import org.springframework.stereotype.Component; +import rpc.protocols.MapInfoProto; + +/** + * @author lvxinran + * @date 2021/6/8 + * @discribe + */ +@Component +public class FiftyFiveBehavior extends BaseBehavior { + @Override + public int getBehaviorType() { + return EventType.fiftyFive; + } + + @Override + public boolean process(int optionId, User user, int[][] behaviorTypeValues, MapInfoProto.EventUpdateResponse.Builder eventUpdateResponse) throws Exception { + BehaviorUtil.destoryApointXY(user,user.getMapManager().getCurXY()); + user.getUserMissionManager().onGameEvent(user, GameEvent.ENDLESS_SMALL_REWARD); + return true; + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FourtySixBehavior.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FourtySixBehavior.java index 1de33e35c..26ef51b8d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FourtySixBehavior.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/FourtySixBehavior.java @@ -2,6 +2,7 @@ package com.ljsd.jieling.handler.map.behavior; import com.ljsd.jieling.handler.map.EventType; import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.mission.GameEvent; import rpc.protocols.MapInfoProto; import org.springframework.stereotype.Component; @@ -16,7 +17,7 @@ public class FourtySixBehavior extends BaseBehavior { public boolean process(int optionId, User user, int[][] behaviorTypeValues, MapInfoProto.EventUpdateResponse.Builder eventUpdateResponse) throws Exception { BehaviorUtil.destoryApointXY(user,user.getMapManager().getCurXY()); - + user.getUserMissionManager().onGameEvent(user, GameEvent.ENDLESS_BIG_REWARD); return true; } } 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 04b03de0b..043d95cd7 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 @@ -184,6 +184,10 @@ public class CumulationData { public int energyBuyTimes; //地图探索度达到 public int mapOpenPercent; + //小宝箱 + public int endlessSmallReward; + //大宝箱 + public int endlessBigReward; //山河社稷星星数 public int hardstage_stars; 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 7c765444c..f1c45ab64 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 @@ -118,6 +118,8 @@ public enum GameEvent { ENDLESS_KILL_SMALL_BOSS,//无尽杀小boss ENDLESS_KILL_LAST_BOSS,//无尽击杀最终boss ENDLESS_OPEN_MAP,//无尽提升探索度 + ENDLESS_SMALL_REWARD, + ENDLESS_BIG_REWARD, HARSTAGE_STARS,//山河社稷图星数 HARSTAGE_NODE,//山河社稷图通关章节 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 0c907520c..8a4673e49 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 @@ -133,7 +133,9 @@ public enum MissionType { ENDLESS_BOSS_KILL(125), ENDLESS_LAST_BOSS(126), ENDLESS_BUY_ENERGY(127), - ENDLESS_OPEN_PERCENT(128) + ENDLESS_OPEN_PERCENT(128), + ENDLESS_SMALL_REWARD(129), + ENDLESS_BIG_REWARD(130), ; private int missionType; 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 1ebcbdfb0..966318fae 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 @@ -151,6 +151,8 @@ public class DataManagerDistributor { judges.put(MissionType.ENDLESS_BOSS_KILL,new EndlessBossKillManager()); judges.put(MissionType.ENDLESS_LAST_BOSS,new EndlessLastBossKillManager()); judges.put(MissionType.ENDLESS_OPEN_PERCENT,new EndlessOpenPercentManager()); + judges.put(MissionType.ENDLESS_SMALL_REWARD,new EndlessSmallRewardManager()); + judges.put(MissionType.ENDLESS_BIG_REWARD,new EndlessBigRewardManager()); //山河社稷图 judges.put(MissionType.HARSTAGE_STARS, new HardStageStarsDataManager()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessBigRewardManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessBigRewardManager.java new file mode 100644 index 000000000..5f8d62030 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessBigRewardManager.java @@ -0,0 +1,23 @@ +package com.ljsd.jieling.logic.mission.data; + +import com.ljsd.jieling.logic.dao.CumulationData; +import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.mission.MissionType; + +/** + * @author lvxinran + * @date 2021/6/8 + * @discribe + */ +public class EndlessBigRewardManager extends AbstractDataManager { + @Override + public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { + data.endlessBigReward++; + return new CumulationData.Result(missionType); + } + + @Override + public int getProcess(User user, CumulationData data, int[] missionSubType) { + return data.endlessBigReward; + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessSmallRewardManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessSmallRewardManager.java new file mode 100644 index 000000000..f0e47aca8 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EndlessSmallRewardManager.java @@ -0,0 +1,23 @@ +package com.ljsd.jieling.logic.mission.data; + +import com.ljsd.jieling.logic.dao.CumulationData; +import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.mission.MissionType; + +/** + * @author lvxinran + * @date 2021/6/8 + * @discribe + */ +public class EndlessSmallRewardManager extends AbstractDataManager{ + @Override + public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { + data.endlessSmallReward++; + return new CumulationData.Result(missionType); + } + + @Override + public int getProcess(User user, CumulationData data, int[] missionSubType) { + return data.endlessSmallReward; + } +} 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 12500c012..59ca27064 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 @@ -462,6 +462,15 @@ public class MissionEventDistributor { eventEnumListMap.put(GameEvent.ENDLESS_OPEN_MAP, typeList); eventProcessor.put(GameEvent.ENDLESS_OPEN_MAP, new CumulationDataEventProcessor()); + typeList = new ArrayList<>(); + typeList.add(MissionType.ENDLESS_SMALL_REWARD); + eventEnumListMap.put(GameEvent.ENDLESS_SMALL_REWARD, typeList); + eventProcessor.put(GameEvent.ENDLESS_SMALL_REWARD, new CumulationDataEventProcessor()); + + typeList = new ArrayList<>(); + typeList.add(MissionType.ENDLESS_BIG_REWARD); + eventEnumListMap.put(GameEvent.ENDLESS_BIG_REWARD, typeList); + eventProcessor.put(GameEvent.ENDLESS_BIG_REWARD, new CumulationDataEventProcessor()); //山河社稷图 typeList = new ArrayList<>(); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java index 0f0c42320..b301998c0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java @@ -841,7 +841,7 @@ public class BuyGoodsNewLogic { } } - public static void dailyRefresh(User user){ + private static void dailyRefresh(User user){ NewRechargeInfo info = user.getPlayerInfoManager().getNewRechargeInfo(); if(TimeUtils.differentDays(info.getLastRefreshTime(),System.currentTimeMillis())<1){ return;