分解妖灵师
parent
7667d21b8f
commit
fe567310c5
|
@ -34,6 +34,7 @@ public class SCHeroRankUpConfig implements BaseConfig{
|
|||
private int show;
|
||||
|
||||
private int[][] sumConsume;
|
||||
public static Map<Integer,SCHeroRankUpConfig> scHeroRankUpConfigMap ;
|
||||
|
||||
@Override
|
||||
public void init() throws Exception {
|
||||
|
@ -74,6 +75,7 @@ public class SCHeroRankUpConfig implements BaseConfig{
|
|||
}
|
||||
scHeroRankUpConfigByShow = result;
|
||||
scHeroRankUpConfigByType = calc;
|
||||
scHeroRankUpConfigMap =config;
|
||||
}
|
||||
|
||||
public static Map<Integer, SCHeroRankUpConfig> getScHeroRankUpConfigByShow(int show, int heroInitStar) {
|
||||
|
@ -123,4 +125,9 @@ public class SCHeroRankUpConfig implements BaseConfig{
|
|||
public int getShow() {
|
||||
return show;
|
||||
}
|
||||
|
||||
|
||||
public int[][] getSumConsume() {
|
||||
return sumConsume;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,6 +13,7 @@ import com.sun.org.apache.regexp.internal.RE;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
@ -187,8 +188,20 @@ public class ItemLogic {
|
|||
}
|
||||
//1裸角色卡(没有突破过的角色卡)熔炼后返还的材料=当前等级返还升级材料+item表返还材料
|
||||
//2有过突破的卡 =当前等级返还升级材料+突破表返还材料
|
||||
Map<Integer, Integer> baseItemMap = new HashMap<>();
|
||||
Map<Integer, Integer> baseCardMap = new HashMap<>();
|
||||
Map<Integer, Integer> baseEquipMap = new HashMap<>();
|
||||
Map<Integer,Integer> baseRandomMap = new HashMap<>();
|
||||
for (String heroId : heroIdsList) {
|
||||
Hero hero = heroManager.getHeroMap().get(heroId);
|
||||
int[][] sumConsume = SHeroLevlConfig.getsHeroLevlConfigMap().get(hero.getLevel()).getSumConsume();
|
||||
ItemUtil.combineReward(sumConsume,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||
int breakId = hero.getBreakId();
|
||||
if(breakId!=0){
|
||||
SCHeroRankUpConfig scHeroRankUpConfig = SCHeroRankUpConfig.scHeroRankUpConfigMap.get(breakId);
|
||||
ItemUtil.combineReward(scHeroRankUpConfig.getSumConsume(),baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||
continue;
|
||||
}
|
||||
SItem sItem = SItem.getsItemMap().get(hero.getTemplateId());
|
||||
heroManager.removeHero(heroId);
|
||||
if (reward.length() == 0) {
|
||||
|
@ -197,8 +210,10 @@ public class ItemLogic {
|
|||
reward.append("#").append(sItem.getResolveReward());
|
||||
}
|
||||
}
|
||||
CommonProto.Drop.Builder drop = ItemUtil.drop(user,StringUtil.parseFiledInt(reward.toString()),1,0);
|
||||
sendUseAndPriceItemMessage(iSession, msgId, drop);
|
||||
ItemUtil.combineReward(StringUtil.parseFiledInt(reward.toString()),1,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||
CommonProto.Drop.Builder baseBuilder = CommonProto.Drop.newBuilder();
|
||||
ItemUtil.drop(user,baseBuilder,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap);
|
||||
sendUseAndPriceItemMessage(iSession, msgId, baseBuilder);
|
||||
}
|
||||
|
||||
private String checkHeroResolve(List<String> heroIdsList,User user){
|
||||
|
|
|
@ -76,7 +76,9 @@ public class MissionLoigc {
|
|||
}else{
|
||||
MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,"mission can not get reward");
|
||||
}
|
||||
return;
|
||||
}
|
||||
MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.TAKE_MISSION_REWARD_RESPONSE_VALUE,"parm is wrong");
|
||||
}
|
||||
|
||||
public static int getDoingProgress(User user,CumulationData cumulationData, int missionTypeId, int missionSubType){
|
||||
|
|
|
@ -171,15 +171,10 @@ public class PlayerLogic {
|
|||
SVipLevelConfig sVipLevelConfig = SVipLevelConfig.getsVipLevelConfigMap().get(playerInfoManager.getVipLevel());
|
||||
int[][] rewards=null;
|
||||
if(type == 1){
|
||||
if(playerInfoManager.getHadTakeDailyBoxVip() == 0 || playerInfoManager.getHadTakeLevelBoxVip() == 1 ){
|
||||
if(playerInfoManager.getHadTakeLevelBoxVip() == 1 ){
|
||||
MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.VIP_TAKE_REWARD_RESPONSE_VALUE,"had taked the vip level reward");
|
||||
return;
|
||||
}
|
||||
VipMissionIdsType vipMissionIdsType = user.getUserMissionManager().getVipMissionIdsType();
|
||||
if(!vipMissionIdsType.getDoingMissionIds().isEmpty() || !vipMissionIdsType.getFinishMissionIds().isEmpty()){
|
||||
MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.VIP_TAKE_REWARD_RESPONSE_VALUE,"mission not finish");
|
||||
return;
|
||||
}
|
||||
playerInfoManager.setHadTakeLevelBoxVip(1);
|
||||
rewards = sVipLevelConfig.getVipBoxReward();
|
||||
}else if(type == 2){
|
||||
|
|
|
@ -155,6 +155,10 @@ public class ItemUtil {
|
|||
}
|
||||
}
|
||||
|
||||
public static void combineReward(int[][] itemArr, Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap, Map<Integer, Integer> equipMap, Map<Integer, Integer> randomMap){
|
||||
selectItemArr(itemArr,cardMap,itemMap,equipMap,randomMap);
|
||||
}
|
||||
|
||||
public static void drop(User user,CommonProto.Drop.Builder dropBuilder,Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap, Map<Integer, Integer> equipMap, Map<Integer, Integer> randomMap) throws Exception {
|
||||
useRandomItem(user, randomMap);
|
||||
addItem(user, itemMap, dropBuilder);
|
||||
|
|
Loading…
Reference in New Issue