公会副本boss修改

back_recharge
lvxinran 2020-11-20 13:20:00 +08:00
parent 47d40eae84
commit 46257c701e
1 changed files with 28 additions and 22 deletions

View File

@ -221,7 +221,9 @@ public class GuildChallengeLogic {
} }
}else if(checkResult[0]==0){ }else if(checkResult[0]==0){
//怪物保持在第四位 //怪物保持在第四位
if(guildInfo.getCurrBossId()!=configMap.size()){
guildInfo.setBossHpRemain(checkResult[3]==0?10000:checkResult[3]); guildInfo.setBossHpRemain(checkResult[3]==0?10000:checkResult[3]);
}
}else{ }else{
error = "战斗异常!"; error = "战斗异常!";
} }
@ -231,6 +233,7 @@ public class GuildChallengeLogic {
damage = damageInt; damage = damageInt;
}else{ }else{
//扫荡 //扫荡
if(guildInfo.getBossHpRemain()!=-1){
int remain = guildInfo.getBossHpRemain() - guildMyInfo.getGuildChallengeDamage(); int remain = guildInfo.getBossHpRemain() - guildMyInfo.getGuildChallengeDamage();
if(remain>=0){ if(remain>=0){
guildInfo.setBossHpRemain(remain); guildInfo.setBossHpRemain(remain);
@ -251,6 +254,7 @@ public class GuildChallengeLogic {
} }
kill=1; kill=1;
} }
}
damage = guildMyInfo.getGuildChallengeDamage(); damage = guildMyInfo.getGuildChallengeDamage();
} }
} }
@ -258,12 +262,14 @@ public class GuildChallengeLogic {
if(!error.isEmpty()){ if(!error.isEmpty()){
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE); throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
} }
if(guildInfo.getBossHpRemain()!=-1){
AbstractRank rank = RankContext.getRankEnum(RankEnum.GUILD_CHALLENGE_RANK.getType()); AbstractRank rank = RankContext.getRankEnum(RankEnum.GUILD_CHALLENGE_RANK.getType());
long score = Double.valueOf(rank.getScoreById(user.getId(), guildId+":"+bossId)).longValue(); long score = Double.valueOf(rank.getScoreById(user.getId(), guildId+":"+bossId)).longValue();
rank.addRank(uid,guildId+":"+bossId,score==-1?damage:score+damage); rank.addRank(uid,guildId+":"+bossId,score==-1?damage:score+damage);
}
if(kill==1){ if(kill==1){
//如果不是最后一个boss更特权 //如果不是最后一个boss更特权
if(guildInfo.getCurrBossId()!=configMap.size()){ if(guildInfo.getCurrBossId()-1!=configMap.size()){
GuildLogic.sendFamilyBaseUpdateIndication(guildInfo); GuildLogic.sendFamilyBaseUpdateIndication(guildInfo);
Map<Integer, Set<Integer>> members = guildInfo.getMembers(); Map<Integer, Set<Integer>> members = guildInfo.getMembers();
for(Set<Integer> items : members.values()){ for(Set<Integer> items : members.values()){