跨服灵脉秘境1.先后手问题2.记录删除问题3.排行榜自己排名问题
parent
01f4d79966
commit
55c463569c
|
@ -154,6 +154,9 @@ public class CrossLingmaiSecretAreaBattleHandler extends BaseHandler<ArenaInfoPr
|
||||||
if (GameApplication.serverId != csPlayer.getServerId()) {
|
if (GameApplication.serverId != csPlayer.getServerId()) {
|
||||||
crossArenaManager = PlayerLogic.getInstance().getCrossArenaManagerData(csPlayer);
|
crossArenaManager = PlayerLogic.getInstance().getCrossArenaManagerData(csPlayer);
|
||||||
defforce = crossArenaManager.getTotalForceByTeam().getOrDefault(TeamEnum.CROSS_LING_MAI_SECRET_AREA.getTeamId(), 0);
|
defforce = crossArenaManager.getTotalForceByTeam().getOrDefault(TeamEnum.CROSS_LING_MAI_SECRET_AREA.getTeamId(), 0);
|
||||||
|
}else{
|
||||||
|
User defuser = UserManager.getUser(defUid);
|
||||||
|
defforce = HeroLogic.getInstance().calTeamTotalForce(defuser, TeamEnum.CROSS_LING_MAI_SECRET_AREA.getTeamId(), false);
|
||||||
}
|
}
|
||||||
CommonProto.FightTeamInfo fightTeamInfo = FightUtil.makePersonFightData(user, TeamEnum.CROSS_LING_MAI_SECRET_AREA.getTeamId(), null, null);
|
CommonProto.FightTeamInfo fightTeamInfo = FightUtil.makePersonFightData(user, TeamEnum.CROSS_LING_MAI_SECRET_AREA.getTeamId(), null, null);
|
||||||
//对手
|
//对手
|
||||||
|
|
|
@ -59,6 +59,10 @@ public class CrossLingmaiSecretAreaInfoHandler extends BaseHandler<ArenaInfoProt
|
||||||
if (!TimeUtils.isSameDay(lingmaiFirst, TimeUtils.now())) {
|
if (!TimeUtils.isSameDay(lingmaiFirst, TimeUtils.now())) {
|
||||||
arenaManager.setCrossLingmaiFirst(TimeUtils.now());
|
arenaManager.setCrossLingmaiFirst(TimeUtils.now());
|
||||||
arenaManager.setCrossLingmaiFirstLevel(user.getPlayerInfoManager().getLevel());
|
arenaManager.setCrossLingmaiFirstLevel(user.getPlayerInfoManager().getLevel());
|
||||||
|
//开启新一轮活动了 删除数据
|
||||||
|
String key = RedisKey.getKey(RedisKey.CROSS_LINGMAISECRET_RECORD, String.valueOf(uid), false);
|
||||||
|
RedisUtil.getInstence().del(key);
|
||||||
|
|
||||||
}
|
}
|
||||||
int group = SMServerLodeSetting.getGroupByLevel(arenaManager.getCrossLingmaiFirstLevel());
|
int group = SMServerLodeSetting.getGroupByLevel(arenaManager.getCrossLingmaiFirstLevel());
|
||||||
int page = request.getPage();
|
int page = request.getPage();
|
||||||
|
|
|
@ -7,6 +7,7 @@ import com.ljsd.jieling.logic.dao.UserManager;
|
||||||
import com.ljsd.jieling.logic.dao.root.User;
|
import com.ljsd.jieling.logic.dao.root.User;
|
||||||
import config.SMServerLodeSetting;
|
import config.SMServerLodeSetting;
|
||||||
import org.springframework.data.redis.core.ZSetOperations;
|
import org.springframework.data.redis.core.ZSetOperations;
|
||||||
|
import rpc.protocols.CommonProto;
|
||||||
import rpc.protocols.PlayerInfoProto;
|
import rpc.protocols.PlayerInfoProto;
|
||||||
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
@ -54,10 +55,19 @@ public class CrossLingmaiSecretRank extends AbstractRank {
|
||||||
}
|
}
|
||||||
PlayerInfoProto.RankResponse.Builder allUserResponse = getCrossAllUserResponse(scores,start);
|
PlayerInfoProto.RankResponse.Builder allUserResponse = getCrossAllUserResponse(scores,start);
|
||||||
//当前用户信息
|
//当前用户信息
|
||||||
getCrossMyInfo(user,rkey,allUserResponse);
|
getCrossMyInfo(user,crossGroup+ RedisKey.Delimiter_colon +group ,allUserResponse,group);
|
||||||
return allUserResponse.build();
|
return allUserResponse.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void getCrossMyInfo(User user,String rkey,PlayerInfoProto.RankResponse.Builder allUserResponse,int group){
|
||||||
|
int myRank= RedisUtil.getInstence().getZSetreverseRank(redisKey,rkey,Integer.toString(user.getId()),false).intValue();
|
||||||
|
Double zSetScore = RedisUtil.getInstence().getZSetScore(redisKey, rkey, Integer.toString(user.getId()),false);
|
||||||
|
CommonProto.RankInfo towerRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
|
.setRank(myRank)
|
||||||
|
.setParam1(getParam1(zSetScore))
|
||||||
|
.setParam2(getParam2(zSetScore)).build();
|
||||||
|
allUserResponse.setMyRankInfo(towerRankInfo);
|
||||||
|
}
|
||||||
public String getCrossRedisKey(int group) {
|
public String getCrossRedisKey(int group) {
|
||||||
|
|
||||||
int crossGroup = GlobleSystemLogic.getInstence().getCrossGroup();
|
int crossGroup = GlobleSystemLogic.getInstence().getCrossGroup();
|
||||||
|
|
Loading…
Reference in New Issue