七界,领取奖励
parent
eb3c5d359b
commit
78ac3e8df1
|
@ -15,6 +15,7 @@ import com.ljsd.jieling.logic.dao.root.User;
|
||||||
import com.ljsd.jieling.logic.item.ItemLogic;
|
import com.ljsd.jieling.logic.item.ItemLogic;
|
||||||
import com.ljsd.jieling.logic.store.newRechargeInfo.bean.ReceiveWelfareBag;
|
import com.ljsd.jieling.logic.store.newRechargeInfo.bean.ReceiveWelfareBag;
|
||||||
import com.ljsd.jieling.network.session.ISession;
|
import com.ljsd.jieling.network.session.ISession;
|
||||||
|
import com.ljsd.jieling.tools.Utils;
|
||||||
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.SQijieStage;
|
import config.SQijieStage;
|
||||||
|
@ -25,9 +26,7 @@ import org.slf4j.LoggerFactory;
|
||||||
import rpc.protocols.CommonProto;
|
import rpc.protocols.CommonProto;
|
||||||
import rpc.protocols.PlayerInfoProto;
|
import rpc.protocols.PlayerInfoProto;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Optional;
|
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author hj
|
* @author hj
|
||||||
|
@ -146,27 +145,25 @@ public class SevenWorldActivity extends AbstractActivity {
|
||||||
}
|
}
|
||||||
SQijieTreasure treasure = STableManager.getConfig(SQijieTreasure.class).get(missionId);
|
SQijieTreasure treasure = STableManager.getConfig(SQijieTreasure.class).get(missionId);
|
||||||
CommonProto.Drop.Builder drop = CommonProto.Drop.newBuilder();
|
CommonProto.Drop.Builder drop = CommonProto.Drop.newBuilder();
|
||||||
|
List<int[]> rewardList = new ArrayList<>();
|
||||||
// 未领取
|
// 未领取
|
||||||
if (progressInfo.getState() == ActivityType.WILL_TAKE && checkValue(user,missionId)){
|
if (progressInfo.getState() == ActivityType.WILL_TAKE && checkValue(user,missionId)){
|
||||||
// 满足挑战,普通领取
|
// 满足挑战,普通领取
|
||||||
ItemUtil.drop(user, treasure.getReward(), drop, BIReason.SEVEN_WORLD_TREASURE);
|
rewardList.addAll(Arrays.asList(treasure.getReward()));
|
||||||
progressInfo.setState(ActivityType.HAD_TAKED);
|
progressInfo.setState(ActivityType.HAD_TAKED);
|
||||||
// 购买礼包,完美领取
|
|
||||||
if (checkGift(user)){
|
|
||||||
ItemUtil.drop(user, treasure.getReward(), drop, BIReason.SEVEN_WORLD_TREASURE);
|
|
||||||
progressInfo.setState(ActivityType.FINISH_TAKED);
|
|
||||||
}
|
|
||||||
reportTakeActivityReward(user,treasure.getReward(),missionId);
|
|
||||||
}
|
}
|
||||||
// 完美领取
|
// 完美领取
|
||||||
if (progressInfo.getState() == ActivityType.HAD_TAKED && checkGift(user)){
|
if (progressInfo.getState() == ActivityType.HAD_TAKED && checkGift(user)){
|
||||||
ItemUtil.drop(user, treasure.getTreasureReward(), drop, BIReason.SEVEN_WORLD_TREASURE);
|
|
||||||
progressInfo.setState(ActivityType.FINISH_TAKED);
|
progressInfo.setState(ActivityType.FINISH_TAKED);
|
||||||
reportTakeActivityReward(user,treasure.getTreasureReward(),missionId);
|
rewardList.addAll(Arrays.asList(treasure.getTreasureReward()));
|
||||||
}
|
}
|
||||||
if (drop.getItemlistCount() <= 0){
|
// 领取了全部奖励
|
||||||
|
if (rewardList.isEmpty()){
|
||||||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||||
}
|
}
|
||||||
|
int[][] rewards = Utils.changeList(rewardList);
|
||||||
|
ItemUtil.drop(user, rewards, drop, BIReason.SEVEN_WORLD_TREASURE);
|
||||||
|
reportTakeActivityReward(user,treasure.getTreasureReward(),missionId);
|
||||||
// 更新数据库
|
// 更新数据库
|
||||||
mission.getActivityMissionMap().put(missionId, progressInfo);
|
mission.getActivityMissionMap().put(missionId, progressInfo);
|
||||||
// 发送奖励
|
// 发送奖励
|
||||||
|
|
Loading…
Reference in New Issue