Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
963ce826a9
|
@ -925,8 +925,8 @@ public class CombatLogic {
|
|||
}
|
||||
lastTimeTakes=times;
|
||||
}
|
||||
ItemUtil.extraAddItem(user,baseItemMap);
|
||||
ItemUtil.extraAddItem(user,randomItemMap);
|
||||
ItemUtil.extraAddItem(user,baseItemMap,BIReason.ADVENTURE_BASE_REWARD);
|
||||
ItemUtil.extraAddItem(user,randomItemMap,BIReason.ADVENTURE_RANDOM_REWARDD);
|
||||
if(viewBaseReward){
|
||||
myResult = true;
|
||||
rewardStr = ItemUtil.getReward(baseItemMap, baseCardMap, baseEquipMap, baseRandomMap);
|
||||
|
|
|
@ -52,7 +52,8 @@ public class StoreLogic {
|
|||
}
|
||||
|
||||
public static void checkGlobalStore(boolean isStartServer) throws Exception {
|
||||
long now = System.currentTimeMillis();
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
long now = calendar.getTimeInMillis();
|
||||
for(SStoreTypeConfig sStoreTypeConfig : SStoreTypeConfig.getsStoreTypeConfigMap().values()){
|
||||
if(sStoreTypeConfig.getStoreOpenRule() == 3){
|
||||
long startTime = ToolsUtil.getTimeLong(sStoreTypeConfig.getStartTimeLong(), sStoreTypeConfig.getEndTimeLong(),ActivityType.OPEN_TYPE_TIME,0, 1);
|
||||
|
@ -60,7 +61,10 @@ public class StoreLogic {
|
|||
if(startTime!=0 && endTime!=0 && now > startTime && now<endTime && !openStoreInfo.contains(sStoreTypeConfig.getId())){
|
||||
for(ISession session : OnlineUserManager.sessionMap.values()){
|
||||
if(session.getFiveReady() == 1){
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),sStoreTypeConfig.getId());
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),user1 -> {
|
||||
initOneStore(user1,sStoreTypeConfig.getId());
|
||||
MongoUtil.getInstence().lastUpdate();
|
||||
});
|
||||
}
|
||||
}
|
||||
if(isStartServer){
|
||||
|
@ -78,7 +82,10 @@ public class StoreLogic {
|
|||
continue;
|
||||
}
|
||||
if(!user.getStoreManager().getStoreInfoMap().containsKey(sStoreTypeConfig.getId())){
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),sStoreTypeConfig.getId());
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),user1 -> {
|
||||
initOneStore(user1,sStoreTypeConfig.getId());
|
||||
MongoUtil.getInstence().lastUpdate();
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -92,20 +99,44 @@ public class StoreLogic {
|
|||
if(session.getFiveReady() == 1){
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
if(!user.getStoreManager().getStoreInfoMap().containsKey(sStoreTypeConfig.getId())){
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),sStoreTypeConfig.getId());
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),user1 -> {
|
||||
initOneStore(user1,sStoreTypeConfig.getId());
|
||||
MongoUtil.getInstence().lastUpdate();
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(sStoreTypeConfig.getRefreshType()[0]==2&& calendar.get(Calendar.MINUTE) ==0 && sStoreTypeConfig.getRefreshType()[1]==calendar.get(Calendar.HOUR_OF_DAY)){
|
||||
for(ISession session : OnlineUserManager.sessionMap.values()){
|
||||
if(session.getFiveReady() == 1){
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
if(user.getStoreManager().getStoreInfoMap().containsKey(sStoreTypeConfig.getId())){
|
||||
updateUsersStoreAyync(UserManager.getUser(session.getUid()),user1 -> {
|
||||
getStoreItem(sStoreTypeConfig.getId(),sStoreTypeConfig,user);
|
||||
StoreInfo storeInfo = user.getStoreManager().getStoreInfoMap().get(sStoreTypeConfig.getId());
|
||||
|
||||
Map<Integer, Integer> storeItem = getStoreItem(sStoreTypeConfig.getId(), sStoreTypeConfig, user);
|
||||
if(storeItem == null){
|
||||
LOGGER.error("the uid={},the storeID={} is null",user.getId(),sStoreTypeConfig.getId());
|
||||
return;
|
||||
}
|
||||
storeInfo.setItemNumMap(storeItem);
|
||||
storeInfo.setLastRefreshTime(now);
|
||||
MongoUtil.getInstence().lastUpdate();
|
||||
sendStoreUpdateIndication(user.getId(),storeInfo);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static void updateUsersStoreAyync(User user,int id){
|
||||
AyyncWorker ayyncWorker = new AyyncWorker(user,true,user1 -> {
|
||||
initOneStore(user1,id);
|
||||
MongoUtil.getInstence().lastUpdate();
|
||||
});
|
||||
private static void updateUsersStoreAyync(User user, AyncWorkerRunnable ayncWorkerRunnable){
|
||||
AyyncWorker ayyncWorker = new AyyncWorker(user,true,ayncWorkerRunnable);
|
||||
ProtocolsManager instance = ProtocolsManager.getInstance();
|
||||
HandlerLogicThread handlerThread = instance.handlerThreads[user.getId() % instance.HANDLER_THREAD_NUM];
|
||||
handlerThread.addAyyncWorker(ayyncWorker);
|
||||
|
|
|
@ -93,7 +93,7 @@ public class ThreadManager {
|
|||
long lastMilis = System.currentTimeMillis();
|
||||
try { Thread.sleep(10000L); } catch (InterruptedException e) { }
|
||||
long millis = System.currentTimeMillis();
|
||||
if((millis - lastMilis)-10000>10||(millis - lastMilis)-10000<-10){
|
||||
if((millis - lastMilis)-10000>5000||(millis - lastMilis)-10000<-5000){
|
||||
reStart();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -260,18 +260,18 @@ public class ItemUtil {
|
|||
public static void combineReward(User user,boolean isLoop,int[] dropGroupIds,float dropRatio, Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap, Map<Integer, Integer> equipMap, Map<Integer, Integer> randomMap,int reason){
|
||||
combineRewardDropGroup(user, dropGroupIds, dropRatio, itemMap, cardMap, equipMap, randomMap);
|
||||
if(!isLoop){
|
||||
extraAddItem(user,itemMap);
|
||||
extraAddItem(user,itemMap,reason);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void extraAddItem(User user, Map<Integer, Integer> itemMap){
|
||||
public static void extraAddItem(User user, Map<Integer, Integer> itemMap,int resson){
|
||||
ItemManager itemManager = user.getItemManager();
|
||||
for(Map.Entry<Integer,Integer> item : itemMap.entrySet()){
|
||||
Integer itemId = item.getKey();
|
||||
Integer value = item.getValue();
|
||||
SItem sItem = SItem.getsItemMap().get(itemId);
|
||||
int itemNums = privilegeAdd(user, 1, sItem.getItemType(), value);
|
||||
int itemNums = privilegeAdd(user, resson, sItem.getItemType(), value);
|
||||
Item hadItem = itemManager.getItem(itemId);
|
||||
int hadNums = 0;
|
||||
if(hadItem !=null){
|
||||
|
|
Loading…
Reference in New Issue