云梦祈福刷新
parent
6b036a1b54
commit
d4ee477baa
|
@ -16,6 +16,6 @@ public class BlessRefreshHandler extends BaseHandler {
|
|||
|
||||
@Override
|
||||
public void process(ISession iSession, PacketNetData netData) throws Exception {
|
||||
// ActivityLogic.getInstance().blessRefreshReward(iSession,MessageTypeProto.MessageType.BLESS_REFRESH_RESPONSE);
|
||||
ActivityLogic.getInstance().blessRefreshReward(iSession,MessageTypeProto.MessageType.BLESS_REFRESH_RESPONSE);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -968,7 +968,7 @@ public class ActivityLogic implements IEventHandler{
|
|||
MessageUtil.sendMessage(session, 1, messageType.getNumber(), response.build(), true);
|
||||
}
|
||||
|
||||
private PlayerInfoProto.blessResponse.Builder getBlessInfoResponse(ActivityMission activityMission) {
|
||||
public PlayerInfoProto.blessResponse.Builder getBlessInfoResponse(ActivityMission activityMission) {
|
||||
PlayerInfoProto.blessResponse.Builder response = PlayerInfoProto.blessResponse.newBuilder();
|
||||
Map<Integer, ActivityProgressInfo> blessInfoMap = activityMission.getActivityMissionMap();
|
||||
//保存之前
|
||||
|
@ -1104,36 +1104,26 @@ public class ActivityLogic implements IEventHandler{
|
|||
MessageUtil.sendMessage(session, 1, messageType.getNumber(), null, true);
|
||||
}
|
||||
|
||||
// /**
|
||||
// * 云梦手动刷新
|
||||
// *
|
||||
// * @param session
|
||||
// * @param messageType
|
||||
// * @throws Exception
|
||||
// */
|
||||
// public void blessRefreshReward(ISession session, MessageTypeProto.MessageType messageType) throws Exception {
|
||||
// User user = UserManager.getUser(session.getUid());
|
||||
// if (SBlessingConfig.sBlessingConfig.getIsRefresh() == 0) {
|
||||
// MessageUtil.sendErrorResponse(session, 0, messageType.getNumber(), "活动不可刷新");
|
||||
// return;
|
||||
// }
|
||||
/**
|
||||
* 云梦手动刷新
|
||||
*
|
||||
* @param session
|
||||
* @param messageType
|
||||
* @throws Exception
|
||||
*/
|
||||
public void blessRefreshReward(ISession session, MessageTypeProto.MessageType messageType) throws Exception {
|
||||
User user = UserManager.getUser(session.getUid());
|
||||
// ActivityMission activityMission = blessRefresh(user);
|
||||
// activityMission.getActivityMissionMap().put(BlessInfoConfig.LAST_REFRESH_TIME, new ActivityProgressInfo((int) (TimeUtils.now() / 1000), 0));
|
||||
//
|
||||
// Poster.getPoster().dispatchEvent(new BlessInfoRefreshEvent(session.getUid()));
|
||||
// ActivityProgressInfo newInfo = new ActivityProgressInfo();
|
||||
//// newInfo.setState();
|
||||
//// activityMission.getActivityMissionMap().put(BlessInfoConfig.LAST_REFRESH_TIME, new ActivityProgressInfo((int) (TimeUtils.now() / 1000), 0));
|
||||
// PlayerInfoProto.blessRefresh res = PlayerInfoProto.blessRefresh.newBuilder().setReward(getBlessInfoResponse(activityMission).build()).build();
|
||||
// MessageUtil.sendMessage(session, 1, messageType.getNumber(), res, true);
|
||||
// }
|
||||
Poster.getPoster().dispatchEvent(new BlessInfoRefreshEvent(session.getUid()));
|
||||
}
|
||||
|
||||
// private ActivityMission blessRefresh(User user) {
|
||||
// ActivityManager activityManager = user.getActivityManager();
|
||||
// ActivityMission activityMission = activityManager.getActivityMissionMap().get(SBlessingConfig.sBlessingConfig.getActivityId());
|
||||
// ActivityProgressInfo tempProgress = new ActivityProgressInfo();
|
||||
// //数据清空
|
||||
// for (Map.Entry<Integer, ActivityProgressInfo> entry : activityMission.getActivityMissionMap().entrySet()) {
|
||||
// activityMission.getActivityMissionMap().put(entry.getKey(), tempProgress);
|
||||
// }
|
||||
// activityMission = blessInfoInit(activityManager, 7);
|
||||
// return activityMission;
|
||||
// }
|
||||
|
||||
|
||||
// /**
|
||||
|
|
|
@ -1,12 +1,23 @@
|
|||
package com.ljsd.jieling.logic.activity;
|
||||
|
||||
|
||||
import com.ljsd.jieling.exception.ErrorCode;
|
||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||
import com.ljsd.jieling.handler.activity.BlessInfoConfig;
|
||||
import com.ljsd.jieling.jbean.ActivityManager;
|
||||
import com.ljsd.jieling.jbean.ActivityMission;
|
||||
import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||
import com.ljsd.jieling.logic.activity.event.BlessInfoRefreshEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.protocols.CommonProto;
|
||||
import com.ljsd.jieling.protocols.MessageTypeProto;
|
||||
import com.ljsd.jieling.protocols.PlayerInfoProto;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import config.SBlessingConfig;
|
||||
import config.SBlessingRewardPool;
|
||||
import manager.STableManager;
|
||||
|
@ -21,6 +32,8 @@ public class BlessActivity extends AbstractActivity {
|
|||
|
||||
public BlessActivity(int id) {
|
||||
super(id);
|
||||
Poster.getPoster().listenEvent(this, BlessInfoRefreshEvent.class);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -30,7 +43,16 @@ public class BlessActivity extends AbstractActivity {
|
|||
|
||||
@Override
|
||||
public void initActivity(User user){
|
||||
blessInfoInit(user.getActivityManager(), id);
|
||||
blessInfoInit(user.getActivityManager(), id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEvent(IEvent event) throws Exception {
|
||||
if(event instanceof BlessInfoRefreshEvent){
|
||||
blessRefreshReward(((BlessInfoRefreshEvent) event).getUid());
|
||||
}else{
|
||||
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -144,4 +166,35 @@ public class BlessActivity extends AbstractActivity {
|
|||
return activityMission;
|
||||
}
|
||||
|
||||
/**
|
||||
* 云梦手动刷新
|
||||
* @throws Exception
|
||||
*/
|
||||
public void blessRefreshReward(int uid ) throws Exception {
|
||||
User user = UserManager.getUser(uid);
|
||||
if(user.getActivityManager().getActivityMissionMap().get(id)==null){
|
||||
return;
|
||||
}
|
||||
ActivityMission activityMission = blessRefresh(user ,id);
|
||||
PlayerInfoProto.blessRefresh res = PlayerInfoProto.blessRefresh.newBuilder().setReward(ActivityLogic.getInstance().getBlessInfoResponse(activityMission).build()).build();
|
||||
MessageUtil.sendMessage(OnlineUserManager.getSessionByUid(uid), 1, MessageTypeProto.MessageType.BLESS_REFRESH_RESPONSE_VALUE, res, true);
|
||||
}
|
||||
|
||||
private ActivityMission blessRefresh(User user,int activityId) {
|
||||
ActivityManager activityManager = user.getActivityManager();
|
||||
|
||||
ActivityMission activityMission = activityManager.getActivityMissionMap().get(activityId);
|
||||
|
||||
ActivityProgressInfo tempProgress = new ActivityProgressInfo();
|
||||
//数据清空
|
||||
for (Map.Entry<Integer, ActivityProgressInfo> entry : activityMission.getActivityMissionMap().entrySet()) {
|
||||
activityMission.getActivityMissionMap().put(entry.getKey(), tempProgress);
|
||||
}
|
||||
activityMission = blessInfoInit(activityManager, activityId);
|
||||
return activityMission;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
package com.ljsd.jieling.logic.activity.event;
|
||||
|
||||
/**
|
||||
* @author lvxinran
|
||||
* @date 2020/9/10
|
||||
* @discribe
|
||||
*/
|
||||
public class BlessInfoRefreshEvent implements IEvent {
|
||||
private int uid;
|
||||
|
||||
public int getUid() {
|
||||
return uid;
|
||||
}
|
||||
|
||||
public void setUid(int uid) {
|
||||
this.uid = uid;
|
||||
}
|
||||
|
||||
public BlessInfoRefreshEvent(int uid) {
|
||||
this.uid = uid;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue