Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
23ee57749c
|
@ -2154,7 +2154,7 @@ public class MapLogic {
|
|||
.setUid(uidTmp)
|
||||
.setLevel(playerInfoManager.getLevel())
|
||||
.setName(playerInfoManager.getNickName())
|
||||
.setFightId(SMainLevelConfig.sMainLevelConfigByVirtureIdMap.get(score).getId())
|
||||
.setFightId(SMainLevelConfig.sMainLevelConfigByVirtureIdMap.get(score).getVirtureId())
|
||||
.setHead(playerInfoManager.getHead())
|
||||
.setRank(rank++)
|
||||
.setTotalForce(userTmp.getPlayerInfoManager().getMaxForce())
|
||||
|
@ -2178,6 +2178,7 @@ public class MapLogic {
|
|||
int uid = session.getUid();
|
||||
for(CommonProto.MainLevelRankInfo.Builder builder1 : mainLevelRankInfoList){
|
||||
builder1.setRank(rank++);
|
||||
builder1.setFightId(SMainLevelConfig.sMainLevelConfigByVirtureIdMap.get(builder1.getFightId()).getId());
|
||||
builder.addMainLevelRankInfo(builder1.build());
|
||||
if(builder1.getUid() == uid){
|
||||
myRank = builder1.getRank();
|
||||
|
|
|
@ -59,9 +59,6 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
|
||||
/**
|
||||
* 子类重写
|
||||
*
|
||||
* @param user
|
||||
* @throws Exception
|
||||
*/
|
||||
@Override
|
||||
public void onResume(User user) throws Exception {
|
||||
|
@ -73,8 +70,6 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
|
||||
/**
|
||||
* 活动期间活动进度会进行多次 领完所有活动奖励重置
|
||||
* @param user
|
||||
* @throws Exception
|
||||
*/
|
||||
public void reSetValue(User user) throws Exception {
|
||||
ActivityManager activityManager = user.getActivityManager();
|
||||
|
@ -143,13 +138,13 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
//up miss
|
||||
int[][] reward = sActivityRewardConfig.getReward();
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user, reward, BIReason.TAKE_ACTIVITY_REWARD);
|
||||
checkAndSetProgress(activityMission, activityProgressInfo, sActivityRewardConfig, missionId);
|
||||
checkAndSetProgress(activityMission, activityProgressInfo, missionId);
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if(null!=sGlobalActivity&&ActivityLogic.getInstance().checkActivityMissionFinishAndTaked(id,activityMission)&&sGlobalActivity.getResetGrade()==1){
|
||||
if (null != sGlobalActivity && ActivityLogic.getInstance().checkActivityMissionFinishAndTaked(id, activityMission) && sGlobalActivity.getResetGrade() == 1) {
|
||||
reSetValue(user);
|
||||
ActivityMission newmiss = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
sendActivityProgress(session, newmiss,null);
|
||||
}else {
|
||||
sendActivityProgress(session, newmiss, null);
|
||||
} else {
|
||||
sendActivityProgress(session, activityMission, Collections.singleton(missionId));
|
||||
}
|
||||
KtEventUtils.onKtEvent(user, ParamEventBean.UserActivityEvent, id, missionId);
|
||||
|
@ -158,32 +153,49 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 领取所有活动奖励 有的活动是重置类型 迭代处理
|
||||
*/
|
||||
void takeAllReward(ISession session) throws Exception {
|
||||
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
List<Integer> misssIds = new LinkedList<>();
|
||||
List<int[][]> itemArrs = new LinkedList<>();
|
||||
getAllMissRewards(user, session, itemArrs);
|
||||
if (itemArrs.size() == 0)
|
||||
return;
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if (null == sGlobalActivity)
|
||||
throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH);
|
||||
String title = SErrorCodeEerverConfig.getI18NMessage("receive_activity_title", new Object[]{sGlobalActivity.getSesc()});
|
||||
String content = SErrorCodeEerverConfig.getI18NMessage("receive_activity_txt", new Object[]{sGlobalActivity.getSesc()});
|
||||
String mailReward = ItemUtil.getMailReward(itemArrs);
|
||||
int nowTime = (int) (TimeUtils.now() / 1000);
|
||||
MailLogic.getInstance().sendMail(user.getId(), title, content, mailReward, nowTime, Global.MAIL_EFFECTIVE_TIME);
|
||||
}
|
||||
|
||||
private void getAllMissRewards(User user, ISession session, List<int[][]> itemAttrs) throws Exception {
|
||||
List<Integer> misssIds = new LinkedList<>();
|
||||
List<SActivityRewardConfig> cfgs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id);
|
||||
if (null == cfgs) {
|
||||
return;
|
||||
throw new ErrorCodeException(ErrorCode.CFG_NULL);
|
||||
}
|
||||
for (SActivityRewardConfig sActivityRewardConfig : cfgs) {
|
||||
misssIds.add(sActivityRewardConfig.getId());
|
||||
}
|
||||
//check state
|
||||
ActivityManager activityManager = user.getActivityManager();
|
||||
ActivityMission activityMission = activityManager.getActivityMissionMap().get(id);
|
||||
if (activityMission == null || activityMission.getActivityState() != ActivityType.OPEN_STATE || activityMission.getOpenType() == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
List<int[][]> itemArrs = new LinkedList<>();
|
||||
boolean isTake = false;
|
||||
for (Integer missionId : misssIds) {
|
||||
//check cfg
|
||||
SActivityRewardConfig sActivityRewardConfig = SActivityRewardConfig.getsActivityRewardConfigByMissionId(missionId);
|
||||
if (sActivityRewardConfig == null || sActivityRewardConfig.getActivityId() != id) {
|
||||
continue;
|
||||
}
|
||||
//check state
|
||||
ActivityManager activityManager = user.getActivityManager();
|
||||
ActivityMission activityMission = activityManager.getActivityMissionMap().get(id);
|
||||
if (activityMission == null || activityMission.getActivityState() != ActivityType.OPEN_STATE || activityMission.getOpenType() == 0) {
|
||||
continue;
|
||||
}
|
||||
ActivityProgressInfo activityProgressInfo = activityMission.getActivityProgressInfoMap().get(missionId);
|
||||
if (activityProgressInfo == null || activityProgressInfo.getState() == ActivityType.HAD_TAKED) {
|
||||
continue;
|
||||
|
@ -194,22 +206,25 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
}
|
||||
//up miss
|
||||
int[][] reward = sActivityRewardConfig.getReward();
|
||||
itemArrs.add(reward);
|
||||
itemAttrs.add(reward);
|
||||
isTake = true;
|
||||
}
|
||||
|
||||
if(itemArrs.size()==0)
|
||||
if (!isTake) {
|
||||
return;
|
||||
}
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if (null == sGlobalActivity)
|
||||
return;
|
||||
String title = SErrorCodeEerverConfig.getI18NMessage("receive_activity_title", new Object[]{sGlobalActivity.getSesc()});
|
||||
String content = SErrorCodeEerverConfig.getI18NMessage("receive_activity_txt", new Object[]{sGlobalActivity.getSesc()});
|
||||
String mailReward = ItemUtil.getMailReward(itemArrs);
|
||||
int nowTime = (int) (TimeUtils.now() / 1000);
|
||||
MailLogic.getInstance().sendMail(user.getId(), title, content, mailReward, nowTime, Global.MAIL_EFFECTIVE_TIME);
|
||||
if (null != sGlobalActivity && sGlobalActivity.getResetGrade() == 1) {
|
||||
reSetValue(user);
|
||||
getAllMissRewards(user, session, itemAttrs);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void checkAndSetProgress(ActivityMission activityMission, ActivityProgressInfo activityProgressInfo, SActivityRewardConfig sActivityRewardConfig, int missionId) {
|
||||
/**
|
||||
* 领奖后更新奖励进度
|
||||
*/
|
||||
private void checkAndSetProgress(ActivityMission activityMission, ActivityProgressInfo activityProgressInfo, int missionId) {
|
||||
activityProgressInfo.setState(ActivityType.HAD_TAKED);
|
||||
activityMission.updateProgressInfo(missionId, activityProgressInfo);
|
||||
}
|
||||
|
@ -222,10 +237,7 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
boolean takeRewardsProcess(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
|
||||
int[][] values = sActivityRewardConfig.getValues();
|
||||
int missionProgress = activityProgressInfo.getProgrss();
|
||||
if (missionProgress < values[0][0]) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
return missionProgress < values[0][0];
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -235,10 +247,7 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
int[][] values = sActivityRewardConfig.getValues();
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
int value = user.getActivityManager().getActivityMissionMap().get(sActivityRewardConfig.getActivityId()).getValue();
|
||||
if (value < values[0][0]) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
return value >= values[0][0];
|
||||
}
|
||||
|
||||
void onActivityEndSelfWithDealReward(User user) throws Exception {
|
||||
|
@ -250,7 +259,7 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
|
||||
|
||||
/**
|
||||
* 绝对时间和相对开服结束回调
|
||||
* 绝对时间和相对开服结束回调
|
||||
*/
|
||||
@Override
|
||||
public void onActivityEnd() throws Exception {
|
||||
|
@ -264,7 +273,6 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
public void onActivityEndOnMySelf(User user) throws Exception {
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue