戒灵秘宝奖励修改
parent
2fea6f9a36
commit
d1b82a3879
|
@ -173,7 +173,7 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
|
|||
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 {
|
||||
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) {
|
||||
|
|
|
@ -69,28 +69,11 @@ public class TreasureActivity extends AbstractActivity {
|
|||
private void takeTreasureReward(ISession session, User user, int activityId, int missionId) throws Exception {
|
||||
int rewardResponseValue = MessageTypeProto.MessageType.TAKE_ACTIVITY_REWARD_RESPONSE_VALUE;
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(activityId);
|
||||
PlayerManager playerInfoManager = user.getPlayerInfoManager();
|
||||
int changeState = ActivityType.HAD_TAKED;
|
||||
int hadBuyTreasure = playerInfoManager.getHadBuyTreasure();
|
||||
if (hadBuyTreasure == 1) {
|
||||
changeState = ActivityType.FINISH_TAKED;
|
||||
}
|
||||
int changeState = getChangerState(user);
|
||||
List<int[][]> dropList = new ArrayList<>(2);
|
||||
Set<Integer> missionIds = new HashSet<>();
|
||||
// Set<Integer> missionIds = new HashSet<>();
|
||||
if(missionId==-1){
|
||||
for(int i = 1 ; i<=user.getPlayerInfoManager().getTreasureLevel();i++){
|
||||
Map<Integer, ActivityProgressInfo> progressInfoMap = activityMission.getActivityProgressInfoMap();
|
||||
int state =progressInfoMap.get(i).getState();
|
||||
if(state==changeState||state==ActivityType.FINISH_TAKED) {
|
||||
continue;
|
||||
}
|
||||
missionIds.add(i);
|
||||
dropByState(dropList,state,changeState,i);
|
||||
ActivityProgressInfo progressInfo = new ActivityProgressInfo(0,changeState);
|
||||
activityMission.updateProgressInfo(i, progressInfo);
|
||||
|
||||
}
|
||||
|
||||
getAllTreasureRewards(user,activityMission,changeState,dropList);
|
||||
}else{
|
||||
int state = activityMission.getActivityProgressInfoMap().get(missionId).getState();
|
||||
if(state==changeState||state==ActivityType.FINISH_TAKED){
|
||||
|
@ -99,7 +82,7 @@ public class TreasureActivity extends AbstractActivity {
|
|||
dropByState(dropList,state,changeState,missionId);
|
||||
ActivityProgressInfo progressInfo = new ActivityProgressInfo(0,changeState);
|
||||
activityMission.updateProgressInfo(missionId, progressInfo);
|
||||
missionIds.add(missionId);
|
||||
// missionIds.add(missionId);
|
||||
}
|
||||
// sendActivityProgress(session,activityMission,missionIds);
|
||||
|
||||
|
@ -205,4 +188,31 @@ public class TreasureActivity extends AbstractActivity {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
private int getChangerState(User user){
|
||||
PlayerManager playerInfoManager = user.getPlayerInfoManager();
|
||||
int changeState = ActivityType.HAD_TAKED;
|
||||
int hadBuyTreasure = playerInfoManager.getHadBuyTreasure();
|
||||
if (hadBuyTreasure == 1) {
|
||||
changeState = ActivityType.FINISH_TAKED;
|
||||
}
|
||||
return changeState;
|
||||
}
|
||||
private void getAllTreasureRewards(User user,ActivityMission activityMission,int changeState,List<int[][]> dropList){
|
||||
for(int i = 1 ; i<=user.getPlayerInfoManager().getTreasureLevel();i++){
|
||||
Map<Integer, ActivityProgressInfo> progressInfoMap = activityMission.getActivityProgressInfoMap();
|
||||
int state =progressInfoMap.get(i).getState();
|
||||
if(state==changeState||state==ActivityType.FINISH_TAKED) {
|
||||
continue;
|
||||
}
|
||||
dropByState(dropList,state,changeState,i);
|
||||
ActivityProgressInfo progressInfo = new ActivityProgressInfo(0,changeState);
|
||||
activityMission.updateProgressInfo(i, progressInfo);
|
||||
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public void getAllMissRewards(User user, ISession session, List<int[][]> itemAttrs){
|
||||
getAllTreasureRewards(user, user.getActivityManager().getActivityMissionMap().get(id), getChangerState(user), itemAttrs);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue