天宫秘宝修改

lvxinran 2020-07-05 16:19:51 +08:00
parent 61c1706d5c
commit 3fc7f6db20
2 changed files with 38 additions and 33 deletions

View File

@ -20,7 +20,11 @@ public class WorldTreasureReward extends MongoBase {
public void reset(int round){ public void reset(int round){
if(createTime == 0){ if(createTime == 0){
createTime =(int)(TimeUtils.getAppointTime(0)); createTime =(int)((TimeUtils.getLastOrUnderHour(TimeUtils.now(), 5,0, true)+TimeUtils.DAY*5)/1000);
}else{
do{
createTime+=TimeUtils.DAY*5/1000;
}while(createTime<TimeUtils.nowInt());
} }
score = 0; score = 0;
rewardStatusMap = new HashMap<>(); rewardStatusMap = new HashMap<>();

View File

@ -763,39 +763,39 @@ public class ExpeditionLogic {
if(createTime==0){ if(createTime==0){
return; return;
} }
SExpeditionSetting sExpeditionSetting = STableManager.getConfig(SExpeditionSetting.class).get(1); // SExpeditionSetting sExpeditionSetting = STableManager.getConfig(SExpeditionSetting.class).get(1);
int[][] treasureTime = sExpeditionSetting.getTreasureTime(); // int[][] treasureTime = sExpeditionSetting.getTreasureTime();
int differentDays = TimeUtils.differentDays(createTime * 1000, TimeUtils.now()); // int differentDays = TimeUtils.differentDays(createTime * 1000, TimeUtils.now());
int sumPeriod = 0; // int sumPeriod = 0;
int newRound = 0; // int newRound = 0;
int round = worldTreasureReward.getRound(); // int round = worldTreasureReward.getRound();
boolean needReset = false; // boolean needReset = false;
for(int[] item : treasureTime){ // for(int[] item : treasureTime){
sumPeriod+=item[1]; // sumPeriod+=item[1];
if(round>item[0]){ // if(round>item[0]){
continue; // continue;
} // }
differentDays-=item[1]; // differentDays-=item[1];
if(differentDays<0){ // if(differentDays<0){
newRound = item[0]; // newRound = item[0];
needReset =true; // needReset =true;
break; // break;
} // }
} // }
if(!needReset){ // if(!needReset){
differentDays=differentDays % sumPeriod; // differentDays=differentDays % sumPeriod;
for(int[] item : treasureTime){ // for(int[] item : treasureTime){
differentDays-=item[1]; // differentDays-=item[1];
if(differentDays<0){ // if(differentDays<0){
newRound = item[0]; // newRound = item[0];
break; // break;
} // }
} // }
needReset=true; // needReset=true;
} // }
//重置 //重置
if(needReset){ if(TimeUtils.nowInt()>=worldTreasureReward.getCreateTime()){
user.getExpeditionManager().resetTreasureReward(newRound); user.getExpeditionManager().resetTreasureReward(1);
sendAllTreasureInfo(user); sendAllTreasureInfo(user);
} }
} }
@ -1020,6 +1020,7 @@ public class ExpeditionLogic {
}); });
response.addAllTreasureRewardState(states); response.addAllTreasureRewardState(states);
response.setScore(worldTreasureReward.getScore()); response.setScore(worldTreasureReward.getScore());
response.setResetTime(worldTreasureReward.getCreateTime());
MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true);
} }
} }