# Conflicts:
#	serverlogic/src/main/java/com/ljsd/jieling/globals/GlobalGm.java
#	serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java
lvxinran 2019-12-10 03:38:00 +08:00
commit 9c68ef183a
5 changed files with 65 additions and 27 deletions

View File

@ -22,6 +22,8 @@ public interface GlobalGm {
int MISSION_LEAD = 18;//任务指引
int ESPECIAL_EQUIP = 19;//增加法宝,星级
int TREASURE_FINISH = 20;//戒灵秘宝一键完成
int TECNOLOGY_MAX = 21;//科技树一键满级
int POKEMAN_MAX = 22;//一键获得所有满级异妖
int FULL_OF = 21; //一键全满
// int TECNOLOGY_MAX = 21;//科技树一键满级
// int POKEMAN_MAX = 22;//一键获得所有满级异妖
}

View File

@ -300,15 +300,45 @@ public class GMRequestHandler extends BaseHandler{
cUser.getUserMissionManager().getTreasureMissionIdsType().addFinishMissionId(prarm2);
}
break;
case GlobalGm.TECNOLOGY_MAX:
case GlobalGm.FULL_OF:
Map<String, Hero> heroMap = cUser.getHeroManager().getHeroMap();
Set<String> cacheHeroIds = new HashSet<>();
Map<Integer, List<TeamPosHeroInfo>> teamPosForHero = cUser.getTeamPosManager().getTeamPosForHero();
for(List<TeamPosHeroInfo> teamPosHeroInfoList : teamPosForHero.values()){
for(TeamPosHeroInfo teamPosHeroInfo : teamPosHeroInfoList){
String heroIdTmp = teamPosHeroInfo.getHeroId();
if(cacheHeroIds.add(heroIdTmp)){
Hero heroTmp = cUser.getHeroManager().getHeroMap().get(heroIdTmp);
SCHero scHero = SCHero.getsCHero().get(heroTmp.getTemplateId());
Map<Integer, SCHeroRankUpConfig> scHeroRankUpConfigByType = STableManager.getFigureConfig(HeroStaticConfig.class).getScHeroRankUpConfigByShow(GlobalsDef.UP_STAR_TYPE,scHero.getStar());
int maxStar = 0;
for(Integer heroStarId : scHeroRankUpConfigByType.keySet()){
maxStar = heroStarId+1>maxStar?heroStarId+1:maxStar;
}
heroTmp.upStar(maxStar-heroTmp.getStar());
SCHeroRankUpConfig scHeroRankUpConfig = scHeroRankUpConfigByType.get(maxStar-1);
heroTmp.setLevel(cUser,scHeroRankUpConfig.getOpenLevel());
heroTmp.setStarBreakId(scHeroRankUpConfig.getId());
scHeroRankUpConfigByType = STableManager.getFigureConfig(HeroStaticConfig.class).getScHeroRankUpConfigByShow(GlobalsDef.BREAK_TYPE,scHero.getStar());
for(SCHeroRankUpConfig scHeroRankUpConfigBreak :scHeroRankUpConfigByType.values()){
if(heroTmp.getLevel()>scHeroRankUpConfigBreak.getLimitLevel()){
heroTmp.setBreakId(scHeroRankUpConfigBreak.getId());
}
}
gmBuilder.setDrop(CommonProto.Drop.newBuilder().addHero(CBean2Proto.getHero(heroTmp)).build());
}
}
}
//科技树
Map<Integer, Integer> professByTechIdMapTmp = STableManager.getFigureConfig(CommonStaticConfig.class).professByTechIdMapTmp;
Map<Integer, Map<Integer, SWorkShopTechnology>> sWorkTechMapByTechIdAndLevelTmp = STableManager.getFigureConfig(CommonStaticConfig.class).sWorkTechMapByTechIdAndLevelTmp;
for(Map.Entry<Integer, Integer> entry:professByTechIdMapTmp.entrySet()){
Integer max = Collections.max(sWorkTechMapByTechIdAndLevelTmp.get(entry.getKey()).keySet());
cUser.getWorkShopController().updateTechLevel(entry.getValue(),entry.getKey(),max);
}
break;
case GlobalGm.POKEMAN_MAX:
//异妖
Map<Integer, SDifferDemonsConfig> sDifferDemonsConfigMap = SDifferDemonsConfig.sDifferDemonsConfigMap;
PokemonManager pokemonManager = cUser.getPokemonManager();
for(Map.Entry<Integer, SDifferDemonsConfig> entry:sDifferDemonsConfigMap.entrySet()){
@ -321,6 +351,7 @@ public class GMRequestHandler extends BaseHandler{
pokemonManager.addPokemon(pokemon);
}
break;
default:
break;
}

View File

@ -69,7 +69,13 @@ public class KtEventUtils {
PlayerManager playerInfoManager = user.getPlayerInfoManager();
ItemLogic.getInstance().addItemLog(new ItemLog(user.getId(),useType,String.valueOf(TimeUtils.now()),useReson,itemId,itemNum,itemTotalNum));
if(parm.length==6){
String sbReson = String.valueOf(parm[5]);
BILog.info("itemflow {}|{}|{}|{}|{}|{}|{}|{}|{}",user.getId(), playerInfoManager.getLevel(), playerInfoManager.getVipLevel(),useType,useReson,itemId,itemNum,itemTotalNum,sbReson);
}else {
BILog.info("itemflow {}|{}|{}|{}|{}|{}|{}|{}",user.getId(), playerInfoManager.getLevel(), playerInfoManager.getVipLevel(),useType,useReson,itemId,itemNum,itemTotalNum);
}
break;
case ParamEventBean.UserLoginOutEvent:
case ParamEventBean.UserLogin:

View File

@ -78,7 +78,6 @@ public class Hero extends MongoBase {
}
public void upStar(int upStar) throws Exception {
SCHero scHero = SCHero.getsCHero().get(templateId);
this.star += upStar;
updateString("star",star);
}

View File

@ -870,10 +870,10 @@ public class ItemUtil {
if (myItem.getItemNum() <= needCount && !STableManager.getFigureConfig(CommonStaticConfig.class).getNotDelete().contains(userItem.getKey())) {
myItem.setItemNum(0);
itemManager.removeItem(userItem.getKey());
KtEventUtils.onKtEvent(user, eventType,reason,GlobalsDef.subReason,myItem.getItemId(),needCount,0);
KtEventUtils.onKtEvent(user, eventType,reason,GlobalsDef.subReason,myItem.getItemId(),needCount,0,subReason);
} else {
myItem.setItemNum(myItem.getItemNum() - needCount);
KtEventUtils.onKtEvent(user, eventType,reason,GlobalsDef.subReason,myItem.getItemId(),needCount,myItem.getItemNum());
KtEventUtils.onKtEvent(user, eventType,reason,GlobalsDef.subReason,myItem.getItemId(),needCount,myItem.getItemNum(),subReason);
}
sendToFront.add(CBean2Proto.getItem(myItem,-1));
}