竞技场重写二版
parent
6bf881b06d
commit
745dde1d59
|
|
@ -110,6 +110,7 @@ public class GmService implements RPCRequestGMIFace.Iface {
|
|||
} catch (final Exception ex) {
|
||||
result.setResultMsg("Cmd Illegal");
|
||||
LOGGER.error("e={}", ex.getMessage());
|
||||
ex.printStackTrace();
|
||||
return result;
|
||||
}
|
||||
result.setResultCode(0);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ import java.util.*;
|
|||
|
||||
/**
|
||||
* 通用修复,在线后台修改玩家数据
|
||||
* // arenafalsedata serverId
|
||||
* //arenafalsedata 10023
|
||||
*/
|
||||
public class Cmd_arenafalsedata extends GmAbstract {
|
||||
|
||||
|
|
@ -33,6 +33,7 @@ public class Cmd_arenafalsedata extends GmAbstract {
|
|||
|
||||
@Override
|
||||
public String exec2(String[] args) {
|
||||
long start = TimeUtils.now();
|
||||
String arg = args[0];
|
||||
int serverId = Integer.parseInt(arg);
|
||||
List<Integer> localRooms = SArenaRoom.getLocalRooms();
|
||||
|
|
@ -47,9 +48,11 @@ public class Cmd_arenafalsedata extends GmAbstract {
|
|||
for (Integer roomId : crossRooms) {
|
||||
initFalseArenaRank(getRandomUsers(allUser), roomId);
|
||||
}
|
||||
LOGGER.info("竞技场假数据全部制作完成...耗时:{}",TimeUtils.now()-start);
|
||||
return "success";
|
||||
}
|
||||
public void initFalseArenaRank(List<User> users, int roomId){
|
||||
LOGGER.info("竞技场假数据,房间id:{},用户数量:{}",roomId, users.size());
|
||||
if (users.isEmpty()){
|
||||
return;
|
||||
}
|
||||
|
|
@ -62,37 +65,47 @@ public class Cmd_arenafalsedata extends GmAbstract {
|
|||
if (personInfo == null){
|
||||
redisUtil.putmap(RedisKey.NEW_ARENA_FIRST_PUSH, ArenaLogic.FIRST_PUSH, CBean2Proto.getNewArenaPlayerProto(first.getId(), roomId));
|
||||
redisUtil.expireMills(RedisKey.NEW_ARENA_FIRST_PUSH, TimeUtils.ONE_MINUTE * 10);
|
||||
LOGGER.info("竞技场假数据,第一拍脸,uid:{},房间id:{}",first.getId(),roomId);
|
||||
}
|
||||
}
|
||||
|
||||
NewArenaRank rank = (NewArenaRank) RankEnum.toRank(RankEnum.NEW_ARENA_RANK.getType());
|
||||
for (User user : users) {
|
||||
int uid = user.getId();
|
||||
int randomArenaLv = getRandomArenaLv();
|
||||
int randomScore = getRandomScore();
|
||||
// 竞技场缓存
|
||||
ArenaInfo info = new ArenaInfo();
|
||||
info.setUid(user.getId());
|
||||
info.setUid(uid);
|
||||
info.setArenaLv(randomArenaLv);
|
||||
info.setScore(randomScore);
|
||||
info.setRoomId(roomId);
|
||||
info.setFightNum(0);
|
||||
info.setReceivedBox(new HashSet<>());
|
||||
info.setArenaRecord(new HashMap<>());
|
||||
ArenaLogic.saveArenaInfo(info);
|
||||
ArenaLogic.getInstance().refreshArenaOpponentList(user);
|
||||
LOGGER.info("竞技场假数据,处理玩家竞技场缓存,uid:{},房间id:{},段位:{},竞技分:{}", uid,roomId,randomArenaLv,randomScore);
|
||||
// 玩家身上
|
||||
ArenaManager arenaManager = user.getArenaManager();
|
||||
arenaManager.setNewArenaLv(randomArenaLv);
|
||||
SArenaLevel arenaLevel = SArenaLevel.getMap().get(randomArenaLv);
|
||||
arenaManager.setNewArenaLvScore(arenaLevel.getArenaLevelIntegral()[0]+5);
|
||||
int arenaLvScore = arenaLevel.getArenaLevelIntegral()[0] + 5;
|
||||
arenaManager.setNewArenaLvScore(arenaLvScore);
|
||||
LOGGER.info("竞技场假数据,处理玩家竞技场缓存,uid:{},房间id:{},段位:{},段位分:{}", uid,roomId,randomArenaLv,arenaLvScore);
|
||||
|
||||
// 重置标记
|
||||
if (isGetResetMark()){
|
||||
int randomRanking = getRandomRanking();
|
||||
ArenaLogic.getInstance().setNewArenaResetMark(user.getId(), roomId, randomRanking);
|
||||
ArenaLogic.getInstance().setNewArenaResetMark(uid, roomId, randomRanking);
|
||||
LOGGER.info("竞技场假数据,重置标记,uid:{},房间id:{}", uid,roomId);
|
||||
}
|
||||
// 排行榜
|
||||
rank.addRank(user.getId(), String.valueOf(roomId), randomScore);
|
||||
rank.addRank(uid, String.valueOf(roomId), randomScore);
|
||||
LOGGER.info("竞技场假数据,排行榜数据,uid:{},房间id:{}, 竞技分:{}", uid,roomId,randomScore);
|
||||
CrossServiceLogic.getInstance().saveBasicPlayerToRedis(user);
|
||||
}
|
||||
LOGGER.info("竞技场假数据,房间id:{},用户数量:{}, 完成...",roomId, users.size());
|
||||
}
|
||||
|
||||
public static List<User> getRandomUsers(List<User> users) {
|
||||
|
|
|
|||
|
|
@ -991,6 +991,7 @@ public class ArenaLogic {
|
|||
info.setFightNum(0);
|
||||
info.setReceivedBox(new HashSet<>());
|
||||
info.setArenaRecord(new HashMap<>());
|
||||
saveArenaInfo(info);
|
||||
refreshArenaOpponentList(user);
|
||||
return info;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue