mission 合并
parent
50606d6e24
commit
a4144852d3
|
@ -159,19 +159,17 @@ public class HeroLogic {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean isSpecial = false;
|
|
||||||
if(sLotterySetting.getOrderBoxPool()!=null && sLotterySetting.getOrderBoxPool().length>0){
|
if(sLotterySetting.getOrderBoxPool()!=null && sLotterySetting.getOrderBoxPool().length>0){
|
||||||
pooId = getOrderBoxPoolId(sLotterySetting);
|
pooId = getOrderBoxPoolId(sLotterySetting);
|
||||||
if(pooId == 0){
|
if(pooId == 0){
|
||||||
MessageUtil.sendErrorResponse(session, 0, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,"");
|
MessageUtil.sendErrorResponse(session, 0, MessageTypeProto.MessageType.HERO_RAND_RESPONSE_VALUE,"");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
isSpecial = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//检验消耗
|
//检验消耗
|
||||||
boolean allowFree = false;
|
boolean allowFree = false;
|
||||||
if(perCount == 1){
|
if(perCount == 1 && sLotterySetting.getLotteryType() == 1){
|
||||||
allowFree = user.getPlayerInfoManager().check(VipPrivilegeType.FREE_HERO_RANDOM, 1);
|
allowFree = user.getPlayerInfoManager().check(VipPrivilegeType.FREE_HERO_RANDOM, 1);
|
||||||
}
|
}
|
||||||
if(!allowFree){
|
if(!allowFree){
|
||||||
|
|
|
@ -263,17 +263,21 @@ public class MissionEventDistributor {
|
||||||
User user = UserManager.getUser(session.getUid());
|
User user = UserManager.getUser(session.getUid());
|
||||||
Map<GameMisionType, List<MissionStateChangeInfo>> missionTypeEnumListMap = threadMissionChangeList.get();
|
Map<GameMisionType, List<MissionStateChangeInfo>> missionTypeEnumListMap = threadMissionChangeList.get();
|
||||||
if (sendIndication) {
|
if (sendIndication) {
|
||||||
|
PlayerInfoProto.MissionUpdateListIndication.Builder builder = PlayerInfoProto.MissionUpdateListIndication.newBuilder();
|
||||||
for(Map.Entry<GameMisionType, List<MissionStateChangeInfo>> misionTypeListEntry : missionTypeEnumListMap.entrySet()){
|
for(Map.Entry<GameMisionType, List<MissionStateChangeInfo>> misionTypeListEntry : missionTypeEnumListMap.entrySet()){
|
||||||
sendMissionUpdate(session,user,misionTypeListEntry.getValue(),misionTypeListEntry.getKey());
|
buildMissionUpdate(user,misionTypeListEntry.getValue(),misionTypeListEntry.getKey(),builder);
|
||||||
}
|
}
|
||||||
|
if(builder.getUserMissionInfoCount()>0){
|
||||||
|
MessageUtil.sendIndicationMessage(session,1, MessageTypeProto.MessageType.MISSION_UPDATE_INDICATION_VALUE,builder.build(),true);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void sendMissionUpdate(ISession session, User user ,List<MissionStateChangeInfo> missionStateChangeInfos,GameMisionType gameMisionType) {
|
private static void buildMissionUpdate(User user,List<MissionStateChangeInfo> missionStateChangeInfos, GameMisionType gameMisionType,PlayerInfoProto.MissionUpdateListIndication.Builder builder) {
|
||||||
if(missionStateChangeInfos.isEmpty()){
|
if(missionStateChangeInfos.isEmpty()){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
PlayerInfoProto.MissionUpdateListIndication.Builder builder = PlayerInfoProto.MissionUpdateListIndication.newBuilder();
|
|
||||||
for(MissionStateChangeInfo missionStateChangeInfo : missionStateChangeInfos){
|
for(MissionStateChangeInfo missionStateChangeInfo : missionStateChangeInfos){
|
||||||
MissionState missionState = missionStateChangeInfo.getMissionState();
|
MissionState missionState = missionStateChangeInfo.getMissionState();
|
||||||
int state = missionState.getState();
|
int state = missionState.getState();
|
||||||
|
@ -315,7 +319,7 @@ public class MissionEventDistributor {
|
||||||
}
|
}
|
||||||
builder.addUserMissionInfo(CommonProto.UserMissionInfo.newBuilder().setMissionId(missionStateChangeInfo.getMissionId()).setType(gameMisionType.getType()).setState(state).setProgress(progress).setTakeTimes(missionStateChangeInfo.getHadTakes()));
|
builder.addUserMissionInfo(CommonProto.UserMissionInfo.newBuilder().setMissionId(missionStateChangeInfo.getMissionId()).setType(gameMisionType.getType()).setState(state).setProgress(progress).setTakeTimes(missionStateChangeInfo.getHadTakes()));
|
||||||
}
|
}
|
||||||
MessageUtil.sendIndicationMessage(session,1, MessageTypeProto.MessageType.MISSION_UPDATE_INDICATION_VALUE,builder.build(),true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Map<GameMisionType, List<MissionStateChangeInfo>> onGameEvent(User user, GameEvent event, Object ... parm) throws Exception {
|
public static Map<GameMisionType, List<MissionStateChangeInfo>> onGameEvent(User user, GameEvent event, Object ... parm) throws Exception {
|
||||||
|
|
Loading…
Reference in New Issue