戒灵秘宝周刷新修改
parent
6983bb86de
commit
e5f1007862
|
@ -1238,4 +1238,29 @@ public class TimeUtils {
|
|||
return now();
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断两个时间是否隔开周几的几点
|
||||
* @param lastTime
|
||||
* @param curTime
|
||||
* @param dayOfWeek
|
||||
* @param hourOfDay
|
||||
* @return
|
||||
*/
|
||||
public static boolean isSpanTime(long lastTime,long curTime,int dayOfWeek,int hourOfDay){
|
||||
long curWeekdayStartTime = getCurWeekdayStartTime(dayOfWeek, hourOfDay);
|
||||
if(lastTime>=curWeekdayStartTime){
|
||||
return false;
|
||||
}
|
||||
if(curTime>=curWeekdayStartTime){
|
||||
return true;
|
||||
}else{
|
||||
curWeekdayStartTime=curWeekdayStartTime-WEEK;
|
||||
if(lastTime<curWeekdayStartTime){
|
||||
return true;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -294,9 +294,6 @@ public class GlobalDataManaager {
|
|||
ActivityLogic.getInstance().flushEveryDay(user,fBuilder);
|
||||
PlayerLogic.getInstance().vipflushEveryDay(user,fBuilder);
|
||||
PlayerLogic.getInstance().flushUserdataEvery(user,fBuilder);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.DAILY_REFRESH,0);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_REFRESH,0);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_WEEK_REFRESH,0);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.BLOODY_REFRESH,0);
|
||||
FriendLogic.getInstance().refreshState(session);
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@ public class ActivityLogic {
|
|||
//幸运转盘活动刷新
|
||||
ActivityLogic.getInstance().resumeActivity(user, ActivityType.LUCK_WHEEL);
|
||||
ActivityLogic.getInstance().resumeActivity(user, ActivityType.LUCK_WHEEL_ADVANCE);
|
||||
|
||||
ActivityLogic.getInstance().resumeActivity(user,ActivityType.TREASURE);
|
||||
|
||||
Set<Integer> upFiveActivityTypes = new HashSet<>();
|
||||
upFiveActivityTypes.add(ActivityType.SevenLogin);
|
||||
|
|
|
@ -25,12 +25,22 @@ public class TreasureActivity extends AbstractActivity {
|
|||
super(id);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onResume(User user) throws Exception {
|
||||
// user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_MONTH_REFRESH, id);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_WEEK_REFRESH, id);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_REFRESH, id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initActivity(User user) throws Exception {
|
||||
user.getPlayerInfoManager().setHadBuyTreasure(0);
|
||||
LOGGER.info("戒灵秘宝初始化...");
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_MONTH_REFRESH, sGlobalActivity.getId());
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_WEEK_REFRESH, sGlobalActivity.getId());
|
||||
user.getUserMissionManager().onGameEvent(user, GameEvent.TREASH_REFRESH, sGlobalActivity.getId());
|
||||
ActivityMission activityMission = new ActivityMission();
|
||||
List<Integer> levels = new ArrayList<>(STreasureSunlongConfig.levelTreasureConfigMap.keySet());
|
||||
if(levels.contains(0)){
|
||||
|
|
|
@ -94,14 +94,12 @@ public class UserMissionManager extends MongoBase {
|
|||
MessageUtil.sendIndicationMessage(session,1, MessageTypeProto.MessageType.TREASURE_REFRESH_INDICATION_VALUE,indication1,true);
|
||||
break;
|
||||
case TREASH_WEEK_REFRESH:
|
||||
int[] dailyRefreshIds = resetTreasureTaskInfo(1,missionTypeEnumListMap,treasureCumulationData);
|
||||
|
||||
int[] weekRefreshIds = resetTreasureTaskInfo(2,missionTypeEnumListMap,treasureWeekCumulationData);
|
||||
CommonProto.RefreshTask.Builder task1 = treasureIndicationBuild(1, dailyRefreshIds);
|
||||
CommonProto.RefreshTask.Builder task2 = treasureIndicationBuild(2, weekRefreshIds);
|
||||
PlayerInfoProto.TreasureRefreshIndication indication2 = PlayerInfoProto.TreasureRefreshIndication.newBuilder().addTasks(task1.build()).addTasks(task2.build()).build();
|
||||
MessageUtil.sendIndicationMessage(session,1, MessageTypeProto.MessageType.TREASURE_REFRESH_INDICATION_VALUE,indication2,true);
|
||||
|
||||
if(weekRefreshIds!=null){
|
||||
CommonProto.RefreshTask.Builder task2= treasureIndicationBuild(2, weekRefreshIds);
|
||||
PlayerInfoProto.TreasureRefreshIndication indication2 = PlayerInfoProto.TreasureRefreshIndication.newBuilder().addTasks(task2.build()).build();
|
||||
MessageUtil.sendIndicationMessage(session,1, MessageTypeProto.MessageType.TREASURE_REFRESH_INDICATION_VALUE,indication2,true);
|
||||
}
|
||||
break;
|
||||
case TREASH_MONTH_REFRESH:
|
||||
user.getPlayerInfoManager().setTreasureLevel(0);
|
||||
|
@ -118,17 +116,15 @@ public class UserMissionManager extends MongoBase {
|
|||
}
|
||||
}
|
||||
System.out.println("戒灵秘宝月任务初始化");
|
||||
int[] dailyRefreshIds1 = resetTreasureTaskInfo(1,missionTypeEnumListMap,treasureCumulationData);
|
||||
int[] weekRefreshIds1 = resetTreasureTaskInfo(2,missionTypeEnumListMap,treasureWeekCumulationData);
|
||||
// int[] dailyRefreshIds1 = resetTreasureTaskInfo(1,missionTypeEnumListMap,treasureCumulationData);
|
||||
// int[] weekRefreshIds1 = resetTreasureTaskInfo(2,missionTypeEnumListMap,treasureWeekCumulationData);
|
||||
int[] monthRefreshIds1 = resetTreasureTaskInfo(3,missionTypeEnumListMap,treasureMonthCumulationData);
|
||||
|
||||
CommonProto.RefreshTask.Builder task3 = treasureIndicationBuild(1, dailyRefreshIds1);
|
||||
CommonProto.RefreshTask.Builder task4 = treasureIndicationBuild(2, weekRefreshIds1);
|
||||
// CommonProto.RefreshTask.Builder task3 = treasureIndicationBuild(1, dailyRefreshIds1);
|
||||
// CommonProto.RefreshTask.Builder task4 = treasureIndicationBuild(2, weekRefreshIds1);
|
||||
CommonProto.RefreshTask.Builder task5 = treasureIndicationBuild(3, monthRefreshIds1);
|
||||
PlayerInfoProto.TreasureRefreshIndication indication3 = PlayerInfoProto.TreasureRefreshIndication.newBuilder().addTasks(task3.build()).addTasks(task4.build()).addTasks(task5.build()).build();
|
||||
PlayerInfoProto.TreasureRefreshIndication indication3 = PlayerInfoProto.TreasureRefreshIndication.newBuilder().addTasks(task5.build()).build();
|
||||
MessageUtil.sendIndicationMessage(session,1, MessageTypeProto.MessageType.TREASURE_REFRESH_INDICATION_VALUE,indication3,true);
|
||||
|
||||
// openMission(user,GameEvent.TREASH_WEEK_REFRESH,missionTypeEnumListMap,parm);
|
||||
break;
|
||||
case SERVENHAPPY_REFRESH:
|
||||
List<STreasureTaskConfig> sTreasureTaskConfigs = null;
|
||||
|
@ -300,14 +296,11 @@ public class UserMissionManager extends MongoBase {
|
|||
|
||||
private int[] resetTreasureTaskInfo(int type,Map<GameMisionType, List<MissionStateChangeInfo>> missionTypeEnumListMap,CumulationData treasureCumulationData){
|
||||
//周刷新检测
|
||||
if(type==3){
|
||||
treasureMissionIdsType.setWeekRefresh((int)(TimeUtils.now()/1000));
|
||||
}
|
||||
if(type==2){
|
||||
if(treasureMissionIdsType.getWeekRefresh()>= TimeUtils.getCurWeekdayStartTime(1,5)){
|
||||
if(treasureMissionIdsType.getWeekRefresh()!=0&&!TimeUtils.isSpanTime(treasureMissionIdsType.getWeekRefresh(),TimeUtils.now(),1,5)){
|
||||
return null;
|
||||
}
|
||||
treasureMissionIdsType.setWeekRefresh((int)TimeUtils.now()/1000);
|
||||
treasureMissionIdsType.setWeekRefresh(TimeUtils.now());
|
||||
}
|
||||
int[] typeMissionNum = SSpecialConfig.getOnceArrayValue(SSpecialConfig.SUNLONG_DAILYTASKS);
|
||||
List<Integer> taskTypeMap = STreasureSunlongTaskConfig.taskTypeMap.get(type);
|
||||
|
@ -337,7 +330,14 @@ public class UserMissionManager extends MongoBase {
|
|||
}
|
||||
treasureCumulationData.reset();
|
||||
updateString("treasureMissionIdsType",treasureMissionIdsType);
|
||||
updateString("treasureCumulationData",treasureCumulationData);
|
||||
if(type==1){
|
||||
updateString("treasureCumulationData",treasureCumulationData);
|
||||
}else if(type==2){
|
||||
updateString("treasureWeekCumulationData",treasureCumulationData);
|
||||
}else if(type==3){
|
||||
updateString("treasureMonthCumulationData",treasureCumulationData);
|
||||
|
||||
}
|
||||
return tasks;
|
||||
}
|
||||
private CommonProto.RefreshTask.Builder treasureIndicationBuild(int type,int[] refreshIds){
|
||||
|
|
|
@ -182,8 +182,10 @@ public class GuildFightLogic {
|
|||
Family.FamilyBuildBuffInfo.Builder buffInfo = Family.FamilyBuildBuffInfo.newBuilder();
|
||||
buffInfo.setBuildId(i + 1);
|
||||
int[] buildBuffs = buffCache.get(String.valueOf(i + 1));
|
||||
for(Integer buff:buildBuffs){
|
||||
buffInfo.addBuffId(buff);
|
||||
if(buildBuffs!=null){
|
||||
for(Integer buff:buildBuffs){
|
||||
buffInfo.addBuffId(buff);
|
||||
}
|
||||
}
|
||||
fightInfo.addBuildBuff(buffInfo);
|
||||
}
|
||||
|
|
|
@ -16,13 +16,13 @@ public class TreasureMissionType extends AbstractMissionType{
|
|||
|
||||
private Map<Integer,Integer> takeTimes = new HashMap<>();
|
||||
|
||||
private int weekRefresh;
|
||||
private long weekRefresh;
|
||||
|
||||
public int getWeekRefresh() {
|
||||
public long getWeekRefresh() {
|
||||
return weekRefresh;
|
||||
}
|
||||
|
||||
public void setWeekRefresh(int weekRefresh) {
|
||||
public void setWeekRefresh(long weekRefresh) {
|
||||
this.weekRefresh = weekRefresh;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue