Merge branch 'master_test_gn' into master_test_gn_GodDevil
commit
a991708d8e
|
@ -37,8 +37,9 @@ public class CarDelayFunction implements FunctionManager {
|
||||||
String guildKey = RedisUtil.getInstence().getKey(guildRank.getRedisKey(), "");
|
String guildKey = RedisUtil.getInstence().getKey(guildRank.getRedisKey(), "");
|
||||||
String crossKey = RedisUtil.getInstence().getKey(personRank.getCrossRedisKey(), "",false);
|
String crossKey = RedisUtil.getInstence().getKey(personRank.getCrossRedisKey(), "",false);
|
||||||
String crossGuildKey = RedisUtil.getInstence().getKey(guildRank.getCrossRedisKey(), "",false);
|
String crossGuildKey = RedisUtil.getInstence().getKey(guildRank.getCrossRedisKey(), "",false);
|
||||||
|
String carPeopleNum = RedisUtil.getInstence().getKey(RedisKey.CAR_DEALY_GUILD_FIGHT_PEOPLE_NUM,"");
|
||||||
|
|
||||||
String[] delKeys = {key,guildKey,crossKey,crossGuildKey};
|
String[] delKeys = {key,guildKey,crossKey,crossGuildKey,carPeopleNum};
|
||||||
RedisUtil.getInstence().rename(60*60*16, backName, delKeys);
|
RedisUtil.getInstence().rename(60*60*16, backName, delKeys);
|
||||||
// String userLevelGuild = RedisUtil.getInstence().getKey(RedisKey.USER_LEVEL_GUILD_INFO, "");
|
// String userLevelGuild = RedisUtil.getInstence().getKey(RedisKey.USER_LEVEL_GUILD_INFO, "");
|
||||||
// delKeys.add(userLevelGuild);
|
// delKeys.add(userLevelGuild);
|
||||||
|
|
|
@ -310,6 +310,7 @@ public class RedisKey {
|
||||||
// 车迟斗法
|
// 车迟斗法
|
||||||
public static final String CAR_DEALY_RANK = "CAR_DEALY_RANK";
|
public static final String CAR_DEALY_RANK = "CAR_DEALY_RANK";
|
||||||
public static final String CAR_DEALY_GUILD_RANK = "CAR_DEALY_GUILD_RANK";
|
public static final String CAR_DEALY_GUILD_RANK = "CAR_DEALY_GUILD_RANK";
|
||||||
|
public static final String CAR_DEALY_GUILD_FIGHT_PEOPLE_NUM = "CAR_DEALY_GUILD_FIGHT_PEOPLE_NUM";
|
||||||
|
|
||||||
//公会战进攻获得星数排行榜
|
//公会战进攻获得星数排行榜
|
||||||
public static final String FAMILY_FIGHT_STAR_RANK = "FAMILY_FIGHT_STAR_RANK";
|
public static final String FAMILY_FIGHT_STAR_RANK = "FAMILY_FIGHT_STAR_RANK";
|
||||||
|
|
|
@ -2,12 +2,14 @@ package com.ljsd.jieling.handler;
|
||||||
|
|
||||||
import com.ljsd.GameApplication;
|
import com.ljsd.GameApplication;
|
||||||
import com.ljsd.fight.FightType;
|
import com.ljsd.fight.FightType;
|
||||||
|
import com.ljsd.jieling.core.FunctionIdEnum;
|
||||||
import com.ljsd.jieling.db.redis.RedisKey;
|
import com.ljsd.jieling.db.redis.RedisKey;
|
||||||
import com.ljsd.jieling.db.redis.RedisUtil;
|
import com.ljsd.jieling.db.redis.RedisUtil;
|
||||||
import com.ljsd.jieling.exception.ErrorCode;
|
import com.ljsd.jieling.exception.ErrorCode;
|
||||||
import com.ljsd.jieling.exception.ErrorCodeException;
|
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||||
import com.ljsd.jieling.ktbeans.ReportEventEnum;
|
import com.ljsd.jieling.ktbeans.ReportEventEnum;
|
||||||
import com.ljsd.jieling.ktbeans.ReportUtil;
|
import com.ljsd.jieling.ktbeans.ReportUtil;
|
||||||
|
import com.ljsd.jieling.logic.GlobalDataManaager;
|
||||||
import com.ljsd.jieling.logic.GlobleSystemLogic;
|
import com.ljsd.jieling.logic.GlobleSystemLogic;
|
||||||
import com.ljsd.jieling.logic.activity.crossService.CrossServiceLogic;
|
import com.ljsd.jieling.logic.activity.crossService.CrossServiceLogic;
|
||||||
import com.ljsd.jieling.logic.dao.*;
|
import com.ljsd.jieling.logic.dao.*;
|
||||||
|
@ -36,6 +38,7 @@ import rpc.protocols.FightInfoProto;
|
||||||
import rpc.protocols.MessageTypeProto;
|
import rpc.protocols.MessageTypeProto;
|
||||||
import util.TimeUtils;
|
import util.TimeUtils;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
|
@ -54,6 +57,12 @@ public class FastChallengeHandler extends BaseHandler<FightInfoProto.FastFightCh
|
||||||
GuildInfo guildInfo;
|
GuildInfo guildInfo;
|
||||||
int privilege;
|
int privilege;
|
||||||
int teamId = TeamEnum.CAR_DELAY_TEAM.getTeamId();
|
int teamId = TeamEnum.CAR_DELAY_TEAM.getTeamId();
|
||||||
|
|
||||||
|
TimeControllerOfFunction controller = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.Car_Delay);
|
||||||
|
if (controller == null){
|
||||||
|
throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN);
|
||||||
|
}
|
||||||
|
|
||||||
if(type == 1 || type == 2){
|
if(type == 1 || type == 2){
|
||||||
guildInfo = GuilidManager.guildInfoMap.get(user.getPlayerInfoManager().getGuildId());
|
guildInfo = GuilidManager.guildInfoMap.get(user.getPlayerInfoManager().getGuildId());
|
||||||
if(guildInfo == null){
|
if(guildInfo == null){
|
||||||
|
@ -88,13 +97,12 @@ public class FastChallengeHandler extends BaseHandler<FightInfoProto.FastFightCh
|
||||||
int challengeId = proto.getChalleageId();
|
int challengeId = proto.getChalleageId();
|
||||||
int battleRound = sWorldBossSetting.getBattleRound();
|
int battleRound = sWorldBossSetting.getBattleRound();
|
||||||
CommonProto.FightData fightData;
|
CommonProto.FightData fightData;
|
||||||
boolean isNew = !guildInfo.getCarFightSb().containsKey(uid);
|
|
||||||
int crossGroup = GlobleSystemLogic.getInstence().getCrossGroup();
|
int crossGroup = GlobleSystemLogic.getInstence().getCrossGroup();
|
||||||
|
|
||||||
AbstractRank personRank = RankContext.getRankEnum(RankEnum.CAR_DEALY_RANK.getType());
|
AbstractRank personRank = RankContext.getRankEnum(RankEnum.CAR_DEALY_RANK.getType());
|
||||||
AbstractRank guildRank = RankContext.getRankEnum(RankEnum.CAR_DEALY_GUILD_RANK.getType());
|
AbstractRank guildRank = RankContext.getRankEnum(RankEnum.CAR_DEALY_GUILD_RANK.getType());
|
||||||
switch (type){
|
switch (type){
|
||||||
case 1:{
|
case 1:{//挑战
|
||||||
int monsterId = STableManager.getConfig(SWorldBossConfig.class).get(GuildFightLogic.carDelayProgressIndication.getBossIndexId()).getMonsterId();
|
int monsterId = STableManager.getConfig(SWorldBossConfig.class).get(GuildFightLogic.carDelayProgressIndication.getBossIndexId()).getMonsterId();
|
||||||
PVEFightEvent pvpFightEvent = new PVEFightEvent(uid,teamId, battleRound,"", GameFightType.CarBossChallenge,monsterId,3);
|
PVEFightEvent pvpFightEvent = new PVEFightEvent(uid,teamId, battleRound,"", GameFightType.CarBossChallenge,monsterId,3);
|
||||||
FightResult fightResult = FightDispatcher.dispatcher(pvpFightEvent);
|
FightResult fightResult = FightDispatcher.dispatcher(pvpFightEvent);
|
||||||
|
@ -108,15 +116,15 @@ public class FastChallengeHandler extends BaseHandler<FightInfoProto.FastFightCh
|
||||||
if(hurt!=0){
|
if(hurt!=0){
|
||||||
if (crossGroup > 0){
|
if (crossGroup > 0){
|
||||||
personRank.incrementCrossRankScore(uid,"",gainScore);
|
personRank.incrementCrossRankScore(uid,"",gainScore);
|
||||||
guildRank.incrementCrossRankScore(guildInfo.getId(),"",gainScore,isNew?1:0);
|
guildRank.incrementCrossRankScore(guildInfo.getId(),"",gainScore);
|
||||||
}else {
|
}else {
|
||||||
personRank.incrementRankScore(uid,"",gainScore);
|
personRank.incrementRankScore(uid,"",gainScore);
|
||||||
guildRank.incrementRankScore(guildInfo.getId(),"",gainScore,isNew?1:0);
|
guildRank.incrementRankScore(guildInfo.getId(),"",gainScore);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
user.getUserMissionManager().onGameEvent(user, GameEvent.CAR_PLAY,1);
|
user.getUserMissionManager().onGameEvent(user, GameEvent.CAR_PLAY,1);
|
||||||
}break;
|
}break;
|
||||||
case 2:{
|
case 2:{//抢夺
|
||||||
FightResult fightResult;
|
FightResult fightResult;
|
||||||
String challengeName;
|
String challengeName;
|
||||||
String challengeNameColor;
|
String challengeNameColor;
|
||||||
|
@ -169,16 +177,16 @@ public class FastChallengeHandler extends BaseHandler<FightInfoProto.FastFightCh
|
||||||
if (crossGroup > 0){
|
if (crossGroup > 0){
|
||||||
personRank.incrementCrossRankScore(uid,"",gainScore);
|
personRank.incrementCrossRankScore(uid,"",gainScore);
|
||||||
personRank.incrementCrossRankScore(challengeId,"",-gainScore);
|
personRank.incrementCrossRankScore(challengeId,"",-gainScore);
|
||||||
guildRank.incrementCrossRankScore(guildInfo.getId(),"",gainScore,isNew?1:0);
|
guildRank.incrementCrossRankScore(guildInfo.getId(),"",gainScore);
|
||||||
if(challengeGuild!=0){
|
if(challengeGuild!=0){
|
||||||
guildRank.incrementCrossRankScore(challengeGuild,"",-gainScore,0);
|
guildRank.incrementCrossRankScore(challengeGuild,"",-gainScore);
|
||||||
}
|
}
|
||||||
}else {
|
}else {
|
||||||
personRank.incrementRankScore(uid,"",gainScore);
|
personRank.incrementRankScore(uid,"",gainScore);
|
||||||
personRank.incrementRankScore(challengeId,"",-gainScore);
|
personRank.incrementRankScore(challengeId,"",-gainScore);
|
||||||
guildRank.incrementRankScore(guildInfo.getId(),"",gainScore,isNew?1:0);
|
guildRank.incrementRankScore(guildInfo.getId(),"",gainScore);
|
||||||
if(challengeGuild!=0){
|
if(challengeGuild!=0){
|
||||||
guildRank.incrementRankScore(challengeGuild,"",-gainScore,0);
|
guildRank.incrementRankScore(challengeGuild,"",-gainScore);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -244,6 +252,9 @@ public class FastChallengeHandler extends BaseHandler<FightInfoProto.FastFightCh
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 公会人数处理
|
||||||
|
carDealyFightPeopleNum(uid,guildInfo.getId());
|
||||||
|
|
||||||
CrossServiceLogic.getInstance().saveBasicPlayerToRedis(user);
|
CrossServiceLogic.getInstance().saveBasicPlayerToRedis(user);
|
||||||
|
|
||||||
fightData.toBuilder().setFightId(FightUtil.getFightId(uid,fightData.getFightType()));
|
fightData.toBuilder().setFightId(FightUtil.getFightId(uid,fightData.getFightType()));
|
||||||
|
@ -253,11 +264,28 @@ public class FastChallengeHandler extends BaseHandler<FightInfoProto.FastFightCh
|
||||||
//扣除次数
|
//扣除次数
|
||||||
PlayerLogic.getInstance().checkAndUpdate(user, privilege, 1);
|
PlayerLogic.getInstance().checkAndUpdate(user, privilege, 1);
|
||||||
|
|
||||||
guildInfo.addCarFightSb(uid);
|
|
||||||
user.getGuildMyInfo().setCarPlayTime(TimeUtils.nowInt());
|
user.getGuildMyInfo().setCarPlayTime(TimeUtils.nowInt());
|
||||||
user.getGuildMyInfo().setCarPlayProgress(GuildFightLogic.carDelayProgressIndication.getProgress());
|
user.getGuildMyInfo().setCarPlayProgress(GuildFightLogic.carDelayProgressIndication.getProgress());
|
||||||
FightInfoProto.FastFightChallengeResponse build = FightInfoProto.FastFightChallengeResponse.newBuilder().setHurt(hurt).setScore((long) gainScore).setFightData(fightData).build();
|
FightInfoProto.FastFightChallengeResponse build = FightInfoProto.FastFightChallengeResponse.newBuilder().setHurt(hurt).setScore((long) gainScore).setFightData(fightData).build();
|
||||||
MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.FAST_FIGHT_CHALLENGE_RESPONSE_VALUE,build,true);
|
MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.FAST_FIGHT_CHALLENGE_RESPONSE_VALUE,build,true);
|
||||||
ReportUtil.onReportEvent(user, ReportEventEnum.COMPLETE_CHECHI.getType(),sWorldBossSetting.getid(),type,1,gainScore);
|
ReportUtil.onReportEvent(user, ReportEventEnum.COMPLETE_CHECHI.getType(),sWorldBossSetting.getid(),type,1,gainScore);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计算车迟挑战人数
|
||||||
|
* @param uid
|
||||||
|
* @param guildId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static int carDealyFightPeopleNum(int uid, int guildId){
|
||||||
|
HashSet value = RedisUtil.getInstence().getMapValue(RedisKey.CAR_DEALY_GUILD_FIGHT_PEOPLE_NUM, "", String.valueOf(guildId), HashSet.class);
|
||||||
|
if (value == null){
|
||||||
|
value = new HashSet();
|
||||||
|
}
|
||||||
|
if (!value.contains(uid) && uid != 0){
|
||||||
|
value.add(uid);
|
||||||
|
RedisUtil.getInstence().putMapEntry(RedisKey.CAR_DEALY_GUILD_FIGHT_PEOPLE_NUM, "", String.valueOf(guildId),value);
|
||||||
|
}
|
||||||
|
return value.size();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -68,9 +68,7 @@ public class ExplorerMapSendHandler extends BaseHandler<PlayerInfoProto.Explorer
|
||||||
MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.ExplorerMapSendResponse.getNumber(), builder.build(), true);
|
MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.ExplorerMapSendResponse.getNumber(), builder.build(), true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_FOOD_NUM,
|
//user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_FOOD_NUM, map.values().stream().mapToInt(Integer::intValue).sum());
|
||||||
map.values().stream().mapToInt(Integer::intValue).sum());
|
|
||||||
|
|
||||||
for (CommonProto.ExplorerMapSendInfo info : reqInfo) {
|
for (CommonProto.ExplorerMapSendInfo info : reqInfo) {
|
||||||
int mapId = info.getMapId();
|
int mapId = info.getMapId();
|
||||||
int teamId = info.getTeamId();
|
int teamId = info.getTeamId();
|
||||||
|
|
|
@ -179,11 +179,7 @@ public class ExplorerMapLogic {
|
||||||
}
|
}
|
||||||
LOGGER.info("{}怪物死亡=》重生时间{}", user.getId(), explorerInfo.getEnemyReliveTime());
|
LOGGER.info("{}怪物死亡=》重生时间{}", user.getId(), explorerInfo.getEnemyReliveTime());
|
||||||
RankEnum.toRank(RankEnum.EXPLORE_RANK.getType()).incrementRankScore(user.getId(), "", 1);
|
RankEnum.toRank(RankEnum.EXPLORE_RANK.getType()).incrementRankScore(user.getId(), "", 1);
|
||||||
user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_ENEMY_NUM,
|
//user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_ENEMY_NUM,1);
|
||||||
1);
|
|
||||||
|
|
||||||
//user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_ENEMY_NUM);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (time == 0) {
|
if (time == 0) {
|
||||||
|
@ -291,11 +287,11 @@ public class ExplorerMapLogic {
|
||||||
}
|
}
|
||||||
LOGGER.info("离线玩家队伍id", keyVal.getKey());
|
LOGGER.info("离线玩家队伍id", keyVal.getKey());
|
||||||
//探索事件
|
//探索事件
|
||||||
long gapDay = TimeUtils.getGapDaysByTwoTime(TimeUtils.getTimeStamp2(keyVal.getValue().getBatteTime()*1000L), TimeUtils.getTimeStamp2(offlineEndTime*1000L));
|
/*long gapDay = TimeUtils.getGapDaysByTwoTime(TimeUtils.getTimeStamp2(keyVal.getValue().getBatteTime()*1000L), TimeUtils.getTimeStamp2(offlineEndTime*1000L));
|
||||||
for(int i = 0;i< gapDay;i++){
|
for(int i = 0;i< gapDay;i++){
|
||||||
LOGGER.error("gapDay------------------------>{}",i);
|
LOGGER.error("gapDay------------------------>{}",i);
|
||||||
sendRandomEvent(user);
|
sendRandomEvent(user);
|
||||||
}
|
}*/
|
||||||
for (int i = keyVal.getValue().getBatteTime(); i <= offlineEndTime; i = i + battleInterval) {
|
for (int i = keyVal.getValue().getBatteTime(); i <= offlineEndTime; i = i + battleInterval) {
|
||||||
//复活玩家
|
//复活玩家
|
||||||
if (keyVal.getValue().getPlayerHp() == 0 && keyVal.getValue().getPlayerReliveTime() <= i) {
|
if (keyVal.getValue().getPlayerHp() == 0 && keyVal.getValue().getPlayerReliveTime() <= i) {
|
||||||
|
@ -450,7 +446,7 @@ public class ExplorerMapLogic {
|
||||||
if (minute == 0) {
|
if (minute == 0) {
|
||||||
sendRandomEvent(user);
|
sendRandomEvent(user);
|
||||||
}*/
|
}*/
|
||||||
sendRandomEvent(user);
|
//sendRandomEvent(user);
|
||||||
}
|
}
|
||||||
sendDisappearEvent(user);
|
sendDisappearEvent(user);
|
||||||
MongoUtil.getLjsdMongoTemplate().lastUpdate();
|
MongoUtil.getLjsdMongoTemplate().lastUpdate();
|
||||||
|
|
|
@ -19,6 +19,7 @@ import com.ljsd.jieling.logic.OnlineUserManager;
|
||||||
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.ActivityTypeEnum;
|
import com.ljsd.jieling.logic.activity.ActivityTypeEnum;
|
||||||
|
import com.ljsd.jieling.logic.activity.crossService.CrossServiceLogic;
|
||||||
import com.ljsd.jieling.logic.activity.event.*;
|
import com.ljsd.jieling.logic.activity.event.*;
|
||||||
import com.ljsd.jieling.logic.dao.*;
|
import com.ljsd.jieling.logic.dao.*;
|
||||||
import com.ljsd.jieling.logic.dao.root.*;
|
import com.ljsd.jieling.logic.dao.root.*;
|
||||||
|
@ -198,6 +199,8 @@ public class GuildLogic {
|
||||||
addGuildLog(guildInfo.getId(),GuildDef.Log.CREATE,user.getPlayerInfoManager().getNickName());
|
addGuildLog(guildInfo.getId(),GuildDef.Log.CREATE,user.getPlayerInfoManager().getNickName());
|
||||||
// 创建公会
|
// 创建公会
|
||||||
CrossDeathPathLogic.setCrossGuild(guildInfo);
|
CrossDeathPathLogic.setCrossGuild(guildInfo);
|
||||||
|
// 更新redis
|
||||||
|
CrossServiceLogic.getInstance().saveBasicPlayerToRedis(user);
|
||||||
|
|
||||||
PlayerInfoCache cache = RedisUtil.getInstence().getMapEntry(RedisKey.PLAYER_INFO_CACHE, "", String.valueOf(uid), PlayerInfoCache.class);
|
PlayerInfoCache cache = RedisUtil.getInstence().getMapEntry(RedisKey.PLAYER_INFO_CACHE, "", String.valueOf(uid), PlayerInfoCache.class);
|
||||||
cache.setGuildPosition(GlobalsDef.CHAIRMAN);
|
cache.setGuildPosition(GlobalsDef.CHAIRMAN);
|
||||||
|
|
|
@ -349,7 +349,6 @@ public abstract class AbstractRank implements IRank {
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public long getParam1(Double data) {
|
public long getParam1(Double data) {
|
||||||
|
|
||||||
return getDataByScore(data).length>0?getDataByScore(data)[0]:0;
|
return getDataByScore(data).length>0?getDataByScore(data)[0]:0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,26 @@
|
||||||
package com.ljsd.jieling.logic.rank.rankImpl;
|
package com.ljsd.jieling.logic.rank.rankImpl;
|
||||||
|
|
||||||
|
import com.ljsd.jieling.core.FunctionIdEnum;
|
||||||
import com.ljsd.jieling.db.redis.RedisUtil;
|
import com.ljsd.jieling.db.redis.RedisUtil;
|
||||||
|
import com.ljsd.jieling.exception.ErrorCode;
|
||||||
|
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||||
|
import com.ljsd.jieling.handler.FastChallengeHandler;
|
||||||
|
import com.ljsd.jieling.logic.GlobalDataManaager;
|
||||||
|
import com.ljsd.jieling.logic.activity.crossService.CrossServiceLogic;
|
||||||
import com.ljsd.jieling.logic.dao.GuilidManager;
|
import com.ljsd.jieling.logic.dao.GuilidManager;
|
||||||
|
import com.ljsd.jieling.logic.dao.TimeControllerOfFunction;
|
||||||
|
import com.ljsd.jieling.logic.dao.cross.CSPlayer;
|
||||||
|
import com.ljsd.jieling.logic.dao.root.GuildCache;
|
||||||
import com.ljsd.jieling.logic.dao.root.GuildInfo;
|
import com.ljsd.jieling.logic.dao.root.GuildInfo;
|
||||||
import com.ljsd.jieling.logic.dao.root.User;
|
import com.ljsd.jieling.logic.dao.root.User;
|
||||||
|
import com.ljsd.jieling.logic.family.CrossDeathPathLogic;
|
||||||
|
import com.ljsd.jieling.logic.family.DeathPathLogic;
|
||||||
import org.springframework.data.redis.core.ZSetOperations;
|
import org.springframework.data.redis.core.ZSetOperations;
|
||||||
import rpc.protocols.CommonProto;
|
import rpc.protocols.CommonProto;
|
||||||
import rpc.protocols.PlayerInfoProto;
|
import rpc.protocols.PlayerInfoProto;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Administrator
|
* @author Administrator
|
||||||
*/
|
*/
|
||||||
|
@ -17,13 +30,93 @@ public class CarDealyGuildRank extends CrossGuildForceRank{
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public long[] getDataByScore(Double score) {
|
protected void getCrossOptional(int index, ZSetOperations.TypedTuple<String> data, PlayerInfoProto.RankResponse.Builder builder) throws Exception {
|
||||||
return new long[]{ score.longValue()/1000,score.longValue()%1000};
|
GuildCache mapEntry = CrossDeathPathLogic.getCrossGuild(Integer.parseInt(data.getValue()));
|
||||||
|
if (mapEntry == null){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
CSPlayer csPlayer = CrossServiceLogic.getPlayerByRedis(mapEntry.getLeaderUId());
|
||||||
|
if (csPlayer == null){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
|
.setRank(index)
|
||||||
|
.setParam1(getParam1(data.getScore()))
|
||||||
|
.setParam2(getParam2(0,Integer.parseInt(data.getValue())))
|
||||||
|
.setParam3(getParam3(data.getScore()));
|
||||||
|
CommonProto.UserRank.Builder oneUserRank = getCrossOneUserRank(csPlayer,everyRankInfo);
|
||||||
|
builder.addRanks(oneUserRank);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public double getScore(double... data) {
|
public CommonProto.UserRank.Builder getFirstByCross(String rKey){
|
||||||
return (long) (data[0]*1000 + data[1]);
|
Set<ZSetOperations.TypedTuple<String>> rankByKey =
|
||||||
|
RedisUtil.getInstence().getZsetreverseRangeWithScores(getCrossRedisKey(),rKey, 0, 0, false);
|
||||||
|
CommonProto.UserRank.Builder builder = CommonProto.UserRank.newBuilder();
|
||||||
|
if(rankByKey.size()!=1){
|
||||||
|
return builder;
|
||||||
|
}
|
||||||
|
|
||||||
|
ZSetOperations.TypedTuple<String> data = rankByKey.iterator().next();
|
||||||
|
GuildCache mapEntry = CrossDeathPathLogic.getCrossGuild(Integer.parseInt(data.getValue()));
|
||||||
|
if (mapEntry == null){
|
||||||
|
return builder;
|
||||||
|
}
|
||||||
|
CSPlayer csPlayer = CrossServiceLogic.getPlayerByRedis(mapEntry.getLeaderUId());
|
||||||
|
if (csPlayer == null){
|
||||||
|
return builder;
|
||||||
|
}
|
||||||
|
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
|
.setRank(1)
|
||||||
|
.setParam1(getParam1(data.getScore()))
|
||||||
|
.setParam2(getParam2(0, Integer.parseInt(data.getValue())))
|
||||||
|
.setParam3(getParam3(data.getScore()));
|
||||||
|
builder = getCrossOneUserRank(csPlayer,everyRankInfo);
|
||||||
|
return builder;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void getCrossMyInfo(User user,String rkey,PlayerInfoProto.RankResponse.Builder allUserResponse){
|
||||||
|
int guildId = user.getPlayerInfoManager().getGuildId();
|
||||||
|
if (guildId == 0){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
int myRank= RedisUtil.getInstence().getZSetreverseRank(getCrossRedisKey(), rkey, Integer.toString(guildId),false).intValue();
|
||||||
|
Double zSetScore = RedisUtil.getInstence().getZSetScore(getCrossRedisKey(), rkey, Integer.toString(guildId),false);
|
||||||
|
CommonProto.RankInfo towerRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
|
.setRank(myRank)
|
||||||
|
.setParam1(getParam1(zSetScore))
|
||||||
|
.setParam2(getParam2(0,guildId))
|
||||||
|
.build();
|
||||||
|
allUserResponse.setMyRankInfo(towerRankInfo);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PlayerInfoProto.RankResponse getRank(int uid, String rkey, int page, int rankEndLine) throws Exception {
|
||||||
|
TimeControllerOfFunction controller = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.Car_Delay);
|
||||||
|
if (controller == null){
|
||||||
|
throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN);
|
||||||
|
}
|
||||||
|
return super.getRank(uid,rkey,page,rankEndLine);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PlayerInfoProto.RankResponse getCrossRank(int uid, String rkey, int page, int rankEndLine) throws Exception {
|
||||||
|
TimeControllerOfFunction controller = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.Car_Delay);
|
||||||
|
if (controller == null){
|
||||||
|
throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN);
|
||||||
|
}
|
||||||
|
return super.getCrossRank(uid,rkey,page,rankEndLine);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long getParam1(Double data) {
|
||||||
|
return (long) getScore(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getParam2(int uid, int guildId) {
|
||||||
|
return FastChallengeHandler.carDealyFightPeopleNum(uid,guildId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -38,8 +131,7 @@ public class CarDealyGuildRank extends CrossGuildForceRank{
|
||||||
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
CommonProto.RankInfo.Builder everyRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
.setRank(index)
|
.setRank(index)
|
||||||
.setParam1(getParam1(data.getScore()))
|
.setParam1(getParam1(data.getScore()))
|
||||||
.setParam2(getParam2(data.getScore()));
|
.setParam2(getParam2(0,guildId));
|
||||||
|
|
||||||
CommonProto.UserRank everyRank = CommonProto.UserRank.newBuilder()
|
CommonProto.UserRank everyRank = CommonProto.UserRank.newBuilder()
|
||||||
.setGuildName(familyName)
|
.setGuildName(familyName)
|
||||||
.setRankInfo(everyRankInfo)
|
.setRankInfo(everyRankInfo)
|
||||||
|
@ -55,7 +147,8 @@ public class CarDealyGuildRank extends CrossGuildForceRank{
|
||||||
CommonProto.RankInfo towerRankInfo = CommonProto.RankInfo.newBuilder()
|
CommonProto.RankInfo towerRankInfo = CommonProto.RankInfo.newBuilder()
|
||||||
.setRank(myRank)
|
.setRank(myRank)
|
||||||
.setParam1(getParam1(zSetScore))
|
.setParam1(getParam1(zSetScore))
|
||||||
.setParam2(getParam2(zSetScore)).build();
|
.setParam2(getParam2(0,guildId))
|
||||||
|
.build();
|
||||||
allUserResponse.setMyRankInfo(towerRankInfo);
|
allUserResponse.setMyRankInfo(towerRankInfo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,33 @@
|
||||||
package com.ljsd.jieling.logic.rank.rankImpl;
|
package com.ljsd.jieling.logic.rank.rankImpl;
|
||||||
|
|
||||||
|
import com.ljsd.jieling.core.FunctionIdEnum;
|
||||||
|
import com.ljsd.jieling.exception.ErrorCode;
|
||||||
|
import com.ljsd.jieling.exception.ErrorCodeException;
|
||||||
|
import com.ljsd.jieling.logic.GlobalDataManaager;
|
||||||
|
import com.ljsd.jieling.logic.dao.TimeControllerOfFunction;
|
||||||
|
import rpc.protocols.PlayerInfoProto;
|
||||||
|
|
||||||
public class CarDealyRank extends ForceRank{
|
public class CarDealyRank extends ForceRank{
|
||||||
|
|
||||||
public CarDealyRank(int type, String redisKey) {
|
public CarDealyRank(int type, String redisKey) {
|
||||||
super(type, redisKey);
|
super(type, redisKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PlayerInfoProto.RankResponse getRank(int uid, String rkey, int page, int rankEndLine) throws Exception {
|
||||||
|
TimeControllerOfFunction controller = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.Car_Delay);
|
||||||
|
if (controller == null){
|
||||||
|
throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN);
|
||||||
|
}
|
||||||
|
return super.getRank(uid,rkey,page,rankEndLine);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PlayerInfoProto.RankResponse getCrossRank(int uid, String rkey, int page, int rankEndLine) throws Exception {
|
||||||
|
TimeControllerOfFunction controller = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.Car_Delay);
|
||||||
|
if (controller == null){
|
||||||
|
throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN);
|
||||||
|
}
|
||||||
|
return super.getCrossRank(uid,rkey,page,rankEndLine);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -258,8 +258,7 @@ public class MinuteTask extends Thread {
|
||||||
|
|
||||||
i++;
|
i++;
|
||||||
LOGGER.error("------------------------------asdfa --------------:"+eachEle+" i:"+i);
|
LOGGER.error("------------------------------asdfa --------------:"+eachEle+" i:"+i);
|
||||||
user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_ENEMYHISTORYHIGH_NUM,
|
//user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_ENEMYHISTORYHIGH_NUM, i);
|
||||||
i);
|
|
||||||
}
|
}
|
||||||
RankEnum.toRank(RankEnum.EXPLORE_RANK.getType()).removeRank("");
|
RankEnum.toRank(RankEnum.EXPLORE_RANK.getType()).removeRank("");
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue