活动初始化和漏刷

back_recharge
zhangshanxue 2019-08-03 11:02:03 +08:00
parent b05268b766
commit dba41c51a3
3 changed files with 19 additions and 4 deletions

View File

@ -41,8 +41,7 @@ public abstract class AbstractActivity implements IActivity {
updateProgress(user, activityMission, count); updateProgress(user, activityMission, count);
//更新进度 //更新进度
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId()); ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
sendActivityProgress(sessionByUid, activityMission,null); sendActivityProgress(sessionByUid, activityMission, null);
} }
@ -106,6 +105,7 @@ public abstract class AbstractActivity implements IActivity {
/** /**
* default get reward * default get reward
* TODO value
*/ */
boolean takeRewardsProcess(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception { boolean takeRewardsProcess(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
int[][] values = sActivityRewardConfig.getValues(); int[][] values = sActivityRewardConfig.getValues();
@ -118,13 +118,23 @@ public abstract class AbstractActivity implements IActivity {
return true; return true;
} }
boolean checkValue(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
int[][] values = sActivityRewardConfig.getValues();
User user = UserManager.getUser(session.getUid());
int value = user.getActivityManager().getActivityMissionMap().get(sActivityRewardConfig.getActivityId()).getValue();
if (value < values[0][0]) {
MessageUtil.sendErrorResponse(session, 0, rewardResponseValue, "time not");
return false;
}
return true;
}
@Override @Override
public void onActivityEnd() throws Exception { public void onActivityEnd() throws Exception {
} }
public List<CommonProto.ActivityInfo.MissionInfo> getAllMissInfo(ActivityMission activityMission) { public List<CommonProto.ActivityInfo.MissionInfo> getAllMissInfo(ActivityMission activityMission) {
return getAllMissInfo(activityMission,null); return getAllMissInfo(activityMission, null);
} }
@Override @Override
@ -144,6 +154,7 @@ public abstract class AbstractActivity implements IActivity {
/** /**
* *
*
* @param filterMissId miss * @param filterMissId miss
*/ */
void sendActivityProgress(ISession session, ActivityMission activityMission, Set<Integer> filterMissId) { void sendActivityProgress(ISession session, ActivityMission activityMission, Set<Integer> filterMissId) {
@ -153,4 +164,5 @@ public abstract class AbstractActivity implements IActivity {
MessageUtil.sendIndicationMessage(session, 1, MessageTypeProto.MessageType.ACTIVITY_UPDATE_PROGRESS_INDICATION_VALUE, builder.build(), true); MessageUtil.sendIndicationMessage(session, 1, MessageTypeProto.MessageType.ACTIVITY_UPDATE_PROGRESS_INDICATION_VALUE, builder.build(), true);
} }
} }
} }

View File

@ -100,7 +100,9 @@ public class ActivityLogic {
ActivityManager activityManager = user.getActivityManager(); ActivityManager activityManager = user.getActivityManager();
Map<Integer, SGlobalActivity> sGlobalActivityMap = SGlobalActivity.getsGlobalActivityMap(); Map<Integer, SGlobalActivity> sGlobalActivityMap = SGlobalActivity.getsGlobalActivityMap();
for(Integer openActivityId : openActivityIds){ for(Integer openActivityId : openActivityIds){
activityManager.initAllActivityMission(openActivityId); if(!activityManager.initAllActivityMission(openActivityId)){
continue;
}
AbstractActivity abstractActivity = ActivityTypeEnum.getActicityType(openActivityId); AbstractActivity abstractActivity = ActivityTypeEnum.getActicityType(openActivityId);
if (abstractActivity == null) { if (abstractActivity == null) {
break; break;

View File

@ -219,6 +219,7 @@ public class PlayerLogic {
user.getPlayerInfoManager().setMaxForce(teamForce); user.getPlayerInfoManager().setMaxForce(teamForce);
user.getUserMissionManager().onGameEvent(user,GameEvent.USER_FORCE_CHANGE); user.getUserMissionManager().onGameEvent(user,GameEvent.USER_FORCE_CHANGE);
ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.FORCERANK,teamForce); ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.FORCERANK,teamForce);
ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.FORCESTANDARD,teamForce);
} }
} }