back_recharge
zhangshanxue 2019-08-17 15:26:48 +08:00
commit aded46d464
3 changed files with 28 additions and 5 deletions

View File

@ -1,5 +1,6 @@
package com.ljsd.jieling.handler; package com.ljsd.jieling.handler;
import com.ljsd.jieling.config.SChallengeConfig;
import com.ljsd.jieling.config.SLotterySetting; import com.ljsd.jieling.config.SLotterySetting;
import com.ljsd.jieling.config.SRechargeCommodityConfig; import com.ljsd.jieling.config.SRechargeCommodityConfig;
import com.ljsd.jieling.db.redis.RedisKey; import com.ljsd.jieling.db.redis.RedisKey;
@ -76,6 +77,13 @@ public class GetPlayerInfoHandler extends BaseHandler{
} }
RoomInfo roomInfo = user.getRoomInfo(); RoomInfo roomInfo = user.getRoomInfo();
MapManager mapManager = user.getMapManager(); MapManager mapManager = user.getMapManager();
if(user.getMapManager().getCurMapId()!=0 && user.getMapManager().getMission() == null){
int type = SChallengeConfig.sChallengeConfigs.get(user.getMapManager().getCurMapId()).getType();
if(type == 1 || type == 3){
user.getMapManager().setCurMapId(0);
}
}
CommonProto.Player player = CBean2Proto.getPlayer(userId, user.getPlayerInfoManager(), user.getPlayerInfoManager().getMapId(), user.getMapManager().getCurMapId(),user.getMapManager(),roomInfo); CommonProto.Player player = CBean2Proto.getPlayer(userId, user.getPlayerInfoManager(), user.getPlayerInfoManager().getMapId(), user.getMapManager().getCurMapId(),user.getMapManager(),roomInfo);
CommonProto.SuddenlyBossInfo suddenlyBossInfo = CommonProto.SuddenlyBossInfo.newBuilder().setSuddBossId(mapManager.getSuddenlyBoss()).setEndTime(mapManager.getSuddenlyBossEndTime()).setFindMapId(mapManager.getFindSuddenlyBossMapId()).build(); CommonProto.SuddenlyBossInfo suddenlyBossInfo = CommonProto.SuddenlyBossInfo.newBuilder().setSuddBossId(mapManager.getSuddenlyBoss()).setEndTime(mapManager.getSuddenlyBossEndTime()).setFindMapId(mapManager.getFindSuddenlyBossMapId()).build();
CommonProto.VipBaseInfo vipInfoProto = CommonProto.VipBaseInfo.newBuilder() CommonProto.VipBaseInfo vipInfoProto = CommonProto.VipBaseInfo.newBuilder()

View File

@ -1,6 +1,8 @@
package com.ljsd.jieling.logic.store; package com.ljsd.jieling.logic.store;
import com.ljsd.jieling.config.*; import com.ljsd.jieling.config.*;
import com.ljsd.jieling.core.HandlerLogicThread;
import com.ljsd.jieling.db.mongo.MongoUtil;
import com.ljsd.jieling.globals.BIReason; import com.ljsd.jieling.globals.BIReason;
import com.ljsd.jieling.ktbeans.KtEventUtils; import com.ljsd.jieling.ktbeans.KtEventUtils;
import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean; import com.ljsd.jieling.ktbeans.parmsBean.ParamEventBean;
@ -13,14 +15,13 @@ import com.ljsd.jieling.logic.dao.StoreManager;
import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.UserManager;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.mission.GameEvent; import com.ljsd.jieling.logic.mission.GameEvent;
import com.ljsd.jieling.logic.mission.event.MissionEventDistributor;
import com.ljsd.jieling.network.server.ProtocolsManager;
import com.ljsd.jieling.network.session.ISession; import com.ljsd.jieling.network.session.ISession;
import com.ljsd.jieling.protocols.CommonProto; import com.ljsd.jieling.protocols.CommonProto;
import com.ljsd.jieling.protocols.MessageTypeProto; import com.ljsd.jieling.protocols.MessageTypeProto;
import com.ljsd.jieling.protocols.PlayerInfoProto; import com.ljsd.jieling.protocols.PlayerInfoProto;
import com.ljsd.jieling.util.ItemUtil; import com.ljsd.jieling.util.*;
import com.ljsd.jieling.util.MessageUtil;
import com.ljsd.jieling.util.StringUtil;
import com.ljsd.jieling.util.TimeUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -57,7 +58,7 @@ public class StoreLogic {
if(startTime!=0 && endTime!=0 && now > startTime && now<endTime && !openStoreInfo.contains(sStoreTypeConfig.getId())){ if(startTime!=0 && endTime!=0 && now > startTime && now<endTime && !openStoreInfo.contains(sStoreTypeConfig.getId())){
for(ISession session : OnlineUserManager.sessionMap.values()){ for(ISession session : OnlineUserManager.sessionMap.values()){
if(session.getFiveReady() == 1){ if(session.getFiveReady() == 1){
initOneStore(UserManager.getUser(session.getUid()),sStoreTypeConfig.getId()); updateUsersStoreAyync(UserManager.getUser(session.getUid()),sStoreTypeConfig.getId());
} }
} }
if(isStartServer){ if(isStartServer){
@ -68,6 +69,19 @@ public class StoreLogic {
} }
} }
private static void updateUsersStoreAyync(User user,int id){
AyyncWorker ayyncWorker = new AyyncWorker(user,true) {
@Override
public void work(User user) throws Exception {
initOneStore(user,id);
MongoUtil.getInstence().lastUpdate();
}
};
ProtocolsManager instance = ProtocolsManager.getInstance();
HandlerLogicThread handlerThread = instance.handlerThreads[user.getId() % instance.HANDLER_THREAD_NUM];
handlerThread.addAyyncWorker(ayyncWorker);
}
public static void getAllStoreInfo(ISession iSession) throws Exception { public static void getAllStoreInfo(ISession iSession) throws Exception {
int msgId = MessageTypeProto.MessageType.GET_STARE_INFOS_RESPONSE_VALUE; int msgId = MessageTypeProto.MessageType.GET_STARE_INFOS_RESPONSE_VALUE;
int uid = iSession.getUid(); int uid = iSession.getUid();

View File

@ -436,6 +436,7 @@ public class CBean2Proto {
if(!removeCache.isEmpty()){ if(!removeCache.isEmpty()){
adventureStateInfo.removeMutBossGroup(removeCache); adventureStateInfo.removeMutBossGroup(removeCache);
} }
builder.addAdventureStateInfoList(builder1);
} }
return builder.build(); return builder.build();