0127挂机奖励计算

back_recharge
duhui 2021-01-20 10:05:46 +08:00
parent fd4cd6dd7f
commit 36306b509e
3 changed files with 46 additions and 8 deletions

View File

@ -946,11 +946,13 @@ public class CombatLogic {
Integer times = fightStateInfoItem.getValue();
SMainLevelConfig sMainLevelConfig = SMainLevelConfig.config.get(fightId);
int[] randomRewardMin = sMainLevelConfig.getRandomRewardMin();
ItemUtil.combineReward(user,true,randomRewardMin, times,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,itemObj,BIReason.ADVENTURE_BASE_REWARD);
int timesTemp =times;
while (!viewBaseReward&&timesTemp-->0){
ItemUtil.combineReward(user,true,sMainLevelConfig.getRandomReward(), 1f,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,itemObj,BIReason.ADVENTURE_RANDOM_REWARDD);
ItemUtil.combineRewardByMainLine(user,true,randomRewardMin, times,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,itemObj,BIReason.ADVENTURE_BASE_REWARD);
if (!viewBaseReward){
ItemUtil.combineRewardByMainLine(user,true,sMainLevelConfig.getRandomReward(), times,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,itemObj,BIReason.ADVENTURE_RANDOM_REWARDD);
}
/*while (!viewBaseReward&&timesTemp-->0){
ItemUtil.combineReward(user,true,sMainLevelConfig.getRandomReward(), 1f,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,itemObj,BIReason.ADVENTURE_RANDOM_REWARDD);
}*/
takeTimes+=times;
}
int fightId = mainLevelManager.getFightId();
@ -964,11 +966,14 @@ public class CombatLogic {
if(maxTimes>0){
times = times > maxTimes?maxTimes:times;
int[] randomRewardMin = targetMainLevelConfig.getRandomRewardMin();
ItemUtil.combineReward(user,true,randomRewardMin, times,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,itemObj,BIReason.ADVENTURE_BASE_REWARD);
int timesTemp =times;
ItemUtil.combineRewardByMainLine(user,true,randomRewardMin, times,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,itemObj,BIReason.ADVENTURE_BASE_REWARD);
if (!viewBaseReward){
ItemUtil.combineRewardByMainLine(user,true,targetMainLevelConfig.getRandomReward(), times,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,itemObj,BIReason.ADVENTURE_RANDOM_REWARDD);
}
/*int timesTemp =times;
while (!viewBaseReward&&timesTemp-->0){
ItemUtil.combineReward(user,true,targetMainLevelConfig.getRandomReward(), 1f,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,itemObj,BIReason.ADVENTURE_RANDOM_REWARDD);
}
}*/
lastTimeTakes=times;
}
ItemUtil.extraAddItem(user,baseItemMap,BIReason.ADVENTURE_BASE_REWARD);

View File

@ -320,7 +320,32 @@ public class ItemUtil {
if(!isLoop){
extraAddItem(user,itemMap,reason);
}
}
/**
* 线
* @param user
* @param isLoop
* @param dropGroupIds
* @param time
* @param itemMap
* @param cardMap
* @param equipMap
* @param randomMap
* @param itemObj
* @param reason
* @throws ErrorCodeException
*/
public static void combineRewardByMainLine(User user,boolean isLoop,int[] dropGroupIds,int time, Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap, Map<Integer, Integer> equipMap, Map<Integer, Integer> randomMap,ItemMap itemObj,int reason)throws ErrorCodeException{
for (int id:dropGroupIds){
SRewardGroup sRewardGroup = SRewardGroup.getsRewardItemMap().get(id);
// 次数
long num = time / sRewardGroup.getDrapRate();
combineRewardDropGroup(user, new int[]{id}, num, itemMap, cardMap, equipMap, randomMap,itemObj);
}
if(!isLoop){
extraAddItem(user,itemMap,reason);
}
}
public static void extraAddItem(User user, Map<Integer, Integer> itemMap,int reason){

View File

@ -23,10 +23,14 @@ public class SRewardGroup implements BaseConfig {
*/
private int loop ;
/**
*
*/
private int drapRate;
@Override
public void init() throws Exception {
sRewardItemMap = STableManager.getConfig(SRewardGroup.class);
}
@ -53,4 +57,8 @@ public class SRewardGroup implements BaseConfig {
public int getLoop() {
return loop;
}
public int getDrapRate() {
return drapRate;
}
}