抽卡宝箱修改、十绝阵回合数限制、公会技能重置修改

back_recharge
lvxinran 2020-06-19 15:56:51 +08:00
parent ae4d30761e
commit c98c5f1741
3 changed files with 25 additions and 14 deletions

View File

@ -295,7 +295,7 @@ public class DeathPathLogic {
FightResult fightResult = FightDispatcher.dispatcher(pveFightEvent);
int damage = fightResult.getCheckResult()[1];
CommonProto.FightData fightData = CommonProto.FightData.newBuilder()
.setFightMaxTime(1000)
.setFightMaxTime(SGuildSetting.sGuildSetting.getWarTime())
.setFightSeed(fightResult.getSeed())
.setHeroFightInfos(fightResult.getFightTeamInfo())
.addAllMonsterList(fightResult.getMonsterTeamList())

View File

@ -1313,7 +1313,7 @@ public class GuildLogic {
int size = SGuildTechnology.technologyMap.get(type).size();
String err = StoreLogic.checkBuyGoodsAndUpdate(user,7, 10028,1);
if(err!=null&&!err.isEmpty()){
if(!err.isEmpty()){
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
}
List<int[]> consume = new ArrayList<>();
@ -1330,14 +1330,23 @@ public class GuildLogic {
}
int percent = SSpecialConfig.getIntegerValue(SSpecialConfig.GUILD_TECHNOLOGY_RETURN_PERCENT);
int[][] dropArray = consume.toArray(new int[consume.size()][]);
int[][] dropArrayReally =new int[dropArray.length][];
for(int i = 0;i<dropArray.length;i++){
if(dropArray[i].length<2){
Map<Integer,Integer> reward = new HashMap<>();
for (int[] aDropArray : dropArray) {
if (aDropArray.length < 2) {
continue;
}
dropArrayReally[i] = new int[2];
dropArrayReally[i][0] = dropArray[i][0];
dropArrayReally[i][1] = (int) (dropArray[i][1]*(percent/10000f));
if (!reward.containsKey(aDropArray[0])) {
reward.put(aDropArray[0], 0);
}
reward.put(aDropArray[0], reward.get(aDropArray[0]) + aDropArray[1]);
}
int[][] dropArrayReally =new int[reward.size()][];
int index = 0;
for(Map.Entry<Integer,Integer> entry:reward.entrySet()){
double doublePercent = (double) percent;
dropArrayReally[index] = new int[]{entry.getKey(),(int)(entry.getValue()*doublePercent/10000)};
index++;
}
CommonProto.Drop.Builder drop = ItemUtil.drop(user, dropArrayReally, BIReason.RESET_GUILD_SKILL);
guildMyInfo.removeGuildSkillByType(type);

View File

@ -325,12 +325,14 @@ public class HeroLogic{
if(mustSet.isEmpty()){
sLotteryRewardConfig = randomHeroByPoolId(getPooId(sLotterySetting), 1, user.getPlayerInfoManager().getLevel());
int star = sLotteryRewardConfig.getStar();
for(int key:randomPoolByType.get(mergePool).keySet()){
if(star==key){
randomPoolByType.get(mergePool).put(key,0);
}else{
int curValue= randomPoolByType.get(mergePool).getOrDefault(key,0);
randomPoolByType.get(mergePool).put(key,curValue+1);
if(randomPoolByType.get(mergePool)!=null) {
for (int key : randomPoolByType.get(mergePool).keySet()) {
if (star == key) {
randomPoolByType.get(mergePool).put(key, 0);
} else {
int curValue = randomPoolByType.get(mergePool).getOrDefault(key, 0);
randomPoolByType.get(mergePool).put(key, curValue + 1);
}
}
}
}else{