Merge branch 'master' of http://60.1.1.230/backend/jieling_server
commit
6c9dfab0cc
|
@ -75,6 +75,7 @@ public class CarDelayFunction implements FunctionManager {
|
||||||
});
|
});
|
||||||
|
|
||||||
for(ZSetOperations.TypedTuple<String> item : guildRangeWithScores){
|
for(ZSetOperations.TypedTuple<String> item : guildRangeWithScores){
|
||||||
|
rank++;
|
||||||
|
|
||||||
String value = item.getValue();
|
String value = item.getValue();
|
||||||
int guildId = Integer.parseInt(value);
|
int guildId = Integer.parseInt(value);
|
||||||
|
@ -83,7 +84,6 @@ public class CarDelayFunction implements FunctionManager {
|
||||||
if(guildInfo==null){
|
if(guildInfo==null){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
rank++;
|
|
||||||
Collection<Set<Integer>> values = guildInfo.getMembers().values();
|
Collection<Set<Integer>> values = guildInfo.getMembers().values();
|
||||||
if(userLevelGuildMap.containsKey(guildId)){
|
if(userLevelGuildMap.containsKey(guildId)){
|
||||||
values.add(usersByGuildId.get(guildId));
|
values.add(usersByGuildId.get(guildId));
|
||||||
|
|
|
@ -133,6 +133,7 @@ public class RedisKey {
|
||||||
public static final String RANDOM_CARD_RANK="RANDOM_CARD_RANK";
|
public static final String RANDOM_CARD_RANK="RANDOM_CARD_RANK";
|
||||||
public static final String RANDOM_CARD_PERFECT_RANK = "RANDOM_CARD_PERFECT_RANK";
|
public static final String RANDOM_CARD_PERFECT_RANK = "RANDOM_CARD_PERFECT_RANK";
|
||||||
|
|
||||||
|
public static final String GUILD_FORCE_RANK = "GUILD_FORCE_RANK";
|
||||||
public static final String GUILD_BOSS_RANK = "GUILD_BOSS_RANK";
|
public static final String GUILD_BOSS_RANK = "GUILD_BOSS_RANK";
|
||||||
|
|
||||||
public static final String GUILD_RED_PACKAGE_RANK = "GUILD_RED_PACKAGE_RANK";
|
public static final String GUILD_RED_PACKAGE_RANK = "GUILD_RED_PACKAGE_RANK";
|
||||||
|
|
|
@ -20,6 +20,6 @@ public class RankFirstHandler extends BaseHandler<PlayerInfoProto.RankFirstReque
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void processWithProto(ISession iSession, PlayerInfoProto.RankFirstRequest proto) throws Exception {
|
public void processWithProto(ISession iSession, PlayerInfoProto.RankFirstRequest proto) throws Exception {
|
||||||
RankLogic.getInstance().getRankFirstInfo(iSession,proto.getTypesList(),MessageTypeProto.MessageType.RANK_GET_FIRST_RESPONSE);
|
RankLogic.getInstance().getRankFirstInfo(iSession,proto.getTypesList(),proto.getActiviteIdList(),MessageTypeProto.MessageType.RANK_GET_FIRST_RESPONSE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,7 @@ import com.ljsd.jieling.logic.activity.RemoveEventHeroHandler;
|
||||||
import com.ljsd.jieling.logic.activity.UserLevelEventHandler;
|
import com.ljsd.jieling.logic.activity.UserLevelEventHandler;
|
||||||
import com.ljsd.jieling.logic.activity.eventhandler.ActivityStateChangeHandler;
|
import com.ljsd.jieling.logic.activity.eventhandler.ActivityStateChangeHandler;
|
||||||
import com.ljsd.jieling.logic.activity.eventhandler.BuyGoodsDirectHandler;
|
import com.ljsd.jieling.logic.activity.eventhandler.BuyGoodsDirectHandler;
|
||||||
|
import com.ljsd.jieling.logic.activity.eventhandler.GuildForceChangeEventHandler;
|
||||||
import com.ljsd.jieling.logic.arena.ArenaLogic;
|
import com.ljsd.jieling.logic.arena.ArenaLogic;
|
||||||
import com.ljsd.jieling.logic.championship.ChampionshipLogic;
|
import com.ljsd.jieling.logic.championship.ChampionshipLogic;
|
||||||
import com.ljsd.jieling.logic.dao.ServerConfig;
|
import com.ljsd.jieling.logic.dao.ServerConfig;
|
||||||
|
@ -245,6 +246,7 @@ public class GlobalDataManaager implements IManager {
|
||||||
new FightMainEventHandler();
|
new FightMainEventHandler();
|
||||||
new BuyGoodsDirectHandler();
|
new BuyGoodsDirectHandler();
|
||||||
new ActivityStateChangeHandler();
|
new ActivityStateChangeHandler();
|
||||||
|
new GuildForceChangeEventHandler();
|
||||||
ChampionshipLogic.minuteCheck(true);
|
ChampionshipLogic.minuteCheck(true);
|
||||||
GuildFightLogic.minuteCheckForCarFight();
|
GuildFightLogic.minuteCheckForCarFight();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
package com.ljsd.jieling.logic.activity.event;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author lvxinran
|
||||||
|
* @date 2020/6/8
|
||||||
|
* @discribe
|
||||||
|
*/
|
||||||
|
public class GuildForceChangeEvent implements IEvent {
|
||||||
|
private int uid;
|
||||||
|
|
||||||
|
private int gid;
|
||||||
|
|
||||||
|
private int type;//1为新加入 2为修改 3为退出
|
||||||
|
|
||||||
|
private int force;
|
||||||
|
|
||||||
|
public int getUid() {
|
||||||
|
return uid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getType() {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
public int getForce() {
|
||||||
|
|
||||||
|
return force;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getGid() {
|
||||||
|
return gid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUid(int uid) {
|
||||||
|
this.uid = uid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGid(int gid) {
|
||||||
|
this.gid = gid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setType(int type) {
|
||||||
|
this.type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setForce(int force) {
|
||||||
|
this.force = force;
|
||||||
|
}
|
||||||
|
|
||||||
|
public GuildForceChangeEvent(int uid, int gid, int type, int force) {
|
||||||
|
this.uid = uid;
|
||||||
|
this.gid = gid;
|
||||||
|
this.type = type;
|
||||||
|
this.force = force;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
package com.ljsd.jieling.logic.activity.eventhandler;
|
||||||
|
|
||||||
|
import com.ljsd.jieling.logic.activity.IEventHandler;
|
||||||
|
import com.ljsd.jieling.logic.activity.event.GuildForceChangeEvent;
|
||||||
|
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||||
|
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||||
|
import com.ljsd.jieling.logic.rank.RankContext;
|
||||||
|
import com.ljsd.jieling.logic.rank.RankEnum;
|
||||||
|
import com.ljsd.jieling.logic.rank.rankImpl.AbstractRank;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author lvxinran
|
||||||
|
* @date 2020/6/8
|
||||||
|
* @discribe 公会排行
|
||||||
|
*/
|
||||||
|
public class GuildForceChangeEventHandler implements IEventHandler {
|
||||||
|
public GuildForceChangeEventHandler() {
|
||||||
|
Poster.getPoster().listenEvent(this, GuildForceChangeEvent.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onEvent(IEvent event) throws Exception {
|
||||||
|
GuildForceChangeEvent forceChangeEvent = (GuildForceChangeEvent) event;
|
||||||
|
AbstractRank rankEnum = RankContext.getRankEnum(RankEnum.GUILD_FORCE_RANK.getType());
|
||||||
|
double score = rankEnum.getScoreById(forceChangeEvent.getGid(), "");
|
||||||
|
if(score<0){
|
||||||
|
score=0;
|
||||||
|
}
|
||||||
|
int resultForce = (int)(score+forceChangeEvent.getForce());
|
||||||
|
rankEnum.addRank(((GuildForceChangeEvent) event).getGid(),"",resultForce);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -16,6 +16,7 @@ import com.ljsd.jieling.jbean.ActivityProgressInfo;
|
||||||
import com.ljsd.jieling.logic.OnlineUserManager;
|
import com.ljsd.jieling.logic.OnlineUserManager;
|
||||||
import com.ljsd.jieling.logic.activity.ActivityType;
|
import com.ljsd.jieling.logic.activity.ActivityType;
|
||||||
import com.ljsd.jieling.logic.activity.IEventHandler;
|
import com.ljsd.jieling.logic.activity.IEventHandler;
|
||||||
|
import com.ljsd.jieling.logic.activity.event.GuildForceChangeEvent;
|
||||||
import com.ljsd.jieling.logic.activity.event.IEvent;
|
import com.ljsd.jieling.logic.activity.event.IEvent;
|
||||||
import com.ljsd.jieling.logic.activity.event.MinuteTaskEvent;
|
import com.ljsd.jieling.logic.activity.event.MinuteTaskEvent;
|
||||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||||
|
@ -591,6 +592,8 @@ public class GuildLogic {
|
||||||
AyyncWorker ayyncWorker = new AyyncWorker(targetUser, true, new AynMissionWorker(GameEvent.JOIN_FAMILY));
|
AyyncWorker ayyncWorker = new AyyncWorker(targetUser, true, new AynMissionWorker(GameEvent.JOIN_FAMILY));
|
||||||
ProtocolsManager.getInstance().updateAyncWorker(ayyncWorker);
|
ProtocolsManager.getInstance().updateAyncWorker(ayyncWorker);
|
||||||
RedisUtil.getInstence().removeMapEntrys(RedisKey.USER_LEVEL_GUILD_INFO,"",String.valueOf(applyId));
|
RedisUtil.getInstence().removeMapEntrys(RedisKey.USER_LEVEL_GUILD_INFO,"",String.valueOf(applyId));
|
||||||
|
Poster.getPoster().dispatchEvent(new GuildForceChangeEvent(targetUser.getId(),targetUser.getPlayerInfoManager().getGuildId(),1,targetUser.getPlayerInfoManager().getMaxForce()));
|
||||||
|
|
||||||
// targetUser.getUserMissionManager().onGameEvent(targetUser, GameEvent.JOIN_FAMILY);
|
// targetUser.getUserMissionManager().onGameEvent(targetUser, GameEvent.JOIN_FAMILY);
|
||||||
}finally {
|
}finally {
|
||||||
RedisUtil.getInstence().releaseDistributedLock(RedisKey.OPERATE_FAMILY_APPLY_JOIN,Integer.toString(applyId), Integer.toString(applyId));
|
RedisUtil.getInstence().releaseDistributedLock(RedisKey.OPERATE_FAMILY_APPLY_JOIN,Integer.toString(applyId), Integer.toString(applyId));
|
||||||
|
@ -1361,7 +1364,8 @@ public class GuildLogic {
|
||||||
sendGuildHelpRewardEmail(user);
|
sendGuildHelpRewardEmail(user);
|
||||||
int guildId = user.getPlayerInfoManager().getGuildId();
|
int guildId = user.getPlayerInfoManager().getGuildId();
|
||||||
RedisUtil.getInstence().putMapEntry(RedisKey.USER_LEVEL_GUILD_INFO,"",String.valueOf(user.getId()),guildId);
|
RedisUtil.getInstence().putMapEntry(RedisKey.USER_LEVEL_GUILD_INFO,"",String.valueOf(user.getId()),guildId);
|
||||||
|
//删除战力
|
||||||
|
Poster.getPoster().dispatchEvent(new GuildForceChangeEvent(user.getId(),user.getPlayerInfoManager().getGuildId(),3,0-user.getPlayerInfoManager().getMaxForce()));
|
||||||
//notify all
|
//notify all
|
||||||
Family.GuildHelpInfoIndication.Builder build = Family.GuildHelpInfoIndication.newBuilder();
|
Family.GuildHelpInfoIndication.Builder build = Family.GuildHelpInfoIndication.newBuilder();
|
||||||
for (Map.Entry<Integer, Integer> entry : user.getGuildMyInfo().getGuidHelpInfo().entrySet()) {
|
for (Map.Entry<Integer, Integer> entry : user.getGuildMyInfo().getGuidHelpInfo().entrySet()) {
|
||||||
|
|
|
@ -16,6 +16,7 @@ import com.ljsd.jieling.globals.Global;
|
||||||
import com.ljsd.jieling.jbean.ActivityMission;
|
import com.ljsd.jieling.jbean.ActivityMission;
|
||||||
import com.ljsd.jieling.logic.activity.ActivityLogic;
|
import com.ljsd.jieling.logic.activity.ActivityLogic;
|
||||||
import com.ljsd.jieling.logic.activity.ActivityType;
|
import com.ljsd.jieling.logic.activity.ActivityType;
|
||||||
|
import com.ljsd.jieling.logic.activity.event.GuildForceChangeEvent;
|
||||||
import com.ljsd.jieling.logic.activity.event.Poster;
|
import com.ljsd.jieling.logic.activity.event.Poster;
|
||||||
import com.ljsd.jieling.logic.activity.event.UserForceChangeEvent;
|
import com.ljsd.jieling.logic.activity.event.UserForceChangeEvent;
|
||||||
import com.ljsd.jieling.logic.activity.eventhandler.UserForceUpEventHandler;
|
import com.ljsd.jieling.logic.activity.eventhandler.UserForceUpEventHandler;
|
||||||
|
@ -266,6 +267,9 @@ public class PlayerLogic {
|
||||||
int teamForce = HeroLogic.getInstance().calTeamTotalForce(user, teamId, false);
|
int teamForce = HeroLogic.getInstance().calTeamTotalForce(user, teamId, false);
|
||||||
System.out.println(teamForce);
|
System.out.println(teamForce);
|
||||||
if(user.getPlayerInfoManager().getMaxForce() < teamForce){
|
if(user.getPlayerInfoManager().getMaxForce() < teamForce){
|
||||||
|
if(user.getPlayerInfoManager().getGuildId()!=0){
|
||||||
|
Poster.getPoster().dispatchEvent(new GuildForceChangeEvent(user.getId(),user.getPlayerInfoManager().getGuildId(),2,teamForce-user.getPlayerInfoManager().getMaxForce()));
|
||||||
|
}
|
||||||
user.getPlayerInfoManager().setMaxForce(teamForce);
|
user.getPlayerInfoManager().setMaxForce(teamForce);
|
||||||
Poster.getPoster().dispatchEvent(new UserForceChangeEvent(uid,teamForce));
|
Poster.getPoster().dispatchEvent(new UserForceChangeEvent(uid,teamForce));
|
||||||
user.getUserMissionManager().onGameEvent(user,GameEvent.USER_FORCE_CHANGE);
|
user.getUserMissionManager().onGameEvent(user,GameEvent.USER_FORCE_CHANGE);
|
||||||
|
|
|
@ -27,8 +27,8 @@ public enum RankEnum {
|
||||||
DEATH_PATH_EVERY_PERSON_RANK(15,RedisKey.DEATH_PATH_EVERY_PERSON_RANK,DeathPathEveryPersonRank::new),//param1:当前阵玩家伤害 param2:无 param3:无
|
DEATH_PATH_EVERY_PERSON_RANK(15,RedisKey.DEATH_PATH_EVERY_PERSON_RANK,DeathPathEveryPersonRank::new),//param1:当前阵玩家伤害 param2:无 param3:无
|
||||||
DEATH_PATH_EVERY_GUILD_RANK(16,RedisKey.DEATH_PATH_EVERY_GUILD_RANK, DeathPathEveryGuildRank::new),//param1:当前阵公会伤害 param2:当前工会挑战人数 param3:无
|
DEATH_PATH_EVERY_GUILD_RANK(16,RedisKey.DEATH_PATH_EVERY_GUILD_RANK, DeathPathEveryGuildRank::new),//param1:当前阵公会伤害 param2:当前工会挑战人数 param3:无
|
||||||
DEATH_PATH_TOTAL_PERSON_RANK(17,RedisKey.DEATH_PATH_TOTAL_PERSON_RANK,DeathPathTotalPersonRank::new),//param1:玩家总伤害 param2:无 param3:无
|
DEATH_PATH_TOTAL_PERSON_RANK(17,RedisKey.DEATH_PATH_TOTAL_PERSON_RANK,DeathPathTotalPersonRank::new),//param1:玩家总伤害 param2:无 param3:无
|
||||||
DEATH_PATH_TOTAL_GUILD_RANK(18,RedisKey.DEATH_PATH_TOTAL_GUILD_RANK,DeathPathTotalGuildRank::new);//param1:工会总伤害 param2:无 param3:无
|
DEATH_PATH_TOTAL_GUILD_RANK(18,RedisKey.DEATH_PATH_TOTAL_GUILD_RANK,DeathPathTotalGuildRank::new),//param1:工会总伤害 param2:无 param3:无
|
||||||
|
GUILD_FORCE_RANK(20,RedisKey.GUILD_FORCE_RANK,GuildForceRank::new);//param1:公会总战力 param2:无 param3:无
|
||||||
|
|
||||||
private int type;
|
private int type;
|
||||||
private String redisKey;
|
private String redisKey;
|
||||||
|
|
|
@ -60,12 +60,14 @@ public class RankLogic {
|
||||||
* @param messageType
|
* @param messageType
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
*/
|
*/
|
||||||
public void getRankFirstInfo(ISession session, List<Integer> rankTypes, MessageTypeProto.MessageType messageType) throws Exception {
|
public void getRankFirstInfo(ISession session, List<Integer> rankTypes,List<Integer> activityId,MessageTypeProto.MessageType messageType) throws Exception {
|
||||||
PlayerManager playerManager = UserManager.getUser(session.getUid()).getPlayerInfoManager();
|
PlayerManager playerManager = UserManager.getUser(session.getUid()).getPlayerInfoManager();
|
||||||
PlayerInfoProto.RankFirstResponse.Builder response = PlayerInfoProto.RankFirstResponse.newBuilder();
|
PlayerInfoProto.RankFirstResponse.Builder response = PlayerInfoProto.RankFirstResponse.newBuilder();
|
||||||
for(int type :rankTypes){
|
for(int i = 0 ; i <rankTypes.size();i++){
|
||||||
|
int type = rankTypes.get(i);
|
||||||
|
int param = activityId.get(i);
|
||||||
AbstractRank rankEnum = RankContext.getRankEnum(type);
|
AbstractRank rankEnum = RankContext.getRankEnum(type);
|
||||||
CommonProto.UserRank.Builder first = rankEnum.getFirst();
|
CommonProto.UserRank.Builder first = rankEnum.getFirst(param);
|
||||||
response.addRanks(first.build());
|
response.addRanks(first.build());
|
||||||
response.addProud(playerManager.getProudInfo().contains(type)?1:0);
|
response.addProud(playerManager.getProudInfo().contains(type)?1:0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -91,8 +91,8 @@ public abstract class AbstractRank implements IRank {
|
||||||
}
|
}
|
||||||
|
|
||||||
//获取第一名信息
|
//获取第一名信息
|
||||||
public CommonProto.UserRank.Builder getFirst() throws Exception {
|
public CommonProto.UserRank.Builder getFirst(int activityId) throws Exception {
|
||||||
Set<ZSetOperations.TypedTuple<String>> rankByKey = getRankByKey("", 0, 1);
|
Set<ZSetOperations.TypedTuple<String>> rankByKey = getRankByKey(activityId==0?"":String.valueOf(activityId), 0, 0);
|
||||||
CommonProto.UserRank.Builder builder = CommonProto.UserRank.newBuilder();
|
CommonProto.UserRank.Builder builder = CommonProto.UserRank.newBuilder();
|
||||||
if(rankByKey.size()!=1){
|
if(rankByKey.size()!=1){
|
||||||
return builder;
|
return builder;
|
||||||
|
@ -129,7 +129,7 @@ public abstract class AbstractRank implements IRank {
|
||||||
CommonProto.UserRank.Builder oneUserRank = getOneUserRank(everyUser, everyRankInfo);
|
CommonProto.UserRank.Builder oneUserRank = getOneUserRank(everyUser, everyRankInfo);
|
||||||
builder.addRanks(oneUserRank);
|
builder.addRanks(oneUserRank);
|
||||||
}
|
}
|
||||||
public CommonProto.UserRank.Builder getOneUserRank(User everyUser,CommonProto.RankInfo.Builder everyRankInfo){
|
public CommonProto.UserRank.Builder getOneUserRank(User everyUser,CommonProto.RankInfo.Builder everyRankInfo) throws Exception {
|
||||||
CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder()
|
CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder()
|
||||||
.setUid(everyUser.getId())
|
.setUid(everyUser.getId())
|
||||||
.setUserName(everyUser.getPlayerInfoManager().getNickName())
|
.setUserName(everyUser.getPlayerInfoManager().getNickName())
|
||||||
|
|
|
@ -0,0 +1,91 @@
|
||||||
|
package com.ljsd.jieling.logic.rank.rankImpl;
|
||||||
|
|
||||||
|
import com.ljsd.jieling.core.GlobalsDef;
|
||||||
|
import com.ljsd.jieling.db.redis.RedisUtil;
|
||||||
|
import com.ljsd.jieling.logic.dao.GuilidManager;
|
||||||
|
import com.ljsd.jieling.logic.dao.UserManager;
|
||||||
|
import com.ljsd.jieling.logic.dao.root.GuildInfo;
|
||||||
|
import com.ljsd.jieling.logic.dao.root.User;
|
||||||
|
import com.ljsd.jieling.protocols.CommonProto;
|
||||||
|
import com.ljsd.jieling.protocols.PlayerInfoProto;
|
||||||
|
import org.springframework.data.redis.core.ZSetOperations;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author lvxinran
|
||||||
|
* @date 2020/6/8
|
||||||
|
* @discribe
|
||||||
|
*/
|
||||||
|
public class GuildForceRank extends AbstractRank {
|
||||||
|
|
||||||
|
|
||||||
|
public GuildForceRank(int type, String redisKey) {
|
||||||
|
super(type, redisKey);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int[] getDataByScore(Double score) {
|
||||||
|
return new int[]{score.intValue()};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double getScore(double... data) {
|
||||||
|
return data[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void getOptional(int index, ZSetOperations.TypedTuple<String> data, PlayerInfoProto.RankResponse.Builder builder) throws Exception {
|
||||||
|
GuildInfo guildInfo = GuilidManager.guildInfoMap.get(Integer.parseInt(data.getValue()));
|
||||||
|
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
|
.setRank(index)
|
||||||
|
.setParam1(getParam1(data.getScore()))
|
||||||
|
.setParam2(getParam2(data.getScore()))
|
||||||
|
.setParam3(getParam3(data.getScore()));
|
||||||
|
CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder()
|
||||||
|
.setUid(guildInfo.getId())
|
||||||
|
.setGuildName(guildInfo.getName())
|
||||||
|
.setRankInfo(everyRankInfo);
|
||||||
|
builder.addRanks(everyRank);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void getMyInfo(User user, String rkey, PlayerInfoProto.RankResponse.Builder allUserResponse){
|
||||||
|
int guildId = user.getPlayerInfoManager().getGuildId();
|
||||||
|
int myRank= RedisUtil.getInstence().getZSetreverseRank(redisKey,rkey,Integer.toString(guildId)).intValue();
|
||||||
|
Double zSetScore = RedisUtil.getInstence().getZSetScore(redisKey, rkey, Integer.toString(guildId));
|
||||||
|
CommonProto.RankInfo towerRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
|
.setRank(myRank)
|
||||||
|
.setParam1(getParam1(zSetScore))
|
||||||
|
.setParam2(getParam2(zSetScore)).build();
|
||||||
|
allUserResponse.setMyRankInfo(towerRankInfo);
|
||||||
|
}
|
||||||
|
public CommonProto.UserRank.Builder getFirst(int activityId) throws Exception {
|
||||||
|
Set<ZSetOperations.TypedTuple<String>> rankByKey = getRankByKey(activityId==0?"":String.valueOf(activityId), 0, 0);
|
||||||
|
CommonProto.UserRank.Builder builder = CommonProto.UserRank.newBuilder();
|
||||||
|
if(rankByKey.size()!=1){
|
||||||
|
return builder;
|
||||||
|
}
|
||||||
|
ZSetOperations.TypedTuple<String> data = rankByKey.iterator().next();
|
||||||
|
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
|
.setRank(1)
|
||||||
|
.setParam1(getParam1(data.getScore()))
|
||||||
|
.setParam2(getParam2(data.getScore()))
|
||||||
|
.setParam3(getParam3(data.getScore()));
|
||||||
|
int gid = Integer.parseInt(data.getValue());
|
||||||
|
GuildInfo guildInfo = GuilidManager.guildInfoMap.get(gid);
|
||||||
|
Set<Integer> chairMan = guildInfo.getMembers().get(GlobalsDef.CHAIRMAN);
|
||||||
|
int chairManId = chairMan.iterator().next();
|
||||||
|
User user = UserManager.getUser(chairManId);
|
||||||
|
CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder()
|
||||||
|
.setUid(chairManId)
|
||||||
|
.setUserName(user.getPlayerInfoManager().getNickName())
|
||||||
|
.setHead(user.getPlayerInfoManager().getHead())
|
||||||
|
.setHeadFrame(user.getPlayerInfoManager().getHeadFrame())
|
||||||
|
.setLevel(user.getPlayerInfoManager().getLevel())
|
||||||
|
.setRankInfo(everyRankInfo)
|
||||||
|
.setForce(user.getPlayerInfoManager().getMaxForce())
|
||||||
|
.setSex(user.getPlayerInfoManager().getSex())
|
||||||
|
.setGuildName(guildInfo.getName());
|
||||||
|
return everyRank;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue