验证是否打过
parent
9fd6ce91f6
commit
652d2963e7
|
|
@ -22,6 +22,7 @@ import redis.clients.jedis.Jedis;
|
||||||
import taurus.util.ROBOTEventType;
|
import taurus.util.ROBOTEventType;
|
||||||
import com.taurus.core.util.Logger;
|
import com.taurus.core.util.Logger;
|
||||||
|
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.*;
|
import java.util.concurrent.*;
|
||||||
|
|
||||||
|
|
@ -448,6 +449,11 @@ public class RobotConnectionManager {
|
||||||
|
|
||||||
//游戏结束后主动断开连接
|
//游戏结束后主动断开连接
|
||||||
disconnectFromGameServer(connecId);
|
disconnectFromGameServer(connecId);
|
||||||
|
|
||||||
|
//大结算时 标记真人玩家已对打过
|
||||||
|
if (type == 1) {
|
||||||
|
markPlayerRobot(robotUser);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
ITObject params = TObject.newInstance();
|
ITObject params = TObject.newInstance();
|
||||||
params.putString("session", client.getSession());
|
params.putString("session", client.getSession());
|
||||||
|
|
@ -641,6 +647,43 @@ public class RobotConnectionManager {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 大结算时标记真人玩家当天已对打过
|
||||||
|
*/
|
||||||
|
private void markPlayerRobot(RobotUser robotUser) {
|
||||||
|
Jedis jedis = Redis.use().getJedis();
|
||||||
|
Jedis jedis3 = Redis.use("group1_db3").getJedis();
|
||||||
|
try {
|
||||||
|
String roomId = String.valueOf(robotUser.getCurrentRoomId());
|
||||||
|
int robotId = Integer.parseInt(robotUser.getRobotId());
|
||||||
|
|
||||||
|
//获取房间玩家列表
|
||||||
|
String playersStr = jedis.hget("room:" + roomId, "players");
|
||||||
|
|
||||||
|
String[] playerIds = playersStr.substring(1, playersStr.length() - 1).split(",");
|
||||||
|
String today = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
|
||||||
|
Calendar endOfDay = Calendar.getInstance();
|
||||||
|
endOfDay.set(Calendar.HOUR_OF_DAY, 23);
|
||||||
|
endOfDay.set(Calendar.MINUTE, 59);
|
||||||
|
endOfDay.set(Calendar.SECOND, 59);
|
||||||
|
int expireSec = (int)((endOfDay.getTimeInMillis() - System.currentTimeMillis()) / 1000);
|
||||||
|
|
||||||
|
for (String id : playerIds) {
|
||||||
|
int playerId = Integer.parseInt(id.trim());
|
||||||
|
if (playerId != robotId) {
|
||||||
|
String key = "player_user:" + playerId;
|
||||||
|
jedis3.set(key, today);
|
||||||
|
jedis3.expire(key, expireSec);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("标记玩家对打记录异常", e);
|
||||||
|
} finally {
|
||||||
|
jedis.close();
|
||||||
|
jedis3.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 机器人登录
|
* 机器人登录
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue