山河社稷图排行榜
parent
2bfb6228b0
commit
e1dbce80cf
|
@ -121,9 +121,6 @@ public class StartHardStageRequestHandler extends BaseHandler<PlayerInfoProto.Ha
|
||||||
if (resultCode == -1) {
|
if (resultCode == -1) {
|
||||||
throw new ErrorCodeException(ErrorCode.FIGHT_EXCEPTION);
|
throw new ErrorCodeException(ErrorCode.FIGHT_EXCEPTION);
|
||||||
}
|
}
|
||||||
if (resultCode == 1) {//通过
|
|
||||||
HardStageLogic.passNode(iSession, nodeConfig, resultNum, dropList);
|
|
||||||
}
|
|
||||||
String fightId = FightUtil.getFightId(user.getId(), FightType.HardStage.getType());
|
String fightId = FightUtil.getFightId(user.getId(), FightType.HardStage.getType());
|
||||||
CommonProto.FightData fightData = CommonProto.FightData.newBuilder()
|
CommonProto.FightData fightData = CommonProto.FightData.newBuilder()
|
||||||
.setFightType(FightType.HardStage.getType())
|
.setFightType(FightType.HardStage.getType())
|
||||||
|
@ -135,45 +132,51 @@ public class StartHardStageRequestHandler extends BaseHandler<PlayerInfoProto.Ha
|
||||||
.build();
|
.build();
|
||||||
fightStartResponse.setFightData(fightData);
|
fightStartResponse.setFightData(fightData);
|
||||||
FightRecordLogic.getInstance().addRecordMap(user, fightData);
|
FightRecordLogic.getInstance().addRecordMap(user, fightData);
|
||||||
|
if (resultCode == 1) {//通过
|
||||||
//战斗回放
|
HardStageLogic.passNode(iSession, nodeConfig, resultNum, dropList);
|
||||||
int force = HeroLogic.getInstance().calTeamTotalForce(user, teamId, false);
|
//战斗回放
|
||||||
// 首次通关记录
|
int force = HeroLogic.getInstance().calTeamTotalForce(user, teamId, false);
|
||||||
ArenaRecord firstPassRecord = RedisUtil.getInstence().get(RedisKey.HARD_STAGE_FIST_PASS, String.valueOf(nodeId), ArenaRecord.class);
|
// 首次通关记录
|
||||||
if (firstPassRecord == null) {
|
ArenaRecord firstPassRecord = RedisUtil.getInstence().get(RedisKey.HARD_STAGE_FIST_PASS, String.valueOf(nodeId), ArenaRecord.class);
|
||||||
ArenaRecord arenaRecord = new ArenaRecord();
|
if (firstPassRecord == null) {
|
||||||
arenaRecord.setCreateTime(TimeUtils.nowInt());
|
ArenaRecord arenaRecord = new ArenaRecord();
|
||||||
arenaRecord.setAttackId(user.getId());
|
arenaRecord.setCreateTime(TimeUtils.nowInt());
|
||||||
arenaRecord.setLevel(user.getPlayerInfoManager().getLevel());
|
arenaRecord.setAttackId(user.getId());
|
||||||
arenaRecord.setHead(user.getPlayerInfoManager().getHead());
|
arenaRecord.setLevel(user.getPlayerInfoManager().getLevel());
|
||||||
arenaRecord.setUserName(user.getPlayerInfoManager().getNickName());
|
arenaRecord.setHead(user.getPlayerInfoManager().getHead());
|
||||||
arenaRecord.setHeadFrame(user.getPlayerInfoManager().getHeadFrame());
|
arenaRecord.setUserName(user.getPlayerInfoManager().getNickName());
|
||||||
arenaRecord.setFightData(fightData.toByteArray());
|
arenaRecord.setHeadFrame(user.getPlayerInfoManager().getHeadFrame());
|
||||||
arenaRecord.setAttackForce(force);
|
arenaRecord.setFightData(fightData.toByteArray());
|
||||||
RedisUtil.getInstence().set(RedisKey.HARD_STAGE_FIST_PASS, String.valueOf(nodeId), arenaRecord);
|
arenaRecord.setAttackForce(force);
|
||||||
}
|
RedisUtil.getInstence().set(RedisKey.HARD_STAGE_FIST_PASS, String.valueOf(nodeId), arenaRecord);
|
||||||
// 最低战力通关记录记录
|
}
|
||||||
ArenaRecord minForcePassRecord = RedisUtil.getInstence().get(RedisKey.HARD_STAGE_PASS_MIN_FORCE, String.valueOf(nodeId), ArenaRecord.class);
|
// 最低战力通关记录记录
|
||||||
if (minForcePassRecord == null || force < minForcePassRecord.getAttackForce()) {
|
ArenaRecord minForcePassRecord = RedisUtil.getInstence().get(RedisKey.HARD_STAGE_PASS_MIN_FORCE, String.valueOf(nodeId), ArenaRecord.class);
|
||||||
ArenaRecord arenaRecord = new ArenaRecord();
|
if (minForcePassRecord == null || force < minForcePassRecord.getAttackForce()) {
|
||||||
arenaRecord.setCreateTime(TimeUtils.nowInt());
|
ArenaRecord arenaRecord = new ArenaRecord();
|
||||||
arenaRecord.setAttackId(user.getId());
|
arenaRecord.setCreateTime(TimeUtils.nowInt());
|
||||||
arenaRecord.setLevel(user.getPlayerInfoManager().getLevel());
|
arenaRecord.setAttackId(user.getId());
|
||||||
arenaRecord.setHead(user.getPlayerInfoManager().getHead());
|
arenaRecord.setLevel(user.getPlayerInfoManager().getLevel());
|
||||||
arenaRecord.setUserName(user.getPlayerInfoManager().getNickName());
|
arenaRecord.setHead(user.getPlayerInfoManager().getHead());
|
||||||
arenaRecord.setHeadFrame(user.getPlayerInfoManager().getHeadFrame());
|
arenaRecord.setUserName(user.getPlayerInfoManager().getNickName());
|
||||||
arenaRecord.setFightData(fightData.toByteArray());
|
arenaRecord.setHeadFrame(user.getPlayerInfoManager().getHeadFrame());
|
||||||
arenaRecord.setAttackForce(force);
|
arenaRecord.setFightData(fightData.toByteArray());
|
||||||
RedisUtil.getInstence().set(RedisKey.HARD_STAGE_PASS_MIN_FORCE, String.valueOf(nodeId), arenaRecord);
|
arenaRecord.setAttackForce(force);
|
||||||
|
RedisUtil.getInstence().set(RedisKey.HARD_STAGE_PASS_MIN_FORCE, String.valueOf(nodeId), arenaRecord);
|
||||||
|
}
|
||||||
|
//排行榜星级
|
||||||
|
int starSum = HardStageLogic.getHardStageStarsSum(user);
|
||||||
|
if(starSum >0){
|
||||||
|
Poster.getPoster().dispatchEvent(new ShanHeSheJiTuStarEvent(iSession.getUid(), 2, starSum));
|
||||||
|
//成就任务
|
||||||
|
user.getUserMissionManager().onGameEvent(user, GameEvent.HARSTAGE_STARS,starSum);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//排行榜
|
//排行榜章节
|
||||||
int hardStageId = SHardStage.getStageIdByChapterAndSection(user.getHardStageManager().getCurChapter(), user.getHardStageManager().getCurNode());
|
int hardStageId = SHardStage.getStageIdByChapterAndSection(user.getHardStageManager().getCurChapter(), user.getHardStageManager().getCurNode());
|
||||||
Poster.getPoster().dispatchEvent(new ShanHeSheJiTuStarEvent(iSession.getUid(), 1, hardStageId));
|
Poster.getPoster().dispatchEvent(new ShanHeSheJiTuStarEvent(iSession.getUid(), 1, hardStageId));
|
||||||
int starSum = HardStageLogic.getHardStageStarsSum(user);
|
|
||||||
if(starSum >0){
|
|
||||||
Poster.getPoster().dispatchEvent(new ShanHeSheJiTuStarEvent(iSession.getUid(), 2, starSum));
|
|
||||||
}
|
|
||||||
ItemUtil.drop(user, dropList.stream().mapToInt(Integer::intValue).toArray(), drop, 1, 0, BIReason.HARD_STAGE_GET);
|
ItemUtil.drop(user, dropList.stream().mapToInt(Integer::intValue).toArray(), drop, 1, 0, BIReason.HARD_STAGE_GET);
|
||||||
fightStartResponse.setDrop(drop);
|
fightStartResponse.setDrop(drop);
|
||||||
Map<Integer, HardStageChapter> chapt = user.getHardStageManager().getChapterMap(user);
|
Map<Integer, HardStageChapter> chapt = user.getHardStageManager().getChapterMap(user);
|
||||||
|
@ -183,8 +186,6 @@ public class StartHardStageRequestHandler extends BaseHandler<PlayerInfoProto.Ha
|
||||||
fightStartResponse.setStars(node.getState());
|
fightStartResponse.setStars(node.getState());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//成就任务
|
|
||||||
user.getUserMissionManager().onGameEvent(user, GameEvent.HARSTAGE_STARS,starSum);
|
|
||||||
user.getUserMissionManager().onGameEvent(user, GameEvent.HARSTAGE_NODE,hardStageId);
|
user.getUserMissionManager().onGameEvent(user, GameEvent.HARSTAGE_NODE,hardStageId);
|
||||||
MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.HARD_STAGE_FIGHT_START_RESPONSE.getNumber(), fightStartResponse.build(), true);
|
MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.HARD_STAGE_FIGHT_START_RESPONSE.getNumber(), fightStartResponse.build(), true);
|
||||||
//更新消息
|
//更新消息
|
||||||
|
|
Loading…
Reference in New Issue