Merge branch 'master_test_gn_practiceSkill' into master_test_gn
# Conflicts: # serverlogic/src/main/java/com/ljsd/jieling/exception/ErrorCode.java # serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java # serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HeroManager.java # serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.javaback_recharge
commit
db2b1d7283
|
@ -2,6 +2,7 @@ package com.ljsd.jieling.core;
|
|||
|
||||
public interface GlobalsDef {
|
||||
String DEFAULT_NAME = "无名妖灵师";
|
||||
int VERSION_CODE=1;//后端兼容版本号
|
||||
int MAP_MISSION_RETURN = -9999;
|
||||
int MAP_MISSION_FAILURE = -10000;
|
||||
|
||||
|
|
|
@ -175,6 +175,7 @@ public enum ErrorCode implements IErrorCode {
|
|||
SIXIANG_UP_LIMIT(144,"强化已达上限"),
|
||||
CROSS_YXLD_OVER(145,"赛季结算中"),
|
||||
RIDING_SWARD_BET_TWO(146,"一轮比赛最多押注两次!"),
|
||||
PRACTICE_LEVE_DOWN(147,"修行等级不足"),
|
||||
;
|
||||
private static final Set<Integer> CodeSet = new HashSet<>();
|
||||
|
||||
|
|
|
@ -365,4 +365,5 @@ public interface BIReason {
|
|||
int RIDING_SWARD_BET = 1216;//御剑行押注消耗
|
||||
|
||||
int LEVEL_UP_REWARD = 1220;// 玩家升级赠与的道具
|
||||
int PRACTICE_SKILL_UP_COST=1221;//修行技能升级消耗
|
||||
}
|
|
@ -2,6 +2,7 @@ package com.ljsd.jieling.handler;
|
|||
|
||||
import com.ljsd.GameApplication;
|
||||
import com.ljsd.jieling.config.clazzStaticCfg.HeroStaticConfig;
|
||||
import com.ljsd.jieling.core.GlobalsDef;
|
||||
import com.ljsd.jieling.db.redis.RedisKey;
|
||||
import com.ljsd.jieling.db.redis.RedisUtil;
|
||||
import com.ljsd.jieling.globals.Global;
|
||||
|
@ -158,6 +159,10 @@ public class GetPlayerInfoHandler extends BaseHandler{
|
|||
});
|
||||
}
|
||||
|
||||
if (playerInfoManager.getVersionCode()!= GlobalsDef.VERSION_CODE) {
|
||||
calPractiveSkillData(user);
|
||||
playerInfoManager.setVersionCode(GlobalsDef.VERSION_CODE);
|
||||
}
|
||||
// 处理玩家旧头像框,兼容,一个玩家只执行一次
|
||||
PlayerLogic.getInstance().checkOldHeadFrame(user);
|
||||
// 魂印图鉴,旧数据容错
|
||||
|
@ -181,6 +186,7 @@ public class GetPlayerInfoHandler extends BaseHandler{
|
|||
List<CommonProto.SixiangxinfaInfo> sixiangxinfaInfos = getSixiangxinfaInfos(heroManager);
|
||||
int randomCount =SLotterySpecialConfig.getLotteryListByDifferentType(7).iterator().next().getCount()- user.getHeroManager().getRandomPoolByType().getOrDefault(11,new HashMap<>()).getOrDefault(7,0);
|
||||
StoreLogic.reloadStoreInfo(user,7);//重载功能商店
|
||||
List<CommonProto.PracticeSkillInfo>practiceSkillInfos=getPracticeSkillInfos(heroManager);
|
||||
// 开服时间戳
|
||||
long openTime = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime());
|
||||
PlayerInfoProto.GetPlayerInfoResponse getPlayerInfoResponse
|
||||
|
@ -229,6 +235,7 @@ public class GetPlayerInfoHandler extends BaseHandler{
|
|||
.addAllSixiangInfos(sixiangxinfaInfos)
|
||||
.setServerOpenTime((int) (openTime / 1000))
|
||||
.setXiuweiLevel(heroManager.getXiuweiLevel())
|
||||
.addAllPracticeSkillInfos(practiceSkillInfos)
|
||||
.build();
|
||||
ReportUtil.onReportEvent(user, ReportEventEnum.APP_LOGIN.getType());
|
||||
try {
|
||||
|
@ -252,6 +259,7 @@ public class GetPlayerInfoHandler extends BaseHandler{
|
|||
}
|
||||
}
|
||||
|
||||
///登录获取四象心法数据
|
||||
private List<CommonProto.SixiangxinfaInfo> getSixiangxinfaInfos(HeroManager heroManager) {
|
||||
Map<Integer,SixiangProfessionInfo> sixiangDataMap = heroManager.getSixiangDataMap();
|
||||
List<CommonProto.SixiangxinfaInfo> sixiangxinfaInfos = new ArrayList<>(sixiangDataMap.size());
|
||||
|
@ -277,6 +285,18 @@ public class GetPlayerInfoHandler extends BaseHandler{
|
|||
return sixiangxinfaInfos;
|
||||
}
|
||||
|
||||
private List<CommonProto.PracticeSkillInfo> getPracticeSkillInfos(HeroManager heroManager) {
|
||||
List<CommonProto.PracticeSkillInfo>practiceSkillInfos=new ArrayList<>(heroManager.getPracticeSkillMap().size());
|
||||
for (Map.Entry<Integer, Integer> entry : heroManager.getPracticeSkillMap().entrySet()) {
|
||||
CommonProto.PracticeSkillInfo skillInfo=CommonProto.PracticeSkillInfo.newBuilder()
|
||||
.setSkillId(entry.getKey())
|
||||
.setSkillLv(entry.getValue())
|
||||
.build();
|
||||
practiceSkillInfos.add(skillInfo);
|
||||
}
|
||||
return practiceSkillInfos;
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化英雄星级map(针对老号)
|
||||
* @param user
|
||||
|
@ -311,5 +331,16 @@ public class GetPlayerInfoHandler extends BaseHandler{
|
|||
}
|
||||
}
|
||||
}
|
||||
//修行技能数据兼容
|
||||
private void calPractiveSkillData(User user) {
|
||||
Map<Integer, SXiuXian> xiuxianConfigMap = STableManager.getConfig(SXiuXian.class);
|
||||
for (int i = 1; i <= user.getHeroManager().getPracticeLevel(); i++) {
|
||||
SXiuXian xiuxianConfig = xiuxianConfigMap.get(i);
|
||||
if (xiuxianConfig.getPlayerSkill() == null) continue;
|
||||
for (int skillId : xiuxianConfig.getPlayerSkill()) {
|
||||
user.getHeroManager().setPracticeSkillMap(skillId, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -159,9 +159,10 @@ public class GetWorldArenaChallengeRequestHandler extends BaseHandler<WorldProto
|
|||
int defendForce = 0;
|
||||
if (proto.getChallengeUid()>1000) {
|
||||
ArenaOfUser arenaOfUser = CrossServiceLogic.getInstance().query(proto.getChallengeUid());
|
||||
teamInfo = FightUtil.makeCrossPersonData(arenaOfUser,proto.getTeamId());
|
||||
arenaEnemys =ArenaLogic.getInstance().getUserCrossArenaEnemy(crossGroup,arenaOfUser,proto.getChallengeRank(),false).build();
|
||||
defendForce = arenaOfUser.getHeroManager().getTotalForceByTeam().get(proto.getTeamId());
|
||||
teamInfo = FightUtil.makeCrossPersonData(arenaOfUser,proto.getTeamId(),defendForce);
|
||||
arenaEnemys =ArenaLogic.getInstance().getUserCrossArenaEnemy(crossGroup,arenaOfUser,proto.getChallengeRank(),false).build();
|
||||
|
||||
} else {
|
||||
//机器人
|
||||
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
package com.ljsd.jieling.handler.hero;
|
||||
|
||||
import com.ljsd.jieling.exception.ErrorCode;
|
||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||
import com.ljsd.jieling.globals.BIReason;
|
||||
import com.ljsd.jieling.handler.BaseHandler;
|
||||
import com.ljsd.jieling.logic.dao.HeroManager;
|
||||
import com.ljsd.jieling.logic.dao.SixiangProfessionInfo;
|
||||
import com.ljsd.jieling.logic.dao.UserManager;
|
||||
import com.ljsd.jieling.logic.dao.root.User;
|
||||
import com.ljsd.jieling.network.session.ISession;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import config.SFourQuadrantConfig;
|
||||
import config.SPlayerSkill;
|
||||
import org.springframework.stereotype.Component;
|
||||
import rpc.protocols.CommonProto;
|
||||
import rpc.protocols.HeroInfoProto;
|
||||
import rpc.protocols.MessageTypeProto;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@Component
|
||||
public class PracticeSkillUpRequestHandler extends BaseHandler<HeroInfoProto.PracticeSkillUpRequest> {
|
||||
@Override
|
||||
public MessageTypeProto.MessageType getMessageCode() {
|
||||
return MessageTypeProto.MessageType.PRACTICE_SKILL_UP_REQUEST;
|
||||
}
|
||||
|
||||
//修行技能升级协议
|
||||
@Override
|
||||
public void processWithProto(ISession session, HeroInfoProto.PracticeSkillUpRequest proto) throws Exception {
|
||||
int skillId=proto.getSkillId();//修行技能id
|
||||
int uid = session.getUid();
|
||||
User user = UserManager.getUser(uid);
|
||||
HeroManager heroManager=user.getHeroManager();
|
||||
int practiceLv=heroManager.getPracticeLevel();
|
||||
int skillLv=0;
|
||||
if (heroManager.getPracticeSkillMap().containsKey(skillId)){
|
||||
skillLv=heroManager.getPracticeSkillMap().get(skillId);
|
||||
}
|
||||
int nextSkillLv=skillLv+1;
|
||||
SPlayerSkill nextPlayerSkill=SPlayerSkill.GetSPlayerSkill(skillId,nextSkillLv);
|
||||
if (nextPlayerSkill==null||practiceLv<nextPlayerSkill.getXiuxianId()){
|
||||
LOGGER.error("修行等级不足");
|
||||
throw new ErrorCodeException(ErrorCode.PRACTICE_LEVE_DOWN);
|
||||
}
|
||||
SPlayerSkill curPlayerSkill=SPlayerSkill.GetSPlayerSkill(skillId,skillLv);
|
||||
int[][]costArr=curPlayerSkill.getLvupCost();
|
||||
boolean costResult = ItemUtil.itemCost(user,costArr, BIReason.PRACTICE_SKILL_UP_COST,skillId);
|
||||
if (!costResult){
|
||||
LOGGER.error("修行技能升级材料不足");
|
||||
throw new ErrorCodeException(ErrorCode.HERO_ITEM_NOT);
|
||||
}
|
||||
heroManager.setPracticeSkillMap(skillId,nextSkillLv);
|
||||
MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.PRACTICE_SKILL_UP_RESPONSE_VALUE,null,true);
|
||||
}
|
||||
}
|
|
@ -15,6 +15,7 @@ import com.ljsd.jieling.network.session.ISession;
|
|||
import com.ljsd.jieling.util.CBean2Proto;
|
||||
import com.ljsd.jieling.util.ItemUtil;
|
||||
import com.ljsd.jieling.util.MessageUtil;
|
||||
import config.SPlayerSkill;
|
||||
import config.SXiuXian;
|
||||
import config.SXiuXianSkill;
|
||||
import manager.STableManager;
|
||||
|
@ -24,6 +25,7 @@ import rpc.protocols.HeroInfoProto;
|
|||
import rpc.protocols.MessageTypeProto;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Author hj
|
||||
|
@ -90,6 +92,12 @@ public class UpPracticeLevelHandler extends BaseHandler<HeroInfoProto.UpPractice
|
|||
// 推送神印信息
|
||||
HeroLogic.sendMessageBySeal(user.getId());
|
||||
}
|
||||
///判断修行技能解锁
|
||||
if (xiuXian2.getPlayerSkill()!=null){
|
||||
for (int practiceSkillId : xiuXian2.getPlayerSkill()) {
|
||||
user.getHeroManager().setPracticeSkillMap(practiceSkillId,1);
|
||||
}
|
||||
}
|
||||
|
||||
// 升级返回
|
||||
HeroInfoProto.UpPracticeLevelResponse build = HeroInfoProto.UpPracticeLevelResponse.newBuilder().setPracticeLevel(xiuXian2.getId()).build();
|
||||
|
|
|
@ -277,6 +277,7 @@ public class BehaviorUtil {
|
|||
.addAllFightUnitList(heroFightInfos)
|
||||
.addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setTeamPassiveList(HeroLogic.getInstance().getPokenmonPassiveSkills(user,teamId))
|
||||
.setForceScore(HeroLogic.getInstance().calTeamForce(user,teamId))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
|
|
@ -670,7 +670,7 @@ public class ArenaLogic {
|
|||
//跨服切磋
|
||||
ArenaOfUser user = CrossServiceLogic.getInstance().query(challengeUid);
|
||||
deforce = user.getHeroManager().getTotalForceByTeam().get(myteamId);
|
||||
deffightTeamInfo = FightUtil.makeCrossPersonData(user,myteamId);
|
||||
deffightTeamInfo = FightUtil.makeCrossPersonData(user,myteamId,deforce);
|
||||
}
|
||||
if(myforce<deforce){
|
||||
deffightTeamInfo = CommonProto.FightTeamInfo.newBuilder().mergeFrom(deffightTeamInfo).setFirstCamp(1).build();
|
||||
|
|
|
@ -71,6 +71,11 @@ public class HeroManager extends MongoBase {
|
|||
* 修为等级(根据最大战斗力和修行等级决定)
|
||||
*/
|
||||
private int xiuweiLevel;
|
||||
/**
|
||||
* 修行技能数据
|
||||
* key: 技能id value:技能等级
|
||||
*/
|
||||
private Map<Integer,Integer> practiceSkillMap = new HashMap<>();
|
||||
/**
|
||||
* 紫府神印
|
||||
*/
|
||||
|
@ -453,6 +458,15 @@ public class HeroManager extends MongoBase {
|
|||
return practiceLevel;
|
||||
}
|
||||
|
||||
public Map<Integer, Integer> getPracticeSkillMap() {
|
||||
return practiceSkillMap;
|
||||
}
|
||||
|
||||
public void setPracticeSkillMap(int skillId,int skillLv) {
|
||||
this.practiceSkillMap.put(skillId,skillLv);
|
||||
updateString("practiceSkillMap."+skillId, skillLv);
|
||||
}
|
||||
|
||||
public void setPracticeLevel(int practiceLevel) {
|
||||
this.practiceLevel = practiceLevel;
|
||||
updateString("practiceLevel", practiceLevel);
|
||||
|
|
|
@ -72,6 +72,8 @@ public class PlayerManager extends MongoBase {
|
|||
|
||||
private int maxForce; //玩家历史最高战力
|
||||
|
||||
private int versionCode;//兼容版本号
|
||||
|
||||
private Map<Integer,Integer> guidePoints = new HashMap<>();
|
||||
|
||||
private Map<Integer,VipInfo> vipInfo = new HashMap<>();
|
||||
|
@ -1283,13 +1285,21 @@ public class PlayerManager extends MongoBase {
|
|||
this.sevenWorldRelic.put(id,status);
|
||||
updateString("sevenWorldRelic",sevenWorldRelic);
|
||||
}
|
||||
|
||||
|
||||
public int getRidingSwardNum() {
|
||||
return ridingSwardNum;
|
||||
}
|
||||
|
||||
public void setRidingSwardNum(int ridingSwardNum) {
|
||||
this.ridingSwardNum = ridingSwardNum;
|
||||
updateString("ridingSwardNum",ridingSwardNum);
|
||||
updateString("ridingSwardNum", ridingSwardNum);
|
||||
}
|
||||
public int getVersionCode() {
|
||||
return versionCode;
|
||||
}
|
||||
|
||||
public void setVersionCode(int versionCode) {
|
||||
this.versionCode = versionCode;
|
||||
updateString("versionCode",versionCode);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -293,6 +293,7 @@ public class FightUtil {
|
|||
newBuilder()
|
||||
.addAllFightUnitList(heroFightInfos)
|
||||
.addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setForceScore(HeroLogic.getInstance().calTeamForce(user,teamId))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -339,6 +340,7 @@ public class FightUtil {
|
|||
.addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setTeamPassiveList(HeroLogic.getInstance().getPokenmonPassiveSkills(user, teamId))
|
||||
.setSpecialPassive(SpecialForTeamBuildEnum.toParm(teamId, user))
|
||||
.setForceScore(HeroLogic.getInstance().calTeamForce(user,teamId))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -405,6 +407,7 @@ public class FightUtil {
|
|||
.addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setTeamPassiveList(HeroLogic.getInstance().getPokenmonPassiveSkills(user, teamId))
|
||||
.setSpecialPassive(SpecialForTeamBuildEnum.toParm(teamId, user))
|
||||
.setForceScore(HeroLogic.getInstance().calTeamForce(user,teamId))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -444,6 +447,7 @@ public class FightUtil {
|
|||
.addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setTeamPassiveList(HeroLogic.getInstance().getPokenmonPassiveSkills(user, teamId))
|
||||
.setSpecialPassive(SpecialForTeamBuildEnum.toParm(teamId, user))
|
||||
.setForceScore(HeroLogic.getInstance().calTeamForce(user,teamId))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -486,6 +490,7 @@ public class FightUtil {
|
|||
.addAllFightUnitList(heroFightInfos)
|
||||
.addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setTeamPassiveList(HeroLogic.getInstance().getPokenmonPassiveSkills(user, teamId))
|
||||
.setForceScore(HeroLogic.getInstance().calTeamForce(user,teamId))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -533,6 +538,7 @@ public class FightUtil {
|
|||
.addAllFightUnitList(heroFightInfos)
|
||||
// .addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setTeamPassiveList(HeroLogic.getInstance().getRobotPokenmonPassiveSkills(sArenaRobotConfig))
|
||||
.setForceScore(sArenaRobotConfig.getTotalForce())
|
||||
.build();
|
||||
|
||||
}
|
||||
|
@ -588,6 +594,7 @@ public class FightUtil {
|
|||
.addAllFightUnitList(heroFightInfos)
|
||||
// .addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user))
|
||||
.setTeamPassiveList(HeroLogic.getInstance().getRobotPokenmonPassiveSkills(sArenaRobotConfig))
|
||||
.setForceScore(sArenaRobotConfig.getTotalForce())
|
||||
.build();
|
||||
|
||||
}
|
||||
|
@ -633,7 +640,7 @@ public class FightUtil {
|
|||
return robotInfo;
|
||||
}
|
||||
|
||||
public static CommonProto.FightTeamInfo makeCrossPersonData(ArenaOfUser arenaOfUser, int teamId) {
|
||||
public static CommonProto.FightTeamInfo makeCrossPersonData(ArenaOfUser arenaOfUser, int teamId,long deforce) {
|
||||
List<CommonProto.FightUnitInfo> heroFightInfos = new ArrayList<>();
|
||||
ArenaOfHeroManager heroManager = arenaOfUser.getHeroManager();
|
||||
List<TeamPosHeroInfo> teamPosHeroInfos = heroManager.getTeams().get(teamId);
|
||||
|
@ -662,6 +669,7 @@ public class FightUtil {
|
|||
.addAllFightUnitList(heroFightInfos)
|
||||
.addAllPokemonUnitList(HeroLogic.getInstance().getCrossPokemonSkills(arenaOfUser))
|
||||
.setTeamPassiveList("")
|
||||
.setForceScore(deforce)
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -704,6 +712,7 @@ public class FightUtil {
|
|||
.addAllFightUnitList(heroFightInfos)
|
||||
.addAllPokemonUnitList(HeroLogic.getInstance().getCrossPokemonSkills(user))
|
||||
.setTeamPassiveList("")
|
||||
.setForceScore(HeroLogic.getInstance().calTeamForce(user,teamId))
|
||||
.build();
|
||||
} else {
|
||||
//其他服玩家
|
||||
|
@ -741,6 +750,7 @@ public class FightUtil {
|
|||
.addAllFightUnitList(heroFightInfos)
|
||||
.addAllPokemonUnitList(HeroLogic.getInstance().getCrossPokemon(crossArenaManager))
|
||||
.setTeamPassiveList("")
|
||||
.setForceScore(addforcerpc)
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -55,6 +55,7 @@ import config.*;
|
|||
import manager.STableManager;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.data.mongodb.core.aggregation.ArithmeticOperators;
|
||||
import rpc.protocols.*;
|
||||
import sun.security.ssl.Debug;
|
||||
import util.MathUtils;
|
||||
|
@ -2380,9 +2381,29 @@ public class HeroLogic{
|
|||
.setPosition(entry.getKey())
|
||||
.setStar(pokemon.getStar())
|
||||
.setProperty(propertyBuilder.toString())
|
||||
.setUnitId(String.valueOf(pokemon.getTmpId())).setUnitSkillIds(String.valueOf(sSpiritAnimalSkill.getId())).build();
|
||||
.setUnitId(String.valueOf(pokemon.getTmpId()))
|
||||
.setUnitSkillIds(String.valueOf(sSpiritAnimalSkill.getId()))
|
||||
.build();
|
||||
pokemonInfos.add(info);
|
||||
}
|
||||
String skillStr="";
|
||||
for (Map.Entry<Integer, Integer> entry : user.getHeroManager().getPracticeSkillMap().entrySet()) {
|
||||
int skillId=SPlayerSkill.GetSPlayerSkill(entry.getKey(),entry.getValue()).getId();
|
||||
if (skillStr.isEmpty()){
|
||||
skillStr+= skillId;
|
||||
}else{
|
||||
skillStr+= "#"+skillId;
|
||||
}
|
||||
}
|
||||
CommonProto.FightUnitInfo skillInfo = CommonProto.FightUnitInfo
|
||||
.newBuilder()
|
||||
.setUnitId("0")
|
||||
.setUnitSkillIds(skillStr)
|
||||
.setProperty("0")
|
||||
.setPosition(100)
|
||||
.setSkinId(0)
|
||||
.build();
|
||||
pokemonInfos.add(skillInfo);
|
||||
return pokemonInfos;
|
||||
}
|
||||
|
||||
|
@ -3123,6 +3144,24 @@ public class HeroLogic{
|
|||
return l;
|
||||
}
|
||||
|
||||
///获取最高战斗力
|
||||
public long calTeamForce(User user,int teamId){
|
||||
return user.getPlayerInfoManager().getMaxForce();
|
||||
//之前是当前编队战斗力
|
||||
/*long teamForce = 0;
|
||||
List<TeamPosHeroInfo> teamHeros = user.getTeamPosManager().getTeamPosForHero().get(teamId);
|
||||
if (teamHeros==null||teamHeros.isEmpty()) {
|
||||
return teamForce;
|
||||
}
|
||||
for (TeamPosHeroInfo teamHero : teamHeros) {
|
||||
Hero _hero = user.getHeroManager().getHero(teamHero.getHeroId());
|
||||
long heroForce = calHeoForce(user, _hero, teamId);
|
||||
teamForce += heroForce;
|
||||
}
|
||||
LOGGER.info("编队id:{} 战斗力:{}",teamId,teamForce);
|
||||
return teamForce;*/
|
||||
}
|
||||
|
||||
|
||||
public int calForce( Map<Integer, Long> heroAllAttribute ){
|
||||
double result = 0;
|
||||
|
|
|
@ -0,0 +1,98 @@
|
|||
package config;
|
||||
|
||||
import manager.STableManager;
|
||||
import manager.Table;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@Table(name ="PlayerSkill")
|
||||
public class SPlayerSkill implements BaseConfig {
|
||||
|
||||
private int id;
|
||||
|
||||
private int skillID;
|
||||
|
||||
private int xiuxianId;
|
||||
|
||||
private int[]skillIDList;
|
||||
|
||||
private int[]releasePoint;
|
||||
|
||||
private int[][]releaseLimit;
|
||||
|
||||
private int cDCount;
|
||||
|
||||
private int level;
|
||||
|
||||
private int[][] lvupCost;
|
||||
|
||||
private int sort;
|
||||
|
||||
private static Map<Integer, Map<Integer,SPlayerSkill>>mapData;
|
||||
|
||||
public static Map<Integer,SPlayerSkill> sPrivilegeTypeConfigMap;
|
||||
|
||||
@Override
|
||||
public void init() throws Exception {
|
||||
mapData=new HashMap<>();
|
||||
sPrivilegeTypeConfigMap= STableManager.getConfig(SPlayerSkill.class);
|
||||
for (Map.Entry<Integer, SPlayerSkill> integer : sPrivilegeTypeConfigMap.entrySet()) {
|
||||
SPlayerSkill skill=integer.getValue();
|
||||
if (!mapData.containsKey(skill.getSkillID())){
|
||||
Map<Integer,SPlayerSkill>skillMap=new HashMap<>();
|
||||
mapData.put(skill.getSkillID(),skillMap);
|
||||
}
|
||||
mapData.get(skill.getSkillID()).put(skill.getLevel(),skill);
|
||||
}
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public int getSkillID() {
|
||||
return skillID;
|
||||
}
|
||||
|
||||
public int getXiuxianId() {
|
||||
return xiuxianId;
|
||||
}
|
||||
|
||||
public int[] getSkillIDList() {
|
||||
return skillIDList;
|
||||
}
|
||||
|
||||
public int[] getReleasePoint() {
|
||||
return releasePoint;
|
||||
}
|
||||
|
||||
public int[][] getReleaseLimit() {
|
||||
return releaseLimit;
|
||||
}
|
||||
|
||||
public int getcDCount() {
|
||||
return cDCount;
|
||||
}
|
||||
|
||||
public int getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public int[][] getLvupCost() {
|
||||
return lvupCost;
|
||||
}
|
||||
|
||||
public int getSort() {
|
||||
return sort;
|
||||
}
|
||||
|
||||
public static SPlayerSkill GetSPlayerSkill(int skillId,int skillLv){
|
||||
if (!mapData.containsKey(skillId)||!mapData.get(skillId).containsKey(skillLv))return null;
|
||||
return mapData.get(skillId).get(skillLv);
|
||||
}
|
||||
|
||||
public static Map<Integer, Map<Integer, SPlayerSkill>> getMapData() {
|
||||
return mapData;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue