新版天尊降世代码提交
parent
d56b0b6a08
commit
d96dc3a63d
|
@ -436,6 +436,16 @@ public class ActivityLogic implements IEventHandler{
|
|||
Map<Integer, ActivityMission> activityMissionMap = activityManager.getActivityMissionMap();
|
||||
for (SGlobalActivity sGlobalActivity : sGlobalActivityMap.values()) {
|
||||
int activityId = sGlobalActivity.getId();
|
||||
////天尊降世活动特殊处理
|
||||
if (activityMissionMap.containsKey(42)){
|
||||
if (activityId==4201){
|
||||
continue;
|
||||
}
|
||||
}else{
|
||||
if (activityId==42){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (openActivityIds.contains(activityId)) {
|
||||
int[] ifOpen = sGlobalActivity.getIfOpen();
|
||||
if (ifOpen == null || ifOpen.length <= 0){
|
||||
|
|
|
@ -35,6 +35,94 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
if (!(event instanceof NewWelfareEvent)) {
|
||||
return;
|
||||
}
|
||||
if (this.id == 42) {
|
||||
oldActivityEvent(event);
|
||||
} else {
|
||||
NewWelfareEvent newWelfareEvent = (NewWelfareEvent) event;
|
||||
if (newWelfareEvent.getType() == NewWelfareTypeEnum.BUY_1106.getType()) {
|
||||
User user = newWelfareEvent.getUser();
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> item : activityMission.getActivityMissionMap().entrySet()) {
|
||||
ActivityProgressInfo activityProgressInfo = item.getValue();
|
||||
int missionId=item.getKey();
|
||||
if (missionId==4209){
|
||||
activityProgressInfo.setState(1);
|
||||
}
|
||||
activityMission.getActivityMissionMap().put(item.getKey(), activityProgressInfo);
|
||||
}
|
||||
//更新进度
|
||||
ISession sessionByUid = OnlineUserManager.getSessionByUid(user.getId());
|
||||
sendActivityProgress(sessionByUid, activityMission, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean takeReward(ISession session, int missionId) throws Exception {
|
||||
if (this.id == 42) {
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if (sGlobalActivity == null || !user.getActivityManager().getActivityMissionMap().containsKey(id)) {
|
||||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||
}
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
Map<Integer, ActivityProgressInfo> activityProgressInfoMap = activityMission.getActivityMissionMap();
|
||||
oldActivityTakeReward(session,missionId,user,activityMission,activityProgressInfoMap);
|
||||
} else {
|
||||
super.takeReward(session,missionId);
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getAllMissRewards(User user, ISession session, List<int[][]> itemAttrs) {
|
||||
if (this.id == 42) {
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if (sGlobalActivity == null || !user.getActivityManager().getActivityMissionMap().containsKey(id)) {
|
||||
return;
|
||||
}
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
Map<Integer, ActivityProgressInfo> activityProgressInfoMap = activityMission.getActivityMissionMap();
|
||||
for (ActivityProgressInfo activityProgressInfo : activityProgressInfoMap.values()) {
|
||||
if (activityProgressInfo.getState() != 1) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
for (ActivityProgressInfo activityProgressInfo : activityProgressInfoMap.values()) {
|
||||
activityProgressInfo.setState(2);
|
||||
}
|
||||
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> item : activityProgressInfoMap.entrySet()) {
|
||||
item.getValue().setState(2);
|
||||
activityMission.getActivityMissionMap().put(item.getKey(), item.getValue());
|
||||
}
|
||||
|
||||
List<SActivityRewardConfig> sActivityRewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id);
|
||||
itemAttrs.add(sActivityRewardConfigs.get(0).getReward());
|
||||
}else{
|
||||
// super.getAllMissRewards(user,session,itemAttrs);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
void updateProgress(ActivityMission activityMission, int count) {
|
||||
Map<Integer, ActivityProgressInfo> activityProgressInfoMap = activityMission.getActivityMissionMap();
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> item : activityProgressInfoMap.entrySet()) {
|
||||
ActivityProgressInfo activityProgressInfo = item.getValue();
|
||||
int missionId=item.getKey();
|
||||
SActivityRewardConfig rewardConfig=SActivityRewardConfig.getsActivityRewardConfigByMissionId(missionId);
|
||||
activityProgressInfo.setProgrss(count);
|
||||
if (activityProgressInfo.getProgrss()>=rewardConfig.getValues()[0][0]&&rewardConfig.getReward().length<=0&&missionId!=4209){
|
||||
activityProgressInfo.setState(ActivityType.HAD_TAKED);
|
||||
}
|
||||
activityMission.getActivityMissionMap().put(item.getKey(), activityProgressInfo);
|
||||
}
|
||||
}
|
||||
|
||||
private void oldActivityEvent(IEvent event) {
|
||||
NewWelfareEvent newWelfareEvent = (NewWelfareEvent) event;
|
||||
User user = newWelfareEvent.getUser();
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
|
@ -97,16 +185,8 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean takeReward(ISession session, int missionId) throws Exception {
|
||||
private void oldActivityTakeReward(ISession session, int missionId, User user, ActivityMission activityMission, Map<Integer, ActivityProgressInfo> activityProgressInfoMap) throws Exception {
|
||||
PlayerInfoProto.TakeActivityRewardResponse build = null;
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if (sGlobalActivity == null || !user.getActivityManager().getActivityMissionMap().containsKey(id)) {
|
||||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||
}
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
Map<Integer, ActivityProgressInfo> activityProgressInfoMap = activityMission.getActivityMissionMap();
|
||||
//0是领取最后奖励
|
||||
if (missionId == 0) {
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> inter : activityProgressInfoMap.entrySet()) {
|
||||
|
@ -147,34 +227,6 @@ public class NewWelfareActivity extends AbstractActivity {
|
|||
build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build();
|
||||
reportTakeActivityReward(user, sActivityRewardConfig.getReward(), missionId);
|
||||
}
|
||||
|
||||
MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getAllMissRewards(User user, ISession session, List<int[][]> itemAttrs){
|
||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||
if (sGlobalActivity == null || !user.getActivityManager().getActivityMissionMap().containsKey(id)) {
|
||||
return;
|
||||
}
|
||||
ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id);
|
||||
Map<Integer, ActivityProgressInfo> activityProgressInfoMap = activityMission.getActivityMissionMap();
|
||||
for(ActivityProgressInfo activityProgressInfo : activityProgressInfoMap.values()){
|
||||
if(activityProgressInfo.getState() != 1){
|
||||
return;
|
||||
}
|
||||
}
|
||||
for(ActivityProgressInfo activityProgressInfo : activityProgressInfoMap.values()){
|
||||
activityProgressInfo.setState(2);
|
||||
}
|
||||
|
||||
for(Map.Entry<Integer,ActivityProgressInfo> item: activityProgressInfoMap.entrySet()){
|
||||
item.getValue().setState(2);
|
||||
activityMission.getActivityMissionMap().put(item.getKey(),item.getValue());
|
||||
}
|
||||
|
||||
List<SActivityRewardConfig> sActivityRewardConfigs = SActivityRewardConfig.getsActivityRewardConfigByActivityId(id);
|
||||
itemAttrs.add(sActivityRewardConfigs.get(0).getReward());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,7 +6,8 @@ public enum NewWelfareTypeEnum {
|
|||
RECHARGE_BUY(3),
|
||||
EXPLORE(4),//极速探索n次
|
||||
UPSTAR(5),//指定英雄升级至x星
|
||||
ALL_MISSION_FIN(6)//sort为2所有任务完成
|
||||
ALL_MISSION_FIN(6),//sort为2所有任务完成
|
||||
BUY_1106(7),//购买1106礼包
|
||||
;
|
||||
|
||||
private int type;
|
||||
|
|
|
@ -227,6 +227,9 @@ public class BuyGoodsNewLogic {
|
|||
//处理特权
|
||||
activePrivilege(user,config);
|
||||
resultRes.setResultCode(1);
|
||||
if (goodsId==1106){
|
||||
Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.BUY_1106.getType(),0));
|
||||
}
|
||||
//发送邮件
|
||||
int[] mail = config.getMail();
|
||||
if(config.getPrice()!=0&&mail!=null&&mail.length>1){
|
||||
|
@ -332,6 +335,7 @@ public class BuyGoodsNewLogic {
|
|||
ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.JADE_DYNASTY_RECHARGE_SUM,(int)(price*1000));
|
||||
ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.RECHARGE_SUM_DAY, (int)(user.getPlayerInfoManager().getRechargedaily()*1000) );
|
||||
ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.FIND_FAIRY_FESTIVAL, (int)(price*1000));
|
||||
ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.NEW_WELFARE, (int)(info.getRr()));
|
||||
|
||||
AyyncWorker ayyncWorker = new AyyncWorker(user, true, new AynMissionWorker(GameEvent.RECHARGE_TOTAL,(int)(price*1000))) ;
|
||||
ProtocolsManager.getInstance().updateAyncWorker(ayyncWorker);
|
||||
|
|
Loading…
Reference in New Issue