From 6f63f03ab0afcb2f4740dde0f9b8c4366fd783a9 Mon Sep 17 00:00:00 2001 From: duhui Date: Mon, 6 Jun 2022 16:31:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=88=E5=8D=A1=E8=B0=83=E6=95=B4=EF=BC=8C?= =?UTF-8?q?=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/GetPlayerInfoHandler.java | 20 +++++----- .../handler/vip/MonthTakeDailyHandler.java | 1 - .../jieling/logic/store/BuyGoodsNewLogic.java | 37 ++++++------------- .../main/java/config/SMonthcardConfig.java | 3 ++ 4 files changed, 25 insertions(+), 36 deletions(-) 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 99d639cb6..556fcd2db 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -251,16 +251,16 @@ public class GetPlayerInfoHandler extends BaseHandler{ // 心愿抽卡 旧玩家兼容 wishOldUserRandomNumInit(user); //hotfix 月卡 - PlayerLogic.getInstance().getMonthCardInfo(user); - int monthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.MONTHCARDID).getPrice(); - int lmonthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.LMONTHCARDID).getPrice(); - if(newRechargeInfo.getMonthRr()>=monthline&&playerInfoManager.getMonthCard().getOrDefault(1,0)==0){ - user.getPlayerInfoManager().getMonthCard().put(Global.MONTHCARDID, (int) (System.currentTimeMillis() / 1000)); - } - if(newRechargeInfo.getsMonthRr()>=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)); - } +// PlayerLogic.getInstance().getMonthCardInfo(user); +// int monthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.MONTHCARDID).getPrice(); +// int lmonthline = STableManager.getConfig(SMonthcardConfig.class).get(Global.LMONTHCARDID).getPrice(); +// if(newRechargeInfo.getMonthRr()>=monthline&&playerInfoManager.getMonthCard().getOrDefault(1,0)==0){ +// user.getPlayerInfoManager().getMonthCard().put(Global.MONTHCARDID, (int) (System.currentTimeMillis() / 1000)); +// } +// if(newRechargeInfo.getsMonthRr()>=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)); +// } // 四灵试炼初始化 FourChallengeLogic.getInstance().firstGetTimes(user); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/MonthTakeDailyHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/MonthTakeDailyHandler.java index 5e288c522..e6ff19171 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/MonthTakeDailyHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/MonthTakeDailyHandler.java @@ -36,7 +36,6 @@ public class MonthTakeDailyHandler extends BaseHandler =monthline){ - sendneed=true; - user.getPlayerInfoManager().putMonthCard(Global.MONTHCARDID, (int) (System.currentTimeMillis() / 1000)); - } - } - if(info.getsMonthRr()=lmonthline){ - sendneed=true; - user.getPlayerInfoManager().putMonthCard(Global.LMONTHCARDID, (int) (System.currentTimeMillis() / 1000)); - Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.RECHARGE_BUY.getType(),Global.LMONTHCARDID)); - } - } + public static void activeMonthCard(User user,double price,int goodId){ + Map monthcardConfigMap = STableManager.getConfig(SMonthcardConfig.class); - if(info.getSinceremonth() < sinceremonthline){ - info.setSinceremonth(MathUtils.doubleAdd(price,info.getSinceremonth())); - if(info.getSinceremonth() >= sinceremonthline){ + boolean sendneed =false; + for (SMonthcardConfig monthcardConfig : monthcardConfigMap.values()) { + if (goodId == monthcardConfig.getPrice()){ sendneed=true; - user.getPlayerInfoManager().putMonthCard(Global.SINCERECARDID, (int) (System.currentTimeMillis() / 1000)); + user.getPlayerInfoManager().putMonthCard(monthcardConfig.getId(), TimeUtils.nowInt()); + // 特殊处理 + if (monthcardConfig.getId() == Global.LMONTHCARDID){ + Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.RECHARGE_BUY.getType(),Global.LMONTHCARDID)); + } + break; } } if(sendneed){ diff --git a/tablemanager/src/main/java/config/SMonthcardConfig.java b/tablemanager/src/main/java/config/SMonthcardConfig.java index e682b78c5..8815c02c9 100644 --- a/tablemanager/src/main/java/config/SMonthcardConfig.java +++ b/tablemanager/src/main/java/config/SMonthcardConfig.java @@ -12,6 +12,9 @@ public class SMonthcardConfig implements BaseConfig { private String name; + /** + * 2022-06-06 字段用法从金额改为对应月卡的礼包id + */ private int price; private int[][] baseReward;