连续礼包优化,bug修改提交

back_recharge
duhui 2021-12-02 16:44:17 +08:00
parent f0b55b5ffb
commit 910670c66c
2 changed files with 11 additions and 15 deletions

View File

@ -1,13 +1,9 @@
package com.ljsd.jieling.logic.activity;
import com.ljsd.GameApplication;
import com.ljsd.jieling.globals.Global;
import com.ljsd.jieling.jbean.ActivityMission;
import com.ljsd.jieling.jbean.ActivityProgressInfo;
import com.ljsd.jieling.logic.OnlineUserManager;
import com.ljsd.jieling.logic.activity.AbstractActivity;
import com.ljsd.jieling.logic.activity.ActivityLogic;
import com.ljsd.jieling.logic.activity.ActivityType;
import com.ljsd.jieling.logic.activity.event.ActivityStateChangeEvent;
import com.ljsd.jieling.logic.activity.event.IEvent;
import com.ljsd.jieling.logic.activity.event.Poster;
@ -112,7 +108,7 @@ public class ContinuousGiftActivity extends AbstractActivity {
* ,
* @param user
*/
private int getProgress(User user,int missionId){
private int getState(User user, int missionId){
// 活动信息是否为null
ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id);
int days = mission.getV();
@ -184,15 +180,15 @@ public class ContinuousGiftActivity extends AbstractActivity {
for (Map.Entry<Integer, SThemeActivityShop> entry : themeMap.entrySet()) {
// 参数初始化
int missionId = entry.getKey();
int progress = getProgress(user,missionId);
if (progress == 0){
int state = getState(user,missionId);
if (state == 0){
continue;
}
int state = progress==8?1:0;
int progrss = progressInfoMap.getOrDefault(missionId, new ActivityProgressInfo()).getProgrss();
// 封装proto并返回
CommonProto.ActivityInfo.MissionInfo build = CommonProto.ActivityInfo.MissionInfo.newBuilder()
.setMissionId(missionId)
.setProgress(progress)
.setProgress(progrss)
.setState(state)
.build();
missionInfos.add(build);
@ -282,7 +278,7 @@ public class ContinuousGiftActivity extends AbstractActivity {
Map<Integer, ActivityProgressInfo> missionMap = user.getActivityManager().getActivityMissionMap().get(id).getActivityMissionMap();
SThemeActivityShop themes = STableManager.getConfig(SThemeActivityShop.class).get(boxId);
// 非空
if (missionMap.isEmpty() || themes == null){
if (themes == null){
return false;
}
// 0表示没有前置条件
@ -290,7 +286,7 @@ public class ContinuousGiftActivity extends AbstractActivity {
return true;
}
// 前置礼包状态验证
ActivityProgressInfo info = missionMap.get(themes.getLimitPackFId());
ActivityProgressInfo info = Optional.ofNullable(missionMap).map(v->v.get(themes.getLimitPackFId())).orElse(null);
// info为null代表没有前置条件, state==1代表已买过
if (info != null && info.getState() == 8){
return true;
@ -352,9 +348,9 @@ public class ContinuousGiftActivity extends AbstractActivity {
Map<Integer, SThemeActivityShop> themes = SThemeActivityShop.themeMap.get(id);
for (Map.Entry<Integer, SThemeActivityShop> entry : themes.entrySet()) {
int progress = getProgress(user, entry.getKey());
int state = getState(user, entry.getKey());
// 不可购买的礼包
if (progress != 1 || progress == 0){
if (state != 1){
set.add(entry.getValue().getGoodId());
}
}

View File

@ -282,7 +282,7 @@ public class SuperBoxActivity extends AbstractActivity {
Map<Integer, ActivityProgressInfo> missionMap = user.getActivityManager().getActivityMissionMap().get(id).getActivityMissionMap();
SSurpriseBox box = STableManager.getConfig(SSurpriseBox.class).get(boxId);
// 非空
if (missionMap.isEmpty() || box == null){
if (box == null){
return false;
}
// 0表示没有前置条件
@ -290,7 +290,7 @@ public class SuperBoxActivity extends AbstractActivity {
return true;
}
// 前置礼包状态验证
ActivityProgressInfo info = missionMap.get(box.getLimitPackFId());
ActivityProgressInfo info = Optional.ofNullable(missionMap).map(v->v.get(box.getLimitPackFId())).orElse(null);
// info为null代表没有前置条件, state==1代表已买过
if (info != null && info.getState() == ActivityType.HAD_TAKED){
return true;