diff --git a/serverlogic/src/main/java/com/ljsd/jieling/config/SErrorCodeEerverConfig.java b/serverlogic/src/main/java/com/ljsd/jieling/config/SErrorCodeEerverConfig.java index 805a31299..de2c2838d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/config/SErrorCodeEerverConfig.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/config/SErrorCodeEerverConfig.java @@ -49,7 +49,7 @@ public class SErrorCodeEerverConfig implements BaseConfig { return value; } - public String getI18NMessage(String key,Object[] obj ){ + public static String getI18NMessage(String key,Object[] obj ){ String value = errorCodeMap.get(key); if (value == null) { return ""; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/core/HandlerLogicThread.java b/serverlogic/src/main/java/com/ljsd/jieling/core/HandlerLogicThread.java index 4258be8fc..eada6813e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/core/HandlerLogicThread.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/core/HandlerLogicThread.java @@ -101,19 +101,24 @@ public class HandlerLogicThread extends Thread{ MessageUtil.sendErrorResponse(session,0,msgId+1,"funciton not"); return; } - b = checkIsPermit(msgId, session); + /* b = checkIsPermit(msgId, session); if(!b){ MessageUtil.sendErrorResponse(session,0,msgId+1,"在地图探索中,不可以操作"); return; - } + }*/ } + if(msgId != MessageTypeProto.MessageType.GET_CHAT_MESSAGE_REQUEST_VALUE){ + LOGGER.info("doWork->uid={},mType={};start", userId, MessageTypeProto.MessageType.valueOf(msgId)); + } - LOGGER.info("doWork->uid={},mType={};start", userId, MessageTypeProto.MessageType.valueOf(msgId)); MissionEventDistributor.requestStart(); baseHandler.execute(session, packetNetData); MissionEventDistributor.requestEnd(session,true); - LOGGER.info("doWork->uid={},mType={};end", userId, MessageTypeProto.MessageType.valueOf(msgId)); + if(msgId != MessageTypeProto.MessageType.GET_CHAT_MESSAGE_REQUEST_VALUE){ + LOGGER.info("doWork->uid={},mType={};end", userId, MessageTypeProto.MessageType.valueOf(msgId)); + } + }catch (Exception e){ LOGGER.error("",e); } 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 a8053bed3..62c876380 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -6,6 +6,7 @@ import com.ljsd.jieling.logic.activity.ActivityType; import com.ljsd.jieling.logic.arena.ArenaLogic; import com.ljsd.jieling.logic.dao.PlayerManager; import com.ljsd.jieling.logic.dao.RechargeInfo; +import com.ljsd.jieling.logic.dao.RoomInfo; import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.mission.GameEvent; @@ -55,12 +56,9 @@ public class GetPlayerInfoHandler extends BaseHandler{ PlayerManager playerInfoManager = user.getPlayerInfoManager(); // 需要隔天刷新的字段统一在这里处理 if (TimeUtils.isOverTime(5,playerInfoManager.getLoginTime())) { - MapLogic.getInstance().resetDayInfo(user); //活动刷新 ActivityLogic.getInstance().flushEveryDay(user); - //商店刷新次数重置 - StoreLogic.resetStoreRefreshNum(userId); - PlayerLogic.getInstance().vipflushEveryDay(user); + PlayerLogic.getInstance().vipflushEveryDay(user,false); ArenaLogic.getInstance().flushFreeUseTimes(user); user.getUserMissionManager().onGameEvent(user, GameEvent.DAILY_REFRESH,0); } @@ -81,7 +79,8 @@ public class GetPlayerInfoHandler extends BaseHandler{ . setUsedTimes(vipInfoItem.getValue()) .build()); } - CommonProto.Player player = CBean2Proto.getPlayer(userId, user.getPlayerInfoManager(), user.getPlayerInfoManager().getMapId(), user.getMapManager().getCurMapId(),user.getMapManager()); + RoomInfo roomInfo = user.getRoomInfo(); + CommonProto.Player player = CBean2Proto.getPlayer(userId, user.getPlayerInfoManager(), user.getPlayerInfoManager().getMapId(), user.getMapManager().getCurMapId(),user.getMapManager(),roomInfo); RechargeInfo rechargeInfo = playerInfoManager.getRechargeInfo(); PlayerInfoProto.GetPlayerInfoResponse getPlayerInfoResponse = PlayerInfoProto.GetPlayerInfoResponse.newBuilder() diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java index defafaeea..fc27a0282 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java @@ -155,7 +155,7 @@ public class MapLogic { } } - mapManager.setDayFightCount(mapManager.getDayFightCount() + 1); + //todo 更新地圖次數 mapManager.setCurMapId(mapId); initMap(mapManager, user); user.setMapManager(mapManager); @@ -1169,12 +1169,6 @@ public class MapLogic { } - public void resetDayInfo(User user){ - user.getMapManager().setDayFightCount(0); - user.getMapManager().setBuyFightCount(0); - } - - public int updateMapMission(MapManager mapManager,int eventType,int eventId,int bossIdOrItemId){ LOGGER.info("the eventtype ={},eventId={},bossItemId={}",eventType,eventId,bossIdOrItemId); int mapId = mapManager.getCurMapId(); @@ -1532,13 +1526,15 @@ public class MapLogic { MessageUtil.sendErrorResponse(session,0, messageType.getNumber(), ""); return; } + //todo vip /* SChallengeSetting sChallengeSetting = SChallengeSetting.challengeSetting; + int dailyLimitPrivilege = sChallengeSetting.getDailyLimitPrivilege(); + VipPrivilegeType. if (mapManager.getDayFightCount() + count > sChallengeSetting.getLimit() + mapManager.getBuyFightCount()) { LOGGER.info("sweep over max count: {}", (mapManager.getDayFightCount() + count)); MessageUtil.sendErrorResponse(session,0, messageType.getNumber(), ""); return; }*/ - mapManager.setDayFightCount(mapManager.getDayFightCount() + count); SChallengeMapConfig sChallengeMapConfig = SChallengeMapConfig.integerSChallengeMapConfigMap.get(mapId); MapInfoProto.MapSweepResponse.Builder mapSweepResponse = MapInfoProto.MapSweepResponse.newBuilder(); for (int i = 0; i < count; i++) { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java index c32113e0b..93ac89868 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java @@ -60,10 +60,6 @@ public class MapManager extends MongoBase { private Map crossInfoMap = new HashMap<>(); - private int dayFightCount; - - private int buyFightCount; - private Set stars; public MapManager() { @@ -332,24 +328,6 @@ public class MapManager extends MongoBase { this.crossInfoMap.put(key, crossInfo); } - public int getDayFightCount() { - return dayFightCount; - } - - public void setDayFightCount(int dayFightCount) { - updateString("dayFightCount", dayFightCount); - this.dayFightCount = dayFightCount; - } - - public int getBuyFightCount() { - return buyFightCount; - } - - public void setBuyFightCount(int buyFightCount) { - updateString("buyFightCount", buyFightCount); - this.buyFightCount = buyFightCount; - } - public Map getHeroAllAttributeByHeroId(String heroId) { return heroAllAttributeMap.get(heroId); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java index 43d994a39..56709bd90 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java @@ -75,7 +75,6 @@ public class ArenaLogic { .setFailNums(arenaManager.getFailNums()) .setSuccessNums(arenaManager.getSuccessNums()) .setScore(score) - .setUseFreeTimes(arenaManager.getUseFreeTimes()) .addAllArenaEnemys(getArenaEnemyList(arenaManager.getArenaEnemies())) .build(); @@ -279,7 +278,8 @@ public class ArenaLogic { } ArenaManager arenaManager = user.getArenaManager(); SArenaSetting sArenaSetting = SArenaSetting.getSArenaSetting(); - int useFreeTimes = arenaManager.getUseFreeTimes(); + //vip + /* int useFreeTimes = arenaManager.getUseFreeTimes(); int battleFree = sArenaSetting.getBattleFree(); if(useFreeTimes>=battleFree){ //校验消耗 @@ -289,14 +289,10 @@ public class ArenaLogic { } }else{ arenaManager.setUseFreeTimes(useFreeTimes+1); - } + }*/ return ""; } - public void flushFreeUseTimes(User user){ - ArenaManager arenaManager = user.getArenaManager(); - arenaManager.setUseFreeTimes(0); - } private ArenaEnemy getEnemyInList(int challengeUid, List enemys) { for (ArenaEnemy data : enemys) { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/ArenaManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/ArenaManager.java index 2a56cf670..d8a46da30 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/ArenaManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/ArenaManager.java @@ -15,8 +15,6 @@ public class ArenaManager extends MongoBase { private int count; //进攻次数 - private int useFreeTimes;//使用免费次数 - private int flushTime; //刷新时间 private int flushNums; //刷新次数 @@ -59,10 +57,6 @@ public class ArenaManager extends MongoBase { return arenaEnemies; } - public int getUseFreeTimes() { - return useFreeTimes; - } - public void setArenaEnemies(List arenaEnemies) { flushNums++; updateString("arenaEnemies",arenaEnemies); @@ -70,11 +64,6 @@ public class ArenaManager extends MongoBase { this.arenaEnemies = arenaEnemies; } - public void setUseFreeTimes(int useFreeTimes) { - updateString("useFreeTimes",useFreeTimes); - this.useFreeTimes = useFreeTimes; - } - public void setFlushTime(int flushTime) { this.flushTime = flushTime; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java index cd482e470..7fb176b16 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java @@ -261,6 +261,13 @@ public class PlayerManager extends MongoBase { return vipInfo.containsKey(privilageId); } + public int getVipPrivilageValue(int privilageId){ + if(!vipInfo.containsKey(privilageId)){ + return 0; + } + return vipInfo.get(privilageId); + } + public void updateVipPrivilage(int privilageId,int updateNum){ if(!vipInfo.containsKey(privilageId)){ return; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/RoomInfo.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/RoomInfo.java index b2f3e197d..3bf8d4e55 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/RoomInfo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/RoomInfo.java @@ -2,7 +2,7 @@ package com.ljsd.jieling.logic.dao; public class RoomInfo { private boolean matching; - private int roomId; + private int roomId=-1; public boolean isMatching() { return matching; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/StoreInfo.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/StoreInfo.java index 00c1aa6ff..cb50a9d9b 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/StoreInfo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/StoreInfo.java @@ -10,8 +10,6 @@ public class StoreInfo extends MongoBase { private long lastRefreshTime; // 上次刷新时间 - private int refreshNum; // 刷新次数 - private long startTime; // 开启时间 private long endTime ; // 结束时间 @@ -22,7 +20,6 @@ public class StoreInfo extends MongoBase { // this.setRootCollection(User._COLLECTION_NAME); this.id = id; this.lastRefreshTime = System.currentTimeMillis(); - this.refreshNum = 0; this.startTime = startTime; this.endTime = endTime; this.itemNumMap = itemNumMap; @@ -33,11 +30,6 @@ public class StoreInfo extends MongoBase { this.lastRefreshTime = lastRefreshTime; } - public void setRefreshNum(int refreshNum) { - updateString("refreshNum", refreshNum); - this.refreshNum = refreshNum; - } - public void setItemNumMap(Map itemNumMap) { updateString("itemNumMap", itemNumMap); this.itemNumMap = itemNumMap; @@ -51,10 +43,6 @@ public class StoreInfo extends MongoBase { return lastRefreshTime; } - public int getRefreshNum() { - return refreshNum; - } - public long getStartTime() { return startTime; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java index 0a02ba846..412c66be8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java @@ -95,7 +95,7 @@ public class UserManager { teamPosManager.addTeamOfInitPlayer(heroMap.values()); int force = HeroLogic.getInstance().calTeamTotalForce(user, 1, true); playerManager.setMaxForce(force); - PlayerLogic.getInstance().vipflushEveryDay(user); + PlayerLogic.getInstance().vipflushEveryDay(user,false); ActivityLogic.getInstance().newPlayerOpenActivityMission(user); user.getUserMissionManager().onGameEvent(user, GameEvent.USER_LEVELUP,1); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java index 148ae7cde..a48484677 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java @@ -390,10 +390,11 @@ public class CombatLogic { String content = ""; if(reason == 1){ title = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_uplevel_title"); - content = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_uplevel_content"); + content = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_uplevel_content",new Object[]{"test",adventureStateInfoMap.get(position).getLevel()+1}); }else if(reason == 2){ + int vipLevel = user.getPlayerInfoManager().getVipLevel(); title = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_viplevel_title"); - content = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_viplevel_content"); + content = SErrorCodeEerverConfig.getI18NMessage("adventuren_reward_of_viplevel_content",new Object[]{vipLevel}); }else { return null; } @@ -757,7 +758,6 @@ public class CombatLogic { */ public void sendReward() throws Exception { String title=SErrorCodeEerverConfig.getI18NMessage("adventure_boss_reward_title"); - String content=SErrorCodeEerverConfig.getI18NMessage("adventure_boss_reward_txt"); Set> adventureBossRankInfo= RedisUtil.getInstence().getZsetreverseRangeWithScores(RedisKey.ADVENTRUEN_BOSS_RANK,"", 0,-1); int rank = 1; int nowTime =(int) (TimeUtils.now()/1000); @@ -769,6 +769,7 @@ public class CombatLogic { if("".equals(rewardByRank)){ break; } + String content=SErrorCodeEerverConfig.getI18NMessage("adventure_boss_reward_txt",new Object[]{user.getPlayerInfoManager().getNickName(),rank}); MailLogic.getInstance().sendMail(user.getId(),title,content,rewardByRank,nowTime, Global.MAIL_EFFECTIVE_TIME); } String key = RedisUtil.getInstence().getKey(RedisKey.ADVENTRUEN_BOSS_RANK, ""); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index 11e5a4f25..d989163c6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -24,10 +24,7 @@ import org.luaj.vm2.ast.Str; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; public class PlayerLogic { private static final Logger LOGGER = LoggerFactory.getLogger(MailLogic.class); @@ -219,7 +216,7 @@ public class PlayerLogic { MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.USER_FORCE_CHANGE_RESPONSE_VALUE,null,true); } - public void vipflushEveryDay(User user) throws Exception { + public void vipflushEveryDay(User user,boolean sendIndication) throws Exception { PlayerManager playerInfoManager = user.getPlayerInfoManager(); playerInfoManager.vipFlush(); int vipLevel = user.getPlayerInfoManager().getVipLevel(); @@ -240,6 +237,20 @@ public class PlayerLogic { ItemUtil.addItem(user,itemMap,null,BIReason.VIP_DAY_REWARD); } } + if(sendIndication){ + CommonProto.VipMissionInfo.Builder builder = CommonProto.VipMissionInfo.newBuilder() + .setHadTakeDailyBox(playerInfoManager.getHadTakeDailyBoxVip()) + .setHadTakeLevelBox(playerInfoManager.getHadTakeLevelBoxVip()) + .setVipLevel(vipLevel); + List privilegeList = new ArrayList<>(); + Map vipInfo = playerInfoManager.getVipInfo(); + for(Map.Entry vipInfoItem : vipInfo.entrySet()){ + privilegeList.add(CommonProto.Privilege.newBuilder() + .setId(vipInfoItem.getKey()) + . setUsedTimes(vipInfoItem.getValue()) + .build()); + } + } } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/room/RoomManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/room/RoomManager.java index f322d91bb..b0458b044 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/room/RoomManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/room/RoomManager.java @@ -16,7 +16,7 @@ public class RoomManager { private static final List matchingPlayerList = new ArrayList(); private static Object lock; //线程安全锁 - private static int PLAYER_NUMBER_IN_ROOM = 3; //单个房间的最大数量 + private static int PLAYER_NUMBER_IN_ROOM = 2; //单个房间的最大数量 public static int SIMPLEST_MATCH_RULE = 0; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java index 82ee3cf7d..b5a28fece 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java @@ -54,7 +54,6 @@ public class StoreLogic { CommonProto.StoreInfo.Builder storeBuilder = CommonProto.StoreInfo.newBuilder(); storeBuilder.setId(storeInfo.getId()); storeBuilder.setLastRefreshTime(storeInfo.getLastRefreshTime()); - storeBuilder.setRefreshNum(storeInfo.getRefreshNum()); storeBuilder.setStartTime(storeInfo.getStartTime()); storeBuilder.setEndTime(storeInfo.getEndTime()); Map itemNumMap = storeInfo.getItemNumMap(); @@ -281,10 +280,10 @@ public class StoreLogic { MessageUtil.sendErrorResponse(iSession,0,msgId,""); return; } - int refreshNum = storeInfo.getRefreshNum(); - int[][] cost = getCost(refreshNum, 1,sStoreTypeConfig.getRefreshItem(),0); - int refreshPrivilege = sStoreTypeConfig.getRefreshPrivilege(); PlayerManager playerInfoManager = user.getPlayerInfoManager(); + int refreshPrivilege = sStoreTypeConfig.getRefreshPrivilege(); + int refreshNum = playerInfoManager.getVipPrivilageValue(refreshPrivilege); + int[][] cost = getCost(refreshNum, 1,sStoreTypeConfig.getRefreshItem(),0); if(!playerInfoManager.check(refreshPrivilege,1)){ MessageUtil.sendErrorResponse(iSession,0,msgId,"over limmit"); return; @@ -296,7 +295,6 @@ public class StoreLogic { } playerInfoManager.updateVipPrivilage(refreshPrivilege,1); Map itemNumMap = getStoreItem(sStoreTypeConfig.getId(),sStoreTypeConfig,user); - storeInfo.setRefreshNum(storeInfo.getRefreshNum() +1); storeInfo.setItemNumMap(itemNumMap); CommonProto.StoreInfo.Builder storeBuilder = getBuilder(storeInfo); PlayerInfoProto.StoreGoodsRefreshResponse builder = PlayerInfoProto.StoreGoodsRefreshResponse.newBuilder().setStoreInfo(storeBuilder).build(); @@ -354,11 +352,11 @@ public class StoreLogic { MessageUtil.sendMessage(iSession, 1,msgId, builder, true); } - /** - * 重置商店刷新次数 + /* *//** + * 重置商店刷新次数 废弃 走vip * @param uid * @throws Exception - */ + *//* public static void resetStoreRefreshNum(int uid) throws Exception { User user = UserManager.getUser(uid); StoreManager storeManager = user.getStoreManager(); @@ -367,6 +365,6 @@ public class StoreLogic { StoreInfo storeInfo = entry.getValue(); storeInfo.setRefreshNum(0); } - } + }*/ } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index 872a5c875..f8c4149f2 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -16,7 +16,7 @@ import java.util.Map; public class CBean2Proto { - public static CommonProto.Player getPlayer(int uid, PlayerManager playerManager, int maxMapId, int mapId, MapManager mapManager) { + public static CommonProto.Player getPlayer(int uid, PlayerManager playerManager, int maxMapId, int mapId, MapManager mapManager,RoomInfo roomInfo) { RechargeInfo rechargeInfo = playerManager.getRechargeInfo(); CommonProto.Player player = CommonProto.Player .newBuilder() @@ -31,12 +31,12 @@ public class CBean2Proto { .setEnergy(0) .setLastUpdateEnergyTime(mapManager.getLastUpdateEnergyTime()) .setServerTime((int)(System.currentTimeMillis()/1000)) - .setBuyFightCount(mapManager.getBuyFightCount()) - .setDayFightCount(mapManager.getDayFightCount()) .setMaxForce(playerManager.getMaxForce()) .setRechargeTime((int)(rechargeInfo.getCreateTime()/1000)) .setSaveAmt(rechargeInfo.getSaveAmt()) .setIsFirstRecharge(rechargeInfo.getIsFirst()) + .setIsMatchRoom(roomInfo.isMatching()?1:0) + .setCurRoomType(roomInfo.getRoomId()==-1?0:-1) .build(); return player; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java index 7571410b6..f9a18f061 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java @@ -24,7 +24,7 @@ public class MessageUtil { backMessage = new byte[0]; } else { backMessage = generatedMessage.toByteArray(); - // LOGGER.info(JsonFormat.printToString(generatedMessage)); + LOGGER.info(JsonFormat.printToString(generatedMessage)); } int length = PackageConstant.UID_FIELD_LEN + PackageConstant.TOKEN_LEN @@ -206,7 +206,10 @@ public class MessageUtil { RoomProto.RoomMatchSuccessIndication.Builder builder = RoomProto.RoomMatchSuccessIndication.newBuilder(); builder.setRoomId(roomId); builder.setType(type); - sendMessage(uid, 1, MessageTypeProto.MessageType.ROOM_MATCH_SUCCESS_INDICATION_VALUE, builder.build(), true); + ISession sessionByUid = OnlineUserManager.getSessionByUid(uid); + if(sessionByUid!=null){ + sendIndicationMessage(sessionByUid,1, MessageTypeProto.MessageType.ROOM_MATCH_SUCCESS_INDICATION_VALUE, builder.build(), true); + } } public static void sendRoomCancelMatchResponse(ISession session, int responseMsgId, int type, boolean result) { @@ -219,7 +222,10 @@ public class MessageUtil { public static void sendRoomGameEndIndication(int uid, int roomId) { RoomFightProto.RoomGameEndIndication.Builder builder = RoomFightProto.RoomGameEndIndication.newBuilder(); builder.setRoomId(roomId); - sendMessage(uid, 1, MessageTypeProto.MessageType.ROOM_GAME_END_INDICATION_VALUE, builder.build(), true); + ISession sessionByUid = OnlineUserManager.getSessionByUid(uid); + if(sessionByUid!=null){ + sendIndicationMessage(sessionByUid,1, MessageTypeProto.MessageType.ROOM_GAME_END_INDICATION_VALUE, builder.build(), true); + } } public static void sendRoomStartGameReadyResponse(ISession session, int responseMsgId, int type) { @@ -232,7 +238,10 @@ public class MessageUtil { RoomProto.RoomStartGameIndication.Builder builder = RoomProto.RoomStartGameIndication.newBuilder(); builder.setRoomId(roomId); builder.setType(type); - sendMessage(uid, 1, MessageTypeProto.MessageType.ROOM_START_GAME_INDICATION_VALUE, builder.build(), true); + ISession sessionByUid = OnlineUserManager.getSessionByUid(uid); + if(sessionByUid!=null){ + sendIndicationMessage(sessionByUid,1, MessageTypeProto.MessageType.ROOM_START_GAME_INDICATION_VALUE, builder.build(), true); + } } public static void sendRoomSyncMyselfMoveResponse(ISession session, int responseMsgId, long clientTimestamp) { @@ -245,6 +254,9 @@ public class MessageUtil { RoomFightProto.RoomSyncOtherMoveIndiction.Builder builder = RoomFightProto.RoomSyncOtherMoveIndiction.newBuilder(); builder.setUid(uid); builder.addAllTartXYs(path); - sendMessage(uid, 1, MessageTypeProto.MessageType.ROOM_SYNC_OTHER_MOVE_INDICTION_VALUE, builder.build(), true); + ISession sessionByUid = OnlineUserManager.getSessionByUid(uid); + if(sessionByUid!=null){ + sendIndicationMessage(sessionByUid,1, MessageTypeProto.MessageType.ROOM_SYNC_OTHER_MOVE_INDICTION_VALUE, builder.build(), true); + } } }