master
parent
9db1547a5f
commit
82e32f285d
|
|
@ -39,55 +39,51 @@ public class Utils {
|
||||||
CountUtil.countLogByDay30(gmr + "_self", 1, pipeline9, true);
|
CountUtil.countLogByDay30(gmr + "_self", 1, pipeline9, true);
|
||||||
|
|
||||||
List<Integer> temp = Utility.getMemberParents(jedis10, groupId, uid, true);
|
List<Integer> temp = Utility.getMemberParents(jedis10, groupId, uid, true);
|
||||||
log.info("temp:"+temp.size());
|
log.info("temp:" + temp.size());
|
||||||
if (temp != null && temp.size() > 0) {
|
if (temp != null && temp.size() > 0) {
|
||||||
|
|
||||||
for (int i = 0; i < temp.size(); ++i) {
|
for (int i = 0; i < temp.size(); ++i) {
|
||||||
if(valid_count>0) {
|
int par = temp.get(i);
|
||||||
int par = temp.get(i);
|
if (par != uid) {
|
||||||
if (par != uid) {
|
String gmv2 = String.format("g{%s}:m%s:valid_round", groupId, par);
|
||||||
String gmv2 = String.format("g{%s}:m%s:valid_round", groupId, par);
|
CountUtil.countLogByDay30(gmv2, 1, pipeline9);
|
||||||
CountUtil.countLogByDay30(gmv2, 1, pipeline9);
|
|
||||||
}
|
|
||||||
|
|
||||||
String gmvp = String.format("g{%s}:m%s:valid_round:p%s", groupId, par, pid);
|
|
||||||
CountUtil.countLogByDay30(gmvp, 1, pipeline9);
|
|
||||||
log.info("par增加场次:"+par);
|
|
||||||
|
|
||||||
String gmvp2 = String.format("g{%s}:m%s:valid_round2:p%s", groupId, par, pid);
|
|
||||||
CountUtil.countLogByDay30(gmvp2, 1, pipeline9);
|
|
||||||
|
|
||||||
String gmv = String.format("g{%s}:m%s:d_valid_round", groupId, par);
|
|
||||||
CountUtil.countLogByDay30(gmv, 1, pipeline9);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String gmvp = String.format("g{%s}:m%s:valid_round:p%s", groupId, par, pid);
|
||||||
|
CountUtil.countLogByDay30(gmvp, 1, pipeline9);
|
||||||
|
log.info("par增加场次:" + par);
|
||||||
|
|
||||||
|
String gmvp2 = String.format("g{%s}:m%s:valid_round2:p%s", groupId, par, pid);
|
||||||
|
CountUtil.countLogByDay30(gmvp2, 1, pipeline9);
|
||||||
|
|
||||||
|
String gmv = String.format("g{%s}:m%s:d_valid_round", groupId, par);
|
||||||
|
CountUtil.countLogByDay30(gmv, 1, pipeline9);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < temp.size(); ++i) {
|
for (int i = 0; i < temp.size(); ++i) {
|
||||||
if(valid_count>0) {
|
int par = temp.get(i);
|
||||||
int par = temp.get(i);
|
if (par != uid) {
|
||||||
if (par != uid) {
|
gmr = String.format("g{%s}:m%s:round_log", groupId, par);
|
||||||
gmr = String.format("g{%s}:m%s:round_log", groupId, par);
|
|
||||||
CountUtil.countLogByDay30(gmr, 1, pipeline9, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
gmr = String.format("g{%s}:m%s:valid_diamo:p%s", groupId, par, pid);
|
|
||||||
CountUtil.countLogByDay30(gmr, valid_diamo, pipeline9);
|
|
||||||
|
|
||||||
gmr = String.format("g{%s}:m%s:all_count:p%s", groupId, par, pid);
|
|
||||||
|
|
||||||
CountUtil.countLogByDay30(gmr, all_count, pipeline9, true);
|
|
||||||
|
|
||||||
gmr = String.format("g{%s}:m%s:d_round_log", groupId, par);
|
|
||||||
CountUtil.countLogByDay30(gmr, 1, pipeline9, true);
|
CountUtil.countLogByDay30(gmr, 1, pipeline9, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gmr = String.format("g{%s}:m%s:valid_diamo:p%s", groupId, par, pid);
|
||||||
|
CountUtil.countLogByDay30(gmr, valid_diamo, pipeline9);
|
||||||
|
|
||||||
|
gmr = String.format("g{%s}:m%s:all_count:p%s", groupId, par, pid);
|
||||||
|
|
||||||
|
CountUtil.countLogByDay30(gmr, all_count, pipeline9, true);
|
||||||
|
|
||||||
|
gmr = String.format("g{%s}:m%s:d_round_log", groupId, par);
|
||||||
|
CountUtil.countLogByDay30(gmr, 1, pipeline9, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("计入统计出错:",e);
|
log.error("计入统计出错:", e);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final void countValidAndTotal(Pipeline pipeline9, ITArray playerList, int groupId, int pid,
|
public static final void countValidAndTotal(Pipeline pipeline9, ITArray playerList, int groupId, int pid,
|
||||||
|
|
@ -101,18 +97,18 @@ public class Utils {
|
||||||
int uid = playerList.getInt(i);
|
int uid = playerList.getInt(i);
|
||||||
EventServer.log.info("uid:" + uid);
|
EventServer.log.info("uid:" + uid);
|
||||||
EventServer.log.info("win_player:" + win_player);
|
EventServer.log.info("win_player:" + win_player);
|
||||||
//平局两边都需要增加场次
|
// 平局两边都需要增加场次
|
||||||
if(valid_count==0) {
|
if (valid_count == 0) {
|
||||||
EventServer.log.info("平局player:" + uid);
|
EventServer.log.info("平局player:" + uid);
|
||||||
countValidAndTotal(jedis10, pipeline9, uid, groupId, pid, 1, valid_diamo, all_count, 1);
|
countValidAndTotal(jedis10, pipeline9, uid, groupId, pid, 1, valid_diamo, all_count, 1);
|
||||||
|
|
||||||
}else if (win_player == uid) {
|
} else if (win_player == uid) {
|
||||||
// 大赢家增加场次
|
// 大赢家增加场次
|
||||||
EventServer.log.info("win_player:" + uid);
|
EventServer.log.info("win_player:" + uid);
|
||||||
countValidAndTotal(jedis10, pipeline9, uid, groupId, pid, valid_count, valid_diamo, all_count, 1);
|
countValidAndTotal(jedis10, pipeline9, uid, groupId, pid, valid_count, valid_diamo, all_count, 1);
|
||||||
|
|
||||||
}else {
|
} else {
|
||||||
//输家不增加场次
|
// 输家不增加场次
|
||||||
EventServer.log.info("win_player:" + uid);
|
EventServer.log.info("win_player:" + uid);
|
||||||
countValidAndTotal(jedis10, pipeline9, uid, groupId, pid, 0, valid_diamo, all_count, 1);
|
countValidAndTotal(jedis10, pipeline9, uid, groupId, pid, 0, valid_diamo, all_count, 1);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -569,7 +569,7 @@ public class Room implements Runnable {
|
||||||
player.xi_pai = false;
|
player.xi_pai = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// redisUpdateXiPaiPlayer(player);
|
redisUpdateXiPaiPlayer(player);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -987,6 +987,8 @@ public class Room implements Runnable {
|
||||||
* 总战绩
|
* 总战绩
|
||||||
*/
|
*/
|
||||||
public void saveMilitaryTotal(boolean dissmiss) {
|
public void saveMilitaryTotal(boolean dissmiss) {
|
||||||
|
Global.logger.info("保存录像");
|
||||||
|
|
||||||
if (dissmiss) {
|
if (dissmiss) {
|
||||||
saveRecRound();
|
saveRecRound();
|
||||||
}
|
}
|
||||||
|
|
@ -1127,7 +1129,7 @@ public class Room implements Runnable {
|
||||||
if (player.already_round == 0)
|
if (player.already_round == 0)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
long curHp = 0;
|
long curHp = player.hp.cur_hp;
|
||||||
|
|
||||||
// 设置保底
|
// 设置保底
|
||||||
if (scoreWin > pumpProportion) {
|
if (scoreWin > pumpProportion) {
|
||||||
|
|
@ -1144,13 +1146,15 @@ public class Room implements Runnable {
|
||||||
if (player.hp.total_hp > 0 && scoreWin > 0) {
|
if (player.hp.total_hp > 0 && scoreWin > 0) {
|
||||||
player.practicalHpPumpReal = roomMoney;
|
player.practicalHpPumpReal = roomMoney;
|
||||||
this.basePump = 0;
|
this.basePump = 0;
|
||||||
|
// curHp = Global.eventCtr.redisFag(player, scoreWin, true, true, 0, false, null,player.hp.total_hp);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// 这里只扣输家流水
|
// 这里只扣输家流水
|
||||||
Global.logger.info("输家" + player.playerid);
|
Global.logger.info("输家" + player.playerid);
|
||||||
Global.logger.info("输家:" + player.hp.total_hp);
|
Global.logger.info("输家:" + player.hp.total_hp);
|
||||||
player.practicalHpPumpReal = roomMoney;
|
player.practicalHpPumpReal = roomMoney;
|
||||||
player.practicalHpPump = 1;
|
player.practicalHpPump = 1;
|
||||||
curHp = Global.eventCtr.redisFag(player, 0, hpPump, true, 0, false, null,player.hp.total_hp);
|
curHp = Global.eventCtr.redisFag(player, player.hp.total_hp, hpPump, true, 0, false, null,-1);
|
||||||
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -1179,9 +1183,12 @@ public class Room implements Runnable {
|
||||||
// player.practicalHpPump = 0;
|
// player.practicalHpPump = 0;
|
||||||
// player.practicalHpPumpReal = 0;
|
// player.practicalHpPumpReal = 0;
|
||||||
// }
|
// }
|
||||||
curHp = Global.eventCtr.redisFag(player, player.hp.total_hp, hpPump || player.practicalHpPump > 0,
|
if(hpPump) {
|
||||||
false, 0, false, null,0);
|
curHp = Global.eventCtr.redisFag(player, player.hp.total_hp, hpPump || player.practicalHpPump > 0,
|
||||||
|
false, 0, false, null,0);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Global.logger.info("scoreWin:" + scoreWin + "|room.basepump:" + this.basePump
|
Global.logger.info("scoreWin:" + scoreWin + "|room.basepump:" + this.basePump
|
||||||
+ "room practicalHpPumpReal" + player.practicalHpPumpReal);
|
+ "room practicalHpPumpReal" + player.practicalHpPumpReal);
|
||||||
|
|
@ -1625,14 +1632,13 @@ public class Room implements Runnable {
|
||||||
|
|
||||||
player.hp.total_hp += hp;
|
player.hp.total_hp += hp;
|
||||||
// player.hp.cur_hp = Redis.use("group1_db10").hincrBy(gm_key, "hp", hp);
|
// player.hp.cur_hp = Redis.use("group1_db10").hincrBy(gm_key, "hp", hp);
|
||||||
// if(hp>0) {
|
if(hp>0) {
|
||||||
// player.hp.cur_hp = Global.eventCtr.redisFag(player, hp, false, false, 0, false, null);
|
player.hp.cur_hp = Global.eventCtr.redisFag(player, hp, false, false, 0, false, null,0);
|
||||||
// }else {
|
}else {
|
||||||
// String gm_key = GroupMemberCache.genKey(this.groupId, player.playerid);
|
String gm_key = GroupMemberCache.genKey(this.groupId, player.playerid);
|
||||||
// player.hp.cur_hp = Redis.use("group1_db10").hincrBy(gm_key, "hp", hp);
|
player.hp.cur_hp = Redis.use("group1_db10").hincrBy(gm_key, "hp", hp);
|
||||||
//
|
|
||||||
// }
|
}
|
||||||
player.hp.cur_hp = Global.eventCtr.redisFag(player, hp, false, false, 0, false, null,0);
|
|
||||||
redisCountBlack(player, hp);
|
redisCountBlack(player, hp);
|
||||||
// 重新设置房间最低分数
|
// 重新设置房间最低分数
|
||||||
|
|
||||||
|
|
@ -1870,10 +1876,12 @@ public class Room implements Runnable {
|
||||||
for (Entry<Integer, Player> entry : this.playerMapById.entrySet()) {
|
for (Entry<Integer, Player> entry : this.playerMapById.entrySet()) {
|
||||||
Player player = (Player) entry.getValue();
|
Player player = (Player) entry.getValue();
|
||||||
if (player.xi_pai) {
|
if (player.xi_pai) {
|
||||||
|
player.room.redisUpdateXiPaiPlayer(player);
|
||||||
list.addInt(player.playerid);
|
list.addInt(player.playerid);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
param1.putTArray("list", list);
|
param1.putTArray("list", list);
|
||||||
|
|
||||||
broadCastToClient(0, Router.GAME_EVENT_NOTIFY_XIPAI, param1);
|
broadCastToClient(0, Router.GAME_EVENT_NOTIFY_XIPAI, param1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ public class PlayerEndState extends StateBase<Player> {
|
||||||
param1.putInt("result", 0);
|
param1.putInt("result", 0);
|
||||||
owner.sendEvent(Router.GAME_EVENT_XIPAI, param1);
|
owner.sendEvent(Router.GAME_EVENT_XIPAI, param1);
|
||||||
|
|
||||||
owner.room.redisUpdateXiPaiPlayer(owner);
|
// owner.room.redisUpdateXiPaiPlayer(owner);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
ITObject param1 = new TObject();
|
ITObject param1 = new TObject();
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,20 @@
|
||||||
package com.game.player.state;
|
package com.game.player.state;
|
||||||
|
|
||||||
|
import com.data.bean.GroupBean;
|
||||||
|
import com.data.cache.GroupCache;
|
||||||
|
import com.data.cache.GroupMemberCache;
|
||||||
|
import com.data.util.ConsumeCode;
|
||||||
|
import com.data.util.CountUtil;
|
||||||
|
import com.data.util.Utility;
|
||||||
import com.game.ActionEvent;
|
import com.game.ActionEvent;
|
||||||
import com.game.Global;
|
import com.game.Global;
|
||||||
import com.game.data.Player;
|
import com.game.data.Player;
|
||||||
import com.game.state.StateBase;
|
import com.game.state.StateBase;
|
||||||
|
import com.taurus.core.plugin.database.DataBase;
|
||||||
|
import com.taurus.core.plugin.redis.Redis;
|
||||||
|
|
||||||
|
import redis.clients.jedis.Jedis;
|
||||||
|
import redis.clients.jedis.Pipeline;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 玩家准备状态
|
* 玩家准备状态
|
||||||
|
|
@ -22,6 +33,42 @@ public class PlayerReadyState extends StateBase<Player> {
|
||||||
public void execute(Player owner, String cmd, int gid, Object param) {
|
public void execute(Player owner, String cmd, int gid, Object param) {
|
||||||
if(owner.room.round>0)return;
|
if(owner.room.round>0)return;
|
||||||
if(cmd.equals(ActionEvent.EVENT_EXIT_ROOM)) {
|
if(cmd.equals(ActionEvent.EVENT_EXIT_ROOM)) {
|
||||||
|
// if(owner.room.round==0) {
|
||||||
|
// String gm_key = GroupMemberCache.genKey(owner.room.groupId, owner.playerid);
|
||||||
|
// Redis.use("group1_db10").hincrBy(gm_key, "hp", owner.xi_pai_total);
|
||||||
|
// String sql = String.format("{call sp_update_hp(%s,%s,%s,%s,%s,%s,'%s',%s,'%s')}", owner.room.groupId, owner.playerid, owner.xi_pai_total, owner.hp.cur_hp, ConsumeCode.HP_PARTNER_XIPAI_REWARD_BACK,
|
||||||
|
// owner.room.groupPid, owner.room.roomid, System.currentTimeMillis()/1000, "洗牌退回");
|
||||||
|
// Utility.evtdb(gid, 2, sql);
|
||||||
|
//
|
||||||
|
// Jedis jedis9 = Redis.use("group1_db13").getJedis();
|
||||||
|
// try {
|
||||||
|
// //处理盟主退回操作
|
||||||
|
// GroupBean gb = GroupCache.getGroup(owner.room.groupId);
|
||||||
|
// String desc = "洗牌退回";
|
||||||
|
// long cur_hp = CountUtil.countLogByDay3(String.format("g%s:hp_reward:m%s", owner.room.groupId, gb.owner), -owner.xi_pai_total,
|
||||||
|
// jedis9);
|
||||||
|
// String mengzhuSql = String.format(
|
||||||
|
// "INSERT INTO group_hp_log(gid,uid,reason,hp,cur_hp,pid,roomid,time,round,info) "
|
||||||
|
// + "VALUES(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)",
|
||||||
|
// gb.id, gb.owner, ConsumeCode.HP_PARTNER_XIPAI_REWARD_BACK, -owner.xi_pai_total, cur_hp, owner.room.groupPid, owner.room.roomid, System.currentTimeMillis()/1000,
|
||||||
|
// 0, desc);
|
||||||
|
// Pipeline pipeline = jedis9.pipelined();
|
||||||
|
// String key = String.format("g{%s}:m%s:d_xipai_reward", owner.room.groupId, gb.owner);
|
||||||
|
// CountUtil.countLogByDay30(key, -owner.xi_pai_total, pipeline);
|
||||||
|
// Utility.evtdbLog(gid, 1,mengzhuSql);
|
||||||
|
// String rewardsql = String.format(
|
||||||
|
// "update group_member set reward_hp=reward_hp+ %s where uid = %s AND groupId = %s", -owner.xi_pai_total,
|
||||||
|
// gb.owner, owner.room.groupId);
|
||||||
|
//
|
||||||
|
// Utility.evtdb(owner.room.groupId, 1, rewardsql);
|
||||||
|
//
|
||||||
|
// }catch (Exception e) {
|
||||||
|
// e.printStackTrace();
|
||||||
|
// } finally {
|
||||||
|
// jedis9.close();
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// }
|
||||||
Global.gameCtr.exitRoom(owner, gid,false);
|
Global.gameCtr.exitRoom(owner, gid,false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue