心愿抽卡发邮件替换
parent
f61b9c81f6
commit
d93d9a1f6a
|
|
@ -3,6 +3,7 @@ package com.ljsd.jieling.logic.activity;
|
||||||
import com.ljsd.jieling.exception.ErrorCode;
|
import com.ljsd.jieling.exception.ErrorCode;
|
||||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||||
import com.ljsd.jieling.globals.BIReason;
|
import com.ljsd.jieling.globals.BIReason;
|
||||||
|
import com.ljsd.jieling.jbean.ActivityManager;
|
||||||
import com.ljsd.jieling.jbean.ActivityMission;
|
import com.ljsd.jieling.jbean.ActivityMission;
|
||||||
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||||
import com.ljsd.jieling.logic.activity.event.ChoiceDrawCardEvent;
|
import com.ljsd.jieling.logic.activity.event.ChoiceDrawCardEvent;
|
||||||
|
|
@ -14,6 +15,7 @@ import com.ljsd.jieling.network.session.ISession;
|
||||||
import com.ljsd.jieling.util.ItemUtil;
|
import com.ljsd.jieling.util.ItemUtil;
|
||||||
import com.ljsd.jieling.util.MessageUtil;
|
import com.ljsd.jieling.util.MessageUtil;
|
||||||
import config.SActivityRewardConfig;
|
import config.SActivityRewardConfig;
|
||||||
|
import config.SGlobalActivity;
|
||||||
import config.SWishActivityUp;
|
import config.SWishActivityUp;
|
||||||
import rpc.protocols.CommonProto;
|
import rpc.protocols.CommonProto;
|
||||||
import rpc.protocols.PlayerInfoProto;
|
import rpc.protocols.PlayerInfoProto;
|
||||||
|
|
@ -123,4 +125,55 @@ public class ChoiceDrawCardActivity extends AbstractActivity {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public 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) {
|
||||||
|
LOGGER.error("奖励配置不存在{}",id);
|
||||||
|
return;
|
||||||
|
//throw new ErrorCodeException(ErrorCode.CFG_NULL);
|
||||||
|
}
|
||||||
|
for (SActivityRewardConfig sActivityRewardConfig : cfgs) {
|
||||||
|
misssIds.add(sActivityRewardConfig.getId());
|
||||||
|
}
|
||||||
|
//checkAndUpdate state
|
||||||
|
ActivityManager activityManager = user.getActivityManager();
|
||||||
|
ActivityMission activityMission = activityManager.getActivityMissionMap().get(id);
|
||||||
|
if (activityMission == null || activityMission.getActivityState() != ActivityType.OPEN_STATE || activityMission.getOpenType() == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean isTake = false;
|
||||||
|
for (Integer missionId : misssIds) {
|
||||||
|
//checkAndUpdate cfg
|
||||||
|
SActivityRewardConfig sActivityRewardConfig = SActivityRewardConfig.getsActivityRewardConfigByMissionId(missionId);
|
||||||
|
if (sActivityRewardConfig == null || sActivityRewardConfig.getActivityId() != id) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
ActivityProgressInfo activityProgressInfo = activityMission.getActivityMissionMap().get(missionId);
|
||||||
|
if (activityProgressInfo == null || activityProgressInfo.getState() == ActivityType.HAD_TAKED) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
//take rewards checkAndUpdate
|
||||||
|
if (!takeRewardsProcess(session, sActivityRewardConfig, activityProgressInfo)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
//up miss
|
||||||
|
int[] incs = SWishActivityUp.rewardMap.get(id).get(activityMission.getChoiceRewardId());
|
||||||
|
int[][] reward = getReward(sActivityRewardConfig.getReward(),incs[sActivityRewardConfig.getSort()-1]);
|
||||||
|
itemAttrs.add(reward);
|
||||||
|
isTake = true;
|
||||||
|
activityProgressInfo.setState(ActivityType.HAD_TAKED);
|
||||||
|
}
|
||||||
|
if (!isTake) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||||
|
if (null != sGlobalActivity && sGlobalActivity.getResetGrade() == 1) {
|
||||||
|
reSetValue(user);
|
||||||
|
getAllMissRewards(user, session, itemAttrs);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -39,11 +39,6 @@ public class ActivityStateChangeHandler implements IEventHandler {
|
||||||
ActivityLogic.getInstance().checkNeedOpenStore(user,shopId,startTime,endTime);
|
ActivityLogic.getInstance().checkNeedOpenStore(user,shopId,startTime,endTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// if(sGlobalActivity.getCanBuyRechargeId()!=null&&sGlobalActivity.getCanBuyRechargeId().length>0){
|
|
||||||
//
|
|
||||||
// Arrays.stream(sGlobalActivity.getCanBuyRechargeId()).forEach(n->user.getPlayerInfoManager().getRechargeInfo().putDyGoodsCanBuyTimes(n,1));
|
|
||||||
// BuyGoodsNewLogic.sendGiftGooodsIndication(uid);
|
|
||||||
// }
|
|
||||||
}else if(state == ActivityType.FINISH_STATE){
|
}else if(state == ActivityType.FINISH_STATE){
|
||||||
List<SGlobalActivity> sGlobalActivities = SGlobalActivity.sGlobalActivityMapByOpenRules.getOrDefault(3, new ArrayList<>(0));
|
List<SGlobalActivity> sGlobalActivities = SGlobalActivity.sGlobalActivityMapByOpenRules.getOrDefault(3, new ArrayList<>(0));
|
||||||
sGlobalActivities.stream().filter(s->s.getOpenRules()[1] == activityId).forEach(s->{
|
sGlobalActivities.stream().filter(s->s.getOpenRules()[1] == activityId).forEach(s->{
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue