目录结构调整

This commit is contained in:
2026-02-04 23:47:45 +08:00
parent 6938c911c3
commit 6b22238c6e
8780 changed files with 15333 additions and 574 deletions

View File

@@ -0,0 +1,865 @@
var xRebate = xRebate || {};
xRebate.gameRebate = function(o_room){
var maxgrade = 0;
var maxseat = [];
for (var i = 0; i < o_room.seatlist.length; i++){
if (o_room.seatlist[i] && o_room.seatlist[i].gameinfo.isbet){
if (o_room.seatlist[i].gameinfo.grade > maxgrade){
maxgrade = parseInt(o_room.seatlist[i].gameinfo.grade);
maxseat = [i];
} else if (o_room.seatlist[i].gameinfo.grade == maxgrade){
maxseat.push(i);
}
}
}
if (!o_room.roommode){
//非星星场短号房要结算魅力值
try{
//百人场无大局魅力值抽成
if (o_room.advanced_type && o_room.o_game.gameid != "Btke0urRy0cvPd5CIvD5yfhYhKhdSdex"){
var o_agentsvr_agent = youle_agent.agents.method.find_agent(o_room.o_game.o_agent.agentid);
var o_agentsvr_owner = o_agentsvr_agent.method.find_player(o_room.owner.playerid);
if (o_agentsvr_owner.whitelist && o_agentsvr_owner.whitelist.length > 0){
var rebateConfig = youle_room.app.youle_platform.config.method.get_paravalue("rebateConfig", o_room.o_game.o_agent.agentid);
var rCharm = 0;
var maxgrade1 = 0;
var maxseat1 = [];
var rcTemp = false;
if(rebateConfig){
if(rebateConfig.rebateCharm && o_room.rebateType){
//rCharm = parseInt(o_room.rebateNumber/maxseat.length);
rCharm = o_room.rebateNumber;
var _seatlist = [];
for (var i = 0; i < o_room.seatlist.length; i++) {
//if (o_room.seatlist[i]. != null){
if (o_room.seatlist[i]){
var _player = {};
_player.seat = i;
_player.playerid = o_room.seatlist[i].playerid;
_player.change = 0;
for (var j = 0; j < o_agentsvr_owner.whitelist.length; j++) {
if (o_agentsvr_owner.whitelist[j][0] == _player.playerid){
if (o_agentsvr_owner.whitelist[j][2]){
//o_agentsvr_owner.whitelist[j][2] = parseInt(o_agentsvr_owner.whitelist[j][2]) + ary_grade[i];
if(o_room.seatlist[i].gameinfo.grade == maxgrade){
o_agentsvr_owner.whitelist[j][2] = parseInt(o_agentsvr_owner.whitelist[j][2]) - rCharm;
_player.change = -rCharm;
}
} else {
if(o_room.seatlist[i].gameinfo.grade == maxgrade){
o_agentsvr_owner.whitelist[j][2] = -rCharm;
_player.change = -rCharm;
}
}
_player.charm = o_agentsvr_owner.whitelist[j][2];
break;
}
}
_seatlist.push(_player);
}
//}
}
var msg = {};
msg.app = "youle";
msg.route = "agent";
msg.rpc = "update_charm";
msg.data = {};
msg.data.seatlist = _seatlist;
o_room.method.sendpack_toother(msg, -1);
var sql = "update player set play_whitelist = ? where play_agentid = ? and play_playerid = ?";
youle_room.mysql.execsql("execsql", sql, [youle_agent.compressWhiteList(o_agentsvr_owner.whitelist), o_room.o_game.o_agent.agentid, o_room.owner.playerid]);
}
}
}
}
}catch(e){
console.log("结算短号魅力值发生错误");
console.log(e);
}
}
//只支持倍数百分比抽成
//抽成参数
var rebateConfig = youle_room.app.youle_platform.config.method.get_paravalue("rebateConfig", o_room.o_game.o_agent.agentid);
if(!rebateConfig){
return;
}
//小局抽成设置
//var aset_rebate = youle_room.app.youle_platform.config.method.get_paravalue("aset_rebate", o_room.o_game.o_agent.agentid);
//是否需要抽成
var rebateTemp = false;
if(!o_room.asetRebate){
rebateTemp = true;
}
//vip房卡房是否扣魅力值
var rebateCharm = rebateConfig.rebateCharm;
//扣除模式 1.大赢家 2.赢家 3.所有人
var rebateFrom = rebateConfig.from;
//房间倍数
var beanmult = 1;
//金币房
if(o_room.roommode){
beanmult = youle_agent.import.createroom_beanmult(o_room.o_game, o_room.roomtype);
}
if(!beanmult){
beanmult = 1;
}
var o_agentsvr_agent = youle_agent.agents.method.find_agent(o_room.o_game.o_agent.agentid);
//配置扣除数量
var sysRebateValue = parseInt(rebateConfig.value * beanmult /100);
var agentid = o_room.o_game.o_agent.agentid;
var gameid = o_room.o_game.gameid;
var roomcode = o_room.roomcode;
var createtime = o_room.createtime;
var makewartime = o_room.makewartime;
var roommode = o_room.roommode;
var ownerid = o_room.owner.playerid;
var shortcode = 0;
if (o_room.shortcode){
shortcode = o_room.shortcode;
}
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var asetcount = o_room.asetcount;
var rebateTo = 0;
var rebateMode = 2;
var roomMode = 0;
//房间收取房间费的值
var rebateValue = sysRebateValue;
if(!o_room.roommode){
if(!o_room.advanced_type){
}else{
rebateFrom = 1;
if(rebateCharm && o_room.rebateType){
roomMode = 1;
}
if(o_room.advanced_teabean){
if(sysRebateValue < o_room.advanced_teabean){
rebateMode = 3;
rebateValue = o_room.advanced_teabean;
}
}
}
}else{
if(!o_room.advanced_type){
var tea = youle_room.import.owner_beanpush(o_room.o_game, o_room.roomtype);
if(tea){
if(sysRebateValue < tea){
rebateMode = 3;
rebateValue = tea;
}
}
}else{
if(o_room.advanced_teabean){
if(sysRebateValue < o_room.advanced_teabean){
rebateMode = 3;
rebateValue = o_room.advanced_teabean;
}
}
}
}
//每个人扣除的数量
var rebateReal = rebateValue;
//通过扣除模式得出每个人扣的数量
switch(rebateFrom){
//大赢家
case 1:
rebateReal = parseInt(rebateValue / maxseat.length);//多个大赢家均摊房间费
sysRebateValue = parseInt(sysRebateValue / maxseat.length);//多个大赢家均摊房间费
break;
//赢家
case 2:
break;
//所有人
case 3:
break;
default:
break;
}
var ownergarde = 0;
//var rebateSum = 0;//总共扣除的房间费
//console.log(o_room.seatlist);
//if(rebateReal){
var ownerid = null;
var pushCount = 0;
if(o_room.owner){
ownerid = o_room.owner.playerid;
}
//console.log("sysRebateValue",sysRebateValue);
//console.log("rebateReal",rebateReal);
for (var i = 0; i < o_room.seatlist.length; i++) {
if (o_room.seatlist[i]){
var o_player = o_room.seatlist[i];
if (o_player.gameinfo.isbet) {
var o_agentsvr_player = o_agentsvr_agent.method.find_player(o_player.playerid);
var roomcard = 0;
if (playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
if (o_player.playerid == o_room.owner.playerid) {
ownergarde = o_player.gameinfo.grade;
}
var isRebate = false;
switch(rebateFrom){
//大赢家
case 1:
if(o_player.gameinfo.grade == maxgrade){
isRebate = true;
}
break;
//赢家
case 2:
if(o_player.gameinfo.grade > 0){
isRebate = true;
}
break;
//所有人
case 3:
isRebate = true;
break;
default:
break;
}
//console.log("playerid:"+o_player.playerid+"grade:"+o_player.gameinfo.grade+"isRebate:"+isRebate);
//房间id = 时间戳 + 4位随机码 + 房号
var roomid = new Date().getTime() + min_randomChar(4) + o_room.roomcode;
var datatime = min_now();
//达成抽成条件
if(isRebate && rebateTemp){
//rebateSum += rebateReal;
if(!roomMode){
var msg = {};
msg.app = youle_room.app.appname;
msg.route = youle_room.app.youle_agent.routename;
msg.rpc = "update_bean";
msg.data = {};
msg.data.agentid = agentid;
msg.data.playerid = o_player.playerid;
if(o_room.roommode){
msg.data.change = o_player.gameinfo.grade;
}else{
msg.data.change = 0;
}
var nBean = rebateReal - msg.data.change;
var sysBean = 0;
//console.log("o_player.bean",o_player.bean,"nBean",nBean);
if(o_player.bean >= nBean){
if(ownerid == o_agentsvr_player.playerid){
msg.data.pushbean = 0;
}else{
msg.data.pushbean = -1 *rebateReal ;
// pushCount += rebateReal;
sysBean = sysRebateValue;
pushCount = pushCount + (rebateReal - sysRebateValue);
}
}else{
msg.data.pushbean = 0;
}
msg.data.gameid = gameid;
msg.data.showrebate = 0;
youle_room.app.youle_agent[msg.rpc](msg);
var roommode = 0; //玩家房间
if (o_room.sysroom) {
roommode = 1; //系统房间
}
var createtime = o_room.createtime;
var beanmult = 0;
if (o_room.beanmult){
beanmult = o_room.beanmult;
}
var ownerid = o_room.owner.playerid;
var shortcode = 0;
if (o_room.shortcode){
shortcode = o_room.shortcode;
}
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var playerid = o_player.playerid;
var grade = o_player.gameinfo.grade;
var roomcard = 0;
if (playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
var asetcount = o_room.asetcount;
var sql = "insert into gold_account(goac_id,goac_agentid,goac_gameid,goac_roomcode,goac_roommode,goac_createtime,goac_beanmult,goac_ownerid,goac_shortcode,goac_deduct,goac_roomcard,goac_datatype,goac_asetcount,goac_asetnum,goac_playerid,goac_isrobot,goac_grade,goac_rebatefrom,goac_rebateto,goac_toplayerid,goac_rebatemode,goac_setvalue,goac_rebatevalue,goac_time) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);";
youle_room.mysql_grade.execsql("execsql", sql, [roomid, agentid, gameid, roomcode, roommode, createtime, beanmult, ownerid, shortcode, deductmode, roomcard, 0, asetcount, 0, playerid, 0, grade, rebateFrom, rebateTo, '', rebateMode, sysBean, sysBean, datatime]);
}
// else{
// //修改房卡数量
// var msg2 = {};
// msg2.data={};
// msg2.data.agentid = agentid;
// msg2.data.playerid = o_player.playerid;
// msg2.data.change = -1*rebateReal;
// xRebate.update_roomcard(msg2);
// }
}else{
var msg = {};
msg.app = youle_room.app.appname;
msg.route = youle_room.app.youle_agent.routename;
msg.rpc = "update_bean";
msg.data = {};
msg.data.agentid = agentid;
msg.data.playerid = o_player.playerid;
if(o_room.roommode){
msg.data.change = o_player.gameinfo.grade;
}else{
msg.data.change = 0;
}
msg.data.pushbean = 0;
msg.data.gameid = gameid;
msg.data.showrebate = 1;
youle_room.app.youle_agent[msg.rpc](msg);
var roommode = 0; //玩家房间
if (o_room.sysroom) {
roommode = 1; //系统房间
}
var createtime = o_room.createtime;
var beanmult = 0;
if (o_room.beanmult){
beanmult = o_room.beanmult;
}
var ownerid = o_room.owner.playerid;
var shortcode = 0;
if (o_room.shortcode){
shortcode = o_room.shortcode;
}
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var playerid = o_player.playerid;
var grade = o_player.gameinfo.grade;
var roomcard = 0;
if (playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
var asetcount = o_room.asetcount;
var sql = "insert into gold_account(goac_id,goac_agentid,goac_gameid,goac_roomcode,goac_roommode,goac_createtime,goac_beanmult,goac_ownerid,goac_shortcode,goac_deduct,goac_roomcard,goac_datatype,goac_asetcount,goac_asetnum,goac_playerid,goac_isrobot,goac_grade,goac_rebatefrom,goac_rebateto,goac_toplayerid,goac_rebatemode,goac_setvalue,goac_rebatevalue,goac_time) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);";
youle_room.mysql_grade.execsql("execsql", sql, [roomid, agentid, gameid, roomcode, roommode, createtime, beanmult, ownerid, shortcode, deductmode, roomcard, 0, asetcount, 0, playerid, 0, grade, 0, rebateTo, '', rebateMode, 0, 0, datatime]);
}
}
}
}
//console.log("pushCount",pushCount);
if(pushCount){
var msg = {};
msg.app = youle_room.app.appname;
msg.route = youle_room.app.youle_agent.routename;
msg.rpc = "update_bean";
msg.data = {};
msg.data.agentid = agentid;
msg.data.playerid = ownerid;
msg.data.change = 0;
msg.data.pushbean = pushCount;
msg.data.gameid = gameid;
msg.data.showrebate = 0;
youle_room.app.youle_agent[msg.rpc](msg);
var roommode = 0; //玩家房间
if (o_room.sysroom) {
roommode = 1; //系统房间
}
var createtime = o_room.createtime;
var beanmult = 0;
if (o_room.beanmult){
beanmult = o_room.beanmult;
}
var ownerid = o_room.owner.playerid;
var shortcode = 0;
if (o_room.shortcode){
shortcode = o_room.shortcode;
}
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var playerid = ownerid;
var grade = 0;
var roomcard = 0;
if (playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
var asetcount = o_room.asetcount;
var sql = "insert into gold_account(goac_id,goac_agentid,goac_gameid,goac_roomcode,goac_roommode,goac_createtime,goac_beanmult,goac_ownerid,goac_shortcode,goac_deduct,goac_roomcard,goac_datatype,goac_asetcount,goac_asetnum,goac_playerid,goac_isrobot,goac_grade,goac_rebatefrom,goac_rebateto,goac_toplayerid,goac_rebatemode,goac_setvalue,goac_rebatevalue,goac_time) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);";
youle_room.mysql_grade.execsql("execsql", sql, [roomid, agentid, gameid, roomcode, roommode, createtime, beanmult, ownerid, shortcode, deductmode, roomcard, 0, asetcount, 0, playerid, 0, grade, rebateFrom, 1, ownerid, rebateMode, pushCount, pushCount, datatime]);
}
//}
}
//修改房卡
xRebate.update_roomcard = function(pack){
var agentid = pack.data.agentid;
var playerid = pack.data.playerid;
var change = parseInt(pack.data.change);
//查找代理商
var o_agent = youle_agent.agents.method.find_agent(agentid);
if (!o_agent) {
pack.data = {};
pack.data.result = 1;
pack.data.error = "agentid不存在";
return pack;
};
var db_callback = function(dbdata){
if (dbdata[0].result == 0){
var o_player = o_agent.method.find_player(playerid);
if (o_player){
o_player.method.update_roomcard(0, parseInt(dbdata[0].roomcard), change,"房间费");
}
pack.data.result = 0;
} else {
pack.data = {};
pack.data.result = dbdata[0].result;
pack.data.error = dbdata[0].error;
}
youle_agent.app.SendPack(pack);
}
var sql = "call cp_game_update_roomcard(?,?,?);";
youle_agent.mysql.execsql("opensql", sql, [agentid, playerid, change], db_callback);
}
//百人vip房抽成金币
xRebate.gameRebate2 = function(o_room,ary_grade){
var ary_grade1=[];
for(var i=0;i<ary_grade.length;i++){
ary_grade1.push(ary_grade[i]);
}
//小局抽成设置
// var rebateConfig = youle_room.app.youle_platform.config.method.get_paravalue("aset_rebate", o_room.o_game.o_agent.agentid);
var rebateConfig = youle_room.app.youle_platform.config.method.get_paravalue("rebateConfig", o_room.o_game.o_agent.agentid);
if(!rebateConfig){
return ary_grade1;
}
// if(!rebateConfig.infinite){
// return ary_grade1;
// }
if(o_room.o_game.gameid != "Btke0urRy0cvPd5CIvD5yfhYhKhdSdex"){
return ary_grade1;
}
// if(o_room.rebateType){
// return;
// }
var rbtTemp = false;//游戏是否产生了胜负
var maxgrade = 0;
var maxseat = [];
for (var i = 0; i < ary_grade.length; i++){
if (ary_grade[i]){
ary_grade[i] = Number(ary_grade[i]);
if (ary_grade[i] > maxgrade){
maxgrade = ary_grade[i];
maxseat = [i];
} else if (ary_grade[i] == maxgrade){
maxseat.push(i);
}
if(ary_grade[i] < 0){
rbtTemp = true;
}
}
}
if(!rbtTemp){
return ary_grade;
}
//只支持倍数百分比抽成
//抽成参数
//小局抽成设置
//var aset_rebate = youle_room.app.youle_platform.config.method.get_paravalue("aset_rebate", o_room.o_game.o_agent.agentid);
//扣除模式 1.大赢家 2.赢家 3.所有人
// var rebateFrom = rebateConfig.from;
var rebateFrom = 1;
var o_agentsvr_agent = youle_agent.agents.method.find_agent(o_room.o_game.o_agent.agentid);
//配置扣除数量
var sysRebateValue = o_room.rebateNumber;
var sysRebateValue1 = o_room.sysRebateValue;
var agentid = o_room.o_game.o_agent.agentid;
var gameid = o_room.o_game.gameid;
var roomcode = o_room.roomcode;
var createtime = o_room.createtime;
var makewartime = o_room.makewartime;
var roommode = o_room.roommode;
var ownerid = o_room.owner.playerid;
var shortcode = 0;
if (o_room.shortcode){
shortcode = o_room.shortcode;
}
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var asetcount = o_room.asetcount;
var rebateTo = 0;
var rebateMode = 2;
var roomMode = 0;
//房间收取房间费的值
var rebateValue = sysRebateValue;
//每个人扣除的数量
var rebateReal = rebateValue;
//通过扣除模式得出每个人扣的数量
switch(rebateFrom){
//大赢家
case 1:
if(maxseat.length>0){
rebateReal = parseInt(rebateValue / maxseat.length);//多个大赢家均摊房间费
sysRebateValue1 = parseInt(sysRebateValue1 / maxseat.length);//多个大赢家均摊房间费
}
break;
//赢家
case 2:
break;
//所有人
case 3:
break;
default:
break;
}
var ownergarde = 0;
var brNumber = youle_room.app.youle_platform.config.method.get_paravalue("brNumber",o_room.o_game.o_agent.agentid);
var o_agentsvr_agent = youle_agent.agents.method.find_agent(o_room.o_game.o_agent.agentid);
var o_agentsvr_owner = o_agentsvr_agent.method.find_player(o_room.owner.playerid);
if(brNumber){
brNumber = Number(brNumber);
//房主扣除房间费 金币
var agentid = o_room.o_game.o_agent.agentid;
var o_player = o_agentsvr_owner;
var gameid = o_room.o_game.gameid;
var datatime = min_now();
var msg = {};
msg.app = youle_room.app.appname;
msg.route = youle_room.app.youle_agent.routename;
msg.rpc = "update_bean";
msg.data = {};
msg.data.agentid = agentid;
msg.data.playerid = o_player.playerid;
msg.data.change = 0;
msg.data.pushbean = -1 * brNumber;
msg.data.gameid = gameid;
msg.data.showrebate = 0;
youle_room.app.youle_agent[msg.rpc](msg);
var pBean = o_player.bean;
//console.log("pBean",pBean);
var roommode = 0; //玩家房间
// if (o_room.sysroom) {
// roommode = 1; //系统房间
// }
var createtime = o_room.createtime;
var beanmult = 0;
if (o_room.beanmult){
beanmult = o_room.beanmult;
}
var ownerid = o_room.owner.playerid;
// var shortcode = 0;
// if (o_room.shortcode){
// shortcode = o_room.shortcode;
// }
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var playerid = o_player.playerid;
var grade = o_player.gameinfo.grade;
var roomcard = 0;
if (playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
var roomid = new Date().getTime() + min_randomChar(4) + o_room.roomcode;
var roomcode = o_room.roomcode;
var asetcount = o_room.asetcount;
var sql = "insert into gold_account(goac_id,goac_agentid,goac_gameid,goac_roomcode,goac_roommode,goac_createtime,goac_beanmult,goac_ownerid,goac_shortcode,goac_deduct,goac_roomcard,goac_datatype,goac_asetcount,goac_asetnum,goac_playerid,goac_isrobot,goac_grade,goac_rebatefrom,goac_rebateto,goac_toplayerid,goac_rebatemode,goac_setvalue,goac_rebatevalue,goac_time) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);";
youle_room.mysql_grade.execsql("execsql", sql, [roomid, agentid, gameid, roomcode, roommode, createtime, beanmult, ownerid, shortcode, deductmode, roomcard, 0, asetcount, 0, playerid, 0, 0, 4, 2, '', 3, brNumber, brNumber, datatime]);
}
var rbType = o_room.rebateType;
try{
if (o_room.shortcode){
if (o_agentsvr_owner.whitelist && o_agentsvr_owner.whitelist.length > 0){
var rebateConfig = youle_room.app.youle_platform.config.method.get_paravalue("rebateConfig", o_room.o_game.o_agent.agentid);
var rCharm = 0;
var maxgrade1 = 0;
var maxseat1 = [];
var rcTemp = false;
if(maxseat.length>0){
rCharm = parseInt(o_room.rebateNumber/maxseat.length);
}else{
rCharm = parseInt(o_room.rebateNumber);
}
// if(rebateConfig){
// if(rebateConfig.rebateCharm && o_room.rebateType){
// rcTemp = true;
// }
//抽金币
// if(!o_room.rebateType){
// reTemp = true;
// }
// }
var _seatlist = [];
// console.log("ary_grade",ary_grade);
// console.log("333",JSON.stringify(o_agentsvr_owner.whitelist));
// console.log("rCharm",rCharm);
for (var i = 0; i < ary_grade.length; i++) {
if (ary_grade[i] != null){
if (o_room.seatlist[i]){
var _player = {};
_player.seat = i;
_player.playerid = o_room.seatlist[i].playerid;
_player.change = 0;
for (var j = 0; j < o_agentsvr_owner.whitelist.length; j++) {
if (o_agentsvr_owner.whitelist[j][0] == _player.playerid){
if (o_agentsvr_owner.whitelist[j][2]){
if(rbType && ary_grade[i] == maxgrade){
o_agentsvr_owner.whitelist[j][2] = parseInt(o_agentsvr_owner.whitelist[j][2]) - rCharm;
ary_grade1[i] = ary_grade1[i] - rCharm;
}
} else {
if(rbType && ary_grade[i] == maxgrade){
o_agentsvr_owner.whitelist[j][2] = -1 * rCharm;
ary_grade1[i] = ary_grade1[i] - rCharm;
}
}
_player.charm = o_agentsvr_owner.whitelist[j][2];
break;
}
}
_seatlist.push(_player);
}
}
}
var msg = {};
msg.app = "youle";
msg.route = "agent";
msg.rpc = "update_charm";
msg.data = {};
msg.data.seatlist = _seatlist;
o_room.method.sendpack_toother(msg, -1);
// console.log("222",JSON.stringify(o_agentsvr_owner.whitelist));
var sql = "update player set play_whitelist = ? where play_agentid = ? and play_playerid = ?";
youle_room.mysql.execsql("execsql", sql, [youle_agent.compressWhiteList(o_agentsvr_owner.whitelist), o_room.o_game.o_agent.agentid, o_room.owner.playerid]);
}
}
}catch(e){
console.log("结算短号魅力值发生错误");
console.log(e);
}
//var rebateSum = 0;//总共扣除的房间费
//console.log("seatlist",o_room.seatlist);
var ownerid = null;
if(o_room.owner){
ownerid = o_room.owner.playerid;
}
console.log("rebateReal",rebateReal);
console.log("sysRebateValue1",sysRebateValue1);
var pushCount = 0;
if(!o_room.rebateType){
for (var i = 0; i < ary_grade.length; i++) {
if (o_room.seatlist[i] && ary_grade[i] != null){
var o_player = o_room.seatlist[i];
console.log("ccc",o_player.playerid,o_player.gameinfo.isbet);
if (o_player.gameinfo.isbet) {
var o_agentsvr_player = o_agentsvr_agent.method.find_player(o_player.playerid);
var roomcard = 0;
if (o_player.playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
if (o_player.playerid == o_room.owner.playerid) {
ownergarde = ary_grade[i];
}
var isRebate = false;
switch(rebateFrom){
//大赢家
case 1:
if(ary_grade[i] == maxgrade){
isRebate = true;
}
break;
//赢家
case 2:
if(ary_grade[i] > 0){
isRebate = true;
}
break;
//所有人
case 3:
isRebate = true;
break;
default:
break;
}
//console.log("playerid:"+o_player.playerid+"grade:"+o_player.gameinfo.grade+"isRebate:"+isRebate);
//房间id = 时间戳 + 4位随机码 + 房号
var roomid = new Date().getTime() + min_randomChar(4) + o_room.roomcode;
var datatime = min_now();
//达成抽成条件
if(isRebate){
//rebateSum += rebateReal;
// if(!roomMode){
var msg = {};
msg.app = youle_room.app.appname;
msg.route = youle_room.app.youle_agent.routename;
msg.rpc = "update_bean";
msg.data = {};
msg.data.agentid = agentid;
msg.data.playerid = o_player.playerid;
if(o_room.roommode){
msg.data.change = o_player.gameinfo.grade;
}else{
msg.data.change = 0;
}
var sysBean = 0;
if(ownerid == o_player.playerid){
msg.data.pushbean = 0;
}else{
//var nBean = rebateReal - msg.data.change;
//console.log("o_player.bean",o_player.bean,"nBean",nBean);
//if(o_player.bean >= nBean){
msg.data.pushbean = -1 * rebateReal;
// pushCount += rebateReal;
sysBean = sysRebateValue1;
pushCount = pushCount + (rebateReal - sysRebateValue1);
// }else{
// msg.data.pushbean = 0;
// }
}
msg.data.gameid = gameid;
msg.data.showrebate = 0;
youle_room.app.youle_agent[msg.rpc](msg);
var roommode = 0; //玩家房间
if (o_room.sysroom) {
roommode = 1; //系统房间
}
var createtime = o_room.createtime;
var beanmult = 0;
if (o_room.beanmult){
beanmult = o_room.beanmult;
}
var ownerid = o_room.owner.playerid;
var shortcode = 0;
if (o_room.shortcode){
shortcode = o_room.shortcode;
}
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var playerid = o_player.playerid;
var grade = o_player.gameinfo.grade;
var roomcard = 0;
if (playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
var asetcount = o_room.asetcount;
var sql = "insert into gold_account(goac_id,goac_agentid,goac_gameid,goac_roomcode,goac_roommode,goac_createtime,goac_beanmult,goac_ownerid,goac_shortcode,goac_deduct,goac_roomcard,goac_datatype,goac_asetcount,goac_asetnum,goac_playerid,goac_isrobot,goac_grade,goac_rebatefrom,goac_rebateto,goac_toplayerid,goac_rebatemode,goac_setvalue,goac_rebatevalue,goac_time) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);";
youle_room.mysql_grade.execsql("execsql", sql, [roomid, agentid, gameid, roomcode, roommode, createtime, beanmult, ownerid, shortcode, deductmode, roomcard, 0, asetcount, 0, playerid, 0, grade, rebateFrom, rebateTo, '', rebateMode, sysBean, sysBean , datatime]);
// }
}
}
}
}
//console.log("pushCount",pushCount);
if(pushCount){
var ownerid = o_room.owner.playerid;
var msg = {};
msg.app = youle_room.app.appname;
msg.route = youle_room.app.youle_agent.routename;
msg.rpc = "update_bean";
msg.data = {};
msg.data.agentid = agentid;
msg.data.playerid = ownerid;
msg.data.change = 0;
msg.data.pushbean = pushCount;
msg.data.gameid = gameid;
msg.data.showrebate = 0;
youle_room.app.youle_agent[msg.rpc](msg);
var roommode = 0; //玩家房间
if (o_room.sysroom) {
roommode = 1; //系统房间
}
var createtime = o_room.createtime;
var beanmult = 0;
if (o_room.beanmult){
beanmult = o_room.beanmult;
}
var shortcode = 0;
if (o_room.shortcode){
shortcode = o_room.shortcode;
}
var deductmode = youle_room.import.deduct_roomcard_mode(o_room.o_game, o_room.roomtype);
var playerid = ownerid;
var grade = 0;
var roomcard = 0;
if (playerid == o_room.owner.playerid){
roomcard = youle_room.import.createroom_needroomcard(o_room.o_game, o_room.roomtype);
} else {
roomcard = youle_room.import.joinroom_needroomcard(o_room.o_game, o_room.roomtype);
}
var asetcount = o_room.asetcount;
var sql = "insert into gold_account(goac_id,goac_agentid,goac_gameid,goac_roomcode,goac_roommode,goac_createtime,goac_beanmult,goac_ownerid,goac_shortcode,goac_deduct,goac_roomcard,goac_datatype,goac_asetcount,goac_asetnum,goac_playerid,goac_isrobot,goac_grade,goac_rebatefrom,goac_rebateto,goac_toplayerid,goac_rebatemode,goac_setvalue,goac_rebatevalue,goac_time) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?);";
youle_room.mysql_grade.execsql("execsql", sql, [roomid, agentid, gameid, roomcode, roommode, createtime, beanmult, ownerid, shortcode, deductmode, roomcard, 0, asetcount, 0, playerid, 0, grade, rebateFrom, 1, ownerid, rebateMode, pushCount, pushCount, datatime]);
}
}
if(pBean < 2*brNumber){
breakTemp = true;
youle_room.import.gameBreak(o_room);
}
return ary_grade1;
}