From 76c082bcccad4482ad4e2d22d221970396e2c817 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Mon, 26 Oct 2020 19:27:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=95=B0=E5=85=8D=E8=B4=B9=E7=A4=BC?= =?UTF-8?q?=E5=8C=85=E4=B8=8D=E4=B8=8A=E6=8A=A5=20=E7=A4=BE=E7=A8=B7?= =?UTF-8?q?=E5=A4=A7=E5=85=B8=E6=8E=92=E8=A1=8C=E8=BF=9B=E5=BA=A6=20?= =?UTF-8?q?=E6=9C=88=E7=A4=BC=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/GameGM/GMRequestHandler.java | 10 +++++--- .../jieling/handler/GetPlayerInfoHandler.java | 25 ++++++++++++++++--- .../jieling/logic/activity/SheJiActivity.java | 15 +++++++---- .../jieling/logic/store/BuyGoodsLogic.java | 2 +- 4 files changed, 38 insertions(+), 14 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java index 18bca4b48..32a0caaed 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java @@ -57,9 +57,7 @@ public class GMRequestHandler extends BaseHandler{ } @Override public void process(ISession iSession, PacketNetData netData) throws Exception { - if(!GameApplication.serverProperties.isDebug()){ - throw new ErrorCodeException("In a formal setting"); - } + byte[] message = netData.parseClientProtoNetData(); CommonProto.GMCommand gmCommand = CommonProto.GMCommand.parseFrom(message); String command = gmCommand.getCommand(); @@ -72,11 +70,15 @@ public class GMRequestHandler extends BaseHandler{ printWriter.close(); CommonProto.GmResponse.Builder gmBuilder = CommonProto.GmResponse.newBuilder(); MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.GM_RESPONSE_VALUE, gmBuilder.build(), true); - return; + return; } if(!GameApplication.serverProperties.isDebug()){ CommonProto.GmResponse.Builder gmBuilder = CommonProto.GmResponse.newBuilder(); MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.GM_RESPONSE_VALUE, gmBuilder.build(), true); + return; + } + if(!GameApplication.serverProperties.isDebug()){ + throw new ErrorCodeException("In a formal setting"); } if (!command.contains("#") || command.split("#").length < 3) { LOGGER.error("wrong command :" + command); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java index 9bec9836c..9a623b49d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -5,12 +5,16 @@ import com.ljsd.jieling.db.mongo.MongoUtil; import com.ljsd.jieling.db.redis.RedisKey; import com.ljsd.jieling.db.redis.RedisUtil; import com.ljsd.jieling.globals.BIReason; +import com.ljsd.jieling.globals.Global; import com.ljsd.jieling.handler.map.MapLogic; import com.ljsd.jieling.handler.map.MapManager; import com.ljsd.jieling.ktbeans.ReportEventEnum; import com.ljsd.jieling.ktbeans.ReportUtil; import com.ljsd.jieling.logic.GlobalDataManaager; +import com.ljsd.jieling.logic.OnlineUserManager; import com.ljsd.jieling.logic.activity.ActivityLogic; +import com.ljsd.jieling.logic.activity.event.NewWelfareEvent; +import com.ljsd.jieling.logic.activity.event.NewWelfareTypeEnum; import com.ljsd.jieling.logic.activity.event.Poster; import com.ljsd.jieling.logic.activity.event.UserOnlineEvent; import com.ljsd.jieling.logic.dao.*; @@ -30,14 +34,12 @@ import com.ljsd.jieling.thread.task.RPCServerTask; import com.ljsd.jieling.util.CBean2Proto; import com.ljsd.jieling.util.ItemUtil; import com.ljsd.jieling.util.MessageUtil; -import config.SChallengeConfig; -import config.SGameSetting; -import config.SMazeTreasureSetting; -import config.SRechargeCommodityConfig; +import config.*; import manager.STableManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; +import util.MathUtils; import util.TimeUtils; import java.util.*; @@ -168,6 +170,21 @@ public class GetPlayerInfoHandler extends BaseHandler{ } }); } + + + + //hotfix 月卡 + int monthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.MONTHCARDID).getPrice(); + int lmonthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.LMONTHCARDID).getPrice(); + if(rechargeInfo.getMonthSaveAmt()>=monthline&&playerInfoManager.getMonthCard().getOrDefault(1,0)==0){ + user.getPlayerInfoManager().getMonthCard().put(Global.MONTHCARDID, (int) (System.currentTimeMillis() / 1000)); + } + if(rechargeInfo.getSmonthSaveAmt()>=lmonthline&&playerInfoManager.getMonthCard().getOrDefault(2,0)==0){ + user.getPlayerInfoManager().getMonthCard().put(Global.LMONTHCARDID, (int) (System.currentTimeMillis() / 1000)); + Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.RECHARGE_BUY.getType(),Global.LMONTHCARDID)); + } + + StoreLogic.reloadStoreInfo(user,7);//重载功能商店 PlayerInfoProto.GetPlayerInfoResponse getPlayerInfoResponse = PlayerInfoProto.GetPlayerInfoResponse.newBuilder() diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/SheJiActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/SheJiActivity.java index 16eb5fc78..94cdcee23 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/SheJiActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/SheJiActivity.java @@ -59,17 +59,22 @@ class SheJiActivity extends AbstractActivity { } } - + @Override + boolean takeRewardsProcess(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception { + int[][] values = sActivityRewardConfig.getValues(); + int missionProgress = activityProgressInfo.getProgrss(); + return missionProgress >= values[0][1]; + } @Override void updateProgressWithUser(User user, ActivityMission activityMission, int count) { Map activityProgressInfoMap = activityMission.getActivityMissionMap(); int progress; for (Map.Entry item : activityProgressInfoMap.entrySet()) { ActivityProgressInfo activityProgressInfo = item.getValue(); - //考虑退公会的情况 - if (activityProgressInfo.getProgrss() > count) { - break; - } +// //考虑退公会的情况 +// if (activityProgressInfo.getProgrss() > count) { +// break; +// } progress = count; activityProgressInfo.setProgrss(progress); activityMission.getActivityMissionMap().put(item.getKey(), activityProgressInfo); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java index 3c85a0410..35d62190d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java @@ -235,7 +235,7 @@ public class BuyGoodsLogic { if(sRechargeCommodityConfig.getAccumulativeRecharge() == 1){ try { - + user.getPlayerInfoManager().getMonthCard(); int monthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.MONTHCARDID).getPrice(); int lmonthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.LMONTHCARDID).getPrice(); boolean sendneed =false;