猎妖之路招募节点bug
parent
344501791f
commit
5264ddcb83
|
@ -71,25 +71,29 @@ public class HeroNodeGetInfoRequestHandler extends BaseHandler<Expedition.HeroNo
|
||||||
|
|
||||||
Map<String, Hero> heroMapTemp = user.getExpeditionManager().getHeroMapTemp(nodeId);
|
Map<String, Hero> heroMapTemp = user.getExpeditionManager().getHeroMapTemp(nodeId);
|
||||||
if(heroMapTemp.size()==0){
|
if(heroMapTemp.size()==0){
|
||||||
SExpeditionRecruitConfig sExpeditionRecruitConfig = STableManager.getConfig(SExpeditionRecruitConfig.class).get(sExpeditionNodeConfig.getPoolId());
|
int poolId = sExpeditionNodeConfig.getPoolId();
|
||||||
if(sExpeditionRecruitConfig!=null) {
|
TreeSet<Integer> randomTid = ExpeditionLogic.getRandomTid(poolId, recruitTime);
|
||||||
int i = sExpeditionRecruitConfig.getHeroId();
|
|
||||||
//获取最大战力hero
|
|
||||||
String maxforceHero = user.getPlayerInfoManager().getMaxforceHero();
|
|
||||||
if (StringUtil.isEmpty(maxforceHero)) {
|
|
||||||
HeroLogic.getInstance().calTeamTotalForce(user, 1, false);
|
|
||||||
maxforceHero = user.getPlayerInfoManager().getMaxforceHero();
|
|
||||||
}
|
|
||||||
Hero hero = user.getHeroManager().getHeroMap().get(maxforceHero);
|
|
||||||
if (hero == null) {
|
|
||||||
throw new ErrorCodeException("试炼节点英雄掉落失败");
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int j = 0; j < recruitTime; j++) {
|
//获取最大战力hero
|
||||||
|
String maxforceHero = user.getPlayerInfoManager().getMaxforceHero();
|
||||||
|
if (StringUtil.isEmpty(maxforceHero)) {
|
||||||
|
HeroLogic.getInstance().calTeamTotalForce(user, 1, false);
|
||||||
|
maxforceHero = user.getPlayerInfoManager().getMaxforceHero();
|
||||||
|
}
|
||||||
|
Hero hero = user.getHeroManager().getHeroMap().get(maxforceHero);
|
||||||
|
if (hero == null) {
|
||||||
|
throw new ErrorCodeException("招募节点英雄掉落失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
for (Integer integer:randomTid) {
|
||||||
|
SExpeditionRecruitConfig sExpeditionRecruitConfig = STableManager.getConfig(SExpeditionRecruitConfig.class).get(integer);
|
||||||
|
if(sExpeditionRecruitConfig!=null) {
|
||||||
|
int i = sExpeditionRecruitConfig.getHeroId();
|
||||||
ExpeditionLogic.createHero(i, uid, hero, nodeId);
|
ExpeditionLogic.createHero(i, uid, hero, nodeId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
heroMapTemp = user.getExpeditionManager().getHeroMapTemp(nodeId);
|
heroMapTemp = user.getExpeditionManager().getHeroMapTemp(nodeId);
|
||||||
heroMapTemp.forEach((s, hero) -> {
|
heroMapTemp.forEach((s, hero) -> {
|
||||||
|
|
|
@ -6,6 +6,7 @@ import com.ljsd.jieling.config.clazzStaticCfg.MapStaticConfig;
|
||||||
import com.ljsd.jieling.core.GlobalsDef;
|
import com.ljsd.jieling.core.GlobalsDef;
|
||||||
import com.ljsd.jieling.core.VipPrivilegeType;
|
import com.ljsd.jieling.core.VipPrivilegeType;
|
||||||
import com.ljsd.jieling.dataReport.reportBeans_37.Repot37EventUtil;
|
import com.ljsd.jieling.dataReport.reportBeans_37.Repot37EventUtil;
|
||||||
|
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||||
import com.ljsd.jieling.globals.BIReason;
|
import com.ljsd.jieling.globals.BIReason;
|
||||||
import com.ljsd.jieling.globals.Global;
|
import com.ljsd.jieling.globals.Global;
|
||||||
import com.ljsd.jieling.globals.GlobalItemType;
|
import com.ljsd.jieling.globals.GlobalItemType;
|
||||||
|
@ -476,26 +477,30 @@ public class ItemUtil {
|
||||||
|
|
||||||
private static void getMap(int itemId ,int itemNum, Map<Integer, Integer> itemMap,
|
private static void getMap(int itemId ,int itemNum, Map<Integer, Integer> itemMap,
|
||||||
Map<Integer, Integer> cardMap,Map<Integer,Integer> equipMap ,Map<Integer,Integer> randomMap,float dropRatio) {
|
Map<Integer, Integer> cardMap,Map<Integer,Integer> equipMap ,Map<Integer,Integer> randomMap,float dropRatio) {
|
||||||
|
Map<Integer, Integer> mapRe = getMapRe(itemId, itemMap, cardMap, equipMap, randomMap);
|
||||||
|
putcountMap(itemId,MathUtils.numRount((itemNum * dropRatio)) , mapRe);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Map<Integer, Integer> getMapRe(int itemId, Map<Integer, Integer> itemMap,
|
||||||
|
Map<Integer, Integer> cardMap,Map<Integer,Integer> equipMap ,Map<Integer,Integer> randomMap) {
|
||||||
|
|
||||||
SItem sItem = SItem.getsItemMap().get(itemId);
|
SItem sItem = SItem.getsItemMap().get(itemId);
|
||||||
int itemType =getItemType(sItem);
|
int itemType =getItemType(sItem);
|
||||||
switch (itemType) {
|
switch (itemType) {
|
||||||
case GlobalItemType.SOUL_MARK:
|
case GlobalItemType.SOUL_MARK:
|
||||||
case GlobalItemType.ITEM:
|
case GlobalItemType.ITEM:
|
||||||
putcountMap(itemId,MathUtils.numRount((itemNum * dropRatio)) , itemMap);
|
return itemMap;
|
||||||
break;
|
|
||||||
case GlobalItemType.CARD:
|
case GlobalItemType.CARD:
|
||||||
putcountMap(itemId, itemNum, cardMap);
|
return cardMap;
|
||||||
break;
|
|
||||||
case GlobalItemType.EQUIP:
|
case GlobalItemType.EQUIP:
|
||||||
case GlobalItemType.ESPECIAL_EQUIP:
|
case GlobalItemType.ESPECIAL_EQUIP:
|
||||||
case GlobalItemType.JEWEL:
|
case GlobalItemType.JEWEL:
|
||||||
putcountMap(itemId, itemNum, equipMap);
|
return equipMap;
|
||||||
break;
|
|
||||||
case GlobalItemType.RANDOM_ITME:
|
case GlobalItemType.RANDOM_ITME:
|
||||||
putcountMap(itemId, itemNum, randomMap);
|
return randomMap;
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
break;
|
LOGGER.error("新增类型请通知后端");
|
||||||
|
return new HashMap<>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue